Hi Lukasz, On Wed, Nov 27, 2019 at 9:47 PM Lukasz Majewski <lu...@denx.de> wrote: > > Hi Jagan, > > > Hi Lukasz, > > > > On Wed, Nov 27, 2019 at 4:15 PM Lukasz Majewski <lu...@denx.de> wrote: > > > > > > Hi Jagan, > > > > > > > Hi, > > > > > > > > I have created GPT table start from 8MB for kernel, roots etc. > > > > something like > > > > > > > > Part Start LBA End LBA Name > > > > Attributes > > > > Type GUID > > > > Partition GUID > > > > 1 0x00004000 0x00023fff "boota" > > > > attrs: 0x0000000000000004 > > > > type: ebd0a0a2-b9e5-4433-87c0-68b6b72699c7 > > > > guid: c12a7328-f81f-11d2-ba4b-00a0c93ec93b > > > > 2 0x00024000 0x00043fff "bootb" > > > > attrs: 0x0000000000000004 > > > > type: ebd0a0a2-b9e5-4433-87c0-68b6b72699c7 > > > > guid: 21686148-6449-6e6f-744e-656564454649 > > > > 3 0x00044000 0x00243fff "rootfsa" > > > > attrs: 0x0000000000000000 > > > > type: ebd0a0a2-b9e5-4433-87c0-68b6b72699c7 > > > > guid: b921b045-1df0-41c3-af44-4c6f280d3fae > > > > 4 0x00244000 0x00443fff "rootfsb" > > > > attrs: 0x0000000000000000 > > > > type: ebd0a0a2-b9e5-4433-87c0-68b6b72699c7 > > > > guid: 8da63339-0007-60c0-c436-083ac8230908 > > > > 5 0x00444000 0x0070bfde "data" > > > > attrs: 0x0000000000000000 > > > > type: ebd0a0a2-b9e5-4433-87c0-68b6b72699c7 > > > > guid: 4f72ab70-69be-5948-81ff-4fc3daf24faa > > > > > > > > I have not included SPL, U-Boot to the partition list since it > > > > start from 0x400 in i.MX6. So > > > > I'm writing SPL separately using fastboot(with offset) or ums. > > > > > > > > But by doing this, the partition header seems overlapped so the > > > > output looks > > > > > > > > GUID Partition Table Entry Array CRC is wrong: 0x6a1aba0a != > > > > 0x8e4fd548 find_valid_gpt: *** ERROR: Invalid GPT *** > > > > find_valid_gpt: *** Using Backup GPT *** > > > > Part Start LBA End LBA Name > > > > Attributes > > > > Type GUID > > > > Partition GUID > > > > 1 0x00004000 0x00023fff "boota" > > > > attrs: 0x0000000000000004 > > > > type: ebd0a0a2-b9e5-4433-87c0-68b6b72699c7 > > > > guid: c12a7328-f81f-11d2-ba4b-00a0c93ec93b > > > > 2 0x00024000 0x00043fff "bootb" > > > > attrs: 0x0000000000000004 > > > > type: ebd0a0a2-b9e5-4433-87c0-68b6b72699c7 > > > > guid: 21686148-6449-6e6f-744e-656564454649 > > > > 3 0x00044000 0x00243fff "rootfsa" > > > > attrs: 0x0000000000000000 > > > > type: ebd0a0a2-b9e5-4433-87c0-68b6b72699c7 > > > > guid: b921b045-1df0-41c3-af44-4c6f280d3fae > > > > 4 0x00244000 0x00443fff "rootfsb" > > > > attrs: 0x0000000000000000 > > > > type: ebd0a0a2-b9e5-4433-87c0-68b6b72699c7 > > > > guid: 8da63339-0007-60c0-c436-083ac8230908 > > > > 5 0x00444000 0x0070bfde "data" > > > > attrs: 0x0000000000000000 > > > > type: ebd0a0a2-b9e5-4433-87c0-68b6b72699c7 > > > > guid: 4f72ab70-69be-5948-81ff-4fc3daf24faa > > > > > > > > So, what I understand is If I create the GPT first and then write > > > > the SPL, the SPL writing process will destroy the GPT Table and > > > > if I write SPL first and then create GPT, the GPT creation > > > > process will destroy the SPL. > > > > > > > > Is there any way to fix this? I remember we can prevent this > > > > overlap by preserving GPT Table som other or boot partition > > > > instead of having them at the beginning by default. > > > > > > > > Any inputs? > > > > > > On the diagram of GPT description [1] there is the info that > > > partitions can start from LBA 34 (0x200 * 34) = 0x4400 > > > > > > From the above it seems like you starts from 0x4000 your boota > > > partition, which then overwrites the "Entries 5-128" which shall be > > > 0 and are protected by CRC written in the Primary GPT Header. > > > > > > Please try to adjust your partition scheme to start from 0x4400. > > > > I still see the overlap. I have created boota at 0x4400 and the write > > the SPL at 0x400 > ^^^^^^ - this overwrites the GPT header IMHO.
True, this overlap GPT. and we don't have an option since ROM expecting the SPL at 0x400. > > You may dump the eMMC and check if this is the case (even with u-boot's > md.l utility) > > > I had similar problem on some Beagle Bone Black (AM33x) board. > > The ROM wanted to boot from the fixed eMMC LBA offset which was clashing > with GPT. > > Fortunately, it was also possible to boot from FAT (it was checked > before the raw offset from eMMC case) partition, so I used this option > instead. You mean create FAT partition and copy SPL/U-Boot binaries on the directory? > > > But hey, isn't it possible to store SPL/u-boot to the eMMC's boot (the > separate HW partition) partition and store GPT to the user accessible > one (the large one - e.g. 4 GiB)? Yes, this is what I'm thinking of. But how to preserve the GPT at another partition or user accessible area than beginning (which is done by default). _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot