summaryrefslogtreecommitdiff
path: root/debian/usrp.hotplug
blob: e8b94320446236b960ad297df60ea40d496766ca (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
#! /bin/sh

GROUP=usrp

# Set the permissions for the USRP devices right.
set_permissions() {
    if [ -f "$1" ]
    then
        if getent group $GROUP > /dev/null; then
            chmod 660 "$DEVICE"
            chown root.$GROUP "$1"
        fi
    fi
}

#
# If we do not have /sbin/hotplug, we are being called by post-sarge udev
# emulating hotplug. In that case, all of this is handled by our udev rules,
# so we don't need to duplicate the work done here.
# 
if ! [ -x /sbin/hotplug ]; then
    exit
fi

if [ "$ACTION" != "add" ]; then
    exit
fi

# FIXME: Map the USB device ID to usrper's idea of "which USRP".
#        For now, we just assume the user only has a single one.

case $PRODUCT in
    # USRP without loaded firmware 
    fffe/2/2 | fffe/2/4)
        sleep 1    # required on some machines
        /usr/bin/usrper load_standard_bits
        set_permissions "$DEVICE"
    ;;

    # USRP with loaded firmware
    fffe/2/102 | fffe/2/104)
        set_permissions "$DEVICE"
    ;;
esac