[G Tablet Q&A, Help & Troubleshooting] jimcpl:
Hi,

Thanks for the clarification.

I'm going to kind of ramble here... not sure what is going on:

I notice that there're differences between the nvflash.exe in the dropbox nvflash vs. the nvflash from the Nvidia developer site.

For one thing, the Nvidia one outputs text for the --getpartitiontable, whereas here, when I used the dropbox nvflash.exe, I get binary file output.

Also, the help for the the dropbox nvflash.exe is different than the help for the Nvidia nvflash.exe.

Here's the help for the dropbox nvflash.exe:

Nvflash started
nvflash action [options]
action (one or more) =
--help (or -h)
displays this page
--cmdhelp cmd(or -ch)
displays command help
--resume (or -r)
send the following commands to an already-running bootloader
--quiet (or -q)
surpress excessive console output
--wait (or -w)
waits for a device connection (currently a USB cable)
--create
full initialization of the target device using the config file
--download N filename
download partition filename to N
--setboot N
sets the boot partition to partition N
--format_partition N
formats contents of partition N
--read N filename
reads back partition N into filename
--getpartitiontable filename
reads back the partition table into filename
--getbit filename
reads back BIT into filename
--getbct
reads back the BCT from mass storage
--odm C Data
ODM custom 32bit command 'C' with associated 32bit data
--go
continues normal execution of the downloaded bootloader
options =
--configfile filename
indicates the configuration file used with the following commands:
--create, --format_all
--bct filename
indicates the file containing the BCT
--sbk 0x00000000 00000000 00000000 00000000
indicates the secure boot key for the target device
--bl filename
downloads and runs the bootloader specified by filename
--odmdata N
sets 32bit customer data into a field in the BCT, either hex or
decimal
--diskimgopt N
sets 32bit data required for disk image convertion tool
--format_all
formats all existing partitions on the target device using the config fil
e,
including partitions and the bct
--setbootdevtype S
sets the boot device type fuse value for the device name.
allowed device name string mentioned below:
emmc, nand_x8, nand_x16, nor, spi
--setbootdevconfig N
sets the boot device config fuse value either hex or decimal
--verifypart N
verifies data for partition id = N specified. N=-1
indicates all partitions
Intended to be used with --create command only.
--setbct
updates the chip specific settings of the BCT in mass storage to
the bct supplied,used with --create, should not be with --read,and
--format(delete)_all,format(delete)_partition,--download, and--read
--sync
issues force sync commad

Here's the help from the Nvidia nvflash.exe:

>nvflash
Nvflash started
nvflash action [options]
action (one or more) =
--help (or -h)
displays this page
--cmdhelp cmd(or -ch)
displays command help
--resume (or -r)
send the following commands to an already-running bootloader
--quiet (or -q)
surpress excessive console output
--wait (or -w)
waits for a device connection (currently a USB cable)
--create
full initialization of the target device using the config file
--download N filename
download partition filename to N
--setboot N
sets the boot partition to partition N
--format_partition N
formats contents of partition N
--read N filename
reads back partition N into filename
--getpartitiontable filename
reads back the partition table into filename
--getbit filename
reads back BIT into filename
--getbct
reads back the BCT from mass storage
--odm C Data
ODM custom 32bit command 'C' with associated 32bit data
--go
continues normal execution of the downloaded bootloader
options =
--configfile filename
indicates the configuration file used with the following commands:
--create, --format_all
--bct filename
indicates the file containing the BCT
--sbk 0x00000000 00000000 00000000 00000000
indicates the secure boot key for the target device
--bl filename
downloads and runs the bootloader specified by filename
--odmdata N
sets 32bit customer data into a field in the BCT, either hex or
decimal
--diskimgopt N
sets 32bit data required for disk image convertion tool
--format_all
formats all existing partitions on the target device using the config fil
e,
including partitions and the bct
--setbootdevtype S
sets the boot device type fuse value for the device name.
allowed device name string mentioned below:
emmc, nand_x8, nand_x16, nor, spi
--setbootdevconfig N
sets the boot device config fuse value either hex or decimal
--verifypart N
verifies data for partition id = N specified. N=-1
indicates all partitions
Intended to be used with --create command only.
--setbct
updates the chip specific settings of the BCT in mass storage to
the bct supplied,used with --create, should not be with --read,and
--format(delete)_all,format(delete)_partition,--download, and--read
--sync
issues force sync commad
--rawdeviceread S N filename
reads back N sectors starting from sector S into filename
--rawdevicewrite S N filename
writes back N sectors from filename to device starting from sector S

Notice the latter has:

--rawdeviceread S N filename
reads back N sectors starting from sector S into filename
--rawdevicewrite S N filename
writes back N sectors from filename to device starting from sector S

at the end, i.e., the Nvidia nvflash.exe appears to have two commands that the dropbox nvflash doesn't have.

I wonder if tcrews ever got the chance to try using the --rawdevicewrite to restore ALL of the partitions from his 'good' Gtab to his 'bad' Gtab?

Another thing that I noted is that nvflash has a command 'setboot':

--setboot N
sets the boot partition to partition N

I'm wondering if maybe somehow your (and tcrews) Gtab are trying to boot from the wrong boot partition (on mine, presumably that would be the "BLO" partition, partition 7 - I'm just guessing that "BLO" stands for "boot loader". I'm also guessing that the "LNX" partition is the partition where the actual Linux kernel/ boot image (zImage) is suppose to go, reference: http://tosh-ac100.wetpaint.com/page/Partition+Layout).

If that was the case, then that might account for the problem that both yourself and tcrews are seeing, i.e., even though the partitions are being restored ok, maybe the Gtab is trying to boot to (i.e., thinks the boot loader is in) some partition other than the "right" boot partition?

There's also the "EBT" partition, which according to that wetpaint.com link is where the actual bootloader code goes. That might be screwed up also.

And, there's the "BCT" partition, which according to the wetpaint.com is the "boot configuration table", but there's no explanation about what goes in there.

Finally, at least on the wetpaint.com page, there's an "MBR" or "master boot record" partition, but when I do --getpartitiontable on my Gtab, I don't get an "MBR" partition listed. I don't know what that is either (no explanations).

Do you have any chance of doing what tcrews was going to try to do, i.e., pull the --getpartitiontable from his "good" Gtab and pull all of the partitions from his "good" Gtab, then, using the info in the output from the --getpartitiontable, do a bunch of --rawdevicewrite pushes of each partition back into his "bad" Gtab?

Sorry for just throwing info out there, but, unfortunately, it seems like there're lots of possible things that might be the problem :(...

Jim