[PATCH V3] bcma: use device from DT (brcm, bus-chipcommon) for SoC GPIO chip
Rafał Miłecki
zajec5 at gmail.com
Tue Sep 30 03:41:53 PDT 2014
On 30 September 2014 12:36, Arnd Bergmann <arnd at arndb.de> wrote:
> On Tuesday 30 September 2014 12:22:26 Rafał Miłecki wrote:
>> @@ -218,6 +218,12 @@ int bcma_gpio_init(struct bcma_drv_cc *cc)
>> #if IS_BUILTIN(CONFIG_BCM47XX)
>> chip->to_irq = bcma_gpio_to_irq;
>> #endif
>> +#if IS_BUILTIN(CONFIG_OF)
>> + if (cc->core->bus->hosttype == BCMA_HOSTTYPE_SOC)
>> + chip->of_node = of_find_compatible_node(
>> + bus->host_pdev->dev.of_node, NULL,
>> + "brcm,bus-chipcommon");
>> +#endif
>> switch (cc->core->bus->chipinfo.id) {
>
> This doesn't: you are now searching through all nodes starting at the
> axi node rather than searching just through the children.
>
> I think it would be better with the first change in place to set
> chip->of_node to cc->core->dev.of_node, and set that pointer in
> bcma_bus_scan by matching the 'reg' number. I think that is what
> an earlier version of the bcma DT support did in order to find the
> IRQs. We no longer need it for that purpose, but it seems like a
> good idea anyway, as I expect other bcma_devices to have similar
> requirements to add additional properties.
Ohh, of course, I didn't notice that
[PATCH v6] bcma: register bcma as device tree driver
already contains bcma_of_fill_device. This will simplify my search a lot!
--
Rafał
More information about the linux-arm-kernel
mailing list