bcm-v4

[Specification

2063 Radio Initialization

(derived from driver 5.10.56.46)

  1. Initialize a boolean named bw40 to 0
  2. If the PHY type is 5 (LP-PHY)
    1. If the PHY revision is 2
      1. Init registers from 2063_rev0 table (below) if the "do init X" column is non-zero
  3. Else if PHY type is 6 (SSLPN-PHY)
    1. Init registers from sslp_2063 table. If 5 GHz band, write the "Init A" value to address. If 2.4 GHz band, write "Init G" value.
  4. Write 0 to radio reg 0x20
  5. Set 0x38 in radio reg 0x8
  6. Write 0x56 to radio reg 0x57
  7. If PHY type is 6
    1. If bw40 is false
      1. Clear bit 0x02 in radio register 0xf3
    2. Otherwise (This branch cannot be taken.)
      1. Maskset radio register 0xF3 with nask 0xF9 and set with 0x02
      2. Set bit 0x02 in radio register 0x02
      3. Write 0x30 nto radio register 0x36
  8. Otherwise
    1. Clear bit 0x02 in radio register 0xF3
  9. Write 0x20 to radio reg 0x40
  10. Write 0x40 to radio reg 0x43
  11. Write 0 to radio reg 0x52
  12. If PHY type is 5
    1. If PHY revision is 2
      1. Write 0xa0 to radio reg 0x4e
      2. Write 0xa0 to radio reg 0x4f
      3. Write 0x18 to radio reg 0x4d
    2. Otherwise (Rev 3+)
      1. Write 0x20 to radio reg 0x4e
      2. Write 0x20 to radio reg 0x4f
      3. Write 0x20 to radio reg 0x4d
  13. Else if PHY type is 6
    1. If PHY revision < 2

      1. Write 0x82 to radio register 0x05
      2. Write 0x50 to radio register 0x40
      3. Write 0x80 to radio register 0x43
    2. Write 0x15 to radio register 0x4E
    3. If PHY revision < 2

      1. Write 0x09 to radio register 0x4F
      2. Write 0x21 to radio register 0x4D
    4. If bw40 is true
      1. Write 0x35 to radio register 0x4E
      2. Write 0x05 to radio register 0x4F
      3. Write 0x25 to radio register 0x4D
      4. Write 0x30 to radio register 0x40
    5. If PHY revision is 3
      1. Write 0x30 to radio register 0x06
      2. Write 0xFF to radio register 0x40
      3. Write 0x00 to radio register 0x43
      4. Set bits 0x0F in radio register 0x46
      5. Write 0xC8 to radio register 0x49
      6. Write 0x10 to radio register 0x118
      7. Write 0x01 to radio register 0x4F
      8. Write 0x0A to radio register 0x4E
      9. Write 0x2E to radio register 0x4D

2063_rev0 register initialization table

address

init A

init G

do init A

do init G

0x00

0

0

0

1

0x01

0x206317f

0x206317f

0

0

0x02

0

0

0

0

0x03

0

0

0

0

0x04

0

0

0

0

0x05

0

0

0

0

0x06

0

0

0

0

0x07

0

0

0

0

0x08

0

0

0

0

0x09

0

0

0

0

0x0A

0x1

0

1

0

0x0B

0

0

0

0

0x0C

0

0

0

0

0x0D

0

0

0

0

0x0E

0x6

0x6

0

0

0x0F

0xf

0xf

0

0

0x10

0

0

0

1

0x11

0

0

0

1

0x12

0

0

0

1

0x13

0

0

0

1

0x14

0

0

0

1

0x15

0

0

0

1

0x16

0

0

0

1

0x17

0

0

0

1

0x18

0

0

0

1

0x19

0x7f

0x7f

0

0

0x1A

0x3f

0x3f

0

0

0x1B

0

0

0

0

0x1C

0xe8

0xd4

1

1

0x1D

0xa7

0x53

1

1

0x1E

0xff

0xff

0

0

0x1F

0xf0

0xf

1

1

0x20

0x1

0x1

0

0

0x21

0x1f

0x5e

0

1

0x22

0x7f

0x7e

0

1

0x23

0x30

0xf0

0

1

0x24

0x35

0x35

0

0

0x25

0x3f

0x3f

0

0

0x26

0

0

0

0

0x27

0x7f

0x7f

1

1

0x28

0

0

0

0

0x29

0

0

0

0

0x2A

0xc

0xc

1

1

0x2B

0

0

0

0

0x2C

0x3c

0x3f

1

0

0x2D

0xfc

0xfe

1

0

0x2E

0xff

0xff

0

0

0x2F

0xff

0xff

0

0

0x30

0

0

0

0

0x31

0

0

0

0

0x32

0x8

0x8

1

1

0x33

0xf

0xf

0

0

0x34

0x22

0x22

0

0

0x35

0xa8

0xa8

0

0

0x36

0x60

0x60

1

1

0x37

0x11

0x11

0

0

0x38

0

0

0

0

0x39

0

0

0

0

0x3A

0x30

0x30

1

1

0x3B

0x1

0x1

0

0

0x3C

0x3

0x3

0

0

0x3D

0xc

0xb

1

1

0x3E

0x10

0xf

1

1

0x3F

0xf

0xf

0

0

0x40

0x80

0x80

0

0

0x41

0x68

0x68

0

0

0x42

0x68

0x68

0

0

0x43

0x80

0x80

0

0

0x44

0xff

0xff

0

0

0x45

0x3

0x3

0

0

0x46

0x38

0x38

0

0

0x47

0xff

0xff

0

0

0x48

0x38

0x38

0

0

0x49

0xc0

0xc0

0

0

0x4A

0xff

0xff

0

0

0x4B

0xff

0xff

0

0

0x4C

0x3d

0xfd

1

1

0x4D

0xc

0xc

0

0

0x4E

0x96

0x96

0

0

0x4F

0x5a

0x5a

0

0

0x50

0x7f

0x7f

0

0

0x51

0x7f

0x7f

0

0

0x52

0x33

0x33

0

0

0x53

0x2

0x2

1

1

0x54

0

0

0

0

0x55

0x30

0x30

0

0

0x56

0

0

0

0

0x57

0x56

0x56

1

1

0x58

0x6

0x6

0

0

0x59

0xe

0xe

0

0

0x5A

0x7e

0x7e

0

0

0x5B

0x15

0x15

0

0

0x5C

0xf

0xf

0

0

0x5D

0

0

0

0

0x5E

0

0

0

0

0x5F

0

0

0

0

0x60

0

0

0

0

0x61

0

0

0

0

0x62

0

0

0

0

0x63

0

0

0

0

0x64

0x4

0x4

0

0

0x65

0

0

0

0

0x66

0

0

0

0

0x67

0xcf

0xcf

0

0

0x68

0x59

0x59

0

0

0x69

0x7

0x7

0

0

0x6A

0x42

0x42

0

0

0x6B

0

0

0

0

0x6C

0xdb

0xdb

0

0

0x6D

0x94

0x94

0

0

0x6E

0x28

0x28

0

0

0x6F

0x63

0x63

0

0

0x70

0x7

0x7

0

0

0x71

0xd3

0xd3

0

0

0x72

0xb1

0xb1

0

0

0x73

0x3b

0x3b

0

0

0x74

0x6

0x6

0

0

0x75

0x58

0x58

0

0

0x76

0xf7

0xf7

1

1

0x77

0

0

0

0

0x78

0

0

0

0

0x79

0x2

0x2

0

0

0x7A

0

0

0

0

0x7B

0x9

0x9

0

0

0x7C

0x5

0x5

0

0

0x7D

0x16

0x16

0

0

0x7E

0x6b

0x6b

0

0

0x7F

0

0

0

0

0x80

0xb3

0xb3

0

0

0x81

0x4

0x4

0

0

0x82

0

0

0

0

0x83

0

0

0

0

0x84

0

0

0

0

0x85

0

0

0

0

0x86

0

0

0

0

0x87

0

0

0

0

0x88

0

0

0

0

0x89

0

0

0

0

0x8A

0

0

0

0

0x8B

0

0

0

0

0x8C

0x2

0x2

0

0

0x8D

0

0

0

0

0x8E

0

0

0

0

0x8F

0x66

0x66

0

0

0x90

0x66

0x66

0

0

0x91

0x66

0x66

0

0

0x92

0x66

0x66

0

0

0x93

0x66

0x66

0

0

0x94

0x66

0x66

0

0

0x95

0x66

0x66

0

0

0x96

0

0

0

0

0x97

0

0

0

0

0x98

0

0

0

0

0x99

0

0

0

0

0x9A

0

0

0

0

0x9B

0

0

0

0

0x9C

0

0

0

0

0x9D

0

0

0

0

0x9E

0

0

0

0

0x9F

0

0

0

0

0xA0

0xff

0xff

0

0

0xA1

0

0

0

0

0xA2

0x60

0x60

0

0

0xA3

0x66

0x66

0

0

0xA4

0xc

0xc

0

0

0xA5

0x66

0x66

0

0

0xA6

0xc

0xc

0

0

0xA7

0x1

0x1

0

0

0xA8

0x66

0x66

0

0

0xA9

0x66

0x66

0

0

0xAA

0x66

0x66

0

0

0xAB

0x66

0x66

0

0

0xAC

0x66

0x66

0

0

0xAD

0x66

0x66

0

0

0xAE

0

0

0

0

0xAF

0x1

0x1

0

0

0xB0

0

0

0

0

0xB1

0

0

0

0

0xB2

0x33

0x33

0

0

0xB3

0

0

0

0

0xB4

0x5

0x5

0

0

0xB5

0x30

0x30

0

0

0xB6

0x55

0x55

0

0

0xB7

0x33

0x33

0

0

0xB8

0

0

0

0

0xB9

0x33

0x33

0

0

0xBA

0

0

0

0

0xBB

0x35

0x35

0

0

0xBC

0

0

0

0

0xBD

0x33

0x33

0

0

0xBE

0

0

0

0

0xBF

0x33

0x33

0

0

0xC0

0

0

0

0

0xC1

0

0

0

0

0xC2

0x44

0x44

0

0

0xC3

0

0

0

0

0xC4

0x71

0x71

1

1

0xC5

0x71

0x71

1

1

0xC6

0x3

0x3

0

0

0xC7

0x88

0x88

0

0

0xC8

0x44

0x44

0

0

0xC9

0x1

0x1

0

0

0xCA

0

0

0

0

0xCB

0

0

0

0

0xCC

0

0

0

0

0xCD

0

0

0

0

0xCE

0

0

0

0

0xCF

0xf0

0x30

1

0

0xD0

0x5

0x5

0

0

0xD1

0x33

0x33

0

0

0xD2

0

0

0

0

0xD3

0x5

0x5

0

0

0xD4

0

0

0

0

0xD5

0

0

0

0

0xD6

0x5

0x5

0

0

0xD7

0

0

0

0

0xD8

0

0

0

0

0xD9

0x5

0x5

0

0

0xDA

0

0

0

0

0xDB

0x33

0x33

0

0

0xDC

0

0

0

0

0xDD

0x33

0x33

0

0

0xDE

0

0

0

0

0xDF

0x77

0x77

1

1

0xE0

0x88

0x88

0

0

0xE1

0

0

0

0

0xE2

0x44

0x44

0

0

0xE3

0x3

0x3

1

1

0xE4

0xf

0xf

1

1

0xE5

0xf

0xf

1

1

0xE6

0x44

0x44

0

0

0xE7

0x1

0x1

0

0

0xE8

0

0

0

0

0xE9

0

0

0

0

0xEA

0

0

0

0

0xEB

0

0

0

0

0xEC

0x77

0x77

1

1

0xED

0x58

0x58

0

0

0xEE

0x77

0x77

1

1

0xEF

0x58

0x58

0

0

0xF0

0

0

0

0

0xF1

0

0

0

0

0xF2

0x74

0x74

0

0

0xF3

0x4

0x4

1

1

0xF4

0xa2

0xa2

0

0

0xF5

0xaa

0xaa

0

0

0xF6

0x24

0x24

0

0

0xF7

0xa9

0xa9

0

0

0xF8

0x28

0x28

0

0

0xF9

0x10

0x10

0

0

0xFA

0x55

0x55

0

0

0xFB

0x80

0x80

0

0

0xFC

0x88

0x88

0

0

0xFD

0x88

0x88

0

0

0xFE

0x88

0x88

0

0

0xFF

0x88

0x88

0

0

0x100

0x80

0x80

0

0

0x101

0x38

0x38

0

0

0x102

0xb8

0xb8

0

0

0x103

0x80

0x80

0

0

0x104

0x38

0x38

0

0

0x105

0x78

0x78

0

0

0x106

0xc0

0xc0

0

0

0x107

0x3

0x3

0

0

0x108

0

0

0

0

0x109

0

0

0

0

0x10A

0

0

0

0

0x10B

0

0x4

1

0

0x10C

0xc

0xc

0

0

0x10D

0

0

0

0

0x10E

0

0

0

0

0x10F

0x96

0x96

0

0

0x110

0x77

0x77

0

0

0x111

0x5a

0x5a

0

0

0x112

0

0

0

0

0x113

0

0

0

0

0x114

0x21

0x21

0

0

0x115

0x70

0x70

0

0

0x116

0

0

0

0

0x117

0

0

0

0

0x118

0

0

0

0

0x119

0xb3

0xb3

0

0

0x11A

0x55

0x55

0

0

0x11B

0xb

0xb

0

0

0x11C

0

0

0

0

0x11D

0x3

0x3

1

1

0x11E

0

0

0

0

0x11F

0xb3

0xb3

0

0

0x120

0x55

0x55

0

0

0x121

0x30

0x30

0

0

0x122

0x46

0x46

0

0

0x123

0

0

0

0

0x124

0

0

0

0

0x125

0

0

0

0

0x126

0x21

0x21

0

0

0x127

0x23

0x23

0

0

0x128

0x2

0x2

0

0

sslp_2063 register initialization values

Address

Init A

Init G

0x4000

0

0

0x02

0

0

0x03

0

0

0x04

0

0

0x05

0

0

0x06

0

0

0x07

0

0

0x08

0

0

0x09

0

0

0x800A

0x1

0

0x0B

0

0

0x0C

0

0

0x0D

0

0

0x0E

0x6

0x6

0x0F

0xf

0xf

0x4010

0

0

0x4011

0

0

0x4012

0

0

0x4013

0

0

0x4014

0

0

0x4015

0

0

0x4016

0

0

0x4017

0

0

0x4018

0

0

0x19

0x7f

0x7f

0x1A

0x3f

0x3f

0x1B

0

0

0xC01C

0xe8

0xd4

0xC01D

0xa7

0x53

0x1E

0xff

0xff

0xC01F

0xf0

0xf

0x20

0x1

0x1

0x4021

0x1f

0x5e

0x4022

0x7f

0x7e

0x4023

0x30

0xf0

0x24

0x35

0x35

0x25

0x3f

0x3f

0xC026

0x2

0x2

0xC027

0x7f

0x7f

0x28

0

0

0x29

0

0

0xC02A

0xc

0xc

0x2B

0

0

0x802C

0x3c

0x3f

0x802D

0xfc

0xfe

0x2E

0xff

0xff

0x2F

0xff

0xff

0x30

0

0

0x31

0

0

0xC032

0x8

0x8

0x33

0xf

0xf

0x34

0x22

0x22

0x35

0xa8

0xa8

0xC036

0x60

0x60

0x37

0x11

0x11

0x38

0

0

0x39

0

0

0xC03A

0x30

0x30

0x3B

0x1

0x1

0x3C

0x3

0x3

0xC03D

0xc

0xb

0xC03E

0x10

0xf

0x3F

0xf

0xf

0x40

0x80

0x80

0x41

0x68

0x68

0x42

0x68

0x68

0x43

0x80

0x80

0x44

0xff

0xff

0x45

0x3

0x3

0x46

0x38

0x38

0x47

0xff

0xff

0x48

0x38

0x38

0x49

0xc0

0xc0

0x4A

0xff

0xff

0x4B

0xff

0xff

0xC04C

0x3d

0xfd

0x4D

0xc

0xc

0x4E

0x96

0x96

0x4F

0x5a

0x5a

0x50

0x7f

0x7f

0x51

0x7f

0x7f

0x52

0x33

0x33

0xC053

0x2

0x2

0x54

0

0

0x55

0x30

0x30

0x56

0

0

0xC057

0x56

0x56

0x58

0x6

0x6

0x59

0xe

0xe

0x5A

0x7e

0x7e

0x5B

0x15

0x15

0x5C

0xf

0xf

0x5D

0

0

0x5E

0

0

0x5F

0

0

0x60

0

0

0x61

0

0

0x62

0

0

0x63

0

0

0x64

0x4

0x4

0x65

0

0

0x66

0

0

0x67

0xcf

0xcf

0x68

0x59

0x59

0x69

0x7

0x7

0x6A

0x42

0x42

0x6B

0

0

0x6C

0xdb

0xdb

0x6D

0x94

0x94

0x6E

0x28

0x28

0x6F

0x63

0x63

0x70

0x7

0x7

0x71

0xd3

0xd3

0x72

0xb1

0xb1

0x73

0x3b

0x3b

0x74

0x6

0x6

0x75

0x58

0x58

0xC076

0xf7

0xf7

0x77

0

0

0x78

0

0

0x79

0x2

0x2

0x7A

0

0

0x7B

0x9

0x9

0x7C

0x5

0x5

0x7D

0x16

0x16

0x7E

0x6b

0x6b

0x7F

0

0

0x80

0xb3

0xb3

0x81

0x4

0x4

0x82

0

0

0x83

0

0

0x84

0

0

0x85

0

0

0x86

0

0

0x87

0

0

0x88

0

0

0x89

0

0

0x8A

0

0

0x8B

0

0

0x8C

0x2

0x2

0x8D

0

0

0x8E

0

0

0x8F

0x66

0x66

0x90

0x66

0x66

0x91

0x66

0x66

0x92

0x66

0x66

0x93

0x66

0x66

0x94

0x66

0x66

0x95

0x66

0x66

0x96

0

0

0x97

0

0

0x98

0

0

0x99

0

0

0x9A

0

0

0x9B

0

0

0x9C

0

0

0x9D

0

0

0x9E

0

0

0x9F

0

0

0xA0

0xff

0xff

0xA1

0

0

0xA2

0x60

0x60

0xA3

0x66

0x66

0xA4

0xc

0xc

0xA5

0x66

0x66

0xA6

0xc

0xc

0xA7

0x1

0x1

0xA8

0x66

0x66

0xA9

0x66

0x66

0xAA

0x66

0x66

0xAB

0x66

0x66

0xAC

0x66

0x66

0xAD

0x66

0x66

0xAE

0

0

0xAF

0x1

0x1

0xB0

0

0

0xB1

0

0

0xC0B2

0xf0

0xf0

0xB3

0

0

0xB4

0x5

0x5

0xB5

0x30

0x30

0xB6

0x55

0x55

0xB7

0x33

0x33

0xB8

0

0

0xB9

0x33

0x33

0xBA

0

0

0xBB

0x35

0x35

0xBC

0

0

0xBD

0x33

0x33

0xBE

0

0

0xBF

0x33

0x33

0xC0

0

0

0xC1

0

0

0xC2

0x44

0x44

0xC3

0

0

0xC0C4

0x71

0x71

0xC0C5

0x71

0x71

0xC6

0x3

0x3

0xC7

0x88

0x88

0xC8

0x44

0x44

0xC9

0x1

0x1

0xCA

0

0

0xCB

0

0

0xCC

0

0

0xCD

0

0

0xCE

0

0

0x80CF

0xf0

0x30

0xD0

0x5

0x5

0xD1

0x33

0x33

0xD2

0

0

0xD3

0x5

0x5

0xD4

0

0

0xD5

0

0

0xD6

0x5

0x5

0xD7

0

0

0xD8

0

0

0xD9

0x5

0x5

0xDA

0

0

0xDB

0x33

0x33

0xDC

0

0

0xDD

0x33

0x33

0xDE

0

0

0xC0DF

0x77

0x77

0xE0

0x88

0x88

0xE1

0

0

0xE2

0x44

0x44

0xC0E3

0x3

0x3

0xC0E4

0xf

0xf

0xC0E5

0xf

0xf

0xE6

0x44

0x44

0xE7

0x1

0x1

0xE8

0

0

0xE9

0

0

0xEA

0

0

0xEB

0

0

0xC0EC

0x77

0x77

0xED

0x58

0x58

0xC0EE

0x77

0x77

0xEF

0x58

0x58

0xF0

0

0

0xF1

0

0

0xF2

0x74

0x74

0xC0F3

0x4

0x4

0xF4

0xa2

0xa2

0xF5

0xaa

0xaa

0xF6

0x24

0x24

0xC0F7

0x9

0x9

0xF8

0x28

0x28

0xF9

0x10

0x10

0xFA

0x55

0x55

0xFB

0x80

0x80

0xFC

0x88

0x88

0xFD

0x88

0x88

0xFE

0x88

0x88

0xFF

0x88

0x88

0x100

0x80

0x80

0x101

0x38

0x38

0x102

0xb8

0xb8

0x103

0x80

0x80

0x104

0x38

0x38

0x105

0x78

0x78

0x106

0xc0

0xc0

0x107

0x3

0x3

0x108

0

0

0x109

0

0

0x10A

0

0

0x810B

0

0x4

0x10C

0xc

0xc

0x10D

0

0

0x10E

0

0

0x10F

0x96

0x96

0x110

0x77

0x77

0x111

0x5a

0x5a

0x112

0

0

0x113

0

0

0x114

0x21

0x21

0x115

0x70

0x70

0x116

0

0

0x117

0

0

0x118

0

0

0x119

0xb3

0xb3

0x11A

0x55

0x55

0x11B

0xb

0xb

0x11C

0

0

0xC11D

0x3

0x3

0x11E

0

0

0x11F

0xb3

0xb3

0x120

0x55

0x55

0x121

0x30

0x30

0x122

0x46

0x46

0x123

0

0

0x124

0

0

0x125

0

0

0x126

0x21

0x21

0x127

0x23

0x23

0x128

0x2

0x2


Exported/Archived from the wiki to HTML on 2016-10-27