From: Rafał Miłecki <zajec5@gmail.com>
Date: Wed, 13 May 2015 07:52:43 +0000 (+0000)
Subject: kernel: backport struct ssb_sprom changes submitted by MIPS tree
X-Git-Url: http://git.cdn.openwrt.org/?a=commitdiff_plain;h=260383aeb17d8798d2da97a105da9fe8664fd8ea;p=openwrt%2Fstaging%2Fldir.git

kernel: backport struct ssb_sprom changes submitted by MIPS tree

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>

SVN-Revision: 45677
---

diff --git a/target/linux/generic/patches-3.18/021-ssb_sprom.patch b/target/linux/generic/patches-3.18/021-ssb_sprom.patch
new file mode 100644
index 0000000000..52d8080dfe
--- /dev/null
+++ b/target/linux/generic/patches-3.18/021-ssb_sprom.patch
@@ -0,0 +1,32 @@
+--- a/include/linux/ssb/ssb.h
++++ b/include/linux/ssb/ssb.h
+@@ -29,10 +29,13 @@ struct ssb_sprom {
+ 	u8 il0mac[6] __aligned(sizeof(u16));	/* MAC address for 802.11b/g */
+ 	u8 et0mac[6] __aligned(sizeof(u16));	/* MAC address for Ethernet */
+ 	u8 et1mac[6] __aligned(sizeof(u16));	/* MAC address for 802.11a */
++	u8 et2mac[6] __aligned(sizeof(u16));	/* MAC address for extra Ethernet */
+ 	u8 et0phyaddr;		/* MII address for enet0 */
+ 	u8 et1phyaddr;		/* MII address for enet1 */
++	u8 et2phyaddr;		/* MII address for enet2 */
+ 	u8 et0mdcport;		/* MDIO for enet0 */
+ 	u8 et1mdcport;		/* MDIO for enet1 */
++	u8 et2mdcport;		/* MDIO for enet2 */
+ 	u16 dev_id;		/* Device ID overriding e.g. PCI ID */
+ 	u16 board_rev;		/* Board revision number from SPROM. */
+ 	u16 board_num;		/* Board number from SPROM. */
+@@ -88,11 +91,14 @@ struct ssb_sprom {
+ 	u32 ofdm5glpo;		/* 5.2GHz OFDM power offset */
+ 	u32 ofdm5gpo;		/* 5.3GHz OFDM power offset */
+ 	u32 ofdm5ghpo;		/* 5.8GHz OFDM power offset */
++	u32 boardflags;
++	u32 boardflags2;
++	u32 boardflags3;
++	/* TODO: Switch all drivers to new u32 fields and drop below ones */
+ 	u16 boardflags_lo;	/* Board flags (bits 0-15) */
+ 	u16 boardflags_hi;	/* Board flags (bits 16-31) */
+ 	u16 boardflags2_lo;	/* Board flags (bits 32-47) */
+ 	u16 boardflags2_hi;	/* Board flags (bits 48-63) */
+-	/* TODO store board flags in a single u64 */
+ 
+ 	struct ssb_sprom_core_pwr_info core_pwr_info[4];
+ 
diff --git a/target/linux/generic/patches-4.0/021-ssb_sprom.patch b/target/linux/generic/patches-4.0/021-ssb_sprom.patch
new file mode 100644
index 0000000000..52d8080dfe
--- /dev/null
+++ b/target/linux/generic/patches-4.0/021-ssb_sprom.patch
@@ -0,0 +1,32 @@
+--- a/include/linux/ssb/ssb.h
++++ b/include/linux/ssb/ssb.h
+@@ -29,10 +29,13 @@ struct ssb_sprom {
+ 	u8 il0mac[6] __aligned(sizeof(u16));	/* MAC address for 802.11b/g */
+ 	u8 et0mac[6] __aligned(sizeof(u16));	/* MAC address for Ethernet */
+ 	u8 et1mac[6] __aligned(sizeof(u16));	/* MAC address for 802.11a */
++	u8 et2mac[6] __aligned(sizeof(u16));	/* MAC address for extra Ethernet */
+ 	u8 et0phyaddr;		/* MII address for enet0 */
+ 	u8 et1phyaddr;		/* MII address for enet1 */
++	u8 et2phyaddr;		/* MII address for enet2 */
+ 	u8 et0mdcport;		/* MDIO for enet0 */
+ 	u8 et1mdcport;		/* MDIO for enet1 */
++	u8 et2mdcport;		/* MDIO for enet2 */
+ 	u16 dev_id;		/* Device ID overriding e.g. PCI ID */
+ 	u16 board_rev;		/* Board revision number from SPROM. */
+ 	u16 board_num;		/* Board number from SPROM. */
+@@ -88,11 +91,14 @@ struct ssb_sprom {
+ 	u32 ofdm5glpo;		/* 5.2GHz OFDM power offset */
+ 	u32 ofdm5gpo;		/* 5.3GHz OFDM power offset */
+ 	u32 ofdm5ghpo;		/* 5.8GHz OFDM power offset */
++	u32 boardflags;
++	u32 boardflags2;
++	u32 boardflags3;
++	/* TODO: Switch all drivers to new u32 fields and drop below ones */
+ 	u16 boardflags_lo;	/* Board flags (bits 0-15) */
+ 	u16 boardflags_hi;	/* Board flags (bits 16-31) */
+ 	u16 boardflags2_lo;	/* Board flags (bits 32-47) */
+ 	u16 boardflags2_hi;	/* Board flags (bits 48-63) */
+-	/* TODO store board flags in a single u64 */
+ 
+ 	struct ssb_sprom_core_pwr_info core_pwr_info[4];
+