summaryrefslogtreecommitdiff
path: root/target/linux/brcm47xx/patches-4.0/030-12-MIPS-BCM47xx-Add-generic-function-filling-SPROM-entr.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/brcm47xx/patches-4.0/030-12-MIPS-BCM47xx-Add-generic-function-filling-SPROM-entr.patch')
-rw-r--r--target/linux/brcm47xx/patches-4.0/030-12-MIPS-BCM47xx-Add-generic-function-filling-SPROM-entr.patch80
1 files changed, 0 insertions, 80 deletions
diff --git a/target/linux/brcm47xx/patches-4.0/030-12-MIPS-BCM47xx-Add-generic-function-filling-SPROM-entr.patch b/target/linux/brcm47xx/patches-4.0/030-12-MIPS-BCM47xx-Add-generic-function-filling-SPROM-entr.patch
deleted file mode 100644
index 482aa49..0000000
--- a/target/linux/brcm47xx/patches-4.0/030-12-MIPS-BCM47xx-Add-generic-function-filling-SPROM-entr.patch
+++ /dev/null
@@ -1,80 +0,0 @@
-From d55a52ccf8f80cdf51af2c5c6e56c825f98c4f85 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <zajec5@gmail.com>
-Date: Thu, 2 Apr 2015 09:13:49 +0200
-Subject: [PATCH] MIPS: BCM47xx: Add generic function filling SPROM entries
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Handling many SPROM revisions became messy, we have tons of functions
-specific to various revision groups which are quite hard to track.
-For years there is yet another revision 11 asking for support, but
-adding it in current the form would make things even worse.
-To resolve this problem let's add new function with table-like entries
-that will contain revision bitmask for every SPROM variable.
-
-Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
-Cc: linux-mips@linux-mips.org
-Cc: Hauke Mehrtens <hauke@hauke-m.de>
-Cc: Jonas Gorski <jonas.gorski@gmail.com>
-Patchwork: https://patchwork.linux-mips.org/patch/9659/
-Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
----
- arch/mips/bcm47xx/sprom.c | 32 +++++++++++++++++++++++++++++---
- 1 file changed, 29 insertions(+), 3 deletions(-)
-
---- a/arch/mips/bcm47xx/sprom.c
-+++ b/arch/mips/bcm47xx/sprom.c
-@@ -180,6 +180,33 @@ static void nvram_read_alpha2(const char
- memcpy(val, buf, 2);
- }
-
-+/* This is one-function-only macro, it uses local "sprom" variable! */
-+#define ENTRY(_revmask, _type, _prefix, _name, _val, _allset, _fallback) \
-+ if (_revmask & BIT(sprom->revision)) \
-+ nvram_read_ ## _type(_prefix, NULL, _name, &sprom->_val, \
-+ _allset, _fallback)
-+/*
-+ * Special version of filling function that can be safely called for any SPROM
-+ * revision. For every NVRAM to SPROM mapping it contains bitmask of revisions
-+ * for which the mapping is valid.
-+ * It obviously requires some hexadecimal/bitmasks knowledge, but allows
-+ * writing cleaner code (easy revisions handling).
-+ * Note that while SPROM revision 0 was never used, we still keep BIT(0)
-+ * reserved for it, just to keep numbering sane.
-+ */
-+static void bcm47xx_sprom_fill_auto(struct ssb_sprom *sprom,
-+ const char *prefix, bool fallback)
-+{
-+ const char *pre = prefix;
-+ bool fb = fallback;
-+
-+ ENTRY(0xfffffffe, u16, pre, "boardrev", board_rev, 0, true);
-+ ENTRY(0xfffffffe, u16, pre, "boardnum", board_num, 0, fb);
-+
-+ /* TODO: Move more mappings here */
-+}
-+#undef ENTRY /* It's specififc, uses local variable, don't use it (again). */
-+
- static void bcm47xx_fill_sprom_r1234589(struct ssb_sprom *sprom,
- const char *prefix, bool fallback)
- {
-@@ -714,9 +741,6 @@ static void bcm47xx_fill_sprom_ethernet(
- static void bcm47xx_fill_board_data(struct ssb_sprom *sprom, const char *prefix,
- bool fallback)
- {
-- nvram_read_u16(prefix, NULL, "boardrev", &sprom->board_rev, 0, true);
-- nvram_read_u16(prefix, NULL, "boardnum", &sprom->board_num, 0,
-- fallback);
- nvram_read_u16(prefix, NULL, "boardtype", &sprom->board_type, 0, true);
- nvram_read_u32_2(prefix, "boardflags", &sprom->boardflags_lo,
- &sprom->boardflags_hi, fallback);
-@@ -787,6 +811,8 @@ void bcm47xx_fill_sprom(struct ssb_sprom
- bcm47xx_fill_sprom_r12389(sprom, prefix, fallback);
- bcm47xx_fill_sprom_r1(sprom, prefix, fallback);
- }
-+
-+ bcm47xx_sprom_fill_auto(sprom, prefix, fallback);
- }
-
- #ifdef CONFIG_BCM47XX_SSB