summaryrefslogtreecommitdiff
path: root/target/linux
diff options
context:
space:
mode:
authorhauke <hauke@3c298f89-4303-0410-b956-a3cf2f4a3e73>2013-09-15 15:50:41 +0000
committerhauke <hauke@3c298f89-4303-0410-b956-a3cf2f4a3e73>2013-09-15 15:50:41 +0000
commit0f116fdd09b19d53b243c1232b8507ae35398f4f (patch)
tree5870cb8ce846c4d3e9b683ca06de71816362260e /target/linux
parentc553c3279a550de5566c4c597a72d42ec75b36e5 (diff)
brcm47xx: bgmac: allow bigger et_swtype nvram variable
Without this patch it is impossible to read et_swtype, because the 1 byte space is needed for the terminating null byte. Now it should be possible to read decimal and hex vars of max 8 bit. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@37999 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux')
-rw-r--r--target/linux/brcm47xx/patches-3.10/711-bgmac_fix_parsing_of_et_swtype.patch14
1 files changed, 14 insertions, 0 deletions
diff --git a/target/linux/brcm47xx/patches-3.10/711-bgmac_fix_parsing_of_et_swtype.patch b/target/linux/brcm47xx/patches-3.10/711-bgmac_fix_parsing_of_et_swtype.patch
new file mode 100644
index 0000000000..21342ffd80
--- /dev/null
+++ b/target/linux/brcm47xx/patches-3.10/711-bgmac_fix_parsing_of_et_swtype.patch
@@ -0,0 +1,14 @@
+--- a/drivers/net/ethernet/broadcom/bgmac.c
++++ b/drivers/net/ethernet/broadcom/bgmac.c
+@@ -909,9 +909,9 @@ static void bgmac_chip_reset(struct bgma
+ u8 et_swtype = 0;
+ u8 sw_type = BGMAC_CHIPCTL_1_SW_TYPE_EPHY |
+ BGMAC_CHIPCTL_1_IF_TYPE_MII;
+- char buf[2];
++ char buf[4];
+
+- if (bcm47xx_nvram_getenv("et_swtype", buf, 1) > 0) {
++ if (bcm47xx_nvram_getenv("et_swtype", buf, sizeof(buf)) > 0) {
+ if (kstrtou8(buf, 0, &et_swtype))
+ bgmac_err(bgmac, "Failed to parse et_swtype (%s)\n",
+ buf);