[rt2x00-users] [PATCH2/4] rt2x00: Add chip ID/register definitions for RT5390

Helmut Schaa helmut.schaa at googlemail.com
Tue Feb 8 22:43:05 AEDT 2011


Hi Shiang,

Am Dienstag, 8. Februar 2011 schrieb RA-Shiang Tu:
> Add chip ID/register related definitions for RT5390 chip
> 
> Signed-off-by: Shiang Tu <shiang_tu at ralinktech.com>
> ---
>  drivers/net/wireless/rt2x00/rt2800.h |   38 ++++++++++++++++++++++++++++++++++
>  drivers/net/wireless/rt2x00/rt2x00.h |    2 +
>  2 files changed, 40 insertions(+), 0 deletions(-)
> 
> diff --git a/drivers/net/wireless/rt2x00/rt2800.h b/drivers/net/wireless/rt2x00/rt2800.h
> index 457887c..626e45b 100644
> --- a/drivers/net/wireless/rt2x00/rt2800.h
> +++ b/drivers/net/wireless/rt2x00/rt2800.h
> @@ -51,6 +51,7 @@
>   * RF3320 2.4G 1T1R(RT3350/RT3370/RT3390)
>   * RF3322 2.4G 2T2R(RT3352/RT3371/RT3372/RT3391/RT3392)
>   * RF3853 2.4G/5G 3T3R(RT3883/RT3563/RT3573/RT3593/RT3662)
> + * RF5390 2.4G 1T1R
>   */
>  #define RF2820                         0x0001
>  #define RF2850                         0x0002
> @@ -65,6 +66,7 @@
>  #define RF3320                         0x000b
>  #define RF3322                         0x000c
>  #define RF3853                         0x000d
> +#define RF5390                         0x5390
> 
>  /*
>   * Chipset revisions.
> @@ -77,6 +79,7 @@
>  #define REV_RT3071E                    0x0211
>  #define REV_RT3090E                    0x0211
>  #define REV_RT3390E                    0x0211
> +#define REV_RT5390F                    0x0502
> 
>  /*
>   * Signal information.
> @@ -121,6 +124,13 @@
>  #define E2PROM_CSR_RELOAD              FIELD32(0x00000080)
> 
>  /*
> + * AUX_CTRL: Aux/PCI-E related configuration
> + */
> +#define AUX_CTRL               0x10c
> +#define AUX_CTRL_WAKE_PCIE_EN          FIELD32(0x00000002)
> +#define AUX_CTRL_FORCE_PCIE_CLK        FIELD32(0x00000400)
> +
> +/*
>   * OPT_14: Unknown register used by rt3xxx devices.
>   */
>  #define OPT_14_CSR                     0x0114
> @@ -1724,6 +1734,13 @@ struct mac_iveiv_entry {
>   */
>  #define BBP4_TX_BF                     FIELD8(0x01)
>  #define BBP4_BANDWIDTH                 FIELD8(0x18)
> +#define BBP4_MAC_IF_CTRL               FIELD8(0x40)
> +
> +/*
> + * BBP 109
> + */
> +#define BBP109_TX0_POWER       FIELD8(0x0f)
> +#define BBP109_Tx1_POWER       FIELD8(0xf0)

Typo, should be TX1_POWER instead of Tx1_POWER.
Also is this BBP register available on other devices then the RT5390?
If not it would make sense to add a comment.

>  /*
>   * BBP 138: Unknown
> @@ -1748,6 +1765,11 @@ struct mac_iveiv_entry {
>  #define RFCSR1_TX1_PD                  FIELD8(0x20)
> 
>  /*
> + * RFCSR 2:
> + */
> +#define RFCSR2_RESCAL_EN               FIELD8(0x80)
> +
> +/*
>   * RFCSR 6:
>   */
>  #define RFCSR6_R1                      FIELD8(0x03)
> @@ -1811,6 +1833,7 @@ struct mac_iveiv_entry {
>  /*
>   * RFCSR 30:
>   */
> +#define RFCSR30_RX_VCM         FIELD8(0x18)
>  #define RFCSR30_RF_CALIBRATION         FIELD8(0x80)
> 
>  /*
> @@ -1820,6 +1843,16 @@ struct mac_iveiv_entry {
>  #define RFCSR31_RX_H20M                        FIELD8(0x20)
> 
>  /*
> + * RFCSR 38:
> + */
> +#define RFCSR38_RX_LO1_EN      FIELD8(0x20)
> +
> +/*
> + * RFCSR 39:
> + */
> +#define RFCSR39_RX_LO2_EN      FIELD8(0x80)
> +
> +/*
>   * RF registers
>   */
> 
> @@ -1852,6 +1885,11 @@ struct mac_iveiv_entry {
>   */
> 
>  /*
> + * Chip ID
> + */
> +#define EEPROM_CHIP_ID         0x0000
> +
> +/*
>   * EEPROM Version
>   */
>  #define EEPROM_VERSION                 0x0001
> diff --git a/drivers/net/wireless/rt2x00/rt2x00.h b/drivers/net/wireless/rt2x00/rt2x00.h
> index 64c6ef5..aaa0cdb 100644
> --- a/drivers/net/wireless/rt2x00/rt2x00.h
> +++ b/drivers/net/wireless/rt2x00/rt2x00.h
> @@ -189,6 +189,7 @@ struct rt2x00_chip {
>  #define RT3572         0x3572
>  #define RT3593         0x3593  /* PCIe */
>  #define RT3883         0x3883  /* WSOC */
> +#define RT5390         0x5390  /* 2.4GHz */
> 
>         u16 rf;
>         u16 rev;
> @@ -668,6 +669,7 @@ enum rt2x00_flags {
>         CONFIG_SUPPORT_HW_BUTTON,
>         CONFIG_SUPPORT_HW_CRYPTO,
>         CONFIG_SUPPORT_POWER_LIMIT,
> +       CONFIG_SUPPORT_BT_COEXIST,

This should be introduced together with the functionality making use of it.

Thanks,
Helmut




More information about the users mailing list