bcm53xx: use SPROM driver queued for 4.6
[openwrt/openwrt.git] / target / linux / bcm53xx / patches-4.4 / 112-bcm53xx-sprom-add-sprom-driver.patch
index 70ab03995c0ec3613a415b093b59332054d6677c..f2d60c2f6894d7dd50d8a44826bd9da3a09677f0 100644 (file)
@@ -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