[PATCH RESEND v2 3/4] ARM: BCM: Add SMP support for Broadcom NSP
From: Kapil Hali <hidden>
Date: 2015-11-10 16:21:43
Also in:
linux-devicetree, lkml
Hi Florian, Linus, On 11/10/2015 7:59 AM, Florian Fainelli wrote:
2015-11-09 2:09 GMT-08:00 Linus Walleij [off-list ref]:quoted
On Fri, Nov 6, 2015 at 8:49 PM, Kapil Hali [off-list ref] wrote:quoted
Add SMP support for Broadcom's Northstar Plus SoC cpu enable method. This changes also consolidates iProc family's - BCM NSP and BCM Kona, platform SMP handling in a common file. Northstar Plus SoC is based on ARM Cortex-A9 revision r3p0 which requires configuration for ARM Errata 764369 for SMP. This change adds the needed configuration option. Signed-off-by: Kapil Hali <redacted>This version looks saner to me.quoted
+static int nsp_write_lut(void) +{ + void __iomem *sku_rom_lut; + phys_addr_t secondary_startup_phy; + + if (!secondary_boot) { + pr_warn("required secondary boot register not specified\n"); + return -EINVAL; + } + + sku_rom_lut = ioremap_nocache((phys_addr_t)secondary_boot, + sizeof(secondary_boot));Why is this address not just taken directly from the device tree?It comes directly from DT, that's what bcm_smp_prepare_cpus() does read from Device Tree.quoted
If it is not in the device tree: why? Also give it a sane name, bcm_sec_boot_address or so. "secondary_boot" sounds like a function you call to boot the second core.Agree with that, there could be a better name which better reflects this is a variable.
As this change is consolidating SMP implementation, I kept the same name of the variable which was used in kona_smp.c so that the changes in the common code is minimal. Also, the fact that the change is part of up-streamed code, I didn't alter with the variable name. Shall I change it in the next patch? Thanks, Kapil