diff options
author | Rafał Miłecki <zajec5@gmail.com> | 2014-12-10 21:50:57 +0000 |
---|---|---|
committer | Rafał Miłecki <zajec5@gmail.com> | 2014-12-10 21:50:57 +0000 |
commit | 935b8f6e2546e4c3f51195500792135952e20797 (patch) | |
tree | 758b87bd956f58dc1ba2cdcd7757525bec099dae /target/linux/bcm53xx/patches-3.18/111-bcm47xx-nvram-add-new-nvram-driver-with-dt-support.patch | |
parent | 884483dbd51c9b08ee1d48874616d3b930680815 (diff) | |
download | master-187ad058-935b8f6e2546e4c3f51195500792135952e20797.tar.gz master-187ad058-935b8f6e2546e4c3f51195500792135952e20797.tar.bz2 master-187ad058-935b8f6e2546e4c3f51195500792135952e20797.zip |
bcm53xx: backport NVRAM driver sent upstream
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@43612 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/bcm53xx/patches-3.18/111-bcm47xx-nvram-add-new-nvram-driver-with-dt-support.patch')
-rw-r--r-- | target/linux/bcm53xx/patches-3.18/111-bcm47xx-nvram-add-new-nvram-driver-with-dt-support.patch | 106 |
1 files changed, 0 insertions, 106 deletions
diff --git a/target/linux/bcm53xx/patches-3.18/111-bcm47xx-nvram-add-new-nvram-driver-with-dt-support.patch b/target/linux/bcm53xx/patches-3.18/111-bcm47xx-nvram-add-new-nvram-driver-with-dt-support.patch deleted file mode 100644 index 14fb5b48aa..0000000000 --- a/target/linux/bcm53xx/patches-3.18/111-bcm47xx-nvram-add-new-nvram-driver-with-dt-support.patch +++ /dev/null @@ -1,106 +0,0 @@ -From 71a6bff8656a1713615ffdd9139a83d65ba46c6d Mon Sep 17 00:00:00 2001 -From: Hauke Mehrtens <hauke@hauke-m.de> -Date: Sat, 3 May 2014 22:54:59 +0200 -Subject: [PATCH 02/17] bcm47xx-nvram: add new broadcom nvram driver with dt - support - -This adds a new driver which searches at a given memory range for a -nvram like it is used on the bcm47xx and bcm53xx SoCs with ARM and MIPS -CPUs. This driver provides acces to this nvram to other device in the -device tree. You have to specify the memory ranges where the content of -the flash chip is memory mapped and this driver will search there for -some nvram and parse it. Other drivers can use this driver to access the -device nvram. The nvram is used to store board configurations like the -mac addresses, the switch configuration and the calibration data for -the wifi devices. - -This was copied from arch/mips/bcm47xx/nvram.c and modified to interact -with device tree. My plan is to make the MIPS bcm47xx also use this new -driver some time later. - -Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> ---- - .../devicetree/bindings/misc/bcm47xx-nvram.txt | 19 ++ - arch/mips/bcm47xx/board.c | 40 ++-- - arch/mips/bcm47xx/nvram.c | 7 +- - arch/mips/bcm47xx/setup.c | 4 +- - arch/mips/bcm47xx/sprom.c | 4 +- - arch/mips/bcm47xx/time.c | 2 +- - drivers/misc/Kconfig | 5 + - drivers/misc/Makefile | 1 + - drivers/misc/bcm47xx-nvram.c | 215 +++++++++++++++++++++ - drivers/net/ethernet/broadcom/b44.c | 2 +- - drivers/net/ethernet/broadcom/bgmac.c | 5 +- - drivers/ssb/driver_chipcommon_pmu.c | 3 +- - include/linux/bcm47xx_nvram.h | 17 +- - 13 files changed, 286 insertions(+), 38 deletions(-) - create mode 100644 Documentation/devicetree/bindings/misc/bcm47xx-nvram.txt - create mode 100644 drivers/misc/bcm47xx-nvram.c - ---- /dev/null -+++ b/Documentation/devicetree/bindings/misc/bcm47xx-nvram.txt -@@ -0,0 +1,19 @@ -+Broadcom bcm47xx/bcm53xx nvram access driver -+ -+This driver provides access to the nvram for other drivers. -+ -+Required properties: -+ -+- compatible : brcm,bcm47xx-nvram -+ -+- reg : iomem address range -+ -+On NorthStar ARM SoCs the NAND flash is available at 0x1c000000 and the -+NOR flash is at 0x1e000000 -+ -+Example: -+ -+nvram0: nvram@0 { -+ compatible = "brcm,bcm47xx-nvram"; -+ reg = <0x1c000000 0x01000000>; -+}; ---- a/drivers/misc/Kconfig -+++ b/drivers/misc/Kconfig -@@ -515,6 +515,11 @@ config VEXPRESS_SYSCFG - bus. System Configuration interface is one of the possible means - of generating transactions on this bus. - -+config BCM47XX_NVRAM -+ tristate "BCM47XX nvram driver" -+ help -+ This adds support for the brcm47xx nvram driver. -+ - source "drivers/misc/c2port/Kconfig" - source "drivers/misc/eeprom/Kconfig" - source "drivers/misc/cb710/Kconfig" ---- a/drivers/misc/Makefile -+++ b/drivers/misc/Makefile -@@ -56,3 +56,4 @@ obj-$(CONFIG_GENWQE) += genwqe/ - obj-$(CONFIG_ECHO) += echo/ - obj-$(CONFIG_VEXPRESS_SYSCFG) += vexpress-syscfg.o - obj-$(CONFIG_CXL_BASE) += cxl/ -+obj-$(CONFIG_BCM47XX_NVRAM) += bcm47xx-nvram.o ---- a/include/linux/bcm47xx_nvram.h -+++ b/include/linux/bcm47xx_nvram.h -@@ -14,8 +14,8 @@ - - #include <linux/types.h> - #include <linux/kernel.h> -- --#ifdef CONFIG_BCM47XX -+ -+#if defined(CONFIG_BCM47XX) || defined(CONFIG_BCM47XX_NVRAM) - int bcm47xx_nvram_getenv(const char *name, char *val, size_t val_len); - - int bcm47xx_nvram_gpio_pin(const char *name); ---- a/drivers/misc/bcm47xx-nvram.c -+++ b/drivers/misc/bcm47xx-nvram.c -@@ -28,7 +28,7 @@ - - struct nvram_header { - u32 magic; -- u32 len; -+ __le32 len; - u32 crc_ver_init; /* 0:7 crc, 8:15 ver, 16:31 sdram_init */ - u32 config_refresh; /* 0:15 sdram_config, 16:31 sdram_refresh */ - u32 config_ncdl; /* ncdl values for memc */ |