
On Thu, Oct 5, 2017 at 12:36 AM, Jonathan Gray jsg@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@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@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@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 **