[PATCH v4 4/4] ARM: BCM5301X: workaround suppress fault

Hauke Mehrtens hauke at hauke-m.de
Sun Jan 5 17:29:32 EST 2014


On 01/05/2014 09:25 PM, Arnd Bergmann wrote:
> On Sunday 05 January 2014, Hauke Mehrtens wrote:
>> Without this patch I am getting a unhandled fault exception like this
>> one after "Freeing unused kernel memory":
>>
>> Freeing unused kernel memory: 1260K (c02c1000 - c03fc000)
>> Unhandled fault: imprecise external abort (0x1c06) at 0xb6f89005
>> Kernel panic - not syncing: Attempted to kill init! exitcode=0x00000007
>>
>> The address which is here 0xb6f89005 changes from boot to boot, with a
>> new build the changes are bigger. With kernel 3.10 I have also seen
>> this fault at different places in the boot process, but starting with
>> 3.11 they are always occurring after the "Freeing unused kernel memory"
>> message. I never was able to completely boot to userspace without this
>> handler. The abort code is constant 0x1c06. This fault just happens
>> once in the boot process I have never seen it happing twice or more.
> 
> How about narrowing down the abort handler to only ignore a single
> fault after boot, and only with the abort code 0x1c06? That way you
> don't risk silent data corruption in case something else goes wrong
> after booting.

Ok I extended the bcm5301x_abort_handler() to only ignore the fault when
the code is 0x1c06 and it is the first fault.

>> This workaround was copied from the vendor code including most of the
>> comments. It says it they think this is caused by the CFE boot loader
>> used on this device. I do not have any access to any datasheet or
>> errata document to check this.
> 
> Does the SoC by chance have a PCI host controller? The only other
> platforms with this kind of handler have it to catch things going wrong
> with PCI. Maybe another thing to try is to turn off the PCI core
> at early boot.

Yes it has two PCIe host controller. I haven't tried to initialized the
PCIe core. It could be that the boot loader did something with the PCIe
controller, but I do not think so.

Hauke



More information about the linux-arm-kernel mailing list