[U-Boot] [PATCH] disk: part_dos: Use the original allocation scheme for the SPL case

Rob Clark robdclark at gmail.com
Thu Oct 5 09:05:49 UTC 2017


On Thu, Oct 5, 2017 at 12:36 AM, Jonathan Gray <jsg at jsg.id.au> wrote:
> On Wed, Oct 04, 2017 at 01:12:48PM -0400, Rob Clark wrote:
>> On Wed, Oct 4, 2017 at 12:29 PM, Fabio Estevam <fabio.estevam at nxp.com> wrote:
>> > Since commit ff98cb90514d ("part: extract MBR signature from partitions")
>> > SPL boot on i.MX6 starts to fail:
>> >
>> > U-Boot SPL 2017.09-00221-g0d6ab32 (Oct 02 2017 - 15:13:19)
>> > Trying to boot from MMC1
>> > (keep in loop)
>> >
>> > Use the original allocation scheme for the SPL case, so that MX6 boards
>> > can boot again.
>> >
>> > This is a temporary solution to avoid the boot regression.
>> >
>> > Signed-off-by: Fabio Estevam <fabio.estevam at nxp.com>
>> > ---
>> > Hi Tom,
>> >
>> > I do not have time this week to further investigate and narrow down
>> > this problem.
>> >
>> > Using the old allocation scheme fixes the mx6 SPL boot problem.
>> >
>>
>> Hi Tom, if you are ok with this as a temporary fix, then this is:
>>
>> Acked-by: Rob Clark <robdclark at gmail.com>
>>
>> I'm getting some help from some of the fedora-arm folks so hopefully I
>> can get some idea what is going wrong, but I'd like to unblock folks
>> w/ mx6 boards..
>>
>> BR,
>> -R
>
> This does not seem to be a complete fix, cubox is still broken when
> U-Boot proper loads, unless the efi loader commits are to blame
> for introducing unaligned accesses.
>
> Works with 2017.09.
>
> U-Boot SPL 2017.11-rc1-00026-g14b55fc833 (Oct 05 2017 - 15:17:47)
> Trying to boot from MMC1
>
>
> U-Boot 2017.11-rc1-00026-g14b55fc833 (Oct 05 2017 - 15:17:47 +1100)
>
> CPU:   Freescale i.MX6Q rev1.5 996 MHz (running at 792 MHz)
> CPU:   Extended Commercial temperature grade (-20C to 105C) at 34C
> Reset cause: WDOG
> Board: MX6 Cubox-i
> DRAM:  2 GiB
> MMC:   FSL_SDHC: 0
> *** Warning - bad CRC, using default environment
>
> No panel detected: default to HDMI
> Display: HDMI (1024x768)
> In:    serial
> Out:   serial
> Err:   serial
> Net:   FEC
> Hit any key to stop autoboot:  0
> switch to partitions #0, OK
> mmc0 is current device
> Scanning mmc 0:1...

I don't think any efi_loader code is running here, you would see a message like:

  ## Starting EFI application at XYZ

But to be sure you can disable CONFIG_EFI_LOADER in menuconfig to confirm.

I guess this is some unrelated change.  I suspect Tom's change to
malloc the fat_itr's which would make the buffers used for
fs_exists()/etc not cache aligned.  I thought there was a patch
floating around to change that to memalign().

BR,
-R

