netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Larry Finger <larry.finger-tQ5ms3gMjBLk1uMJSBkQmQ@public.gmane.org>
To: Michael Buesch <mb-fseUSCV1ubazQB+pC5nmwQ@public.gmane.org>
Cc: netdev-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	linux-wireless-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	John Linville <linville-2XuSBdqkA4R54TAoqtyWWQ@public.gmane.org>,
	Bcm43xx-dev-0fE9KPoRgkgATYTw5x5z8w@public.gmane.org
Subject: Re: [PATCH] bcm43xx: Fix code for spec changes of 2/7/2007
Date: Fri, 09 Feb 2007 12:11:32 -0600	[thread overview]
Message-ID: <45CCB954.1080400@lwfinger.net> (raw)
In-Reply-To: <200702091811.40683.mb-fseUSCV1ubazQB+pC5nmwQ@public.gmane.org>

Michael,

Michael Buesch wrote:
> On Friday 09 February 2007 17:32, Larry Finger wrote:
>> The specifications for the bcm43xx driver have been modified. This patch
>> incorporates these changes in the code, which results in the BCM4311 and
>> BCM4312 working. The name of one of the PHY parameters, previously known
>> as "version", has been changed to "analog core version" .
>>
>> Signed-off-by: Larry Finger<Larry.Finger-tQ5ms3gMjBLk1uMJSBkQmQ@public.gmane.org>
>> ---
> 
>> @@ -729,19 +729,19 @@ static void bcm43xx_phy_initb5(struct bc
>>  	struct bcm43xx_phyinfo *phy = bcm43xx_current_phy(bcm);
>>  	struct bcm43xx_radioinfo *radio = bcm43xx_current_radio(bcm);
>>  	u16 offset;
>> +	u16 value;
>> +	u8 old_channel;
>>  
>> -	if (phy->version == 1 &&
>> -	    radio->version == 0x2050) {
> 
> Why do you delete the check to radio version.
> It's still there in latest specs:
> http://bcm-v4.sipsolutions.net/802.11/PHY/Init/B5

As I have no real understanding of the differences between V3 and V4 firmware, I only follow the V3
specs at http://bcm-specs.sipsolutions.net. My usage of the V4 specs is to checking if they can
clean a point of confusion in the V3 spec. The radio version check is eliminated at the beginning of
the phy_initb5 routine in http://bcm-specs.sipsolutions.net/B5PHY. As there are radio version checks
later in the routine, I think it was meant to be removed here.

>> +	if (phy->analog == 1)
>>  		bcm43xx_radio_write16(bcm, 0x007A,
>>  				      bcm43xx_radio_read16(bcm, 0x007A)
>>  				      | 0x0050);
>> -	}
>>  	if ((bcm->board_vendor != PCI_VENDOR_ID_BROADCOM) &&
>>  	    (bcm->board_type != 0x0416)) {
>> +		value = 0x2120;
>>  		for (offset = 0x00A8 ; offset < 0x00C7; offset++) {
>> -			bcm43xx_phy_write(bcm, offset,
>> -					  (bcm43xx_phy_read(bcm, offset) + 0x2020)
>> -					  & 0x3F3F);
>> +			bcm43xx_phy_write(bcm, offset, value);
>> +			value += 0x0202;
>>  		}
> 
> I don't see how this matches specs.

See step 2 of http://bcm-specs.sipsolutions.net/B5PHY.

>>  	}
>>  	bcm43xx_phy_write(bcm, 0x0035,
>> @@ -776,7 +776,7 @@ static void bcm43xx_phy_initb5(struct bc
>>  				  bcm43xx_phy_read(bcm, BCM43xx_PHY_RADIO_BITFIELD) | (1 << 11));
>>  	}
>>  
>> -	if (phy->version == 1 && radio->version == 0x2050) {
> 
> Dito.

Ibid Step 7.

>> +	if (phy->analog == 1) {
>>  		bcm43xx_phy_write(bcm, 0x0026, 0xCE00);
>>  		bcm43xx_phy_write(bcm, 0x0021, 0x3763);
>>  		bcm43xx_phy_write(bcm, 0x0022, 0x1BC3);
>> @@ -787,14 +787,15 @@ static void bcm43xx_phy_initb5(struct bc
>>  	bcm43xx_phy_write(bcm, 0x0030, 0x00C6);
>>  	bcm43xx_write16(bcm, 0x03EC, 0x3F22);
>>  
>> -	if (phy->version == 1 && radio->version == 0x2050)
> 
> Dito.

Step 11.

>> +	if (phy->analog == 1)
>>  		bcm43xx_phy_write(bcm, 0x0020, 0x3E1C);
>>  	else
>>  		bcm43xx_phy_write(bcm, 0x0020, 0x301C);
>>  
>> -	if (phy->version == 0)
>> +	if (phy->analog == 0)
>>  		bcm43xx_write16(bcm, 0x03E4, 0x3000);
>>  
>> +	old_channel = radio->channel;
>>  	/* Force to channel 7, even if not supported. */
>>  	bcm43xx_radio_selectchannel(bcm, 7, 0);
>>  
>> @@ -816,11 +817,11 @@ static void bcm43xx_phy_initb5(struct bc
>>  
>>  	bcm43xx_radio_write16(bcm, 0x007A, bcm43xx_radio_read16(bcm, 0x007A) | 0x0007);
>>  
>> -	bcm43xx_radio_selectchannel(bcm, BCM43xx_RADIO_DEFAULT_CHANNEL_BG, 0);
>> +	bcm43xx_radio_selectchannel(bcm, old_channel, 0);
>>  
>>  	bcm43xx_phy_write(bcm, 0x0014, 0x0080);
>>  	bcm43xx_phy_write(bcm, 0x0032, 0x00CA);
>> -	bcm43xx_phy_write(bcm, 0x88A3, 0x002A);
>> +	bcm43xx_phy_write(bcm, 0x002A, 0x88A3);
> 
> Well, this seems correct, but specs are still different. From where did you get this?

Steps 14 - 26 of http://bcm-specs.sipsolutions.net/B5PHY
> 
> 
> Well, I don't review the rest until you say to which specs you did the changes. ;)

As I said earlier, everything came from http://bcm-specs.sipsolutions.net.

Larry

  parent reply	other threads:[~2007-02-09 18:11 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-02-09 16:32 [PATCH] bcm43xx: Fix code for spec changes of 2/7/2007 Larry Finger
     [not found] ` <45cca236.+lL/rsW3DbM3elnk%Larry.Finger-tQ5ms3gMjBLk1uMJSBkQmQ@public.gmane.org>
2007-02-09 17:11   ` Michael Buesch
     [not found]     ` <200702091811.40683.mb-fseUSCV1ubazQB+pC5nmwQ@public.gmane.org>
2007-02-09 18:11       ` Larry Finger [this message]
2007-02-09 22:22     ` Joseph Jezak
2007-02-09 17:29       ` Michael Buesch
     [not found]         ` <200702091829.51002.mb-fseUSCV1ubazQB+pC5nmwQ@public.gmane.org>
2007-02-09 18:21           ` Larry Finger
2007-02-09 18:48             ` Michael Buesch
2007-02-09 19:05             ` Joseph Jezak
     [not found]               ` <45CCC5DF.8010001-aBrp7R+bbdUdnm+yROfE0A@public.gmane.org>
2007-02-09 19:17                 ` Michael Buesch
2007-02-09 19:55                   ` Joseph Jezak
2007-02-09 20:30                     ` Michael Buesch
2007-02-14 12:52                     ` Johannes Berg
2007-02-09 19:26                 ` Larry Finger
2007-02-09 21:32                   ` Matthew Garrett
     [not found]                     ` <20070209213239.GA11650-1xO5oi07KQx4cg9Nei1l7Q@public.gmane.org>
2007-02-09 22:52                       ` Martin Langer
2007-02-10  5:55                       ` Michael Buesch
     [not found]                         ` <200702100655.51495.mb-fseUSCV1ubazQB+pC5nmwQ@public.gmane.org>
2007-02-10 12:57                           ` Matthew Garrett
     [not found]                             ` <20070210125707.GA21803-1xO5oi07KQx4cg9Nei1l7Q@public.gmane.org>
2007-02-27 17:00                               ` Gavin McCullagh
2007-02-14 13:18                           ` Johannes Berg
2007-02-14 21:40                             ` Michael Buesch
     [not found]                               ` <200702142240.01494.mb-fseUSCV1ubazQB+pC5nmwQ@public.gmane.org>
2007-02-15 15:07                                 ` Johannes Berg
     [not found]                                   ` <1171552024.5220.4.camel-YfaajirXv214zXjbi5bjpg@public.gmane.org>
2007-02-15 15:13                                     ` Michael Buesch
     [not found]                                       ` <200702151613.20746.mb-fseUSCV1ubazQB+pC5nmwQ@public.gmane.org>
2007-02-15 15:19                                         ` Johannes Berg
     [not found]                                           ` <1171552753.5220.10.camel-YfaajirXv214zXjbi5bjpg@public.gmane.org>
2007-02-15 16:51                                             ` Martin Langer
2007-02-15 16:53                                               ` Johannes Berg
2007-02-11 13:21                       ` Johannes Berg
2007-02-09 18:45   ` Michael Buesch
     [not found]     ` <200702091945.25187.mb-fseUSCV1ubazQB+pC5nmwQ@public.gmane.org>
2007-02-09 19:17       ` Joseph Jezak
     [not found]         ` <45CCC8B5.3060108-aBrp7R+bbdUdnm+yROfE0A@public.gmane.org>
2007-02-09 19:26           ` Michael Buesch
     [not found]             ` <200702092026.43006.mb-fseUSCV1ubazQB+pC5nmwQ@public.gmane.org>
2007-02-09 19:58               ` Joseph Jezak
2007-02-09 22:24   ` Joseph Jezak

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=45CCB954.1080400@lwfinger.net \
    --to=larry.finger-tq5ms3gmjblk1umjsbkqmq@public.gmane.org \
    --cc=Bcm43xx-dev-0fE9KPoRgkgATYTw5x5z8w@public.gmane.org \
    --cc=linux-wireless-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=linville-2XuSBdqkA4R54TAoqtyWWQ@public.gmane.org \
    --cc=mb-fseUSCV1ubazQB+pC5nmwQ@public.gmane.org \
    --cc=netdev-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).