c8d86be387
This is a driver for the Realtek 8187 "SE" wireless PCI devices in some netbook computers (MSI Wind, and others). It includes its own copy of the ieee80211 stack, but it is compiled into the driver to prevend duplicate symbol issues. This version comes from Ralink with no authorship, but it is based on an old version of the rtl8180 driver from Andrea Merello. It was hacked up a bit to get it to build properly within the kernel tree and to properly handle the merged wireless stack within the driver. Cc: Andrea Merello <andreamrl@tiscali.it> Cc: linux-wireless <linux-wireless@vger.kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
1839 lines
59 KiB
C
1839 lines
59 KiB
C
/*
|
|
This is part of the rtl8180-sa2400 driver
|
|
released under the GPL (See file COPYING for details).
|
|
Copyright (c) 2005 Andrea Merello <andreamrl@tiscali.it>
|
|
|
|
This files contains programming code for the rtl8255
|
|
radio frontend.
|
|
|
|
*Many* thanks to Realtek Corp. for their great support!
|
|
|
|
*/
|
|
|
|
#define BAND_A 1
|
|
#define BAND_BG 2
|
|
|
|
#include "r8180.h"
|
|
#include "r8180_hw.h"
|
|
#include "r8180_rtl8255.h"
|
|
|
|
u32 rtl8255_chan[] = {
|
|
0, //dummy channel 0
|
|
0x13, //1
|
|
0x115, //2
|
|
0x217, //3
|
|
0x219, //4
|
|
0x31b, //5
|
|
0x41d, //6
|
|
0x41f, //7
|
|
0x621, //8
|
|
0x623, //9
|
|
0x625, //10
|
|
0x627, //11
|
|
0x829, //12
|
|
0x82b, //13
|
|
0x92f, // 14
|
|
};
|
|
|
|
static short rtl8255_gain_2G[]={
|
|
0x33, 0x17, 0x7c, 0xc5,//-78
|
|
0x43, 0x17, 0x7a, 0xc5,//-74
|
|
0x53, 0x17, 0x78, 0xc5,//-70
|
|
0x63, 0x17, 0x76, 0xc5,//-66
|
|
};
|
|
|
|
|
|
static short rtl8255_agc[]={
|
|
0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1,
|
|
|
|
0x1, 0x1, 0x2, 0x2, 0x3, 0x3, 0x4, 0x4, 0x5, 0x5,
|
|
0x6, 0x6, 0x7, 0x7, 0x8, 0x8, 0x9, 0x9, 0xa, 0xa,
|
|
0xb, 0xb, 0xc, 0xc, 0xd, 0xd, 0xe, 0xe, 0xf, 0xf,
|
|
|
|
0x10, 0x10, 0x11, 0x11, 0x12, 0x12, 0x13, 0x13, 0x14, 0x14,
|
|
0x15, 0x15, 0x16, 0x16, 0x17, 0x17, 0x18, 0x18, 0x19, 0x19,
|
|
0x1a, 0x1a, 0x1b, 0x1b, 0x1c, 0x1c, 0x1d, 0x1d, 0x1e, 0x1e,
|
|
0x1f, 0x1f,
|
|
|
|
0x20, 0x20, 0x21, 0x21, 0x22, 0x22, 0x23, 0x23, 0x24, 0x24,
|
|
0x25, 0x25, 0x26, 0x26, 0x27, 0x27, 0x28, 0x28, 0x29, 0x29,
|
|
0x2a, 0x2a,
|
|
|
|
0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a,
|
|
0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a,
|
|
0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a,
|
|
0x2a, 0x2a, 0x2a, 0x2a
|
|
|
|
};
|
|
|
|
void rtl8255_set_gain(struct net_device *dev, short gain)
|
|
{
|
|
|
|
// struct r8180_priv *priv = ieee80211_priv(dev);
|
|
|
|
write_phy_ofdm(dev, 0x0d, rtl8255_gain_2G[gain * 4]);
|
|
write_phy_ofdm(dev, 0x23, rtl8255_gain_2G[gain * 4 + 1]);
|
|
write_phy_ofdm(dev, 0x1b, rtl8255_gain_2G[gain * 4 + 2]);
|
|
write_phy_ofdm(dev, 0x1d, rtl8255_gain_2G[gain * 4 + 3]);
|
|
//rtl8225_set_gain_usb(dev, gain);
|
|
}
|
|
|
|
void write_rtl8255_reg0c(struct net_device *dev, u32 d1, u32 d2, u32 d3, u32 d4,
|
|
u32 d5, u32 d6, u32 d7, u32 d8, u32 d9, u32 d10)
|
|
{
|
|
int i,j;
|
|
u16 out,select;
|
|
u8 bit;
|
|
u32 bangdata;
|
|
// struct r8180_priv *priv = ieee80211_priv(dev);
|
|
|
|
write_nic_word(dev,RFPinsEnable,
|
|
(read_nic_word(dev,RFPinsEnable) | 0x7));
|
|
|
|
select = read_nic_word(dev, RFPinsSelect);
|
|
|
|
write_nic_word(dev, RFPinsSelect, select | 0x7 | SW_CONTROL_GPIO);
|
|
|
|
out = read_nic_word(dev, RFPinsOutput) & 0xfff3;
|
|
|
|
write_nic_word(dev, RFPinsOutput, out | BB_HOST_BANG_EN );//| 0x1fff);
|
|
|
|
force_pci_posting(dev);
|
|
udelay(2);
|
|
|
|
write_nic_word(dev, RFPinsOutput, out);
|
|
|
|
force_pci_posting(dev);
|
|
udelay(2);
|
|
|
|
for(j=0;j<10;j++)
|
|
{
|
|
switch(j)
|
|
{
|
|
case 9:
|
|
bangdata = d10 | 0x0c;
|
|
break;
|
|
case 8:
|
|
bangdata = d9;
|
|
break;
|
|
case 7:
|
|
bangdata = d8;
|
|
break;
|
|
case 6:
|
|
bangdata = d7;
|
|
break;
|
|
case 5:
|
|
bangdata = d6;
|
|
break;
|
|
case 4:
|
|
bangdata = d5;
|
|
break;
|
|
case 3:
|
|
bangdata = d4;
|
|
break;
|
|
case 2:
|
|
bangdata = d3;
|
|
break;
|
|
case 1:
|
|
bangdata = d2;
|
|
break;
|
|
case 0:
|
|
bangdata = d1;
|
|
break;
|
|
default:
|
|
bangdata=0xbadc0de; /* avoid gcc complaints */
|
|
break;
|
|
}
|
|
|
|
for(i=31; i>=0;i--){
|
|
|
|
bit = (bangdata & (1<<i)) >> i;
|
|
|
|
write_nic_word(dev, RFPinsOutput, bit | out);
|
|
force_pci_posting(dev);
|
|
udelay(1);
|
|
write_nic_word(dev, RFPinsOutput, bit | out | BB_HOST_BANG_CLK);
|
|
force_pci_posting(dev);
|
|
udelay(1);
|
|
// write_nic_word(dev, RFPinsOutput, bit | out | BB_HOST_BANG_CLK);
|
|
i--;
|
|
bit = (bangdata & (1<<i)) >> i;
|
|
|
|
write_nic_word(dev, RFPinsOutput, bit | out | BB_HOST_BANG_CLK);
|
|
force_pci_posting(dev);
|
|
udelay(1);
|
|
// write_nic_word(dev, RFPinsOutput, bit | out | BB_HOST_BANG_CLK);
|
|
write_nic_word(dev, RFPinsOutput, bit | out);
|
|
force_pci_posting(dev);
|
|
udelay(1);
|
|
}
|
|
}
|
|
|
|
write_nic_word(dev, RFPinsOutput, out | BB_HOST_BANG_EN);
|
|
force_pci_posting(dev);
|
|
udelay(10);
|
|
|
|
// write_nic_word(dev, RFPinsOutput, out | BB_HOST_BANG_EN);
|
|
write_nic_word(dev, RFPinsSelect, select | SW_CONTROL_GPIO);
|
|
// rtl8185_rf_pins_enable(dev);
|
|
|
|
}
|
|
|
|
void write_rtl8255(struct net_device *dev, u8 adr, u16 data)
|
|
{
|
|
int i;
|
|
u16 out,select;
|
|
u8 bit;
|
|
u32 bangdata = (data << 4) | (adr & 0xf);
|
|
// struct r8180_priv *priv = ieee80211_priv(dev);
|
|
|
|
out = read_nic_word(dev, RFPinsOutput) & 0xfff3;
|
|
|
|
write_nic_word(dev,RFPinsEnable,
|
|
(read_nic_word(dev,RFPinsEnable) | 0x7));
|
|
|
|
select = read_nic_word(dev, RFPinsSelect);
|
|
|
|
write_nic_word(dev, RFPinsSelect, select | 0x7 | SW_CONTROL_GPIO);
|
|
|
|
force_pci_posting(dev);
|
|
udelay(10);
|
|
|
|
write_nic_word(dev, RFPinsOutput, out | BB_HOST_BANG_EN );//| 0x1fff);
|
|
|
|
force_pci_posting(dev);
|
|
udelay(2);
|
|
|
|
write_nic_word(dev, RFPinsOutput, out);
|
|
|
|
force_pci_posting(dev);
|
|
udelay(10);
|
|
|
|
|
|
for(i=15; i>=0;i--){
|
|
|
|
bit = (bangdata & (1<<i)) >> i;
|
|
|
|
write_nic_word(dev, RFPinsOutput, bit | out);
|
|
write_nic_word(dev, RFPinsOutput, bit | out | BB_HOST_BANG_CLK);
|
|
write_nic_word(dev, RFPinsOutput, bit | out | BB_HOST_BANG_CLK);
|
|
i--;
|
|
bit = (bangdata & (1<<i)) >> i;
|
|
|
|
write_nic_word(dev, RFPinsOutput, bit | out | BB_HOST_BANG_CLK);
|
|
write_nic_word(dev, RFPinsOutput, bit | out | BB_HOST_BANG_CLK);
|
|
write_nic_word(dev, RFPinsOutput, bit | out);
|
|
}
|
|
|
|
|
|
write_nic_word(dev, RFPinsOutput, out | BB_HOST_BANG_EN);
|
|
|
|
force_pci_posting(dev);
|
|
udelay(10);
|
|
|
|
write_nic_word(dev, RFPinsOutput, out | BB_HOST_BANG_EN);
|
|
write_nic_word(dev, RFPinsSelect, select | SW_CONTROL_GPIO);
|
|
|
|
rtl8185_rf_pins_enable(dev);
|
|
}
|
|
|
|
void rtl8255_rf_close(struct net_device *dev)
|
|
{
|
|
|
|
// rtl8180_set_anaparam(dev, RTL8225_ANAPARAM_OFF);
|
|
// rtl8185_set_anaparam2(dev, RTL8225_ANAPARAM2_OFF);
|
|
}
|
|
|
|
void rtl8255_SetTXPowerLevel(struct net_device *dev, short ch)
|
|
{
|
|
struct r8180_priv *priv = ieee80211_priv(dev);
|
|
|
|
u8 cck_power_level = 0xff & priv->chtxpwr[ch];
|
|
u8 ofdm_power_level = 0xff & priv->chtxpwr_ofdm[ch];
|
|
write_nic_byte(dev, TX_GAIN_OFDM, ofdm_power_level);
|
|
write_nic_byte(dev, TX_GAIN_CCK, cck_power_level);
|
|
force_pci_posting(dev);
|
|
mdelay(1);
|
|
//write_nic_byte(dev, TX_AGC_CONTROL,4);
|
|
}
|
|
#if 0
|
|
/* switch between mode B and G */
|
|
void rtl8255_set_mode(struct net_device *dev, short modeb)
|
|
{
|
|
write_phy_ofdm(dev, 0x15, (modeb ? 0x0 : 0x40));
|
|
write_phy_ofdm(dev, 0x17, (modeb ? 0x0 : 0x40));
|
|
}
|
|
#endif
|
|
|
|
void rtl8255_rf_set_chan(struct net_device *dev, short ch)
|
|
{
|
|
//write_rtl8225(dev, 0x7, rtl8225_chan[1]);
|
|
write_rtl8255(dev, 0x5, 0x65);
|
|
write_rtl8255(dev, 0x6, rtl8255_chan[ch]);
|
|
write_rtl8255(dev, 0x7, 0x7c);
|
|
write_rtl8255(dev, 0x8, 0x6);
|
|
|
|
|
|
force_pci_posting(dev);
|
|
set_current_state(TASK_INTERRUPTIBLE);
|
|
schedule_timeout(HZ);
|
|
// rtl8225_set_mode_B(dev);
|
|
|
|
rtl8255_SetTXPowerLevel(dev, ch);
|
|
/* FIXME FIXME FIXME */
|
|
|
|
#if 0
|
|
write_nic_byte(dev,DIFS,0xe); //DIFS
|
|
write_nic_byte(dev,SLOT,0x14); //SLOT
|
|
write_nic_byte(dev,EIFS,0x5b); // EIFS
|
|
//write_nic_byte(dev,0xbc,0); //CW CONFIG
|
|
write_nic_byte(dev,0xbd,0xa4); //CW VALUE
|
|
//write_nic_byte(dev,TX_AGC_CONTROL,4);
|
|
//write_nic_byte(dev, 0x9d,7);
|
|
//Apr 20 13:25:03 localhost kernel: w8. 409d<-7 // CCK AGC
|
|
/*write_nic_word(dev,0x84,0x488);
|
|
write_nic_byte(dev,0x91,0x3e);
|
|
write_nic_byte(dev,0x90,0x30);
|
|
write_nic_word(dev,0x84,0x488);
|
|
write_nic_byte(dev,0x91,0x3e);
|
|
write_nic_byte(dev,0x90,0x20);
|
|
*/
|
|
//mdelay(100);
|
|
#endif
|
|
}
|
|
|
|
void rtl8255_init_BGband(struct net_device *dev)
|
|
{
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x804187cf, 0x40000027,
|
|
0x92402ac0, 0xf0009, 0x28000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc00);
|
|
write_rtl8255(dev, 0x4, 0xe00);
|
|
write_rtl8255(dev, 0x4, 0xc00);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x800);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa00);
|
|
write_rtl8255(dev, 0x4, 0x800);
|
|
write_rtl8255(dev, 0x4, 0x400);
|
|
write_rtl8255(dev, 0x3, 0x26);
|
|
write_rtl8255(dev, 0x2, 0x27);
|
|
write_rtl8255(dev, 0x4, 0x600);
|
|
write_rtl8255(dev, 0x4, 0x400);
|
|
write_rtl8255(dev, 0x4, 0x400);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x600);
|
|
write_rtl8255(dev, 0x4, 0x400);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x804187ce, 0x80000027,
|
|
0x92402ac0, 0xf0009, 0x28000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc01);
|
|
write_rtl8255(dev, 0x4, 0xe01);
|
|
write_rtl8255(dev, 0x4, 0xc01);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x801);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa01);
|
|
write_rtl8255(dev, 0x4, 0x801);
|
|
write_rtl8255(dev, 0x4, 0x401);
|
|
write_rtl8255(dev, 0x3, 0x26);
|
|
write_rtl8255(dev, 0x2, 0x27);
|
|
write_rtl8255(dev, 0x4, 0x601);
|
|
write_rtl8255(dev, 0x4, 0x401);
|
|
write_rtl8255(dev, 0x4, 0x401);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x601);
|
|
write_rtl8255(dev, 0x4, 0x401);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x80418bdf, 0x40000027,
|
|
0x92402ac4, 0xf0009, 0x28000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc02);
|
|
write_rtl8255(dev, 0x4, 0xe02);
|
|
write_rtl8255(dev, 0x4, 0xc02);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x802);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa02);
|
|
write_rtl8255(dev, 0x4, 0x802);
|
|
write_rtl8255(dev, 0x4, 0x402);
|
|
write_rtl8255(dev, 0x3, 0x26);
|
|
write_rtl8255(dev, 0x2, 0x26);
|
|
write_rtl8255(dev, 0x4, 0x602);
|
|
write_rtl8255(dev, 0x4, 0x402);
|
|
write_rtl8255(dev, 0x4, 0x402);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x602);
|
|
write_rtl8255(dev, 0x4, 0x402);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x80418bbf, 0x40000027,
|
|
0x92402ac4, 0xf0009, 0x28000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc03);
|
|
write_rtl8255(dev, 0x4, 0xe03);
|
|
write_rtl8255(dev, 0x4, 0xc03);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x803);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa03);
|
|
write_rtl8255(dev, 0x4, 0x803);
|
|
write_rtl8255(dev, 0x4, 0x403);
|
|
write_rtl8255(dev, 0x3, 0x26);
|
|
write_rtl8255(dev, 0x2, 0x26);
|
|
write_rtl8255(dev, 0x4, 0x603);
|
|
write_rtl8255(dev, 0x4, 0x403);
|
|
write_rtl8255(dev, 0x4, 0x403);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x603);
|
|
write_rtl8255(dev, 0x4, 0x403);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x80418b9f, 0x40000027,
|
|
0x92402ac8, 0xf0009, 0x28000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc04);
|
|
write_rtl8255(dev, 0x4, 0xe04);
|
|
write_rtl8255(dev, 0x4, 0xc04);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x804);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa04);
|
|
write_rtl8255(dev, 0x4, 0x804);
|
|
write_rtl8255(dev, 0x4, 0x404);
|
|
write_rtl8255(dev, 0x3, 0x26);
|
|
write_rtl8255(dev, 0x2, 0x26);
|
|
write_rtl8255(dev, 0x4, 0x604);
|
|
write_rtl8255(dev, 0x4, 0x404);
|
|
write_rtl8255(dev, 0x4, 0x404);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x604);
|
|
write_rtl8255(dev, 0x4, 0x404);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x804183df, 0x40000027,
|
|
0x92402ac8, 0xf0009, 0x28000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc05);
|
|
write_rtl8255(dev, 0x4, 0xe05);
|
|
write_rtl8255(dev, 0x4, 0xc05);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x805);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa05);
|
|
write_rtl8255(dev, 0x4, 0x805);
|
|
write_rtl8255(dev, 0x4, 0x405);
|
|
write_rtl8255(dev, 0x3, 0x26);
|
|
write_rtl8255(dev, 0x2, 0x26);
|
|
write_rtl8255(dev, 0x4, 0x605);
|
|
write_rtl8255(dev, 0x4, 0x405);
|
|
write_rtl8255(dev, 0x4, 0x405);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x605);
|
|
write_rtl8255(dev, 0x4, 0x405);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x804183cf, 0x27,
|
|
0x92402acc, 0xf0009, 0x28000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc06);
|
|
write_rtl8255(dev, 0x4, 0xe06);
|
|
write_rtl8255(dev, 0x4, 0xc06);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x806);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa06);
|
|
write_rtl8255(dev, 0x4, 0x806);
|
|
write_rtl8255(dev, 0x4, 0x406);
|
|
write_rtl8255(dev, 0x3, 0x25);
|
|
write_rtl8255(dev, 0x2, 0x26);
|
|
write_rtl8255(dev, 0x4, 0x606);
|
|
write_rtl8255(dev, 0x4, 0x406);
|
|
write_rtl8255(dev, 0x4, 0x406);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x606);
|
|
write_rtl8255(dev, 0x4, 0x406);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x804183af, 0x27,
|
|
0x92402acc, 0xf0009, 0x28000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc07);
|
|
write_rtl8255(dev, 0x4, 0xe07);
|
|
write_rtl8255(dev, 0x4, 0xc07);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x807);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa07);
|
|
write_rtl8255(dev, 0x4, 0x807);
|
|
write_rtl8255(dev, 0x4, 0x407);
|
|
write_rtl8255(dev, 0x3, 0x25);
|
|
write_rtl8255(dev, 0x2, 0x26);
|
|
write_rtl8255(dev, 0x4, 0x607);
|
|
write_rtl8255(dev, 0x4, 0x407);
|
|
write_rtl8255(dev, 0x4, 0x407);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x607);
|
|
write_rtl8255(dev, 0x4, 0x407);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x804083d7, 0x40000027,
|
|
0x92402ad0, 0xf0009, 0x28000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc08);
|
|
write_rtl8255(dev, 0x4, 0xe08);
|
|
write_rtl8255(dev, 0x4, 0xc08);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x808);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa08);
|
|
write_rtl8255(dev, 0x4, 0x808);
|
|
write_rtl8255(dev, 0x4, 0x408);
|
|
write_rtl8255(dev, 0x3, 0x25);
|
|
write_rtl8255(dev, 0x2, 0x26);
|
|
write_rtl8255(dev, 0x4, 0x608);
|
|
write_rtl8255(dev, 0x4, 0x408);
|
|
write_rtl8255(dev, 0x4, 0x408);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x608);
|
|
write_rtl8255(dev, 0x4, 0x408);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x804083c7, 0x27,
|
|
0x92402ad0, 0xf0009, 0x28000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc09);
|
|
write_rtl8255(dev, 0x4, 0xe09);
|
|
write_rtl8255(dev, 0x4, 0xc09);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x809);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa09);
|
|
write_rtl8255(dev, 0x4, 0x809);
|
|
write_rtl8255(dev, 0x4, 0x409);
|
|
write_rtl8255(dev, 0x3, 0x25);
|
|
write_rtl8255(dev, 0x2, 0x26);
|
|
write_rtl8255(dev, 0x4, 0x609);
|
|
write_rtl8255(dev, 0x4, 0x409);
|
|
write_rtl8255(dev, 0x4, 0x409);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x609);
|
|
write_rtl8255(dev, 0x4, 0x409);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x804043d7, 0x40000027,
|
|
0x92402ad4, 0xf0009, 0x28000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc0a);
|
|
write_rtl8255(dev, 0x4, 0xe0a);
|
|
write_rtl8255(dev, 0x4, 0xc0a);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x80a);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa0a);
|
|
write_rtl8255(dev, 0x4, 0x80a);
|
|
write_rtl8255(dev, 0x4, 0x40a);
|
|
write_rtl8255(dev, 0x3, 0x25);
|
|
write_rtl8255(dev, 0x2, 0x26);
|
|
write_rtl8255(dev, 0x4, 0x60a);
|
|
write_rtl8255(dev, 0x4, 0x40a);
|
|
write_rtl8255(dev, 0x4, 0x40a);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x60a);
|
|
write_rtl8255(dev, 0x4, 0x40a);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x804043d7, 0x40000027,
|
|
0x92402ad4, 0xf0009, 0x28000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc0b);
|
|
write_rtl8255(dev, 0x4, 0xe0b);
|
|
write_rtl8255(dev, 0x4, 0xc0b);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x80b);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa0b);
|
|
write_rtl8255(dev, 0x4, 0x80b);
|
|
write_rtl8255(dev, 0x4, 0x40b);
|
|
write_rtl8255(dev, 0x3, 0x25);
|
|
write_rtl8255(dev, 0x2, 0x26);
|
|
write_rtl8255(dev, 0x4, 0x60b);
|
|
write_rtl8255(dev, 0x4, 0x40b);
|
|
write_rtl8255(dev, 0x4, 0x40b);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x60b);
|
|
write_rtl8255(dev, 0x4, 0x40b);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x804043c7, 0x27,
|
|
0x92402ad8, 0xf0009, 0x28000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc0c);
|
|
write_rtl8255(dev, 0x4, 0xe0c);
|
|
write_rtl8255(dev, 0x4, 0xc0c);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x80c);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa0c);
|
|
write_rtl8255(dev, 0x4, 0x80c);
|
|
write_rtl8255(dev, 0x4, 0x40c);
|
|
write_rtl8255(dev, 0x3, 0x25);
|
|
write_rtl8255(dev, 0x2, 0x26);
|
|
write_rtl8255(dev, 0x4, 0x60c);
|
|
write_rtl8255(dev, 0x4, 0x40c);
|
|
write_rtl8255(dev, 0x4, 0x40c);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x60c);
|
|
write_rtl8255(dev, 0x4, 0x40c);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x804043a7, 0x27,
|
|
0x92402ad8, 0xf0009, 0x28000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc0d);
|
|
write_rtl8255(dev, 0x4, 0xe0d);
|
|
write_rtl8255(dev, 0x4, 0xc0d);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x80d);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa0d);
|
|
write_rtl8255(dev, 0x4, 0x80d);
|
|
write_rtl8255(dev, 0x4, 0x40d);
|
|
write_rtl8255(dev, 0x3, 0x25);
|
|
write_rtl8255(dev, 0x2, 0x26);
|
|
write_rtl8255(dev, 0x4, 0x60d);
|
|
write_rtl8255(dev, 0x4, 0x40d);
|
|
write_rtl8255(dev, 0x4, 0x40d);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x60d);
|
|
write_rtl8255(dev, 0x4, 0x40d);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x80404387, 0x27,
|
|
0x92402aa8, 0xf0009, 0x28000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc0e);
|
|
write_rtl8255(dev, 0x4, 0xe0e);
|
|
write_rtl8255(dev, 0x4, 0xc0e);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x80e);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa0e);
|
|
write_rtl8255(dev, 0x4, 0x80e);
|
|
write_rtl8255(dev, 0x4, 0x40e);
|
|
write_rtl8255(dev, 0x3, 0x25);
|
|
write_rtl8255(dev, 0x2, 0x26);
|
|
write_rtl8255(dev, 0x4, 0x60e);
|
|
write_rtl8255(dev, 0x4, 0x40e);
|
|
write_rtl8255(dev, 0x4, 0x40e);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x60e);
|
|
write_rtl8255(dev, 0x4, 0x40e);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x804041c7, 0x27,
|
|
0x92402aa8, 0xf0009, 0x28000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc0f);
|
|
write_rtl8255(dev, 0x4, 0xe0f);
|
|
write_rtl8255(dev, 0x4, 0xc0f);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x80f);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa0f);
|
|
write_rtl8255(dev, 0x4, 0x80f);
|
|
write_rtl8255(dev, 0x4, 0x40f);
|
|
write_rtl8255(dev, 0x3, 0x25);
|
|
write_rtl8255(dev, 0x2, 0x26);
|
|
write_rtl8255(dev, 0x4, 0x60f);
|
|
write_rtl8255(dev, 0x4, 0x40f);
|
|
write_rtl8255(dev, 0x4, 0x40f);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x60f);
|
|
write_rtl8255(dev, 0x4, 0x40f);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x804041a7, 0x27,
|
|
0x92402aac, 0xf0009, 0x28000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc10);
|
|
write_rtl8255(dev, 0x4, 0xe10);
|
|
write_rtl8255(dev, 0x4, 0xc10);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x810);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa10);
|
|
write_rtl8255(dev, 0x4, 0x810);
|
|
write_rtl8255(dev, 0x4, 0x410);
|
|
write_rtl8255(dev, 0x3, 0x25);
|
|
write_rtl8255(dev, 0x2, 0x26);
|
|
write_rtl8255(dev, 0x4, 0x610);
|
|
write_rtl8255(dev, 0x4, 0x410);
|
|
write_rtl8255(dev, 0x4, 0x410);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x610);
|
|
write_rtl8255(dev, 0x4, 0x410);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x80404187, 0x27,
|
|
0x92402aac, 0xf0009, 0x28000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc11);
|
|
write_rtl8255(dev, 0x4, 0xe11);
|
|
write_rtl8255(dev, 0x4, 0xc11);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x811);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa11);
|
|
write_rtl8255(dev, 0x4, 0x811);
|
|
write_rtl8255(dev, 0x4, 0x411);
|
|
write_rtl8255(dev, 0x3, 0x25);
|
|
write_rtl8255(dev, 0x2, 0x26);
|
|
write_rtl8255(dev, 0x4, 0x611);
|
|
write_rtl8255(dev, 0x4, 0x411);
|
|
write_rtl8255(dev, 0x4, 0x411);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x611);
|
|
write_rtl8255(dev, 0x4, 0x411);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x80404186, 0x80000027,
|
|
0x92402ab0, 0xf0009, 0x28000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc12);
|
|
write_rtl8255(dev, 0x4, 0xe12);
|
|
write_rtl8255(dev, 0x4, 0xc12);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x812);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa12);
|
|
write_rtl8255(dev, 0x4, 0x812);
|
|
write_rtl8255(dev, 0x4, 0x412);
|
|
write_rtl8255(dev, 0x3, 0x25);
|
|
write_rtl8255(dev, 0x2, 0x26);
|
|
write_rtl8255(dev, 0x4, 0x612);
|
|
write_rtl8255(dev, 0x4, 0x412);
|
|
write_rtl8255(dev, 0x4, 0x412);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x612);
|
|
write_rtl8255(dev, 0x4, 0x412);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x80404186, 0x27,
|
|
0x92402ab0, 0xf0009, 0x28000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc13);
|
|
write_rtl8255(dev, 0x4, 0xe13);
|
|
write_rtl8255(dev, 0x4, 0xc13);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x813);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa13);
|
|
write_rtl8255(dev, 0x4, 0x813);
|
|
write_rtl8255(dev, 0x4, 0x413);
|
|
write_rtl8255(dev, 0x3, 0x25);
|
|
write_rtl8255(dev, 0x2, 0x26);
|
|
write_rtl8255(dev, 0x4, 0x613);
|
|
write_rtl8255(dev, 0x4, 0x413);
|
|
write_rtl8255(dev, 0x4, 0x413);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x613);
|
|
write_rtl8255(dev, 0x4, 0x413);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x80404146, 0x27,
|
|
0x92402ab4, 0xf0009, 0x28000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc14);
|
|
write_rtl8255(dev, 0x4, 0xe14);
|
|
write_rtl8255(dev, 0x4, 0xc14);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x814);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa14);
|
|
write_rtl8255(dev, 0x4, 0x814);
|
|
write_rtl8255(dev, 0x4, 0x414);
|
|
write_rtl8255(dev, 0x3, 0x25);
|
|
write_rtl8255(dev, 0x2, 0x26);
|
|
write_rtl8255(dev, 0x4, 0x614);
|
|
write_rtl8255(dev, 0x4, 0x414);
|
|
write_rtl8255(dev, 0x4, 0x414);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x614);
|
|
write_rtl8255(dev, 0x4, 0x414);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x80404126, 0x27,
|
|
0x92402ab4, 0xf0009, 0x28000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc15);
|
|
write_rtl8255(dev, 0x4, 0xe15);
|
|
write_rtl8255(dev, 0x4, 0xc15);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x815);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa15);
|
|
write_rtl8255(dev, 0x4, 0x815);
|
|
write_rtl8255(dev, 0x4, 0x415);
|
|
write_rtl8255(dev, 0x3, 0x25);
|
|
write_rtl8255(dev, 0x2, 0x26);
|
|
write_rtl8255(dev, 0x4, 0x615);
|
|
write_rtl8255(dev, 0x4, 0x415);
|
|
write_rtl8255(dev, 0x4, 0x415);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x615);
|
|
write_rtl8255(dev, 0x4, 0x415);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x80404106, 0x27,
|
|
0x92402ab8, 0xf0009, 0x28000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc16);
|
|
write_rtl8255(dev, 0x4, 0xe16);
|
|
write_rtl8255(dev, 0x4, 0xc16);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x816);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa16);
|
|
write_rtl8255(dev, 0x4, 0x816);
|
|
write_rtl8255(dev, 0x4, 0x416);
|
|
write_rtl8255(dev, 0x3, 0x25);
|
|
write_rtl8255(dev, 0x2, 0x26);
|
|
write_rtl8255(dev, 0x4, 0x616);
|
|
write_rtl8255(dev, 0x4, 0x416);
|
|
write_rtl8255(dev, 0x4, 0x416);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x616);
|
|
write_rtl8255(dev, 0x4, 0x416);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x80404105, 0x27,
|
|
0x92402ab8, 0xf0009, 0x28000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc17);
|
|
write_rtl8255(dev, 0x4, 0xe17);
|
|
write_rtl8255(dev, 0x4, 0xc17);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x817);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa17);
|
|
write_rtl8255(dev, 0x4, 0x817);
|
|
write_rtl8255(dev, 0x4, 0x417);
|
|
write_rtl8255(dev, 0x3, 0x25);
|
|
write_rtl8255(dev, 0x2, 0x26);
|
|
write_rtl8255(dev, 0x4, 0x617);
|
|
write_rtl8255(dev, 0x4, 0x417);
|
|
write_rtl8255(dev, 0x4, 0x417);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x617);
|
|
write_rtl8255(dev, 0x4, 0x417);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x80404104, 0x80000027,
|
|
0x92402a88, 0xf0009, 0x28000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc18);
|
|
write_rtl8255(dev, 0x4, 0xe18);
|
|
write_rtl8255(dev, 0x4, 0xc18);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x818);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa18);
|
|
write_rtl8255(dev, 0x4, 0x818);
|
|
write_rtl8255(dev, 0x4, 0x418);
|
|
write_rtl8255(dev, 0x3, 0x25);
|
|
write_rtl8255(dev, 0x2, 0x26);
|
|
write_rtl8255(dev, 0x4, 0x618);
|
|
write_rtl8255(dev, 0x4, 0x418);
|
|
write_rtl8255(dev, 0x4, 0x418);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x618);
|
|
write_rtl8255(dev, 0x4, 0x418);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x80404104, 0x27,
|
|
0x92402a88, 0xf0009, 0x28000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc19);
|
|
write_rtl8255(dev, 0x4, 0xe19);
|
|
write_rtl8255(dev, 0x4, 0xc19);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x819);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa19);
|
|
write_rtl8255(dev, 0x4, 0x819);
|
|
write_rtl8255(dev, 0x4, 0x419);
|
|
write_rtl8255(dev, 0x3, 0x25);
|
|
write_rtl8255(dev, 0x2, 0x26);
|
|
write_rtl8255(dev, 0x4, 0x619);
|
|
write_rtl8255(dev, 0x4, 0x419);
|
|
write_rtl8255(dev, 0x4, 0x419);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x619);
|
|
write_rtl8255(dev, 0x4, 0x419);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x80404044, 0x27,
|
|
0x92402a8c, 0xf0009, 0x28000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc1a);
|
|
write_rtl8255(dev, 0x4, 0xe1a);
|
|
write_rtl8255(dev, 0x4, 0xc1a);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x81a);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa1a);
|
|
write_rtl8255(dev, 0x4, 0x81a);
|
|
write_rtl8255(dev, 0x4, 0x41a);
|
|
write_rtl8255(dev, 0x3, 0x25);
|
|
write_rtl8255(dev, 0x2, 0x26);
|
|
write_rtl8255(dev, 0x4, 0x61a);
|
|
write_rtl8255(dev, 0x4, 0x41a);
|
|
write_rtl8255(dev, 0x4, 0x41a);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x61a);
|
|
write_rtl8255(dev, 0x4, 0x41a);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x80404024, 0x27,
|
|
0x92402a8c, 0xf0009, 0x28000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc1b);
|
|
write_rtl8255(dev, 0x4, 0xe1b);
|
|
write_rtl8255(dev, 0x4, 0xc1b);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x81b);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa1b);
|
|
write_rtl8255(dev, 0x4, 0x81b);
|
|
write_rtl8255(dev, 0x4, 0x41b);
|
|
write_rtl8255(dev, 0x3, 0x25);
|
|
write_rtl8255(dev, 0x2, 0x26);
|
|
write_rtl8255(dev, 0x4, 0x61b);
|
|
write_rtl8255(dev, 0x4, 0x41b);
|
|
write_rtl8255(dev, 0x4, 0x41b);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x61b);
|
|
write_rtl8255(dev, 0x4, 0x41b);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x80404004, 0x27,
|
|
0x92402a90, 0xf0009, 0x28000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc1c);
|
|
write_rtl8255(dev, 0x4, 0xe1c);
|
|
write_rtl8255(dev, 0x4, 0xc1c);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x81c);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa1c);
|
|
write_rtl8255(dev, 0x4, 0x81c);
|
|
write_rtl8255(dev, 0x4, 0x41c);
|
|
write_rtl8255(dev, 0x3, 0x25);
|
|
write_rtl8255(dev, 0x2, 0x26);
|
|
write_rtl8255(dev, 0x4, 0x61c);
|
|
write_rtl8255(dev, 0x4, 0x41c);
|
|
write_rtl8255(dev, 0x4, 0x41c);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x61c);
|
|
write_rtl8255(dev, 0x4, 0x41c);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x80404001, 0x27,
|
|
0x92402a90, 0xf0009, 0x28000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc1d);
|
|
write_rtl8255(dev, 0x4, 0xe1d);
|
|
write_rtl8255(dev, 0x4, 0xc1d);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x81d);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa1d);
|
|
write_rtl8255(dev, 0x4, 0x81d);
|
|
write_rtl8255(dev, 0x4, 0x41d);
|
|
write_rtl8255(dev, 0x3, 0x25);
|
|
write_rtl8255(dev, 0x2, 0x26);
|
|
write_rtl8255(dev, 0x4, 0x61d);
|
|
write_rtl8255(dev, 0x4, 0x41d);
|
|
write_rtl8255(dev, 0x4, 0x41d);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x61d);
|
|
write_rtl8255(dev, 0x4, 0x41d);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x80404000, 0x80000027,
|
|
0x92402a94, 0xf0009, 0x28000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc1e);
|
|
write_rtl8255(dev, 0x4, 0xe1e);
|
|
write_rtl8255(dev, 0x4, 0xc1e);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x81e);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa1e);
|
|
write_rtl8255(dev, 0x4, 0x81e);
|
|
write_rtl8255(dev, 0x4, 0x41e);
|
|
write_rtl8255(dev, 0x3, 0x25);
|
|
write_rtl8255(dev, 0x2, 0x26);
|
|
write_rtl8255(dev, 0x4, 0x61e);
|
|
write_rtl8255(dev, 0x4, 0x41e);
|
|
write_rtl8255(dev, 0x4, 0x41e);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x61e);
|
|
write_rtl8255(dev, 0x4, 0x41e);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x80404000, 0x27,
|
|
0x92402a94, 0xf0009, 0x28000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc1f);
|
|
write_rtl8255(dev, 0x4, 0xe1f);
|
|
write_rtl8255(dev, 0x4, 0xc1f);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x81f);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa1f);
|
|
write_rtl8255(dev, 0x4, 0x81f);
|
|
write_rtl8255(dev, 0x4, 0x41f);
|
|
write_rtl8255(dev, 0x3, 0x25);
|
|
write_rtl8255(dev, 0x2, 0x26);
|
|
write_rtl8255(dev, 0x4, 0x61f);
|
|
write_rtl8255(dev, 0x4, 0x41f);
|
|
write_rtl8255(dev, 0x4, 0x41f);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x61f);
|
|
write_rtl8255(dev, 0x4, 0x41f);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x80404020, 0x80000027,
|
|
0x92402a98, 0xf8009, 0x28000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc20);
|
|
write_rtl8255(dev, 0x4, 0xe20);
|
|
write_rtl8255(dev, 0x4, 0xc20);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x820);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa20);
|
|
write_rtl8255(dev, 0x4, 0x820);
|
|
write_rtl8255(dev, 0x4, 0x420);
|
|
write_rtl8255(dev, 0x3, 0x25);
|
|
write_rtl8255(dev, 0x2, 0x26);
|
|
write_rtl8255(dev, 0x4, 0x620);
|
|
write_rtl8255(dev, 0x4, 0x420);
|
|
write_rtl8255(dev, 0x4, 0x420);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x620);
|
|
write_rtl8255(dev, 0x4, 0x420);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x80404020, 0x27,
|
|
0x92402a98, 0xf8009, 0x28000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc21);
|
|
write_rtl8255(dev, 0x4, 0xe21);
|
|
write_rtl8255(dev, 0x4, 0xc21);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x821);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa21);
|
|
write_rtl8255(dev, 0x4, 0x821);
|
|
write_rtl8255(dev, 0x4, 0x421);
|
|
write_rtl8255(dev, 0x3, 0x25);
|
|
write_rtl8255(dev, 0x2, 0x26);
|
|
write_rtl8255(dev, 0x4, 0x621);
|
|
write_rtl8255(dev, 0x4, 0x421);
|
|
write_rtl8255(dev, 0x4, 0x421);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x621);
|
|
write_rtl8255(dev, 0x4, 0x421);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x80404000, 0x80000027,
|
|
0x92402a68, 0xf0009, 0x10028000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc22);
|
|
write_rtl8255(dev, 0x4, 0xe22);
|
|
write_rtl8255(dev, 0x4, 0xc22);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x822);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa22);
|
|
write_rtl8255(dev, 0x4, 0x822);
|
|
write_rtl8255(dev, 0x4, 0x422);
|
|
write_rtl8255(dev, 0x3, 0x25);
|
|
write_rtl8255(dev, 0x2, 0x26);
|
|
write_rtl8255(dev, 0x4, 0x622);
|
|
write_rtl8255(dev, 0x4, 0x422);
|
|
write_rtl8255(dev, 0x4, 0x422);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x622);
|
|
write_rtl8255(dev, 0x4, 0x422);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x80404010, 0x80000027,
|
|
0x92402a68, 0xf0009, 0x20028000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc23);
|
|
write_rtl8255(dev, 0x4, 0xe23);
|
|
write_rtl8255(dev, 0x4, 0xc23);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x823);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa23);
|
|
write_rtl8255(dev, 0x4, 0x823);
|
|
write_rtl8255(dev, 0x4, 0x423);
|
|
write_rtl8255(dev, 0x3, 0x25);
|
|
write_rtl8255(dev, 0x2, 0x26);
|
|
write_rtl8255(dev, 0x4, 0x623);
|
|
write_rtl8255(dev, 0x4, 0x423);
|
|
write_rtl8255(dev, 0x4, 0x423);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x623);
|
|
write_rtl8255(dev, 0x4, 0x423);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x80404010, 0x80000027,
|
|
0x92402a6c, 0xf0009, 0x30028000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc24);
|
|
write_rtl8255(dev, 0x4, 0xe24);
|
|
write_rtl8255(dev, 0x4, 0xc24);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x824);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa24);
|
|
write_rtl8255(dev, 0x4, 0x824);
|
|
write_rtl8255(dev, 0x4, 0x424);
|
|
write_rtl8255(dev, 0x3, 0x25);
|
|
write_rtl8255(dev, 0x2, 0x26);
|
|
write_rtl8255(dev, 0x4, 0x624);
|
|
write_rtl8255(dev, 0x4, 0x424);
|
|
write_rtl8255(dev, 0x4, 0x424);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x624);
|
|
write_rtl8255(dev, 0x4, 0x424);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x80404010, 0x80000027,
|
|
0x92402a6c, 0xf0009, 0x40028000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc25);
|
|
write_rtl8255(dev, 0x4, 0xe25);
|
|
write_rtl8255(dev, 0x4, 0xc25);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x825);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa25);
|
|
write_rtl8255(dev, 0x4, 0x825);
|
|
write_rtl8255(dev, 0x4, 0x425);
|
|
write_rtl8255(dev, 0x3, 0x25);
|
|
write_rtl8255(dev, 0x2, 0x26);
|
|
write_rtl8255(dev, 0x4, 0x625);
|
|
write_rtl8255(dev, 0x4, 0x425);
|
|
write_rtl8255(dev, 0x4, 0x425);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x625);
|
|
write_rtl8255(dev, 0x4, 0x425);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x80404000, 0x80000027,
|
|
0x92402a70, 0xf0009, 0x60028000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc26);
|
|
write_rtl8255(dev, 0x4, 0xe26);
|
|
write_rtl8255(dev, 0x4, 0xc26);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x826);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa26);
|
|
write_rtl8255(dev, 0x4, 0x826);
|
|
write_rtl8255(dev, 0x4, 0x426);
|
|
write_rtl8255(dev, 0x3, 0x25);
|
|
write_rtl8255(dev, 0x2, 0x26);
|
|
write_rtl8255(dev, 0x4, 0x626);
|
|
write_rtl8255(dev, 0x4, 0x426);
|
|
write_rtl8255(dev, 0x4, 0x426);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x626);
|
|
write_rtl8255(dev, 0x4, 0x426);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x80404031, 0x40000027,
|
|
0x92402a70, 0xf0011, 0x60028000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc27);
|
|
write_rtl8255(dev, 0x4, 0xe27);
|
|
write_rtl8255(dev, 0x4, 0xc27);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x827);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa27);
|
|
write_rtl8255(dev, 0x4, 0x827);
|
|
write_rtl8255(dev, 0x4, 0x427);
|
|
write_rtl8255(dev, 0x3, 0x25);
|
|
write_rtl8255(dev, 0x2, 0x26);
|
|
write_rtl8255(dev, 0x4, 0x627);
|
|
write_rtl8255(dev, 0x4, 0x427);
|
|
write_rtl8255(dev, 0x4, 0x427);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x627);
|
|
write_rtl8255(dev, 0x4, 0x427);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x80404011, 0x40000027,
|
|
0x92402a74, 0xf0011, 0x60028000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc28);
|
|
write_rtl8255(dev, 0x4, 0xe28);
|
|
write_rtl8255(dev, 0x4, 0xc28);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x828);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa28);
|
|
write_rtl8255(dev, 0x4, 0x828);
|
|
write_rtl8255(dev, 0x4, 0x428);
|
|
write_rtl8255(dev, 0x3, 0x25);
|
|
write_rtl8255(dev, 0x2, 0x26);
|
|
write_rtl8255(dev, 0x4, 0x628);
|
|
write_rtl8255(dev, 0x4, 0x428);
|
|
write_rtl8255(dev, 0x4, 0x428);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x628);
|
|
write_rtl8255(dev, 0x4, 0x428);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x80404010, 0xc0000027,
|
|
0x92402a74, 0xf0011, 0x60028000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc29);
|
|
write_rtl8255(dev, 0x4, 0xe29);
|
|
write_rtl8255(dev, 0x4, 0xc29);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x829);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa29);
|
|
write_rtl8255(dev, 0x4, 0x829);
|
|
write_rtl8255(dev, 0x4, 0x429);
|
|
write_rtl8255(dev, 0x3, 0x25);
|
|
write_rtl8255(dev, 0x2, 0x26);
|
|
write_rtl8255(dev, 0x4, 0x629);
|
|
write_rtl8255(dev, 0x4, 0x429);
|
|
write_rtl8255(dev, 0x4, 0x429);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x629);
|
|
write_rtl8255(dev, 0x4, 0x429);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x80404000, 0x80000027,
|
|
0x92402a78, 0xf0011, 0x60028000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc2a);
|
|
write_rtl8255(dev, 0x4, 0xe2a);
|
|
write_rtl8255(dev, 0x4, 0xc2a);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x82a);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa2a);
|
|
write_rtl8255(dev, 0x4, 0x82a);
|
|
write_rtl8255(dev, 0x4, 0x42a);
|
|
write_rtl8255(dev, 0x3, 0x24);
|
|
write_rtl8255(dev, 0x2, 0x26);
|
|
write_rtl8255(dev, 0x4, 0x62a);
|
|
write_rtl8255(dev, 0x4, 0x42a);
|
|
write_rtl8255(dev, 0x4, 0x42a);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x62a);
|
|
write_rtl8255(dev, 0x4, 0x42a);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x80404000, 0x80000027,
|
|
0x92402a78, 0xf0011, 0x70028000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc2b);
|
|
write_rtl8255(dev, 0x4, 0xe2b);
|
|
write_rtl8255(dev, 0x4, 0xc2b);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x82b);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa2b);
|
|
write_rtl8255(dev, 0x4, 0x82b);
|
|
write_rtl8255(dev, 0x4, 0x42b);
|
|
write_rtl8255(dev, 0x3, 0x24);
|
|
write_rtl8255(dev, 0x2, 0x26);
|
|
write_rtl8255(dev, 0x4, 0x62b);
|
|
write_rtl8255(dev, 0x4, 0x42b);
|
|
write_rtl8255(dev, 0x4, 0x42b);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x62b);
|
|
write_rtl8255(dev, 0x4, 0x42b);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x80404000, 0x80000027,
|
|
0x92402a48, 0xf0019, 0x70028000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc2c);
|
|
write_rtl8255(dev, 0x4, 0xe2c);
|
|
write_rtl8255(dev, 0x4, 0xc2c);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x82c);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa2c);
|
|
write_rtl8255(dev, 0x4, 0x82c);
|
|
write_rtl8255(dev, 0x4, 0x42c);
|
|
write_rtl8255(dev, 0x3, 0x24);
|
|
write_rtl8255(dev, 0x2, 0x26);
|
|
write_rtl8255(dev, 0x4, 0x62c);
|
|
write_rtl8255(dev, 0x4, 0x42c);
|
|
write_rtl8255(dev, 0x4, 0x42c);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x62c);
|
|
write_rtl8255(dev, 0x4, 0x42c);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x80404000, 0x80000027,
|
|
0x92402a48, 0xf8019, 0x70028000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc2d);
|
|
write_rtl8255(dev, 0x4, 0xe2d);
|
|
write_rtl8255(dev, 0x4, 0xc2d);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x82d);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa2d);
|
|
write_rtl8255(dev, 0x4, 0x82d);
|
|
write_rtl8255(dev, 0x4, 0x42d);
|
|
write_rtl8255(dev, 0x3, 0x24);
|
|
write_rtl8255(dev, 0x2, 0x26);
|
|
write_rtl8255(dev, 0x4, 0x62d);
|
|
write_rtl8255(dev, 0x4, 0x42d);
|
|
write_rtl8255(dev, 0x4, 0x42d);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x62d);
|
|
write_rtl8255(dev, 0x4, 0x42d);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x80404000, 0x80000027,
|
|
0x92402a4c, 0xf8019, 0x70028000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc2e);
|
|
write_rtl8255(dev, 0x4, 0xe2e);
|
|
write_rtl8255(dev, 0x4, 0xc2e);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x82e);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa2e);
|
|
write_rtl8255(dev, 0x4, 0x82e);
|
|
write_rtl8255(dev, 0x4, 0x42e);
|
|
write_rtl8255(dev, 0x3, 0x24);
|
|
write_rtl8255(dev, 0x2, 0x26);
|
|
write_rtl8255(dev, 0x4, 0x62e);
|
|
write_rtl8255(dev, 0x4, 0x42e);
|
|
write_rtl8255(dev, 0x4, 0x42e);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x62e);
|
|
write_rtl8255(dev, 0x4, 0x42e);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x80404000, 0x80000027,
|
|
0x92402a4c, 0xf8019, 0x70028000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc2f);
|
|
write_rtl8255(dev, 0x4, 0xe2f);
|
|
write_rtl8255(dev, 0x4, 0xc2f);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x82f);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa2f);
|
|
write_rtl8255(dev, 0x4, 0x82f);
|
|
write_rtl8255(dev, 0x4, 0x42f);
|
|
write_rtl8255(dev, 0x3, 0x24);
|
|
write_rtl8255(dev, 0x2, 0x26);
|
|
write_rtl8255(dev, 0x4, 0x62f);
|
|
write_rtl8255(dev, 0x4, 0x42f);
|
|
write_rtl8255(dev, 0x4, 0x42f);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x62f);
|
|
write_rtl8255(dev, 0x4, 0x42f);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x80404000, 0x80000027,
|
|
0x92402a50, 0xf8019, 0x70028000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc30);
|
|
write_rtl8255(dev, 0x4, 0xe30);
|
|
write_rtl8255(dev, 0x4, 0xc30);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x830);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa30);
|
|
write_rtl8255(dev, 0x4, 0x830);
|
|
write_rtl8255(dev, 0x4, 0x430);
|
|
write_rtl8255(dev, 0x3, 0x24);
|
|
write_rtl8255(dev, 0x2, 0x26);
|
|
write_rtl8255(dev, 0x4, 0x630);
|
|
write_rtl8255(dev, 0x4, 0x430);
|
|
write_rtl8255(dev, 0x4, 0x430);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x630);
|
|
write_rtl8255(dev, 0x4, 0x430);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x80404000, 0x80000027,
|
|
0x92402a50, 0xf8019, 0x70028000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc31);
|
|
write_rtl8255(dev, 0x4, 0xe31);
|
|
write_rtl8255(dev, 0x4, 0xc31);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x831);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa31);
|
|
write_rtl8255(dev, 0x4, 0x831);
|
|
write_rtl8255(dev, 0x4, 0x431);
|
|
write_rtl8255(dev, 0x3, 0x24);
|
|
write_rtl8255(dev, 0x2, 0x26);
|
|
write_rtl8255(dev, 0x4, 0x631);
|
|
write_rtl8255(dev, 0x4, 0x431);
|
|
write_rtl8255(dev, 0x4, 0x431);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x631);
|
|
write_rtl8255(dev, 0x4, 0x431);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x80404000, 0x80000027,
|
|
0x92402a54, 0xf8019, 0x70028000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc32);
|
|
write_rtl8255(dev, 0x4, 0xe32);
|
|
write_rtl8255(dev, 0x4, 0xc32);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x832);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa32);
|
|
write_rtl8255(dev, 0x4, 0x832);
|
|
write_rtl8255(dev, 0x4, 0x432);
|
|
write_rtl8255(dev, 0x3, 0x24);
|
|
write_rtl8255(dev, 0x2, 0x26);
|
|
write_rtl8255(dev, 0x4, 0x632);
|
|
write_rtl8255(dev, 0x4, 0x432);
|
|
write_rtl8255(dev, 0x4, 0x432);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x632);
|
|
write_rtl8255(dev, 0x4, 0x432);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x80404000, 0x80000027,
|
|
0x92402a54, 0xf8019, 0x70028000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc33);
|
|
write_rtl8255(dev, 0x4, 0xe33);
|
|
write_rtl8255(dev, 0x4, 0xc33);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x833);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa33);
|
|
write_rtl8255(dev, 0x4, 0x833);
|
|
write_rtl8255(dev, 0x4, 0x433);
|
|
write_rtl8255(dev, 0x3, 0x24);
|
|
write_rtl8255(dev, 0x2, 0x26);
|
|
write_rtl8255(dev, 0x4, 0x633);
|
|
write_rtl8255(dev, 0x4, 0x433);
|
|
write_rtl8255(dev, 0x4, 0x433);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x633);
|
|
write_rtl8255(dev, 0x4, 0x433);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x80404000, 0x80000027,
|
|
0x92402a58, 0xf8019, 0x70028000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc34);
|
|
write_rtl8255(dev, 0x4, 0xe34);
|
|
write_rtl8255(dev, 0x4, 0xc34);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x834);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa34);
|
|
write_rtl8255(dev, 0x4, 0x834);
|
|
write_rtl8255(dev, 0x4, 0x434);
|
|
write_rtl8255(dev, 0x3, 0x24);
|
|
write_rtl8255(dev, 0x2, 0x26);
|
|
write_rtl8255(dev, 0x4, 0x634);
|
|
write_rtl8255(dev, 0x4, 0x434);
|
|
write_rtl8255(dev, 0x4, 0x434);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x634);
|
|
write_rtl8255(dev, 0x4, 0x434);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x80404000, 0x80000027,
|
|
0x92402a58, 0xf8019, 0x70028000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc35);
|
|
write_rtl8255(dev, 0x4, 0xe35);
|
|
write_rtl8255(dev, 0x4, 0xc35);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x835);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa35);
|
|
write_rtl8255(dev, 0x4, 0x835);
|
|
write_rtl8255(dev, 0x4, 0x435);
|
|
write_rtl8255(dev, 0x3, 0x24);
|
|
write_rtl8255(dev, 0x2, 0x26);
|
|
write_rtl8255(dev, 0x4, 0x635);
|
|
write_rtl8255(dev, 0x4, 0x435);
|
|
write_rtl8255(dev, 0x4, 0x435);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x635);
|
|
write_rtl8255(dev, 0x4, 0x435);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x80404000, 0x80000027,
|
|
0x92402a24, 0xf8019, 0x70028000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc36);
|
|
write_rtl8255(dev, 0x4, 0xe36);
|
|
write_rtl8255(dev, 0x4, 0xc36);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x836);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa36);
|
|
write_rtl8255(dev, 0x4, 0x836);
|
|
write_rtl8255(dev, 0x4, 0x436);
|
|
write_rtl8255(dev, 0x3, 0x24);
|
|
write_rtl8255(dev, 0x2, 0x25);
|
|
write_rtl8255(dev, 0x4, 0x636);
|
|
write_rtl8255(dev, 0x4, 0x436);
|
|
write_rtl8255(dev, 0x4, 0x436);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x636);
|
|
write_rtl8255(dev, 0x4, 0x436);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x80404000, 0x80000027,
|
|
0x92402a24, 0xf8019, 0x70028000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc37);
|
|
write_rtl8255(dev, 0x4, 0xe37);
|
|
write_rtl8255(dev, 0x4, 0xc37);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x837);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa37);
|
|
write_rtl8255(dev, 0x4, 0x837);
|
|
write_rtl8255(dev, 0x4, 0x437);
|
|
write_rtl8255(dev, 0x3, 0x24);
|
|
write_rtl8255(dev, 0x2, 0x25);
|
|
write_rtl8255(dev, 0x4, 0x637);
|
|
write_rtl8255(dev, 0x4, 0x437);
|
|
write_rtl8255(dev, 0x4, 0x437);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x637);
|
|
write_rtl8255(dev, 0x4, 0x437);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x80404000, 0x80000027,
|
|
0x92402a28, 0xf8019, 0x70028000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc38);
|
|
write_rtl8255(dev, 0x4, 0xe38);
|
|
write_rtl8255(dev, 0x4, 0xc38);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x838);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa38);
|
|
write_rtl8255(dev, 0x4, 0x838);
|
|
write_rtl8255(dev, 0x4, 0x438);
|
|
write_rtl8255(dev, 0x3, 0x24);
|
|
write_rtl8255(dev, 0x2, 0x25);
|
|
write_rtl8255(dev, 0x4, 0x638);
|
|
write_rtl8255(dev, 0x4, 0x438);
|
|
write_rtl8255(dev, 0x4, 0x438);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x638);
|
|
write_rtl8255(dev, 0x4, 0x438);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x80404000, 0x80000027,
|
|
0x92402a28, 0xf8019, 0x70028000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc39);
|
|
write_rtl8255(dev, 0x4, 0xe39);
|
|
write_rtl8255(dev, 0x4, 0xc39);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x839);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa39);
|
|
write_rtl8255(dev, 0x4, 0x839);
|
|
write_rtl8255(dev, 0x4, 0x439);
|
|
write_rtl8255(dev, 0x3, 0x24);
|
|
write_rtl8255(dev, 0x2, 0x25);
|
|
write_rtl8255(dev, 0x4, 0x639);
|
|
write_rtl8255(dev, 0x4, 0x439);
|
|
write_rtl8255(dev, 0x4, 0x439);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x639);
|
|
write_rtl8255(dev, 0x4, 0x439);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x80404000, 0x80000027,
|
|
0x92402a00, 0xf8019, 0x70028000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc3a);
|
|
write_rtl8255(dev, 0x4, 0xe3a);
|
|
write_rtl8255(dev, 0x4, 0xc3a);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x83a);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa3a);
|
|
write_rtl8255(dev, 0x4, 0x83a);
|
|
write_rtl8255(dev, 0x4, 0x43a);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x63a);
|
|
write_rtl8255(dev, 0x4, 0x43a);
|
|
write_rtl8255(dev, 0x4, 0x43a);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x63a);
|
|
write_rtl8255(dev, 0x4, 0x43a);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x80404000, 0x80000027,
|
|
0x92402a00, 0xf8019, 0x70028000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc3b);
|
|
write_rtl8255(dev, 0x4, 0xe3b);
|
|
write_rtl8255(dev, 0x4, 0xc3b);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x83b);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa3b);
|
|
write_rtl8255(dev, 0x4, 0x83b);
|
|
write_rtl8255(dev, 0x4, 0x43b);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x63b);
|
|
write_rtl8255(dev, 0x4, 0x43b);
|
|
write_rtl8255(dev, 0x4, 0x43b);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x63b);
|
|
write_rtl8255(dev, 0x4, 0x43b);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x80404000, 0x80000027,
|
|
0x92402a00, 0xf8019, 0x70028000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc3c);
|
|
write_rtl8255(dev, 0x4, 0xe3c);
|
|
write_rtl8255(dev, 0x4, 0xc3c);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x83c);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa3c);
|
|
write_rtl8255(dev, 0x4, 0x83c);
|
|
write_rtl8255(dev, 0x4, 0x43c);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x63c);
|
|
write_rtl8255(dev, 0x4, 0x43c);
|
|
write_rtl8255(dev, 0x4, 0x43c);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x63c);
|
|
write_rtl8255(dev, 0x4, 0x43c);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x80404000, 0x80000027,
|
|
0x92402a00, 0xf8019, 0x70028000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc3d);
|
|
write_rtl8255(dev, 0x4, 0xe3d);
|
|
write_rtl8255(dev, 0x4, 0xc3d);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x83d);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa3d);
|
|
write_rtl8255(dev, 0x4, 0x83d);
|
|
write_rtl8255(dev, 0x4, 0x43d);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x63d);
|
|
write_rtl8255(dev, 0x4, 0x43d);
|
|
write_rtl8255(dev, 0x4, 0x43d);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x63d);
|
|
write_rtl8255(dev, 0x4, 0x43d);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x80404000, 0x80000027,
|
|
0x92402a00, 0xf8019, 0x70028000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc3e);
|
|
write_rtl8255(dev, 0x4, 0xe3e);
|
|
write_rtl8255(dev, 0x4, 0xc3e);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x83e);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa3e);
|
|
write_rtl8255(dev, 0x4, 0x83e);
|
|
write_rtl8255(dev, 0x4, 0x43e);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x63e);
|
|
write_rtl8255(dev, 0x4, 0x43e);
|
|
write_rtl8255(dev, 0x4, 0x43e);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x63e);
|
|
write_rtl8255(dev, 0x4, 0x43e);
|
|
write_rtl8255_reg0c(dev, 0x1554, 0xa800403b, 0xf6d44278, 0x80404000, 0x80000027,
|
|
0x92402a00, 0xf8011, 0x70028000, 0xc00, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x807);
|
|
write_rtl8255(dev, 0x4, 0xc3f);
|
|
write_rtl8255(dev, 0x4, 0xe3f);
|
|
write_rtl8255(dev, 0x4, 0xc3f);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x83f);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0xa3f);
|
|
write_rtl8255(dev, 0x4, 0x83f);
|
|
write_rtl8255(dev, 0x4, 0x43f);
|
|
write_rtl8255(dev, 0x3, 0x0);
|
|
write_rtl8255(dev, 0x2, 0x0);
|
|
write_rtl8255(dev, 0x4, 0x63f);
|
|
write_rtl8255(dev, 0x4, 0x43f);
|
|
write_rtl8255(dev, 0x4, 0x43f);
|
|
write_rtl8255(dev, 0x3, 0x100);
|
|
write_rtl8255(dev, 0x4, 0x63f);
|
|
write_rtl8255(dev, 0x4, 0x43f);
|
|
write_rtl8255(dev, 0x4, 0x0);
|
|
write_rtl8255(dev, 0x1, 0x0);
|
|
write_rtl8255_reg0c(dev, 0x3539, 0x70000c03, 0xfef46178, 0x408000, 0x403307,
|
|
0x924f80c0, 0xf955c, 0x8400, 0x429200, 0x1ce20);
|
|
write_rtl8255(dev, 0x1, 0x1c7);
|
|
write_rtl8255(dev, 0x2, 0x26);
|
|
write_rtl8255(dev, 0x3, 0x27);
|
|
write_rtl8255(dev, 0x1, 0x47);
|
|
write_rtl8255(dev, 0x4, 0x98c);
|
|
write_rtl8255(dev, 0x5, 0x65);
|
|
write_rtl8255(dev, 0x6, 0x13);
|
|
write_rtl8255(dev, 0x7, 0x7c);
|
|
write_rtl8255(dev, 0x8, 0x6);
|
|
write_rtl8255(dev, 0x8, 0x7);
|
|
write_rtl8255(dev, 0x8, 0x6);
|
|
write_rtl8255(dev, 0x9, 0xce2);
|
|
write_rtl8255(dev, 0xb, 0x1c5);
|
|
write_rtl8255(dev, 0xd, 0xd7f);
|
|
write_rtl8255(dev, 0xe, 0x369);
|
|
write_rtl8255(dev, 0xa, 0xd56);
|
|
write_rtl8255(dev, 0xa, 0xd57);
|
|
mdelay(20);
|
|
write_rtl8255(dev, 0xd, 0xd7e);
|
|
|
|
}
|
|
|
|
|
|
void rtl8255_set_band_param(struct net_device *dev, short band)
|
|
{
|
|
if(band != BAND_A){
|
|
write_nic_dword(dev, 0x94, 0x3dc00002);
|
|
write_nic_dword(dev, 0x88, 0x00100040);
|
|
|
|
write_phy_cck(dev, 0x13, 0xd0);
|
|
|
|
write_phy_cck(dev, 0x41, 0x9d);
|
|
write_nic_dword(dev, 0x8c, 0x00082205);
|
|
write_nic_byte(dev, 0xb4, 0x66);
|
|
}
|
|
}
|
|
|
|
void rtl8255_rf_init(struct net_device *dev)
|
|
{
|
|
struct r8180_priv *priv = ieee80211_priv(dev);
|
|
int i;
|
|
u16 brsr;
|
|
// short channel /*= priv->chan*/ = 1;
|
|
priv->chan = 1;
|
|
|
|
write_nic_word(dev, RFPinsOutput, 0x80);
|
|
write_nic_word(dev, RFPinsSelect, 0x80 | SW_CONTROL_GPIO);
|
|
write_nic_word(dev, RFPinsEnable, 0x80);
|
|
write_nic_word(dev, RFPinsSelect, SW_CONTROL_GPIO);
|
|
|
|
write_nic_dword(dev, RF_TIMING, 0x000f800f);
|
|
|
|
brsr = read_nic_word(dev, BRSR);
|
|
|
|
write_nic_word(dev, 0x2c, 0xffff);
|
|
|
|
|
|
rtl8180_set_anaparam(dev, RTL8255_ANAPARAM_ON);
|
|
rtl8185_set_anaparam2(dev, RTL8255_ANAPARAM2_ON);
|
|
|
|
write_nic_dword(dev, 0x94, 0x11c00002);
|
|
|
|
write_nic_dword(dev, RF_PARA, 0x100040);
|
|
|
|
rtl8185_rf_pins_enable(dev);
|
|
|
|
rtl8255_init_BGband(dev);
|
|
rtl8255_set_band_param(dev,BAND_BG);
|
|
|
|
write_phy_cck(dev, 0x0, 0x98);
|
|
write_phy_cck(dev, 0x3, 0x20);
|
|
write_phy_cck(dev, 0x4, 0x2e);
|
|
write_phy_cck(dev, 0x5, 0x12);
|
|
write_phy_cck(dev, 0x6, 0xfc);
|
|
write_phy_cck(dev, 0x7, 0xd8);
|
|
write_phy_cck(dev, 0x8, 0x2e);
|
|
write_phy_cck(dev, 0x10, 0xd3);
|
|
write_phy_cck(dev, 0x11, 0x88);
|
|
write_phy_cck(dev, 0x12, 0x47);
|
|
write_phy_cck(dev, 0x13, 0xd0); /* Ver C & D & 8187*/
|
|
|
|
write_phy_cck(dev, 0x19, 0x0);
|
|
write_phy_cck(dev, 0x1a, 0xa0);
|
|
write_phy_cck(dev, 0x1b, 0x8);
|
|
write_phy_cck(dev, 0x40, 0x86); /* CCK Carrier Sense Threshold */
|
|
write_phy_cck(dev, 0x41, 0x9d); /* Energy Threshold */
|
|
//write_phy_cck(dev, 0x42, 0x0);
|
|
write_phy_cck(dev, 0x43, 0x8);
|
|
|
|
write_nic_byte(dev, TESTR,0x8);
|
|
|
|
for(i=0;i<128;i++){
|
|
write_phy_ofdm(dev, 0x4b, rtl8255_agc[i]);
|
|
write_phy_ofdm(dev, 0x4a, (u8)i+ 0x80);
|
|
}
|
|
|
|
|
|
write_phy_ofdm(dev, 0x0, 0x1);
|
|
write_phy_ofdm(dev, 0x1, 0x2);
|
|
write_phy_ofdm(dev, 0x2, 0x43);
|
|
write_phy_ofdm(dev, 0x3, 0x0);
|
|
write_phy_ofdm(dev, 0x4, 0x0);
|
|
write_phy_ofdm(dev, 0x5, 0x0);
|
|
write_phy_ofdm(dev, 0x6, 0x40);
|
|
write_phy_ofdm(dev, 0x7, 0x0);
|
|
write_phy_ofdm(dev, 0x8, 0x40);
|
|
write_phy_ofdm(dev, 0x9, 0xfe);
|
|
write_phy_ofdm(dev, 0xa, 0x9);
|
|
write_phy_ofdm(dev, 0xb, 0x80);
|
|
write_phy_ofdm(dev, 0xc, 0x1);
|
|
write_phy_ofdm(dev, 0xd, 0x43);
|
|
write_phy_ofdm(dev, 0xe, 0xd3);
|
|
write_phy_ofdm(dev, 0xf, 0x38);
|
|
write_phy_ofdm(dev, 0x10, 0x4);
|
|
write_phy_ofdm(dev, 0x11, 0x06);/*agc resp time 700*/
|
|
write_phy_ofdm(dev, 0x12, 0x20);
|
|
write_phy_ofdm(dev, 0x13, 0x20);
|
|
write_phy_ofdm(dev, 0x14, 0x0);
|
|
write_phy_ofdm(dev, 0x15, 0x40);
|
|
write_phy_ofdm(dev, 0x16, 0x0);
|
|
write_phy_ofdm(dev, 0x17, 0x40);
|
|
write_phy_ofdm(dev, 0x18, 0xef);
|
|
write_phy_ofdm(dev, 0x19, 0x25);
|
|
write_phy_ofdm(dev, 0x1a, 0x20);
|
|
write_phy_ofdm(dev, 0x1b, 0x7a);
|
|
write_phy_ofdm(dev, 0x1c, 0x84);
|
|
write_phy_ofdm(dev, 0x1e, 0x95);
|
|
write_phy_ofdm(dev, 0x1f, 0x75);
|
|
write_phy_ofdm(dev, 0x20, 0x1f);
|
|
write_phy_ofdm(dev, 0x21, 0x17);
|
|
write_phy_ofdm(dev, 0x22, 0x16);
|
|
write_phy_ofdm(dev, 0x23, 0x70); //FIXME maybe not needed
|
|
write_phy_ofdm(dev, 0x24, 0x70);
|
|
write_phy_ofdm(dev, 0x25, 0x0);
|
|
write_phy_ofdm(dev, 0x26, 0x10);
|
|
write_phy_ofdm(dev, 0x27, 0x88);
|
|
|
|
|
|
write_nic_dword(dev, 0x94, 0x3dc00002); //BAND DEPEND.
|
|
// write_nic_dword(dev, 0x94, 0x15c00002); //BAND DEPEND.
|
|
|
|
write_phy_cck(dev, 0x4, 0x18);
|
|
write_phy_cck(dev, 0x43, 0x18);
|
|
write_phy_cck(dev, 0x6, 0xdc);
|
|
write_phy_cck(dev, 0x44, 0x2b);
|
|
write_phy_cck(dev, 0x45, 0x2b);
|
|
write_phy_cck(dev, 0x46, 0x25);
|
|
write_phy_cck(dev, 0x47, 0x15);
|
|
write_phy_cck(dev, 0x48, 0x0);
|
|
write_phy_cck(dev, 0x49, 0x0);
|
|
write_phy_cck(dev, 0x4a, 0x0);
|
|
write_phy_cck(dev, 0x4b, 0x0);
|
|
// write_phy_cck(dev, 0x4c, 0x5);
|
|
#if 0
|
|
write_phy_cck(dev, 0x41, 0x9d); /* Energy Threshold */
|
|
// TESTR 0xb 8187
|
|
write_phy_cck(dev, 0x10, 0x93);// & 0xfb);
|
|
#endif
|
|
//rtl8255_set_gain(dev, 1); /* FIXME this '1' is random */
|
|
|
|
rtl8255_SetTXPowerLevel(dev, priv->chan);
|
|
|
|
write_phy_cck(dev, 0x10, 0x93 |0x4); /* Rx ant B, 0xd3 for A */
|
|
write_phy_ofdm(dev, 0x26, 0x90); /* Rx ant B, 0x10 for A */
|
|
|
|
rtl8185_tx_antenna(dev, 0x3); /* TX ant B, 0x0 for A*/
|
|
/* make sure is waken up! */
|
|
rtl8180_set_anaparam(dev, RTL8255_ANAPARAM_ON);
|
|
rtl8185_set_anaparam2(dev, RTL8255_ANAPARAM2_ON);
|
|
|
|
rtl8255_set_band_param(dev,BAND_BG);
|
|
|
|
write_phy_cck(dev, 0x41, 0x9d);
|
|
|
|
rtl8255_set_gain(dev, 4);
|
|
//rtl8255_set_energy_threshold(dev);
|
|
write_phy_cck(dev, 0x41, 0x9d);
|
|
rtl8255_rf_set_chan(dev, priv->chan);
|
|
|
|
write_nic_word(dev, BRSR, brsr);
|
|
}
|
|
|