Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 303536
b: refs/heads/master
c: e167d9f
h: refs/heads/master
v: v3
  • Loading branch information
Hauke Mehrtens authored and Greg Kroah-Hartman committed Apr 18, 2012
1 parent 3448a70 commit 0f99ee7
Show file tree
Hide file tree
Showing 3 changed files with 20 additions and 2 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: af5810597ab38ed1eb1d38e04b6e89c9ccec988e
refs/heads/master: e167d9fbb881c030f93563fd364c8a0b8c5cd6d3
19 changes: 18 additions & 1 deletion trunk/drivers/bcma/scan.c
Original file line number Diff line number Diff line change
Expand Up @@ -297,6 +297,23 @@ static int bcma_get_next_core(struct bcma_bus *bus, u32 __iomem **eromptr,
return -EILSEQ;
}

/* First Slave Address Descriptor should be port 0:
* the main register space for the core
*/
tmp = bcma_erom_get_addr_desc(bus, eromptr, SCAN_ADDR_TYPE_SLAVE, 0);
if (tmp <= 0) {
/* Try again to see if it is a bridge */
tmp = bcma_erom_get_addr_desc(bus, eromptr,
SCAN_ADDR_TYPE_BRIDGE, 0);
if (tmp <= 0) {
return -EILSEQ;
} else {
pr_info("Bridge found\n");
return -ENXIO;
}
}
core->addr = tmp;

/* get & parse slave ports */
for (i = 0; i < ports[1]; i++) {
for (j = 0; ; j++) {
Expand All @@ -309,7 +326,7 @@ static int bcma_get_next_core(struct bcma_bus *bus, u32 __iomem **eromptr,
break;
} else {
if (i == 0 && j == 0)
core->addr = tmp;
core->addr1 = tmp;
}
}
}
Expand Down
1 change: 1 addition & 0 deletions trunk/include/linux/bcma/bcma.h
Original file line number Diff line number Diff line change
Expand Up @@ -139,6 +139,7 @@ struct bcma_device {
u8 core_unit;

u32 addr;
u32 addr1;
u32 wrap;

void __iomem *io_addr;
Expand Down

0 comments on commit 0f99ee7

Please sign in to comment.