b43: remove leftover code from old devices support
PATCH 1/2 b43: remove leftover code from old devices support
Old devices (A-PHY or B-PHY) are supposed to be supported by b43legacy. We keep phy_a.c as it's needed for G-PHY which shares some design.
--- drivers/net/wireless/b43/main.c | 9 --------- drivers/net/wireless/b43/phy_a.h | 4 ---- drivers/net/wireless/b43/phy_common.c | 3 --- 3 files changed, 16 deletions(-)
drivers/net/wireless/b43/main.c +0 -9
@@ -4306,15 +4306,6 @@ static int b43_phy_versioning(struct b43_wldev *dev) phy_type = (tmp &B43_PHYVER_TYPE ) >>B43_PHYVER_TYPE_SHIFT ; phy_rev = (tmp &B43_PHYVER_VERSION );switch (phy_type) { -case B43_PHYTYPE_A : -if (phy_rev >=4 ) - unsupported =1 ; -break ; -case B43_PHYTYPE_B : -if (phy_rev !=2 && phy_rev !=4 && phy_rev !=6 - && phy_rev !=7 ) - unsupported =1 ; -break ;case B43_PHYTYPE_G :if (phy_rev >9 ) unsupported =1 ;
drivers/net/wireless/b43/phy_a.h +0 -4
@@ -123,8 +123,4 @@ struct b43_phy_a {*/ void b43_phy_inita (struct b43_wldev *dev); - -struct b43_phy_operations ; -extern const struct b43_phy_operations b43_phyops_a; -#endif /* LINUX_B43_PHY_A_H_ */
drivers/net/wireless/b43/phy_common.c +0 -3
@@ -45,9 +45,6 @@ int b43_phy_allocate(struct b43_wldev *dev) phy->ops =NULL ;switch (phy->type) { -case B43_PHYTYPE_A : - phy->ops = &b43_phyops_a; -break ;case B43_PHYTYPE_G : phy->ops = &b43_phyops_g;break ;
Signature · 1 line
1.8.4.5
PATCH 2/2 b43: add config for (en|dis)abling G-PHY support
This allows new devices users to save some space.
--- drivers/net/wireless/b43/Kconfig | 9 +++++++++ drivers/net/wireless/b43/Makefile | 6 +----- drivers/net/wireless/b43/main.c | 2 ++ drivers/net/wireless/b43/phy_common.c | 2 ++ 4 files changed, 14 insertions(+), 5 deletions(-)
drivers/net/wireless/b43/Kconfig +9 -0
@@ -122,6 +122,15 @@ config B43_PIO select SSB_BLOCKIO default y +config B43_PHY_G + bool "Support for G-PHY (802.11g) devices" + depends on B43 && B43_SSB + default y + ---help--- + This PHY type can be found in the following chipsets: + PCI: BCM4306, BCM4311, BCM4318 + SoC: BCM4712, BCM5352E + config B43_PHY_N bool "Support for 802.11n (N-PHY) devices" depends on B43
drivers/net/wireless/b43/Makefile +1 -5
@@ -1,13 +1,11 @@ b43-y += main.o b43-y += bus.o -b43-y += tables.o +b43-$(CONFIG_B43_PHY_G) += phy_a.o phy_g.o tables.o lo.o wa.o b43-$(CONFIG_B43_PHY_N) += tables_nphy.o b43-$(CONFIG_B43_PHY_N) += radio_2055.o b43-$(CONFIG_B43_PHY_N) += radio_2056.o b43-$(CONFIG_B43_PHY_N) += radio_2057.o b43-y += phy_common.o -b43-y += phy_g.o -b43-y += phy_a.o b43-$(CONFIG_B43_PHY_N) += phy_n.o b43-$(CONFIG_B43_PHY_LP) += phy_lp.o b43-$(CONFIG_B43_PHY_LP) += tables_lpphy.o
@@ -17,8 +15,6 @@ b43-$(CONFIG_B43_PHY_HT) += radio_2059.o b43-$(CONFIG_B43_PHY_LCN) += phy_lcn.o tables_phy_lcn.o b43-y += sysfs.o b43-y += xmit.o -b43-y += lo.o -b43-y += wa.o b43-y += dma.o b43-y += pio.o b43-y += rfkill.o
drivers/net/wireless/b43/main.c +2 -0
@@ -4306,10 +4306,12 @@ static int b43_phy_versioning(struct b43_wldev *dev) phy_type = (tmp &B43_PHYVER_TYPE ) >>B43_PHYVER_TYPE_SHIFT ; phy_rev = (tmp &B43_PHYVER_VERSION );switch (phy_type) { +#ifdef CONFIG_B43_PHY_G case B43_PHYTYPE_G :if (phy_rev >9 ) unsupported =1 ;break ; +#endif #ifdef CONFIG_B43_PHY_N case B43_PHYTYPE_N :if (phy_rev >9 )
drivers/net/wireless/b43/phy_common.c +2 -0
@@ -46,7 +46,9 @@ int b43_phy_allocate(struct b43_wldev *dev)switch (phy->type) {case B43_PHYTYPE_G : +#ifdef CONFIG_B43_PHY_G phy->ops = &b43_phyops_g; +#endif break ;case B43_PHYTYPE_N :#ifdef CONFIG_B43_PHY_N
Signature · 1 line
1.8.4.5
PATCH 1/2 b43: remove leftover code from old devices support
In reply to Rafał MiłeckiQuoted 4 lines · Rafa? Mi?ecki
Old devices (A-PHY or B-PHY) are supposed to be supported by b43legacy. We keep
phy_a.cas it's needed for G-PHY which shares some design.Signed-off-by Rafa? Mi?ecki <[email protected]>
Wouldn't it make sense to move the relevant pieces of phy_a.c to phy_g.c and then remove phy_a.c entirely?
There are pieces in phy_a.c which can be removed entirely, e.g. b43_phyops_a and things only used by this struct.
- Felix
PATCH 1/2 b43: remove leftover code from old devices support
Quoted 10 lines · Felix Fietkau
Quoted 4 lines · Rafa? Mi?ecki
Old devices (A-PHY or B-PHY) are supposed to be supported by b43legacy. We keep
phy_a.cas it's needed for G-PHY which shares some design.Signed-off-by Rafa? Mi?ecki <[email protected]>Wouldn't it make sense to move the relevant pieces of
phy_a.ctophy_g.cand then removephy_a.centirely?There are pieces in
phy_a.cwhich can be removed entirely, e.g.b43_phyops_aand things only used by this struct.
Absolutely, however it needs some effort and time. I'm currently quite busy with other things in b43.
One could remove b43_phyops_a, then remove newly-unused functions. Then see what code is not used by G-PHY. However you should keep in mind, that 5 GHz support for G-PHY may need some functions that are not called at this moment. So I'd suggest looking at 5 GHz support in G-PHY first to avoid removing sth that may be needed in the future.
Signature · 1 line
Rafa?
PATCH 1/2 b43: remove leftover code from old devices support
Quoted 12 lines · Rafa? Mi?ecki
Quoted 10 lines · Felix Fietkau
Quoted 4 lines · Rafa? Mi?ecki
Old devices (A-PHY or B-PHY) are supposed to be supported by b43legacy. We keep
phy_a.cas it's needed for G-PHY which shares some design.Signed-off-by Rafa? Mi?ecki <[email protected]>Wouldn't it make sense to move the relevant pieces of
phy_a.ctophy_g.cand then removephy_a.centirely?There are pieces in
phy_a.cwhich can be removed entirely, e.g.b43_phyops_aand things only used by this struct.
Quoted 8 lines
Absolutely, however it needs some effort and time. I'm currently quite busy with other things in b43.
One could remove
b43_phyops_a, then remove newly-unused functions. Then see what code is not used by G-PHY. However you should keep in mind, that 5 GHz support for G-PHY may need some functions that are not called at this moment. So I'd suggest looking at 5 GHz support in G-PHY first to avoid removing sth that may be needed in the future.
Makes sense.
- Felix