linux-wireless.vger.kernel.org archive mirror
 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, Joseph Jezak <josejx@gentoo.org>
Subject: Re: [PATCH] bcm43xx: Fix code for spec changes of 2/7/2007
Date: Fri, 9 Feb 2007 19:45:24 +0100	[thread overview]
Message-ID: <200702091945.25187.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>

>  	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);

The specs are unclear at this point:
"Write the value to the offset"
Offset in which register type?

> @@ -933,6 +934,8 @@ static void bcm43xx_phy_initb6(struct bc
>  		                  bcm43xx_phy_read(bcm, 0x0802) | 0x0100);
>  		bcm43xx_phy_write(bcm, 0x042B,
>  		                  bcm43xx_phy_read(bcm, 0x042B) | 0x2000);
> +		bcm43xx_phy_write(bcm, 0x5B, 0x0000);
> +		bcm43xx_phy_write(bcm, 0x5C, 0x0000);
>  	}
>  
>  	/* Force to channel 7, even if not supported. */

Backup and reset old_channel later here, too.
Also, look at this:

# If the current channel is 8 or greater
   1. Set the channel to 1 
# Otherwise
   1. Set the channel to 13

> Index: linux-2.6/drivers/net/wireless/bcm43xx/bcm43xx_radio.c
> ===================================================================
> --- linux-2.6.orig/drivers/net/wireless/bcm43xx/bcm43xx_radio.c
> +++ linux-2.6/drivers/net/wireless/bcm43xx/bcm43xx_radio.c
> @@ -1393,11 +1393,12 @@ u16 bcm43xx_radio_init2050(struct bcm43x
>  	backup[12] = bcm43xx_read16(bcm, BCM43xx_MMIO_CHANNEL_EXT);
>  
>  	// Initialization
> -	if (phy->version == 0) {
> +	if (phy->analog == 0) {
>  		bcm43xx_write16(bcm, 0x03E6, 0x0122);
>  	} else {
> -		if (phy->version >= 2)
> -			bcm43xx_write16(bcm, 0x03E6, 0x0040);
> +		if (phy->analog >= 2)
> +			bcm43xx_write16(bcm, 0x0003, (bcm43xx_read16(bcm, 0x0003)
> +					& 0xFFBF) | 0x0040);

I think here is a specs bug.

>  		bcm43xx_write16(bcm, BCM43xx_MMIO_CHANNEL_EXT,
>  		                (bcm43xx_read16(bcm, BCM43xx_MMIO_CHANNEL_EXT) | 0x2000));
>  	}

-- 
Greetings Michael.

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

Thread overview: 37+ 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 17:11 ` Michael Buesch
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:48         ` Michael Buesch
2007-02-09 19:05         ` Joseph Jezak
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 21:32             ` Matthew Garrett
2007-02-09 22:52               ` Martin Langer
2007-02-10  5:55               ` Michael Buesch
2007-02-10 12:57                 ` Matthew Garrett
2007-02-27 17:00                   ` Gavin McCullagh
2007-02-11  2:13                 ` Joseph Jezak
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:13                       ` Michael Buesch
2007-02-15 15:19                         ` Johannes Berg
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 [this message]
2007-02-09 19:17   ` Joseph Jezak
2007-02-09 19:26     ` Michael Buesch
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=200702091945.25187.mb@bu3sch.de \
    --to=mb@bu3sch.de \
    --cc=Bcm43xx-dev@lists.berlios.de \
    --cc=Larry.Finger@lwfinger.net \
    --cc=josejx@gentoo.org \
    --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 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).