Bing Zhao | 196be0c | 2009-06-02 14:29:38 -0700 | [diff] [blame] | 1 | ======================================================================= |
| 2 | README for btmrvl driver |
| 3 | ======================================================================= |
| 4 | |
| 5 | |
| 6 | All commands are used via debugfs interface. |
| 7 | |
| 8 | ===================== |
| 9 | Set/get driver configurations: |
| 10 | |
| 11 | Path: /debug/btmrvl/config/ |
| 12 | |
| 13 | gpiogap=[n] |
| 14 | hscfgcmd |
| 15 | These commands are used to configure the host sleep parameters. |
| 16 | bit 8:0 -- Gap |
| 17 | bit 16:8 -- GPIO |
| 18 | |
| 19 | where GPIO is the pin number of GPIO used to wake up the host. |
| 20 | It could be any valid GPIO pin# (e.g. 0-7) or 0xff (SDIO interface |
| 21 | wakeup will be used instead). |
| 22 | |
| 23 | where Gap is the gap in milli seconds between wakeup signal and |
| 24 | wakeup event, or 0xff for special host sleep setting. |
| 25 | |
| 26 | Usage: |
| 27 | # Use SDIO interface to wake up the host and set GAP to 0x80: |
| 28 | echo 0xff80 > /debug/btmrvl/config/gpiogap |
| 29 | echo 1 > /debug/btmrvl/config/hscfgcmd |
| 30 | |
| 31 | # Use GPIO pin #3 to wake up the host and set GAP to 0xff: |
| 32 | echo 0x03ff > /debug/btmrvl/config/gpiogap |
| 33 | echo 1 > /debug/btmrvl/config/hscfgcmd |
| 34 | |
| 35 | psmode=[n] |
| 36 | pscmd |
| 37 | These commands are used to enable/disable auto sleep mode |
| 38 | |
| 39 | where the option is: |
| 40 | 1 -- Enable auto sleep mode |
| 41 | 0 -- Disable auto sleep mode |
| 42 | |
| 43 | Usage: |
| 44 | # Enable auto sleep mode |
| 45 | echo 1 > /debug/btmrvl/config/psmode |
| 46 | echo 1 > /debug/btmrvl/config/pscmd |
| 47 | |
| 48 | # Disable auto sleep mode |
| 49 | echo 0 > /debug/btmrvl/config/psmode |
| 50 | echo 1 > /debug/btmrvl/config/pscmd |
| 51 | |
| 52 | |
| 53 | hsmode=[n] |
| 54 | hscmd |
| 55 | These commands are used to enable host sleep or wake up firmware |
| 56 | |
| 57 | where the option is: |
| 58 | 1 -- Enable host sleep |
| 59 | 0 -- Wake up firmware |
| 60 | |
| 61 | Usage: |
| 62 | # Enable host sleep |
| 63 | echo 1 > /debug/btmrvl/config/hsmode |
| 64 | echo 1 > /debug/btmrvl/config/hscmd |
| 65 | |
| 66 | # Wake up firmware |
| 67 | echo 0 > /debug/btmrvl/config/hsmode |
| 68 | echo 1 > /debug/btmrvl/config/hscmd |
| 69 | |
| 70 | |
| 71 | ====================== |
| 72 | Get driver status: |
| 73 | |
| 74 | Path: /debug/btmrvl/status/ |
| 75 | |
| 76 | Usage: |
| 77 | cat /debug/btmrvl/status/<args> |
| 78 | |
| 79 | where the args are: |
| 80 | |
| 81 | curpsmode |
| 82 | This command displays current auto sleep status. |
| 83 | |
| 84 | psstate |
| 85 | This command display the power save state. |
| 86 | |
| 87 | hsstate |
| 88 | This command display the host sleep state. |
| 89 | |
| 90 | txdnldrdy |
| 91 | This command displays the value of Tx download ready flag. |
| 92 | |
| 93 | |
| 94 | ===================== |
| 95 | |
| 96 | Use hcitool to issue raw hci command, refer to hcitool manual |
| 97 | |
| 98 | Usage: Hcitool cmd <ogf> <ocf> [Parameters] |
| 99 | |
| 100 | Interface Control Command |
| 101 | hcitool cmd 0x3f 0x5b 0xf5 0x01 0x00 --Enable All interface |
| 102 | hcitool cmd 0x3f 0x5b 0xf5 0x01 0x01 --Enable Wlan interface |
| 103 | hcitool cmd 0x3f 0x5b 0xf5 0x01 0x02 --Enable BT interface |
| 104 | hcitool cmd 0x3f 0x5b 0xf5 0x00 0x00 --Disable All interface |
| 105 | hcitool cmd 0x3f 0x5b 0xf5 0x00 0x01 --Disable Wlan interface |
| 106 | hcitool cmd 0x3f 0x5b 0xf5 0x00 0x02 --Disable BT interface |
| 107 | |
| 108 | ======================================================================= |
| 109 | |
| 110 | |
| 111 | SD8688 firmware: |
| 112 | |
| 113 | /lib/firmware/sd8688_helper.bin |
| 114 | /lib/firmware/sd8688.bin |
| 115 | |
| 116 | |
| 117 | The images can be downloaded from: |
| 118 | |
| 119 | git.infradead.org/users/dwmw2/linux-firmware.git/libertas/ |