All of lore.kernel.org
 help / color / mirror / Atom feed
From: Gabor Juhos <juhosg@openwrt.org>
To: Luis Correia <luis.f.correia@gmail.com>
Cc: Felix Fietkau <nbd@openwrt.org>,
	Helmut Schaa <helmut.schaa@googlemail.com>,
	Gertjan van Wingerde <gwingerde@gmail.com>,
	"John W. Linville" <linville@tuxdriver.com>,
	Ivo van Doorn <IvDoorn@gmail.com>,
	linux-wireless@vger.kernel.org, users@rt2x00.serialmonkey.com
Subject: Re: [PATCH 3/9] rt2x00: Align RT chipset definitions with vendor driver.
Date: Fri, 09 Apr 2010 16:01:08 +0200	[thread overview]
Message-ID: <4BBF3324.70207@openwrt.org> (raw)
In-Reply-To: <v2iefe7343f1004090530v11803aa5n4bd81b896684a6e9@mail.gmail.com>

Luis Correia írta:
> On Fri, Apr 9, 2010 at 13:26, Felix Fietkau <nbd@openwrt.org> wrote:
>> On 2010-04-09 2:23 PM, Helmut Schaa wrote:
>>> Am Freitag 09 April 2010 schrieb Felix Fietkau:
>>>> On 2010-04-09 1:32 PM, Helmut Schaa wrote:
>>>>> Am Freitag 09 April 2010 schrieb Felix Fietkau:
>>>>>> On 2010-04-09 7:10 AM, Gertjan van Wingerde wrote:
>>>>>>> On 04/09/10 00:28, Felix Fietkau wrote:
>>>>>>>> On 2010-04-08 11:50 PM, Gertjan van Wingerde wrote:
>>>>>>>>> Only include definitions for RT chipsets that are also used inside the
>>>>>>>>> Ralink vendor drivers.
>>>>>>>>>
>>>>>>>>> Signed-off-by: Gertjan van Wingerde <gwingerde@gmail.com>
>>>>>>>>> ---
>>>>>>>>>  drivers/net/wireless/rt2x00/rt2800lib.c |   13 -------------
>>>>>>>>>  drivers/net/wireless/rt2x00/rt2x00.h    |    7 +++----
>>>>>>>>>  2 files changed, 3 insertions(+), 17 deletions(-)
>>>>>>>>>
>>>>>>>>> diff --git a/drivers/net/wireless/rt2x00/rt2800lib.c b/drivers/net/wireless/rt2x00/rt2800lib.c
>>>>>>>>> index 394c8e4..4bc7e09 100644
>>>>>>>>> --- a/drivers/net/wireless/rt2x00/rt2800lib.c
>>>>>>>>> +++ b/drivers/net/wireless/rt2x00/rt2800lib.c
>>>>>>>>> @@ -1209,10 +1209,7 @@ int rt2800_init_registers(struct rt2x00_dev *rt2x00dev)
>>>>>>>>>       rt2x00_set_field32(&reg, MAX_LEN_CFG_MAX_MPDU, AGGREGATION_SIZE);
>>>>>>>>>       if ((rt2x00_rt(rt2x00dev, RT2872) &&
>>>>>>>>>            (rt2x00_rev(rt2x00dev) >= RT2880E_VERSION)) ||
>>>>>>>>> -         rt2x00_rt(rt2x00dev, RT2880) ||
>>>>>>>>>           rt2x00_rt(rt2x00dev, RT2883) ||
>>>>>>>>> -         rt2x00_rt(rt2x00dev, RT2890) ||
>>>>>>>>> -         rt2x00_rt(rt2x00dev, RT3052) ||
>>>>>>>>>           (rt2x00_rt(rt2x00dev, RT3070) &&
>>>>>>>>>            (rt2x00_rev(rt2x00dev) < RT3070_VERSION)))
>>>>>>>>>               rt2x00_set_field32(&reg, MAX_LEN_CFG_MAX_PSDU, 2);
>>>>>>>>> @@ -1511,12 +1508,6 @@ int rt2800_init_bbp(struct rt2x00_dev *rt2x00dev)
>>>>>>>>>               rt2800_bbp_write(rt2x00dev, 105, 0x05);
>>>>>>>>>       }
>>>>>>>>>
>>>>>>>>> -     if (rt2x00_rt(rt2x00dev, RT3052)) {
>>>>>>>>> -             rt2800_bbp_write(rt2x00dev, 31, 0x08);
>>>>>>>>> -             rt2800_bbp_write(rt2x00dev, 78, 0x0e);
>>>>>>>>> -             rt2800_bbp_write(rt2x00dev, 80, 0x08);
>>>>>>>>> -     }
>>>>>>>>> -
>>>>>>>> Why are you removing support for RT3052? IMHO those writes were
>>>>>>>> necessary, last time I tested the rt2800pci code on the RT3052 WiSoC.
>>>>>>> That is because I have not been able to find them in any of the Ralink vendor drivers.
>>>>>>> Actually, none of the Ralink vendor drivers mention an RT chipset that identifies itself
>>>>>>> as a RT3052. The only mentioning Ive seen is RT305x devices that identify themselves as
>>>>>>> RT2872 devices, but even for them I haven't found these BBP initializations.
>>>>>>> That's why I removed this part.
>>>>>>>
>>>>>>> I have no problem re-instating this if I can find some evidence that these devices
>>>>>>> actually exist.
>>>>>> These chipsets won't show up in STA-only drivers, because they belong to
>>>>>> embedded APs. If you download GPL sources for devices such as ASUS
>>>>>> RT-N15 you will find ifdefs for CONFIG_RALINK_RT3052 and the above
>>>>>> values in BBPRegTable in the driver sources.
>>>>>> I have a few devices based on RT3052, which is why I added this code.
>>>>>> At some point I even had basic Rx/Tx working on it, but haven't tested
>>>>>> in a while.
>>>>> I also couldn't find any evidence of the existence of an 3052 _rt_ chipset.
>>>>> However, the ralink drivers defines a 3052 _rf_ chip:
>>>>>
>>>>> #define RFIC_3052                   9       // 2.4G/5G 2T2R
>>>> RT3052 is the name of the whole WiSoC chip, not just the MAC or RF part
>>>> of it. Since wifi is integrated in the SoC, I don't think there is a
>>>> separate name for just the wifi part.
>>> There is. I have one 3052 and one 3050 board (basically a 3052 but only
>>> 1T1R), and both identify themselves as RT2872 with different rf "chips"
>>> (of course, there are no additional chips). Hence, the check for RT3052
>>> was never true on both platforms.
>> Back when I tested it, I forced the chip to identify itself as RT3052 by
>> taking the id from the platform device.
>>
>>>>> I don't have such an rf chip in my devices but I don't think the BPP
>>>>> register setup should depend on the actual rf chip. So, if the register
>>>>> setup is really needed we should maybe check for rt2x00_is_soc instead
>>>>> of removing the code?
>>>> Yes, but rt2x00_is_soc() is not enough, since RT2880 is also SoC, but
>>>> slightly different compared to RT3052. I've only tested RT3052 myself.
>>> Right. So, from what I've seen so far it seems like all 305x boards identify
>>> themselves as rt2872. Hence, we can just replace 3052 with 2872 in the above
>>> check and leave the code as is.
>> OK, if that doesn't conflict with any PCI based stuff...
> 
> I have a rt2880 based SOC device, my main AP Minitar, I'll hook up the
> console to it and report what RT-RF chipset combination it has.

