Initializes the 802.11 core
- If the backplane has a PCI Core (not PCI-E) with revision 5 or less
- Unset bits 0x70 (Request Timeout Mask) and 0x7 (Service Timeout Mask) and set bits 0x32 in sbmiconfiglow
Write 0 to SHM offset 0x16 (16 bits)
Save the value of SHM offset 0x5E
- If (In our version of the driver, always false, not sure what it's for)
Set bit 0x10 in the saved value of SHM offset 0x5E
- If this is a B or G PHY
Set bit 0x2 in the saved value of SHM offset 0x5E
- If this is a G PHY with PHY Revision 1
Set bit 0x20 in the saved value of SHM offset 0x5E
If this is a B PHY with PHY Revision >= 2 and Radio ID 0x2050
Unset bit 0x20 in the saved value of SHM offset 0x5E
If this is a G PHY and the BoardFlags BFL_PACTRL are set
Set bit 0x40 in the saved value of SHM offset 0x5E
If the saved value of SHM offset 0x5E isn't the same as what's currently in 0x5E
If the 802.11 Core Revision is >= 5
Write 0xC to MMIO offset 0x43C
- If we're not in PIO mode
- Write 0x50 to the 16-bit register 0x612
- Write 0x50 to SHM offset 0x416, 0x1F4 to SHM offset 0x414
Enable the Interrupts by writing the General Interrupt Mask to MMIO offset 0x128