> CACHE: Misaligned operation at range [8f89da30, 8f89e230]
> CACHE: Misaligned operation at range [8f89da30, 8f89e230]
> ERROR: v7_outer_cache_inval_range - start address is not aligned - 0x8f89da30
> ERROR: v7_outer_cache_inval_range - stop address is not aligned - 0x8f89e230
> CACHE: Misaligned operation at range [8f89da30, 8f89e230]
> CACHE: Misaligned operation at range [8f89da30, 8f89e230]
> ERROR: v7_outer_cache_inval_range - start address is not aligned - 0x8f89da30
> ERROR: v7_outer_cache_inval_range - stop address is not aligned - 0x8f89e230
> CACHE: Misaligned operation at range [8f89dca0, 8f89e4a0]
> CACHE: Misaligned operation at range [8f89dca0, 8f89e4a0]
> CACHE: Misaligned operation at range [8f89dca0, 8f89e4a0]
> CACHE: Misaligned operation at range [8f89dca0, 8f89e4a0]
> CACHE: Misaligned operation at range [8f89dc68, 8f89e468]
> CACHE: Misaligned operation at range [8f89dc68, 8f89e468]
> ERROR: v7_outer_cache_inval_range - start address is not aligned - 0x8f89dc68
> ERROR: v7_outer_cache_inval_range - stop address is not aligned - 0x8f89e468
> CACHE: Misaligned operation at range [8f89dc68, 8f89e468]
> CACHE: Misaligned operation at range [8f89dc68, 8f89e468]
> ERROR: v7_outer_cache_inval_range - start address is not aligned - 0x8f89dc68
> ERROR: v7_outer_cache_inval_range - stop address is not aligned - 0x8f89e468
> CACHE: Misaligned operation at range [8f89dab0, 8f89e2b0]
> CACHE: Misaligned operation at range [8f89dab0, 8f89e2b0]
> ERROR: v7_outer_cache_inval_range - start address is not aligned - 0x8f89dab0
> ERROR: v7_outer_cache_inval_range - stop address is not aligned - 0x8f89e2b0
> CACHE: Misaligned operation at range [8f89dab0, 8f89e2b0]
> CACHE: Misaligned operation at range [8f89dab0, 8f89e2b0]
> ERROR: v7_outer_cache_inval_range - start address is not aligned - 0x8f89dab0
> ERROR: v7_outer_cache_inval_range - stop address is not aligned - 0x8f89e2b0
> CACHE: Misaligned operation at range [8f89dca8, 8f89e4a8]
> CACHE: Misaligned operation at range [8f89dca8, 8f89e4a8]
> ERROR: v7_outer_cache_inval_range - start address is not aligned - 0x8f89dca8
> ERROR: v7_outer_cache_inval_range - stop address is not aligned - 0x8f89e4a8
> CACHE: Misaligned operation at range [8f89dca8, 8f89e4a8]
> CACHE: Misaligned operation at range [8f89dca8, 8f89e4a8]
> ERROR: v7_outer_cache_inval_range - start address is not aligned - 0x8f89dca8
> ERROR: v7_outer_cache_inval_range - stop address is not aligned - 0x8f89e4a8
> CACHE: Misaligned operation at range [8f89dc70, 8f89e470]
> CACHE: Misaligned operation at range [8f89dc70, 8f89e470]
> ERROR: v7_outer_cache_inval_range - start address is not aligned - 0x8f89dc70
> ERROR: v7_outer_cache_inval_range - stop address is not aligned - 0x8f89e470
> CACHE: Misaligned operation at range [8f89dc70, 8f89e470]
> CACHE: Misaligned operation at range [8f89dc70, 8f89e470]
> ERROR: v7_outer_cache_inval_range - start address is not aligned - 0x8f89dc70
> ERROR: v7_outer_cache_inval_range - stop address is not aligned - 0x8f89e470
> CACHE: Misaligned operation at range [8f89e488, 8f89ec88]
> CACHE: Misaligned operation at range [8f89e488, 8f89ec88]
> ERROR: v7_outer_cache_inval_range - start address is not aligned - 0x8f89e488
> ERROR: v7_outer_cache_inval_range - stop address is not aligned - 0x8f89ec88
> CACHE: Misaligned operation at range [8f89e488, 8f89ec88]
> CACHE: Misaligned operation at range [8f89e488, 8f89ec88]
> ERROR: v7_outer_cache_inval_range - start address is not aligned - 0x8f89e488
> ERROR: v7_outer_cache_inval_range - stop address is not aligned - 0x8f89ec88
> CACHE: Misaligned operation at range [8f89e470, 8f89ec70]
> CACHE: Misaligned operation at range [8f89e470, 8f89ec70]
> ERROR: v7_outer_cache_inval_range - start address is not aligned - 0x8f89e470
> ERROR: v7_outer_cache_inval_range - stop address is not aligned - 0x8f89ec70
> CACHE: Misaligned operation at range [8f89e470, 8f89ec70]
> CACHE: Misaligned operation at range [8f89e470, 8f89ec70]
> ERROR: v7_outer_cache_inval_range - start address is not aligned - 0x8f89e470
> ERROR: v7_outer_cache_inval_range - stop address is not aligned - 0x8f89ec70
> CACHE: Misaligned operation at range [8f89e488, 8f89ec88]
> CACHE: Misaligned operation at range [8f89e488, 8f89ec88]
> ERROR: v7_outer_cache_inval_range - start address is not aligned - 0x8f89e488
> ERROR: v7_outer_cache_inval_range - stop address is not aligned - 0x8f89ec88
> CACHE: Misaligned operation at range [8f89e488, 8f89ec88]
> CACHE: Misaligned operation at range [8f89e488, 8f89ec88]
> ERROR: v7_outer_cache_inval_range - start address is not aligned - 0x8f89e488
> ERROR: v7_outer_cache_inval_range - stop address is not aligned - 0x8f89ec88
> CACHE: Misaligned operation at range [8f89e438, 8f89ec38]
> CACHE: Misaligned operation at range [8f89e438, 8f89ec38]
> ERROR: v7_outer_cache_inval_range - start address is not aligned - 0x8f89e438
> ERROR: v7_outer_cache_inval_range - stop address is not aligned - 0x8f89ec38
> CACHE: Misaligned operation at range [8f89e438, 8f89ec38]
> CACHE: Misaligned operation at range [8f89e438, 8f89ec38]
> ERROR: v7_outer_cache_inval_range - start address is not aligned - 0x8f89e438
> ERROR: v7_outer_cache_inval_range - stop address is not aligned - 0x8f89ec38
> AHCI 0001.0300 32 slots 1 ports 3 Gbps 0x1 impl SATA mode
> flags: ncq stag pm led clo only pmp pio slum part
> No port device detected!
>
> Device 0: Model:  Firm:  Ser#:
>             Type: Hard Disk
>             Capacity: not available
> ... is now current device
> ** Bad device size - sata 0 **
> starting USB...
> USB0:   Port not available.
> USB1:   USB EHCI 1.00
> scanning bus 1 for devices... 1 USB Device(s) found
>        scanning usb for storage devices... 0 Storage Device(s) found
>
> Device 0: device type unknown
> ... is now current device
> ** Bad device usb 0 **
> ** Bad device usb 0 **


More information about the U-Boot mailing list