diff options
Diffstat (limited to 'target/linux/brcm47xx/patches-3.18/031-05-MIPS-BCM47xx-Move-NVRAM-header-to-the-include-linux.patch')
-rw-r--r-- | target/linux/brcm47xx/patches-3.18/031-05-MIPS-BCM47xx-Move-NVRAM-header-to-the-include-linux.patch | 249 |
1 files changed, 249 insertions, 0 deletions
diff --git a/target/linux/brcm47xx/patches-3.18/031-05-MIPS-BCM47xx-Move-NVRAM-header-to-the-include-linux.patch b/target/linux/brcm47xx/patches-3.18/031-05-MIPS-BCM47xx-Move-NVRAM-header-to-the-include-linux.patch new file mode 100644 index 0000000000..d073a06d32 --- /dev/null +++ b/target/linux/brcm47xx/patches-3.18/031-05-MIPS-BCM47xx-Move-NVRAM-header-to-the-include-linux.patch @@ -0,0 +1,249 @@ +From 138173d4e826587da66c7d321da1a91283222536 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <zajec5@gmail.com> +Date: Mon, 1 Dec 2014 07:58:18 +0100 +Subject: [PATCH] MIPS: BCM47xx: Move NVRAM header to the include/linux/. +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +There are two reasons for having this header in the common place: +1) Simplifying drivers that read NVRAM entries. We will be able to + safely call bcm47xx_nvram_* functions without #ifdef-s. +2) Getting NVRAM driver out of MIPS arch code. This is needed to support + BCM5301X arch which also requires this NVRAM driver. Patch for that + will follow once we get is reviewed. + +Signed-off-by: Rafał Miłecki <zajec5@gmail.com> +Acked-by: Hauke Mehrtens <hauke@hauke-m.de> +Cc: linux-mips@linux-mips.org +Cc: Arnd Bergmann <arnd@arndb.de> +Cc: Paul Walmsley <paul@pwsan.com> +Cc: linux-soc@vger.kernel.org +Patchwork: https://patchwork.linux-mips.org/patch/8619/ +Signed-off-by: Ralf Baechle <ralf@linux-mips.org> +--- + arch/mips/bcm47xx/board.c | 2 +- + arch/mips/bcm47xx/nvram.c | 2 +- + arch/mips/bcm47xx/setup.c | 1 - + arch/mips/bcm47xx/sprom.c | 1 - + arch/mips/bcm47xx/time.c | 1 - + arch/mips/include/asm/mach-bcm47xx/bcm47xx.h | 1 + + arch/mips/include/asm/mach-bcm47xx/bcm47xx_nvram.h | 21 ------------- + drivers/bcma/driver_mips.c | 2 +- + drivers/net/ethernet/broadcom/b44.c | 2 +- + drivers/net/ethernet/broadcom/bgmac.c | 2 +- + drivers/ssb/driver_chipcommon_pmu.c | 2 +- + drivers/ssb/driver_mipscore.c | 2 +- + include/linux/bcm47xx_nvram.h | 34 ++++++++++++++++++++++ + 13 files changed, 42 insertions(+), 31 deletions(-) + delete mode 100644 arch/mips/include/asm/mach-bcm47xx/bcm47xx_nvram.h + create mode 100644 include/linux/bcm47xx_nvram.h + +diff --git a/arch/mips/bcm47xx/board.c b/arch/mips/bcm47xx/board.c +index b3ae068..6e85130 100644 +--- a/arch/mips/bcm47xx/board.c ++++ b/arch/mips/bcm47xx/board.c +@@ -1,8 +1,8 @@ + #include <linux/errno.h> + #include <linux/export.h> + #include <linux/string.h> ++#include <bcm47xx.h> + #include <bcm47xx_board.h> +-#include <bcm47xx_nvram.h> + + struct bcm47xx_board_type { + const enum bcm47xx_board board; +diff --git a/arch/mips/bcm47xx/nvram.c b/arch/mips/bcm47xx/nvram.c +index d805d8a..7c77a88 100644 +--- a/arch/mips/bcm47xx/nvram.c ++++ b/arch/mips/bcm47xx/nvram.c +@@ -16,7 +16,7 @@ + #include <linux/kernel.h> + #include <linux/string.h> + #include <linux/mtd/mtd.h> +-#include <bcm47xx_nvram.h> ++#include <linux/bcm47xx_nvram.h> + + #define NVRAM_MAGIC 0x48534C46 /* 'FLSH' */ + #define NVRAM_SPACE 0x8000 +diff --git a/arch/mips/bcm47xx/setup.c b/arch/mips/bcm47xx/setup.c +index e43b504..b26c9c2 100644 +--- a/arch/mips/bcm47xx/setup.c ++++ b/arch/mips/bcm47xx/setup.c +@@ -42,7 +42,6 @@ + #include <asm/reboot.h> + #include <asm/time.h> + #include <bcm47xx.h> +-#include <bcm47xx_nvram.h> + #include <bcm47xx_board.h> + + union bcm47xx_bus bcm47xx_bus; +diff --git a/arch/mips/bcm47xx/sprom.c b/arch/mips/bcm47xx/sprom.c +index eff9205..c114b02 100644 +--- a/arch/mips/bcm47xx/sprom.c ++++ b/arch/mips/bcm47xx/sprom.c +@@ -27,7 +27,6 @@ + */ + + #include <bcm47xx.h> +-#include <bcm47xx_nvram.h> + #include <linux/if_ether.h> + #include <linux/etherdevice.h> + +diff --git a/arch/mips/bcm47xx/time.c b/arch/mips/bcm47xx/time.c +index 2c85d92..5b46510 100644 +--- a/arch/mips/bcm47xx/time.c ++++ b/arch/mips/bcm47xx/time.c +@@ -27,7 +27,6 @@ + #include <linux/ssb/ssb.h> + #include <asm/time.h> + #include <bcm47xx.h> +-#include <bcm47xx_nvram.h> + #include <bcm47xx_board.h> + + void __init plat_time_init(void) +diff --git a/arch/mips/include/asm/mach-bcm47xx/bcm47xx.h b/arch/mips/include/asm/mach-bcm47xx/bcm47xx.h +index 7527c1d..8ed77f6 100644 +--- a/arch/mips/include/asm/mach-bcm47xx/bcm47xx.h ++++ b/arch/mips/include/asm/mach-bcm47xx/bcm47xx.h +@@ -22,6 +22,7 @@ + #include <linux/ssb/ssb.h> + #include <linux/bcma/bcma.h> + #include <linux/bcma/bcma_soc.h> ++#include <linux/bcm47xx_nvram.h> + + enum bcm47xx_bus_type { + #ifdef CONFIG_BCM47XX_SSB +--- a/arch/mips/include/asm/mach-bcm47xx/bcm47xx_nvram.h ++++ b/arch/mips/include/asm/mach-bcm47xx/bcm47xx_nvram.h +@@ -1,21 +1 @@ +-/* +- * Copyright (C) 2005, Broadcom Corporation +- * Copyright (C) 2006, Felix Fietkau <nbd@openwrt.org> +- * +- * This program is free software; you can redistribute it and/or modify it +- * under the terms of the GNU General Public License as published by the +- * Free Software Foundation; either version 2 of the License, or (at your +- * option) any later version. +- */ +- +-#ifndef __BCM47XX_NVRAM_H +-#define __BCM47XX_NVRAM_H +- +-#include <linux/types.h> +-#include <linux/kernel.h> +- +-int bcm47xx_nvram_init_from_mem(u32 base, u32 lim); +-int bcm47xx_nvram_getenv(const char *name, char *val, size_t val_len); +-int bcm47xx_nvram_gpio_pin(const char *name); +- +-#endif /* __BCM47XX_NVRAM_H */ ++#include <linux/bcm47xx_nvram.h> +diff --git a/drivers/bcma/driver_mips.c b/drivers/bcma/driver_mips.c +index 04faf6d..24424f3 100644 +--- a/drivers/bcma/driver_mips.c ++++ b/drivers/bcma/driver_mips.c +@@ -21,7 +21,7 @@ + #include <linux/serial_reg.h> + #include <linux/time.h> + #ifdef CONFIG_BCM47XX +-#include <bcm47xx_nvram.h> ++#include <linux/bcm47xx_nvram.h> + #endif + + enum bcma_boot_dev { +diff --git a/drivers/net/ethernet/broadcom/b44.c b/drivers/net/ethernet/broadcom/b44.c +index bd5916a..77363d6 100644 +--- a/drivers/net/ethernet/broadcom/b44.c ++++ b/drivers/net/ethernet/broadcom/b44.c +@@ -400,7 +400,7 @@ static void b44_set_flow_ctrl(struct b44 *bp, u32 local, u32 remote) + } + + #ifdef CONFIG_BCM47XX +-#include <bcm47xx_nvram.h> ++#include <linux/bcm47xx_nvram.h> + static void b44_wap54g10_workaround(struct b44 *bp) + { + char buf[20]; +diff --git a/drivers/net/ethernet/broadcom/bgmac.c b/drivers/net/ethernet/broadcom/bgmac.c +index 0469f72..be059df 100644 +--- a/drivers/net/ethernet/broadcom/bgmac.c ++++ b/drivers/net/ethernet/broadcom/bgmac.c +@@ -18,7 +18,7 @@ + #include <linux/interrupt.h> + #include <linux/dma-mapping.h> + #include <linux/platform_data/b53.h> +-#include <bcm47xx_nvram.h> ++#include <linux/bcm47xx_nvram.h> + + static const struct bcma_device_id bgmac_bcma_tbl[] = { + BCMA_CORE(BCMA_MANUF_BCM, BCMA_CORE_4706_MAC_GBIT, BCMA_ANY_REV, BCMA_ANY_CLASS), +diff --git a/drivers/ssb/driver_chipcommon_pmu.c b/drivers/ssb/driver_chipcommon_pmu.c +index 1173a09..0942841 100644 +--- a/drivers/ssb/driver_chipcommon_pmu.c ++++ b/drivers/ssb/driver_chipcommon_pmu.c +@@ -14,7 +14,7 @@ + #include <linux/delay.h> + #include <linux/export.h> + #ifdef CONFIG_BCM47XX +-#include <bcm47xx_nvram.h> ++#include <linux/bcm47xx_nvram.h> + #endif + + #include "ssb_private.h" +diff --git a/drivers/ssb/driver_mipscore.c b/drivers/ssb/driver_mipscore.c +index 7b986f9..f87efef 100644 +--- a/drivers/ssb/driver_mipscore.c ++++ b/drivers/ssb/driver_mipscore.c +@@ -16,7 +16,7 @@ + #include <linux/serial_reg.h> + #include <linux/time.h> + #ifdef CONFIG_BCM47XX +-#include <bcm47xx_nvram.h> ++#include <linux/bcm47xx_nvram.h> + #endif + + #include "ssb_private.h" +diff --git a/include/linux/bcm47xx_nvram.h b/include/linux/bcm47xx_nvram.h +new file mode 100644 +index 0000000..b12b07e +--- /dev/null ++++ b/include/linux/bcm47xx_nvram.h +@@ -0,0 +1,34 @@ ++/* ++ * This program is free software; you can redistribute it and/or modify it ++ * under the terms of the GNU General Public License as published by the ++ * Free Software Foundation; either version 2 of the License, or (at your ++ * option) any later version. ++ */ ++ ++#ifndef __BCM47XX_NVRAM_H ++#define __BCM47XX_NVRAM_H ++ ++#include <linux/types.h> ++#include <linux/kernel.h> ++ ++#ifdef CONFIG_BCM47XX ++int bcm47xx_nvram_init_from_mem(u32 base, u32 lim); ++int bcm47xx_nvram_getenv(const char *name, char *val, size_t val_len); ++int bcm47xx_nvram_gpio_pin(const char *name); ++#else ++static inline int bcm47xx_nvram_init_from_mem(u32 base, u32 lim) ++{ ++ return -ENOTSUPP; ++}; ++static inline int bcm47xx_nvram_getenv(const char *name, char *val, ++ size_t val_len) ++{ ++ return -ENOTSUPP; ++}; ++static inline int bcm47xx_nvram_gpio_pin(const char *name) ++{ ++ return -ENOTSUPP; ++}; ++#endif ++ ++#endif /* __BCM47XX_NVRAM_H */ +-- +1.8.4.5 + |