• Herton Ronaldo Krzesinski's avatar
    rtl8187: add short slot handling for 8187B · f8288317
    Herton Ronaldo Krzesinski authored
    This change adds short slot handling for 8187B variant of rtl8187 chips.
    Some things to note about changes done:
    * Values used are chosen to met 802.11-2007 spec. This raised a question
      about SIFS value used with 8187L: 0x22 (34) doesn't match any spec
      value. For now just don't change 8187L, but is something to be
      looked at.
    * On 8187B, the location of EIFS register is at the same place as BRSR+1
      of struct rtl818x_csr. Unfortunately there is no clean way to
      accomodate 8187B differences currently, just use address of BRSR+1 and
      comment about it. The same thing happens for Ack timeout register,
      that is on CARRIER_SENSE_COUNTER location of 8187L. The eifs and ack
      timeout values are in units of 4us. All these registers information
      was gathered from references being the vendor gpl driver and 8180
      datasheet, unfortunately there is no information about this on 8187B
      datasheet. Also the ack timeout value was inspired by the same
      calculation as done on rt2x00.
    Signed-off-by: default avatarHerton Ronaldo Krzesinski <herton@mandriva.com.br>
    Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>