From 501da07c5d80d867a9ee3bd8719ef7d491003120 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= Date: Wed, 6 May 2015 05:54:19 +0000 Subject: [PATCH] brcm47xx: fix regression in NVRAM support for WGT634U MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit We were calculating wrong offset, NVRAM wasn't found and OpenWrt didn't boot. Fixes: 9019803 ("brcm47xx: backport BCM47XX arch patches (clean NVRAM code, later init)") Signed-off-by: Rafał Miłecki SVN-Revision: 45618 --- .../linux/brcm47xx/patches-3.18/820-wgt634u-nvram-fix.patch | 4 ++-- target/linux/brcm47xx/patches-4.0/820-wgt634u-nvram-fix.patch | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/target/linux/brcm47xx/patches-3.18/820-wgt634u-nvram-fix.patch b/target/linux/brcm47xx/patches-3.18/820-wgt634u-nvram-fix.patch index 714fb6d18a..51ff74301a 100644 --- a/target/linux/brcm47xx/patches-3.18/820-wgt634u-nvram-fix.patch +++ b/target/linux/brcm47xx/patches-3.18/820-wgt634u-nvram-fix.patch @@ -260,8 +260,8 @@ out the configuration than the in kernel cfe config reader. + + /* XXX: hack for supporting the CFE environment stuff on WGT634U */ + if (lim >= 8 * 1024 * 1024) { -+ src = (u32 *) iobase + 8 * 1024 * 1024 - 0x2000; -+ dst = (u32 *) nvram_buf; ++ src = (u32 *)(iobase + 8 * 1024 * 1024 - 0x2000); ++ dst = (u32 *)nvram_buf; + + if ((*src & 0xff00ff) == 0x000001) { + printk("early_nvram_init: WGT634U NVRAM found.\n"); diff --git a/target/linux/brcm47xx/patches-4.0/820-wgt634u-nvram-fix.patch b/target/linux/brcm47xx/patches-4.0/820-wgt634u-nvram-fix.patch index 714fb6d18a..51ff74301a 100644 --- a/target/linux/brcm47xx/patches-4.0/820-wgt634u-nvram-fix.patch +++ b/target/linux/brcm47xx/patches-4.0/820-wgt634u-nvram-fix.patch @@ -260,8 +260,8 @@ out the configuration than the in kernel cfe config reader. + + /* XXX: hack for supporting the CFE environment stuff on WGT634U */ + if (lim >= 8 * 1024 * 1024) { -+ src = (u32 *) iobase + 8 * 1024 * 1024 - 0x2000; -+ dst = (u32 *) nvram_buf; ++ src = (u32 *)(iobase + 8 * 1024 * 1024 - 0x2000); ++ dst = (u32 *)nvram_buf; + + if ((*src & 0xff00ff) == 0x000001) { + printk("early_nvram_init: WGT634U NVRAM found.\n");