X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=target%2Flinux%2Fbcm53xx%2Fpatches-4.4%2F112-bcm53xx-sprom-add-sprom-driver.patch;h=f2d60c2f6894d7dd50d8a44826bd9da3a09677f0;hb=c658bd634c06e7d8faa0dbd9793e3e089bf1a395;hp=70ab03995c0ec3613a415b093b59332054d6677c;hpb=d90561c92935122327bde8a1344389123fda9532;p=oweals%2Fopenwrt.git 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 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