[PATCH V3] b43: be more user friendly with PHY info
Gábor Stefanik
netrolller.3d at gmail.com
Thu Jul 26 02:01:57 EDT 2012
On Thu, Jul 26, 2012 at 8:16 AM, Rafał Miłecki <zajec5 at gmail.com> wrote:
> First of all, use PHY names instead of magic numbers. It should make
> configuring kernel easier in case of not enabled PHY type support.
> Secondly, always print info about PHY. This is really basic info about
> hardware and quite important for the support level.
>
> Signed-off-by: Rafał Miłecki <zajec5 at gmail.com>
> ---
> V2: add new PHYTYPEs
> V3: don't printk error in b43_phy_name, just return "UNKNOWN". We still
> can know PHY type thanks to change in caller, which prints both:
> %d and %s. Thanks Joe!
> ---
> drivers/net/wireless/b43/b43.h | 2 ++
> drivers/net/wireless/b43/main.c | 39 ++++++++++++++++++++++++++++++++++-----
> 2 files changed, 36 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/net/wireless/b43/b43.h b/drivers/net/wireless/b43/b43.h
> index 7c899fc..b0c7f47 100644
> --- a/drivers/net/wireless/b43/b43.h
> +++ b/drivers/net/wireless/b43/b43.h
> @@ -415,6 +415,8 @@ enum {
> #define B43_PHYTYPE_HT 0x07
> #define B43_PHYTYPE_LCN 0x08
> #define B43_PHYTYPE_LCNXN 0x09
> +#define B43_PHYTYPE_LCN40 0x0a
> +#define B43_PHYTYPE_AC 0x0b
>
> /* PHYRegisters */
> #define B43_PHY_ILT_A_CTRL 0x0072
> diff --git a/drivers/net/wireless/b43/main.c b/drivers/net/wireless/b43/main.c
> index b80352b..a8f812b 100644
> --- a/drivers/net/wireless/b43/main.c
> +++ b/drivers/net/wireless/b43/main.c
> @@ -4277,6 +4277,35 @@ out:
> return err;
> }
>
> +static char *b43_phy_name(struct b43_wldev *dev, u8 phy_type)
> +{
> + switch (phy_type) {
> + case B43_PHYTYPE_A:
> + return "A";
> + case B43_PHYTYPE_B:
> + return "B";
> + case B43_PHYTYPE_G:
> + return "G";
> + case B43_PHYTYPE_N:
> + return "N";
> + case B43_PHYTYPE_LP:
> + return "LP";
> + case B43_PHYTYPE_SSLPN:
> + return "SSLPN";
> + case B43_PHYTYPE_HT:
> + return "HT";
> + case B43_PHYTYPE_LCN:
> + return "LCN";
> + case B43_PHYTYPE_LCNXN:
> + return "LCNXN";
> + case B43_PHYTYPE_LCN40:
> + return "LCN40";
> + case B43_PHYTYPE_AC:
> + return "AC";
> + }
> + return "UNKNOWN";
How about putting the PHY type ID into the string in the Unknown case?
Or will it be printed somewhere else?
> +}
> +
> /* Get PHY and RADIO versioning numbers */
> static int b43_phy_versioning(struct b43_wldev *dev)
> {
> @@ -4337,13 +4366,13 @@ static int b43_phy_versioning(struct b43_wldev *dev)
> unsupported = 1;
> }
> if (unsupported) {
> - b43err(dev->wl, "FOUND UNSUPPORTED PHY "
> - "(Analog %u, Type %u, Revision %u)\n",
> - analog_type, phy_type, phy_rev);
> + b43err(dev->wl, "FOUND UNSUPPORTED PHY (Analog %u, Type %d (%s), Revision %u)\n",
> + analog_type, phy_type, b43_phy_name(dev, phy_type),
> + phy_rev);
> return -EOPNOTSUPP;
> }
> - b43dbg(dev->wl, "Found PHY: Analog %u, Type %u, Revision %u\n",
> - analog_type, phy_type, phy_rev);
> + b43info(dev->wl, "Found PHY: Analog %u, Type %d (%s), Revision %u\n",
> + analog_type, phy_type, b43_phy_name(dev, phy_type), phy_rev);
>
> /* Get RADIO versioning */
> if (dev->dev->core_rev >= 24) {
> --
> 1.7.7
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
> the body of a message to majordomo at vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
--
Vista: [V]iruses, [I]ntruders, [S]pyware, [T]rojans and [A]dware. :-)
More information about the b43-dev
mailing list