All of lore.kernel.org
 help / color / mirror / Atom feed
From: Michael Buesch <mb@bu3sch.de>
To: Larry Finger <Larry.Finger@lwfinger.net>
Cc: John Linville <linville@tuxdriver.com>,
	netdev@vger.kernel.org, Bcm43xx-dev@lists.berlios.de,
	linux-wireless@vger.kernel.org
Subject: Re: [PATCH] bcm43xx: Fix code for spec changes of 2/7/2007
Date: Fri, 9 Feb 2007 18:11:40 +0100	[thread overview]
Message-ID: <200702091811.40683.mb@bu3sch.de> (raw)
In-Reply-To: <45cca236.+lL/rsW3DbM3elnk%Larry.Finger@lwfinger.net>

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@lwfinger.net>
> ---

> @@ -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

> +	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.

>  	}
>  	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.

> +	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.

> +	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?


Well, I don't review the rest until you say to which specs you did the changes. ;)

-- 
Greetings Michael.

WARNING: multiple messages have this Message-ID (diff)
From: Michael Buesch <mb-fseUSCV1ubazQB+pC5nmwQ@public.gmane.org>
To: Larry Finger <Larry.Finger-tQ5ms3gMjBLk1uMJSBkQmQ@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, 9 Feb 2007 18:11:40 +0100	[thread overview]
Message-ID: <200702091811.40683.mb@bu3sch.de> (raw)
In-Reply-To: <45cca236.+lL/rsW3DbM3elnk%Larry.Finger-tQ5ms3gMjBLk1uMJSBkQmQ@public.gmane.org>

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

> +	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.

>  	}
>  	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.

> +	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.

> +	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?


Well, I don't review the rest until you say to which specs you did the changes. ;)

-- 
Greetings Michael.

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

Thread overview: 58+ 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
2007-02-09 16:32 ` Larry Finger
2007-02-09 17:11 ` Michael Buesch [this message]
2007-02-09 17:11   ` Michael Buesch
2007-02-09 18:11   ` Larry Finger
2007-02-09 18:11     ` Larry Finger
2007-02-09 22:22   ` Joseph Jezak
2007-02-09 17:29     ` Michael Buesch
2007-02-09 18:21       ` Larry Finger
2007-02-09 18:21         ` Larry Finger
2007-02-09 18:48         ` Michael Buesch
2007-02-09 19:05         ` Joseph Jezak
2007-02-09 19:17           ` Michael Buesch
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-14 19:13                 ` Larry Finger
2007-02-14 19:26                   ` Johannes Berg
2007-02-14 19:27                     ` Johannes Berg
2007-02-14 21:52                       ` Michael Buesch
2007-02-14 22:28                     ` Larry Finger
2007-02-09 19:26           ` Larry Finger
2007-02-09 19:26             ` Larry Finger
2007-02-09 21:32             ` Matthew Garrett
2007-02-09 22:52               ` Martin Langer
2007-02-09 22:52                 ` Martin Langer
2007-02-10  5:55               ` Michael Buesch
2007-02-10  5:55                 ` Michael Buesch
2007-02-10 12:57                 ` Matthew Garrett
2007-02-10 12:57                   ` Matthew Garrett
2007-02-27 17:00                   ` Gavin McCullagh
2007-02-27 17:00                     ` Gavin McCullagh
2007-02-11  2:13                 ` Joseph Jezak
2007-02-14 13:18                 ` Johannes Berg
2007-02-14 13:18                   ` Johannes Berg
2007-02-14 21:40                   ` Michael Buesch
2007-02-15 15:07                     ` Johannes Berg
2007-02-15 15:07                       ` Johannes Berg
2007-02-15 15:13                       ` Michael Buesch
2007-02-15 15:13                         ` Michael Buesch
2007-02-15 15:19                         ` Johannes Berg
2007-02-15 15:19                           ` Johannes Berg
2007-02-15 16:51                           ` Martin Langer
2007-02-15 16:51                             ` Martin Langer
2007-02-15 16:53                             ` Johannes Berg
2007-02-11 13:21               ` Johannes Berg
2007-02-11 13:21                 ` Johannes Berg
2007-02-09 18:45 ` Michael Buesch
2007-02-09 18:45   ` Michael Buesch
2007-02-09 19:17   ` Joseph Jezak
2007-02-09 19:17     ` Joseph Jezak
2007-02-09 19:26     ` Michael Buesch
2007-02-09 19:26       ` Michael Buesch
2007-02-09 19:58       ` Joseph Jezak
2007-02-09 19:58         ` Joseph Jezak
2007-02-09 22:24 ` 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=200702091811.40683.mb@bu3sch.de \
    --to=mb@bu3sch.de \
    --cc=Bcm43xx-dev@lists.berlios.de \
    --cc=Larry.Finger@lwfinger.net \
    --cc=linux-wireless@vger.kernel.org \
    --cc=linville@tuxdriver.com \
    --cc=netdev@vger.kernel.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.