The ASUS RT-N15 says this:

root@OpenWrt:/# cat /proc/cpuinfo
system type             : Ralink RT2880   id:2 rev:1
machine                 : Asus RT-N15
processor               : 0
cpu model               : MIPS 4KEc V6.12
BogoMIPS                : 266.24
wait instruction        : yes
microsecond timers      : yes
tlb_entries             : 16
extra interrupt vector  : yes
hardware watchpoint     : yes, count: 0, address/irw mask: []
ASEs implemented        : mips16
shadow register sets    : 1
core                    : 0
VCED exceptions         : not available
VCEI exceptions         : not available

root@OpenWrt:/# cat /sys/kernel/debug/ieee80211/phy0/rt2800pci/chipset
rt chip:        2872
rf chip:        0001
revision:       0200

register        base    words   wordsize
csr     4096    512     4
eeprom  0       136     2
bbp     0       128     1
rf      4       4       4
root@OpenWrt:/#

-Gabor


  reply	other threads:[~2010-04-10  1:06 UTC|newest]

Thread overview: 47+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-04-08 21:50 [PATCH 0/9] rt2x00: Align with vendor driver and add support for rt3070/rt3071/rt3090/rt3390 Gertjan van Wingerde
2010-04-08 21:50 ` [PATCH 1/9] rt2x00: Let RF chipset decide the RF channel switch method to use in rt2800 Gertjan van Wingerde
2010-04-08 22:17   ` Ivo van Doorn
2010-04-08 21:50 ` [PATCH 2/9] rt2x00: Update rt2800 register definitions towards latest definitions Gertjan van Wingerde
2010-04-08 22:17   ` Ivo van Doorn
2010-04-08 21:50 ` [PATCH 3/9] rt2x00: Align RT chipset definitions with vendor driver Gertjan van Wingerde
2010-04-08 22:28   ` Felix Fietkau
2010-04-09  5:10     ` Gertjan van Wingerde
2010-04-09  5:38       ` Gertjan van Wingerde
2010-04-09  7:42         ` Helmut Schaa
2010-04-09  5:43       ` Felix Fietkau
2010-04-09 11:32         ` Helmut Schaa
2010-04-09 11:52           ` Felix Fietkau
2010-04-09 12:23             ` Helmut Schaa
2010-04-09 12:26               ` Felix Fietkau
2010-04-09 12:30                 ` Luis Correia
2010-04-09 14:01                   ` Gabor Juhos [this message]
2010-04-09 12:32                 ` Helmut Schaa
2010-04-09 17:23                   ` Gertjan van Wingerde
2010-04-08 22:33   ` Ivo van Doorn
2010-04-08 21:50 ` [PATCH 4/9] rt2x00: Remove rt2800 version constants Gertjan van Wingerde
2010-04-08 22:32   ` Ivo van Doorn
2010-04-08 23:53     ` Julian Calaby
2010-04-09  6:54       ` Ivo Van Doorn
2010-04-09  7:00         ` Julian Calaby
2010-04-10  8:57           ` Gertjan van Wingerde
2010-04-10  9:16             ` Ivo van Doorn
2010-04-10 11:20             ` Julian Calaby
2010-04-09 21:53     ` [rt2x00-users] " Benoit PAPILLAULT
2010-04-10  8:57       ` Gertjan van Wingerde
2010-04-08 21:50 ` [PATCH 5/9] rt2x00: Align rt2800 register initialization with vendor driver Gertjan van Wingerde
2010-04-08 22:33   ` Ivo van Doorn
2010-04-10 19:14     ` Gertjan van Wingerde
2010-04-10 20:58       ` Ivo van Doorn
2010-04-08 21:50 ` [PATCH 6/9] rt2x00: Finish rt3070 support in rt2800 register initialization Gertjan van Wingerde
2010-04-08 22:33   ` Ivo van Doorn
2010-04-10 20:52     ` Gertjan van Wingerde
2010-04-08 21:50 ` [PATCH 7/9] rt2x00: Add rt3071 " Gertjan van Wingerde
2010-04-08 22:38   ` Ivo van Doorn
2010-04-10 21:30     ` Gertjan van Wingerde
2010-04-08 21:50 ` [PATCH 8/9] rt2x00: Add rt3090 " Gertjan van Wingerde
2010-04-08 22:39   ` Ivo van Doorn
2010-04-08 21:50 ` [PATCH 9/9] rt2x00: Add rt3390 " Gertjan van Wingerde
2010-04-08 22:39   ` Ivo van Doorn
2010-04-08 22:16 ` [PATCH 0/9] rt2x00: Align with vendor driver and add support for rt3070/rt3071/rt3090/rt3390 Ivo van Doorn
2010-04-10  9:01   ` Gertjan van Wingerde
2010-04-11 12:31 [PATCH v2 " Gertjan van Wingerde
2010-04-11 12:31 ` [PATCH 3/9] rt2x00: Align RT chipset definitions with vendor driver Gertjan van Wingerde

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=4BBF3324.70207@openwrt.org \
    --to=juhosg@openwrt.org \
    --cc=IvDoorn@gmail.com \
    --cc=gwingerde@gmail.com \
    --cc=helmut.schaa@googlemail.com \
    --cc=linux-wireless@vger.kernel.org \
    --cc=linville@tuxdriver.com \
    --cc=luis.f.correia@gmail.com \
    --cc=nbd@openwrt.org \
    --cc=users@rt2x00.serialmonkey.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 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.