1
0
mirror of git://projects.qi-hardware.com/openwrt-xburst.git synced 2024-11-24 01:43:08 +02:00

kernel: update ssb and bcma to linux-next next-20110628

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@27299 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
hauke 2011-06-28 19:33:50 +00:00
parent e2e4e12a9a
commit 6936562161
6 changed files with 51 additions and 57 deletions

View File

@ -1,25 +0,0 @@
From 974353557959d8ec1c022511cd1b3eeaa7ed482a Mon Sep 17 00:00:00 2001
From: Hauke Mehrtens <hauke@hauke-m.de>
Date: Sat, 4 Jun 2011 15:55:24 +0200
Subject: [PATCH 15/15] ssb: fix ssb clock rate according to broadcom source
This fix was done according to si_clock_rate function in broadcom siutils.c
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
---
drivers/ssb/main.c | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
--- a/drivers/ssb/main.c
+++ b/drivers/ssb/main.c
@@ -1002,8 +1002,8 @@ u32 ssb_calc_clock_rate(u32 plltype, u32
switch (plltype) {
case SSB_PLLTYPE_6: /* 100/200 or 120/240 only */
if (m & SSB_CHIPCO_CLK_T6_MMASK)
- return SSB_CHIPCO_CLK_T6_M0;
- return SSB_CHIPCO_CLK_T6_M1;
+ return SSB_CHIPCO_CLK_T6_M1;
+ return SSB_CHIPCO_CLK_T6_M0;
case SSB_PLLTYPE_1: /* 48Mhz base, 3 dividers */
case SSB_PLLTYPE_3: /* 25Mhz, 2 dividers */
case SSB_PLLTYPE_4: /* 48Mhz, 4 dividers */

View File

@ -1,25 +0,0 @@
From 974353557959d8ec1c022511cd1b3eeaa7ed482a Mon Sep 17 00:00:00 2001
From: Hauke Mehrtens <hauke@hauke-m.de>
Date: Sat, 4 Jun 2011 15:55:24 +0200
Subject: [PATCH 15/15] ssb: fix ssb clock rate according to broadcom source
This fix was done according to si_clock_rate function in broadcom siutils.c
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
---
drivers/ssb/main.c | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
--- a/drivers/ssb/main.c
+++ b/drivers/ssb/main.c
@@ -1002,8 +1002,8 @@ u32 ssb_calc_clock_rate(u32 plltype, u32
switch (plltype) {
case SSB_PLLTYPE_6: /* 100/200 or 120/240 only */
if (m & SSB_CHIPCO_CLK_T6_MMASK)
- return SSB_CHIPCO_CLK_T6_M0;
- return SSB_CHIPCO_CLK_T6_M1;
+ return SSB_CHIPCO_CLK_T6_M1;
+ return SSB_CHIPCO_CLK_T6_M0;
case SSB_PLLTYPE_1: /* 48Mhz base, 3 dividers */
case SSB_PLLTYPE_3: /* 25Mhz, 2 dividers */
case SSB_PLLTYPE_4: /* 48Mhz, 4 dividers */

View File

@ -587,6 +587,17 @@
{ {
int err; int err;
@@ -1001,8 +1002,8 @@ u32 ssb_calc_clock_rate(u32 plltype, u32
switch (plltype) {
case SSB_PLLTYPE_6: /* 100/200 or 120/240 only */
if (m & SSB_CHIPCO_CLK_T6_MMASK)
- return SSB_CHIPCO_CLK_T6_M0;
- return SSB_CHIPCO_CLK_T6_M1;
+ return SSB_CHIPCO_CLK_T6_M1;
+ return SSB_CHIPCO_CLK_T6_M0;
case SSB_PLLTYPE_1: /* 48Mhz base, 3 dividers */
case SSB_PLLTYPE_3: /* 25Mhz, 2 dividers */
case SSB_PLLTYPE_4: /* 48Mhz, 4 dividers */
@@ -1117,23 +1118,22 @@ static u32 ssb_tmslow_reject_bitmask(str @@ -1117,23 +1118,22 @@ static u32 ssb_tmslow_reject_bitmask(str
{ {
u32 rev = ssb_read32(dev, SSB_IDLOW) & SSB_IDLOW_SSBREV; u32 rev = ssb_read32(dev, SSB_IDLOW) & SSB_IDLOW_SSBREV;
@ -749,15 +760,16 @@
return 1; return 1;
} }
#endif /* CONFIG_SSB_PCIHOST */ #endif /* CONFIG_SSB_PCIHOST */
@@ -307,7 +310,7 @@ int ssb_bus_scan(struct ssb_bus *bus, @@ -307,8 +310,7 @@ int ssb_bus_scan(struct ssb_bus *bus,
} else { } else {
if (bus->bustype == SSB_BUSTYPE_PCI) { if (bus->bustype == SSB_BUSTYPE_PCI) {
bus->chip_id = pcidev_to_chipid(bus->host_pci); bus->chip_id = pcidev_to_chipid(bus->host_pci);
- pci_read_config_word(bus->host_pci, PCI_REVISION_ID, - pci_read_config_word(bus->host_pci, PCI_REVISION_ID,
+ pci_read_config_byte(bus->host_pci, PCI_REVISION_ID, - &bus->chip_rev);
&bus->chip_rev); + bus->chip_rev = bus->host_pci->revision;
bus->chip_package = 0; bus->chip_package = 0;
} else { } else {
bus->chip_id = 0x4710;
--- a/drivers/ssb/sprom.c --- a/drivers/ssb/sprom.c
+++ b/drivers/ssb/sprom.c +++ b/drivers/ssb/sprom.c
@@ -17,7 +17,7 @@ @@ -17,7 +17,7 @@

View File

@ -916,7 +916,7 @@
+} +}
--- /dev/null --- /dev/null
+++ b/drivers/bcma/main.c +++ b/drivers/bcma/main.c
@@ -0,0 +1,254 @@ @@ -0,0 +1,255 @@
+/* +/*
+ * Broadcom specific AMBA + * Broadcom specific AMBA
+ * Bus subsystem + * Bus subsystem
@ -926,6 +926,7 @@
+ +
+#include "bcma_private.h" +#include "bcma_private.h"
+#include <linux/bcma/bcma.h> +#include <linux/bcma/bcma.h>
+#include <linux/slab.h>
+ +
+MODULE_DESCRIPTION("Broadcom's specific AMBA driver"); +MODULE_DESCRIPTION("Broadcom's specific AMBA driver");
+MODULE_LICENSE("GPL"); +MODULE_LICENSE("GPL");

View File

@ -166,6 +166,17 @@
{ {
int err; int err;
@@ -1001,8 +1002,8 @@ u32 ssb_calc_clock_rate(u32 plltype, u32
switch (plltype) {
case SSB_PLLTYPE_6: /* 100/200 or 120/240 only */
if (m & SSB_CHIPCO_CLK_T6_MMASK)
- return SSB_CHIPCO_CLK_T6_M0;
- return SSB_CHIPCO_CLK_T6_M1;
+ return SSB_CHIPCO_CLK_T6_M1;
+ return SSB_CHIPCO_CLK_T6_M0;
case SSB_PLLTYPE_1: /* 48Mhz base, 3 dividers */
case SSB_PLLTYPE_3: /* 25Mhz, 2 dividers */
case SSB_PLLTYPE_4: /* 48Mhz, 4 dividers */
--- a/drivers/ssb/pcihost_wrapper.c --- a/drivers/ssb/pcihost_wrapper.c
+++ b/drivers/ssb/pcihost_wrapper.c +++ b/drivers/ssb/pcihost_wrapper.c
@@ -53,8 +53,8 @@ static int ssb_pcihost_resume(struct pci @@ -53,8 +53,8 @@ static int ssb_pcihost_resume(struct pci
@ -188,3 +199,15 @@
{ {
driver->probe = ssb_pcihost_probe; driver->probe = ssb_pcihost_probe;
driver->remove = ssb_pcihost_remove; driver->remove = ssb_pcihost_remove;
--- a/drivers/ssb/scan.c
+++ b/drivers/ssb/scan.c
@@ -310,8 +310,7 @@ int ssb_bus_scan(struct ssb_bus *bus,
} else {
if (bus->bustype == SSB_BUSTYPE_PCI) {
bus->chip_id = pcidev_to_chipid(bus->host_pci);
- pci_read_config_byte(bus->host_pci, PCI_REVISION_ID,
- &bus->chip_rev);
+ bus->chip_rev = bus->host_pci->revision;
bus->chip_package = 0;
} else {
bus->chip_id = 0x4710;

View File

@ -200,7 +200,15 @@
}; };
--- a/drivers/bcma/main.c --- a/drivers/bcma/main.c
+++ b/drivers/bcma/main.c +++ b/drivers/bcma/main.c
@@ -89,6 +89,8 @@ static int bcma_register_cores(struct bc @@ -7,6 +7,7 @@
#include "bcma_private.h"
#include <linux/bcma/bcma.h>
+#include <linux/slab.h>
MODULE_DESCRIPTION("Broadcom's specific AMBA driver");
MODULE_LICENSE("GPL");
@@ -89,6 +90,8 @@ static int bcma_register_cores(struct bc
switch (bus->hosttype) { switch (bus->hosttype) {
case BCMA_HOSTTYPE_PCI: case BCMA_HOSTTYPE_PCI:
core->dev.parent = &bus->host_pci->dev; core->dev.parent = &bus->host_pci->dev;
@ -209,7 +217,7 @@
break; break;
case BCMA_HOSTTYPE_NONE: case BCMA_HOSTTYPE_NONE:
case BCMA_HOSTTYPE_SDIO: case BCMA_HOSTTYPE_SDIO:
@@ -144,6 +146,13 @@ int bcma_bus_register(struct bcma_bus *b @@ -144,6 +147,13 @@ int bcma_bus_register(struct bcma_bus *b
bcma_core_pci_init(&bus->drv_pci); bcma_core_pci_init(&bus->drv_pci);
} }
@ -223,7 +231,7 @@
/* Register found cores */ /* Register found cores */
bcma_register_cores(bus); bcma_register_cores(bus);
@@ -151,13 +160,11 @@ int bcma_bus_register(struct bcma_bus *b @@ -151,13 +161,11 @@ int bcma_bus_register(struct bcma_bus *b
return 0; return 0;
} }