1 From f8c6045ee00b82c1bb3f8b3446d723c4d50e6b08 Mon Sep 17 00:00:00 2001
2 From: Hauke Mehrtens <hauke@hauke-m.de>
3 Date: Mon, 12 May 2014 21:57:53 +0200
4 Subject: [PATCH 09/17] bcma: store more alternative addresses
6 Each core could have more than one alternative address. There are cores
7 with 8 alternative addresses for different functions. The PHY control
8 in the Chip common B core is done through the 2. alternative address
11 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
13 drivers/bcma/scan.c | 9 +++++----
14 drivers/usb/host/bcma-hcd.c | 2 +-
15 include/linux/bcma/bcma.h | 2 +-
16 3 files changed, 7 insertions(+), 6 deletions(-)
18 --- a/drivers/bcma/scan.c
19 +++ b/drivers/bcma/scan.c
20 @@ -276,7 +276,7 @@ static int bcma_get_next_core(struct bcm
21 struct bcma_device *core)
27 u8 ports[2], wrappers[2];
29 @@ -367,6 +367,7 @@ static int bcma_get_next_core(struct bcm
32 /* get & parse slave ports */
34 for (i = 0; i < ports[1]; i++) {
36 tmp = bcma_erom_get_addr_desc(bus, eromptr,
37 @@ -376,9 +377,9 @@ static int bcma_get_next_core(struct bcm
38 /* pr_debug("erom: slave port %d "
39 * "has %d descriptors\n", i, j); */
42 - if (i == 0 && j == 0)
45 + core->addr_s[k] = tmp;
50 --- a/drivers/usb/host/bcma-hcd.c
51 +++ b/drivers/usb/host/bcma-hcd.c
52 @@ -237,7 +237,7 @@ static int bcma_hcd_probe(struct bcma_de
53 bcma_hcd_init_chip(dev);
55 /* In AI chips EHCI is addrspace 0, OHCI is 1 */
56 - ohci_addr = dev->addr1;
57 + ohci_addr = dev->addr_s[0];
58 if ((chipinfo->id == 0x5357 || chipinfo->id == 0x4749)
59 && chipinfo->rev == 0)
60 ohci_addr = 0x18009000;
61 --- a/include/linux/bcma/bcma.h
62 +++ b/include/linux/bcma/bcma.h
63 @@ -267,7 +267,7 @@ struct bcma_device {
71 void __iomem *io_addr;