[G2 and Desire Z General] larryccf:
did you check the links i put up? there are some decent indications that the 4GB is there:

a) developers over on XDA discovered mem totals were 2.1GB which is an odd amount, with a lot of partitions they couldn't identify - quote from bottom of pg 15 on XDA G2 android development forum (link http://xdaforums.com/showthread.php?t=794053&page=15 ) :

"If the NAND is being presented as mmc type device, perhaps the baseband ("radio") processor is performing mmc to nand conversion, and also acting as a gatekeeper? Don't the baseband processors often perform other interfacing functions in other devices?

This might also be relevant to the ~2.1GB mmc size weirdness - there are of course not going to be non-power-of-two NAND devices so all these ~2.1GB devices must have 4GB of space but may show up with an odd number of sectors due to gatekeeping by the baseband processor.

The baseband processor might simply discard any writes to certain sectors not being performed in an approved fashion (perhaps using special IPC calls or by first authenticating with it to enable write through). Perhaps it caches writes in the "rest" of the NAND space, until the next reboot?

Perhaps there is some kind of dual partition set up like a Tivo for the system partitions, so you write your OS update to the other partition set (through whatever nonstandard methods are used), write config someplace indicating to use the other partition set, reboot, bootloader tries booting and if things don't check out, revert to previous partition set. "

b) another developer dissected a G2 rom dump and finds the sandisk part code reference for the nand chip, and in googling it, finds it is a 4 GB chip - pulling the part code from the Desire Z rom dump, they found that part code was for a 2 GB chip (which is correct for the Desire Z)

here's the link and the stmt

http://xdaforums.com/showthread.php?t=795594&page=30

"Originally Posted by jigabite View Post

I'm assuming this is the dmesg output? Has anybody really investigated this part # yet? Googling 'SEM04G' brings up this document:

http://www.omapworld.com/iNAND_e_MMC...1_0[1].pdf

Page 20 says SEM04G is a 4GB part. I'm sure nobody has pulled the thing apart yet but it also says that SEM02G is the 2GB part... Curious

From the pdf. Could be a something ridiculously retarded like a messed up setting:

Value for 4GB-32GB: 0xC0FF8080

Value for 2GB: 0x40FF8080 "

c) and someone else has injected the fact that the developers over on the XDA HD2 forum that wrote the android 2.2 rom for the HD2 (remember, it came out with windows mobile 6.5) found they had to write the rom to reflect or read a max of 2 GB internal memory, as android 2.2 is coded to not recognize more than 2GB. That fact also sheds some light on why the samsung vibrant, with a 16GB internal memory, only reports 2GB for internal memory, then shows another 12.7GB as "internal SD card". Obviously samsung had to adjust the android OS to show the memory above 2GB so it added coding to show it as "internal SD card".

here's that poster's stmt and link:

http://xdaforums.com/showpost.php?p=8429161&postcount=306

"The makers of roms for android on hd2 have been making the data img no larger than 2 gigs and I think I read that it's because froyo doesn't recognize any more than 2 gigs.

Correct me if I'm wrong but it would explain what's going on with your G2s and that TMo is being truthful. Perhaps an update would solve the issue. "

not conclusive but positive indications, nonetheless