Re: Booting bcm47xx (bcma & stuff), sharing code with bcm53xx
From: Rafał Miłecki <zajec5@gmail.com>
Date: 2014-08-27 06:07:20
Also in:
linux-mips
On 26 August 2014 22:32, Hauke Mehrtens [off-list ref] wrote:
On 08/26/2014 06:42 PM, Rafał Miłecki wrote:quoted
3) Above change (point 2) would require some small change in bcma. We would need 2-stages init: detecting (with kmalloc!) bus cores, registering cores. This is required, because we can't register cores too early, device_add (and the underlying kobject) would oops/WARN in kobject_get.This sound good to me, but I still have some questions. Do you also want to change ssb registration? Is it worth the effort? I think MIPS bcm47xx will be EOL and replaced by the ARM versions completely in the next years. (I do not have any private information about Broadcom product politics)
ssb has its own hacks like having "struct device" static (I think it was a big "no" from Greg when introducing bcma). ssb is already smart enough to detect early boot phase and don't register devices then. I think we won't need to modify ssb at all. On the other hand I care about bcma, as it's used by PCIe devices and will still be used on ARM SoCs.
I think this will be reduce the number of hacks a little bit, but you still need a 2 stage init of bcma for mips SoCs, and I do not know how to prevent this.
I'm OK with two separated calls to the bcma to register it fully. Not a big deal. We could also think about sth like a ssb_is_early_boot, not sure about this yet. -- Rafał