aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/bcm53xx/patches-4.4/112-bcm53xx-sprom-add-sprom-driver.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/bcm53xx/patches-4.4/112-bcm53xx-sprom-add-sprom-driver.patch')
-rw-r--r--target/linux/bcm53xx/patches-4.4/112-bcm53xx-sprom-add-sprom-driver.patch62
1 files changed, 19 insertions, 43 deletions
diff --git a/target/linux/bcm53xx/patches-4.4/112-bcm53xx-sprom-add-sprom-driver.patch b/target/linux/bcm53xx/patches-4.4/112-bcm53xx-sprom-add-sprom-driver.patch
index 70ab03995c..f2d60c2f68 100644
--- a/target/linux/bcm53xx/patches-4.4/112-bcm53xx-sprom-add-sprom-driver.patch
+++ b/target/linux/bcm53xx/patches-4.4/112-bcm53xx-sprom-add-sprom-driver.patch
@@ -21,49 +21,25 @@ Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
create mode 100644 Documentation/devicetree/bindings/misc/bcm47xx-sprom.txt
create mode 100644 drivers/misc/bcm47xx-sprom.c
---- /dev/null
-+++ b/Documentation/devicetree/bindings/misc/bcm47xx-sprom.txt
-@@ -0,0 +1,16 @@
-+Broadcom bcm47xx/bcm53xx sprom converter
+--- a/drivers/firmware/broadcom/Kconfig
++++ b/drivers/firmware/broadcom/Kconfig
+@@ -9,3 +9,14 @@ config BCM47XX_NVRAM
+ This driver provides an easy way to get value of requested parameter.
+ It simply reads content of NVRAM and parses it. It doesn't control any
+ hardware part itself.
+
-+This driver provbides an sprom based on a given nvram.
-+
-+Required properties:
-+
-+- compatible : brcm,bcm47xx-sprom
-+
-+- nvram : reference to a nvram driver, e.g. bcm47xx-nvram
-+
-+Example:
-+
-+sprom0: sprom@0 {
-+ compatible = "brcm,bcm47xx-sprom";
-+ nvram = <&nvram0>;
-+};
---- a/drivers/misc/Kconfig
-+++ b/drivers/misc/Kconfig
-@@ -525,6 +525,17 @@ config VEXPRESS_SYSCFG
- bus. System Configuration interface is one of the possible means
- of generating transactions on this bus.
-
+config BCM47XX_SPROM
-+ tristate "BCM47XX sprom driver"
++ bool "Broadcom SPROM driver"
++ depends on BCM47XX_NVRAM
+ help
-+ This driver parses the sprom from a given nvram which is found on
-+ Broadcom bcm47xx and bcm53xx SoCs.
-+
-+ The sprom contains board configuration data like the
-+ calibration data fro the wifi chips, the mac addresses used
-+ by the board and many other board configuration data. This
-+ driver will provide the sprom to bcma.
-+
- 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_SPROM) += bcm47xx-sprom.o
++ Broadcom devices store configuration data in SPROM. Accessing it is
++ specific to the bus host type, e.g. PCI(e) devices have it mapped in
++ a PCI BAR.
++ In case of SoC devices SPROM content is stored on a flash used by
++ bootloader firmware CFE. This driver provides method to ssb and bcma
++ drivers to read SPROM on SoC.
+--- a/drivers/firmware/broadcom/Makefile
++++ b/drivers/firmware/broadcom/Makefile
+@@ -1 +1,2 @@
+ obj-$(CONFIG_BCM47XX_NVRAM) += bcm47xx_nvram.o
++obj-$(CONFIG_BCM47XX_SPROM) += bcm47xx_sprom.o