linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Larry Finger <Larry.Finger@lwfinger.net>
To: "Rafał Miłecki" <zajec5@gmail.com>
Cc: linux-wireless@vger.kernel.org,
	"John W. Linville" <linville@tuxdriver.com>,
	"Michael Büsch" <mb@bu3sch.de>,
	b43-dev@lists.infradead.org
Subject: Re: [RFC][PATCH] ssb: cc: add & fix defines
Date: Wed, 20 Apr 2011 09:44:14 -0500	[thread overview]
Message-ID: <4DAEF13E.7000502@lwfinger.net> (raw)
In-Reply-To: <BANLkTikssXGwo7e1aqz-Qb8D08mv9g_MNA@mail.gmail.com>

On 04/20/2011 03:15 AM, Rafał Miłecki wrote:
> 2011/4/20 Larry Finger<Larry.Finger@lwfinger.net>:
>> On 04/19/2011 08:17 PM, Rafał Miłecki wrote:
>>>
>>> Signed-off-by: Rafał Miłecki<zajec5@gmail.com>
>>> ---
>>> With updated defines following MMIO with defines makes sense:
>>>   read32 0xf04001e0 ->    0x00010000
>>> write32 0xf04001e0<- 0x00010002 |= SSB_CHIPCO_CLKCTLST_FORCEHT
>>>   read32 0xf04001e0 ->    0x00010002
>>> (...)
>>>   read32 0xf04001e0 ->    0x00010002
>>>   read32 0xf04001e0 ->    0x00010002
>>>   read32 0xf04001e0 ->    0x00030002      (&    SSB_CHIPCO_CLKCTLST_HAVEHT)
>>>
>>> Of course MMIO does not come from 4328. It is from 4312 and wl (just SSB
>>> defs).
>>>
>>> The tricky part is that we were using SSB_CHIPCO_CLKCTLST_HAVEHT in PMU
>>> driver.
>>>
>>> My guess is that we were always checking for the wrong register and we got
>>> false positives on test for turning PLL down.
>>> ---
>>>   include/linux/ssb/ssb_driver_chipcommon.h |    9 +++++++--
>>>   1 files changed, 7 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/include/linux/ssb/ssb_driver_chipcommon.h
>>> b/include/linux/ssb/ssb_driver_chipcommon.h
>>> index ba83bc5..45e7b6c 100644
>>> --- a/include/linux/ssb/ssb_driver_chipcommon.h
>>> +++ b/include/linux/ssb/ssb_driver_chipcommon.h
>>> @@ -133,6 +133,9 @@
>>>   #define SSB_CHIPCO_GPIOIRQ            0x0074
>>>   #define SSB_CHIPCO_WATCHDOG           0x0080
>>>   #define SSB_CHIPCO_GPIOTIMER          0x0088          /* LED powersave
>>> (corerev>= 16) */
>>> +#define  SSB_CHIPCO_GPIOTIMER_OFFTIME  0x0000FFFF
>>> +#define  SSB_CHIPCO_GPIOTIMER_OFFTIME_SHIFT    0
>>> +#define  SSB_CHIPCO_GPIOTIMER_ONTIME   0xFFFF0000
>>>   #define  SSB_CHIPCO_GPIOTIMER_ONTIME_SHIFT    16
>>>   #define SSB_CHIPCO_GPIOTOUTM          0x008C          /* LED powersave
>>> (corerev>= 16) */
>>>   #define SSB_CHIPCO_CLOCK_N            0x0090
>>> @@ -191,8 +194,10 @@
>>>   #define  SSB_CHIPCO_CLKCTLST_HAVEALPREQ       0x00000008 /* ALP available
>>> request */
>>>   #define  SSB_CHIPCO_CLKCTLST_HAVEHTREQ        0x00000010 /* HT available
>>> request */
>>>   #define  SSB_CHIPCO_CLKCTLST_HWCROFF  0x00000020 /* Force HW clock
>>> request off */
>>> -#define  SSB_CHIPCO_CLKCTLST_HAVEHT    0x00010000 /* HT available */
>>> -#define  SSB_CHIPCO_CLKCTLST_HAVEALP   0x00020000 /* APL available */
>>> +#define  SSB_CHIPCO_CLKCTLST_HAVEHT    0x00010000 /* ALP available */
>>> +#define  SSB_CHIPCO_CLKCTLST_HAVEALP   0x00020000 /* HT available */
>>> +#define  SSB_CHIPCO_CLKCTLST_4328A0_HAVEHT     0x00010000 /* 4328a0 has
>>> reversed bits */
>>> +#define  SSB_CHIPCO_CLKCTLST_4328A0_HAVEALP    0x00020000 /* 4328a0 has
>>> reversed bits */
>>>   #define SSB_CHIPCO_HW_WORKAROUND      0x01E4 /* Hardware workaround
>>> (rev>= 20) */
>>>   #define SSB_CHIPCO_UART0_DATA         0x0300
>>>   #define SSB_CHIPCO_UART0_IMR          0x0304
>>
>> I agree that the HAVEHT bit is different for the 4328 than for the rest of
>> the versions, but I think you did not get the rest quite right. Having the
>> HT bit attached to a symbol named ALP and vice versa will only create
>> confusion. Make SSB_CHIPCO_CLKCTLST_HAVEHT be 0x00020000 and
>> SSB_CHIPCO_CLKCTLST_HAVEALP be 0x000100000.
>
> It was bad idea to send patch so late. Did I really update comments
> hoping it will work? :|

I thought you were using the experimental, virtual compiler that produces code 
based on intent as written in the comments. :)

Larry

  reply	other threads:[~2011-04-20 14:44 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-04-20  1:17 [RFC][PATCH] ssb: cc: add & fix defines Rafał Miłecki
2011-04-20  1:47 ` Larry Finger
2011-04-20  8:15   ` Rafał Miłecki
2011-04-20 14:44     ` Larry Finger [this message]
2011-04-21  2:26     ` Julian Calaby

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=4DAEF13E.7000502@lwfinger.net \
    --to=larry.finger@lwfinger.net \
    --cc=b43-dev@lists.infradead.org \
    --cc=linux-wireless@vger.kernel.org \
    --cc=linville@tuxdriver.com \
    --cc=mb@bu3sch.de \
    --cc=zajec5@gmail.com \
    /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).