diff options
Diffstat (limited to 'scripts')
| -rwxr-xr-x | scripts/bcm5974-post-install | 41 |
1 files changed, 26 insertions, 15 deletions
diff --git a/scripts/bcm5974-post-install b/scripts/bcm5974-post-install index 5674d40..de5094c 100755 --- a/scripts/bcm5974-post-install +++ b/scripts/bcm5974-post-install | |||
| @@ -28,25 +28,36 @@ DIR=`dirname $0` | |||
| 28 | LSUSB=/usr/sbin/lsusb | 28 | LSUSB=/usr/sbin/lsusb |
| 29 | 29 | ||
| 30 | PAT_HEAD="options usbhid quirks=" | 30 | PAT_HEAD="options usbhid quirks=" |
| 31 | PAT[0]="05ac:022" | 31 | |
| 32 | PAT[1]="05ac:023" | 32 | DEV[0]="0223" |
| 33 | MATCH[0]=${PAT_HEAD}0x05ac:0x022 | 33 | DEV[1]="0224" |
| 34 | MATCH[1]=${PAT_HEAD}0x05ac:0x023 | 34 | DEV[2]="0225" |
| 35 | DEV[3]="0230" | ||
| 36 | DEV[4]="0231" | ||
| 37 | DEV[5]="0232" | ||
| 38 | DEV[6]="0236" | ||
| 39 | DEV[7]="0237" | ||
| 40 | DEV[8]="0238" | ||
| 35 | 41 | ||
| 36 | if [ -x $LSUSB ]; then | 42 | if [ -x $LSUSB ]; then |
| 37 | if [ "`$LSUSB|grep ${PAT[0]}`" != "" ]; then | 43 | typeset -i i=0 |
| 38 | SED="s/#${MATCH[0]}/${MATCH[0]}/" | 44 | while [ $i -lt 9 ]; do |
| 39 | elif [ "`$LSUSB|grep ${PAT[1]}`" != "" ]; then | 45 | PAT=05ac:${DEV[$i]} |
| 40 | SED="s/#${MATCH[1]}/${MATCH[1]}/" | 46 | MATCH=${PAT_HEAD}0x05ac:0x${DEV[$i]} |
| 41 | else | 47 | if [ "`$LSUSB|grep $PAT`" != "" ]; then |
| 42 | echo No suitable device found | 48 | SED="s/#$MATCH/$MATCH/" |
| 43 | exit 1 | 49 | fi |
| 44 | fi | 50 | i=$i+1 |
| 51 | done | ||
| 45 | else | 52 | else |
| 46 | echo \* USB device: UNKNOWN - lsusb not found | 53 | echo \* USB device: UNKNOWN - lsusb not found |
| 47 | exit 1 | 54 | exit 1 |
| 48 | fi | 55 | fi |
| 49 | 56 | ||
| 50 | cat $DIR/..$ETCPATH | sed "$SED" > $ETCPATH | 57 | if [ "$SED" != "" ]; then |
| 51 | 58 | cat $DIR/..$ETCPATH | sed "$SED" > $ETCPATH | |
| 52 | exit 0 | 59 | exit 0 |
| 60 | else | ||
| 61 | echo No suitable device found | ||
| 62 | exit 1 | ||
| 63 | fi | ||
