Re: [PATCH 2/2] Using LP firmware for taking advantage of the low-power capabilities.
From: Larry Finger <hidden>
Date: 2012-09-19 15:08:37
Also in:
netdev
On 09/19/2012 06:18 AM, Jarl Friis wrote:
quoted hunk ↗ jump to hunk
This is using the LP specific firmware to better take advantage of the Low-Power capabilities. Signed-off-by: Jarl Friis <redacted> --- drivers/net/wireless/b43/main.c | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-)diff --git a/drivers/net/wireless/b43/main.c b/drivers/net/wireless/b43/main.c index 202a0eb..9ee6030 100644 --- a/drivers/net/wireless/b43/main.c +++ b/drivers/net/wireless/b43/main.c@@ -8,6 +8,7 @@ Copyright (c) 2005 Danny van Dyk <kugelfang@gentoo.org> Copyright (c) 2005 Andreas Jaggi <andreas.jaggi@waterwave.ch> Copyright (c) 2010-2011 Rafał Miłecki <zajec5@gmail.com> + Copyright (c) 2012 Jarl Friis <jarl@softace.dk> SDIO support Copyright (c) 2009 Albert Herranz <albert_herranz@yahoo.es>@@ -72,6 +73,7 @@ MODULE_FIRMWARE("b43/ucode11.fw"); MODULE_FIRMWARE("b43/ucode13.fw"); MODULE_FIRMWARE("b43/ucode14.fw"); MODULE_FIRMWARE("b43/ucode15.fw"); +MODULE_FIRMWARE("b43/ucode16_lp.fw"); MODULE_FIRMWARE("b43/ucode16_mimo.fw"); MODULE_FIRMWARE("b43/ucode5.fw"); MODULE_FIRMWARE("b43/ucode9.fw");@@ -2208,6 +2210,12 @@ static int b43_try_request_fw(struct b43_request_fw_context *ctx) else goto err_no_ucode; break; + case B43_PHYTYPE_LP: + if (rev >= 16) + filename = "ucode16_lp"; + else + goto err_no_ucode; + break; case B43_PHYTYPE_HT: if (rev == 29) filename = "ucode29_mimo";@@ -2277,8 +2285,10 @@ static int b43_try_request_fw(struct b43_request_fw_context *ctx) filename = "lp0initvals13"; else if (rev == 14) filename = "lp0initvals14"; - else if (rev >= 15) + else if (rev == 15) filename = "lp0initvals15"; + else if (rev >= 16) + filename = "lp0initvals16"; else goto err_no_initvals; break;@@ -2336,8 +2346,10 @@ static int b43_try_request_fw(struct b43_request_fw_context *ctx) filename = "lp0bsinitvals13"; else if (rev == 14) filename = "lp0bsinitvals14"; - else if (rev >= 15) + else if (rev == 15) filename = "lp0bsinitvals15"; + else if (rev >= 16) + filename = "lp0bsinitvals16"; else goto err_no_initvals; break;
I have some questions about this patch. Where did you get the information needed to make these changes? Did it come from reverse engineering some Broadcom code, or did you look at their actual code? There is a great deal of difference relative to our "clean-room" status. Anyone that has seen non-GPL Broadcom material cannot contribute code to b43. Have you tested this code on devices with rev>=16? Now for some comments: This patch also needs the "b43:" added to the subject. In addition, you appear to have at least one white-space error in the MODULE_FIRMWARE line. Is the addition of your copyright to the driver warranted by this change? For example, I have made much larger contributions to b43 over the years before I started doing reverse-engineering on this driver, but I never added my copyright. Your "Signed-off-by" implies copyright for the patch. Larry