Skip to content

Commit

Permalink
bcma: use chipcommon node from DT for SoC GPIO chip
Browse files Browse the repository at this point in the history
This will allow us to define GPIO-attached devices (LEDs, buttons) in
the the device tree.

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
  • Loading branch information
rmilecki authored and linvjw committed Sep 30, 2014
1 parent 2101e53 commit a0196d1
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 0 deletions.
12 changes: 12 additions & 0 deletions Documentation/devicetree/bindings/bus/bcma.txt
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,11 @@ Required properties:
The cores on the AXI bus are automatically detected by bcma with the
memory ranges they are using and they get registered afterwards.

The top-level axi bus may contain children representing attached cores
(devices). This is needed since some hardware details can't be auto
detected (e.g. IRQ numbers). Also some of the cores may be responsible
for extra things, e.g. ChipCommon providing access to the GPIO chip.

Example:

axi@18000000 {
Expand All @@ -17,4 +22,11 @@ Example:
ranges = <0x00000000 0x18000000 0x00100000>;
#address-cells = <1>;
#size-cells = <1>;

chipcommon {
reg = <0x00000000 0x1000>;

gpio-controller;
#gpio-cells = <2>;
};
};
4 changes: 4 additions & 0 deletions drivers/bcma/driver_gpio.c
Original file line number Diff line number Diff line change
Expand Up @@ -217,6 +217,10 @@ int bcma_gpio_init(struct bcma_drv_cc *cc)
chip->direction_output = bcma_gpio_direction_output;
#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 = cc->core->dev.of_node;
#endif
switch (cc->core->bus->chipinfo.id) {
case BCMA_CHIP_ID_BCM5357:
Expand Down

0 comments on commit a0196d1

Please sign in to comment.