There seems some basic code missing in the source for printing/displaying 64 bit parameters. For instance the formats %qd and %lld (or x) or not supported as it should and giving weird results. As result I did not trust the code to enable LBA64 addressing. This is not a real problem. Only in case you would like to write to the disk in the area above 2.2 TB. That won't be possible or may give unpredictable results.
This is no problem for our application. In principle we want U-boot to load a kernel from partition 6 and pass control to the kernel to boot the box.
And thats what it is capable of right now, using disks with either an ms-dos partition table (for disk upto 2.2 TB) or GPT partition table. (for any disk)
I made some changes that U-boot shows the right size of disks above 2.2 TB and also the right numbers in the partition tables for those big disks.
It will be released soon for those interested and brave enough to write it flash memory.
ps It also learned me how u-boot works and it is not too difficult to change in way that for instance the nwsp2 first will check usb port for an image and file system for booting and then the hard disk. This could be a nice recovery opportunity in case the HDd reuses to boot for whatever reason.
Topic is closed
Below some output from the new u-boot on the nwsp2-classic
- Code: Select all
Marvell>> version
version
U-Boot 1.1.4 (Jan 5 2013 - 22:27:41) Marvell version: 3.4.16 LaCie 1.3.9 256MB fvdw gpt vs66
3TB disk
- Code: Select all
Marvell>> ide reset
ide reset
Reset IDE:
Marvell Serial ATA Adapter
Integrated Sata device found
[0 0 0]: Enable DMA mode
Device 0 @ 0 0:
Model: WDC WD30EZRX-00DC0B0 Firm: 80.00A80 Ser#: WD-WMC1T0347553
Type: Hard Disk
Supports 48-bit addressing
Capacity: 2861588.4 MB = 2794.5 GB (5860533168 x 512)
Marvell>> ide part
ide part
## Testing for valid EFI partition ##
Partition Map for IDE device 0 -- Partition Type: EFI
GPT: Disk bigger then 2.2 TB !
GPT: U-boot can not write or read area above 2.2 TB, do not try !
GPT: skipping last lba check
Part Start LBA End LBA
gpt1 4096 1052671 decimal
gpt2 1052672 2101247 decimal
gpt3 2101248 3149823 decimal
gpt4 3149824 3166207 decimal
gpt5 3166208 4739071 decimal
gpt6 4739072 4755455 decimal
gpt7 4755456 5804031 decimal
gpt8 5804032 5860533134 decimal
Marvell>>
1 TB disk
- Code: Select all
Marvell>> ide reset
ide reset
Reset IDE:
Marvell Serial ATA Adapter
Integrated Sata device found
[0 0 0]: Enable DMA mode
Device 0 @ 0 0:
Model: SAMSUNG HD103SI Firm: 1AG01118 Ser#: S1Y5JDWZ626309
Type: Hard Disk
Supports 48-bit addressing
Capacity: 953869.7 MB = 931.5 GB (1953525168 x 512)
Marvell>> ide part
ide part
## Testing for valid EFI partition ##
Partition Map for IDE device 0 -- Partition Type: EFI
GPT: skipping last lba check
Part Start LBA End LBA
gpt1 2048 1050623 decimal
gpt2 1050624 2099199 decimal
gpt3 2099200 3147775 decimal
gpt4 3147776 3155967 decimal
gpt5 3155968 4728831 decimal
gpt6 4728832 4745215 decimal
gpt7 4745216 5793791 decimal
gpt8 5793792 1953525134 decimal
Marvell>>
:mrgreen: