diff mbox

[LEDE-DEV,2/2,RFC] ar71xx/cpe510: use second wifi calibration table

Message ID 1463966634-4617-2-git-send-email-lynxis@fe80.eu
State Accepted
Headers show

Commit Message

Alexander 'lynxis' Couzens May 23, 2016, 1:23 a.m. UTC
The cpe510 has two calibration tables. The first calibration
table requires to modify ath9k driver to work (patched tx gain table).

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
---
 target/linux/ar71xx/files/arch/mips/ath79/mach-cpe510.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

John Crispin May 23, 2016, 5:51 a.m. UTC | #1
On 23/05/2016 03:23, Alexander Couzens wrote:
> The cpe510 has two calibration tables. The first calibration
> table requires to modify ath9k driver to work (patched tx gain table).
> 

Hi,

why is this a RFC ? i am failing to see what we should comment on

	John


> Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
> ---
>  target/linux/ar71xx/files/arch/mips/ath79/mach-cpe510.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/target/linux/ar71xx/files/arch/mips/ath79/mach-cpe510.c b/target/linux/ar71xx/files/arch/mips/ath79/mach-cpe510.c
> index 74daf43..875589d 100644
> --- a/target/linux/ar71xx/files/arch/mips/ath79/mach-cpe510.c
> +++ b/target/linux/ar71xx/files/arch/mips/ath79/mach-cpe510.c
> @@ -117,7 +117,7 @@ static void __init cpe210_setup(void)
>  static void __init cpe510_setup(void)
>  {
>  	u8 *mac = (u8 *) KSEG1ADDR(0x1f830008);
> -	u8 *ee = (u8 *) KSEG1ADDR(0x1fff1000);
> +	u8 *ee = (u8 *) KSEG1ADDR(0x1fff5000);
>  
>  	cpe_setup(mac);
>  
>
Alexander 'lynxis' Couzens May 23, 2016, 1:46 p.m. UTC | #2
On Mon, 23 May 2016 07:51:16 +0200
John Crispin <john@phrozen.org> wrote:

> why is this a RFC ? i am failing to see what we should comment on

sorry, next time I should explain this more.

I put RFC on it, to get more comments from Felix and Matthias about
this. The device has 2 calibration table with different RF
charateristics.
Matthias Schiffer May 23, 2016, 5:19 p.m. UTC | #3
On 05/23/2016 03:23 AM, Alexander Couzens wrote:
> The cpe510 has two calibration tables. The first calibration
> table requires to modify ath9k driver to work (patched tx gain table).

Hi,
do you have any idea if the TP-Link firmware also uses the second
calibration table, or if their version of the WLAN driver is modified in a
way similar to the ath9k patch you sent a few days ago?

I find it quite unfortunate that we can't support both devices using a
single image, even though the original firmware can. The CPE210 and CPE510
can be easily differentiated by looking at the product-info partition, so
the caldata address could be chosen accordingly.

Regards,
Matthias


> 
> Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
> ---
>  target/linux/ar71xx/files/arch/mips/ath79/mach-cpe510.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/target/linux/ar71xx/files/arch/mips/ath79/mach-cpe510.c b/target/linux/ar71xx/files/arch/mips/ath79/mach-cpe510.c
> index 74daf43..875589d 100644
> --- a/target/linux/ar71xx/files/arch/mips/ath79/mach-cpe510.c
> +++ b/target/linux/ar71xx/files/arch/mips/ath79/mach-cpe510.c
> @@ -117,7 +117,7 @@ static void __init cpe210_setup(void)
>  static void __init cpe510_setup(void)
>  {
>  	u8 *mac = (u8 *) KSEG1ADDR(0x1f830008);
> -	u8 *ee = (u8 *) KSEG1ADDR(0x1fff1000);
> +	u8 *ee = (u8 *) KSEG1ADDR(0x1fff5000);
>  
>  	cpe_setup(mac);
>  
>
Felix Fietkau May 23, 2016, 5:23 p.m. UTC | #4
On 2016-05-23 19:19, Matthias Schiffer wrote:
> On 05/23/2016 03:23 AM, Alexander Couzens wrote:
>> The cpe510 has two calibration tables. The first calibration
>> table requires to modify ath9k driver to work (patched tx gain table).
> 
> Hi,
> do you have any idea if the TP-Link firmware also uses the second
> calibration table, or if their version of the WLAN driver is modified in a
> way similar to the ath9k patch you sent a few days ago?
Both. I dissected the driver and there seems to be an internal flag that
decides whether it uses one or the other. Debug printfs in that code
indicate that the second table is the high power table.

- Felix
diff mbox

Patch

diff --git a/target/linux/ar71xx/files/arch/mips/ath79/mach-cpe510.c b/target/linux/ar71xx/files/arch/mips/ath79/mach-cpe510.c
index 74daf43..875589d 100644
--- a/target/linux/ar71xx/files/arch/mips/ath79/mach-cpe510.c
+++ b/target/linux/ar71xx/files/arch/mips/ath79/mach-cpe510.c
@@ -117,7 +117,7 @@  static void __init cpe210_setup(void)
 static void __init cpe510_setup(void)
 {
 	u8 *mac = (u8 *) KSEG1ADDR(0x1f830008);
-	u8 *ee = (u8 *) KSEG1ADDR(0x1fff1000);
+	u8 *ee = (u8 *) KSEG1ADDR(0x1fff5000);
 
 	cpe_setup(mac);