summaryrefslogtreecommitdiff
path: root/extras/ide-devfs.sh
blob: 3409c407eb5f97d358abe2a59dc074c27b7bad8d (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
#!/bin/sh

# udev CALLOUT script
# return devfs-names for ide-devices
# CALLOUT, BUS="ide", PROGRAM="/etc/udev/ide-devfs.sh %k %b %n", ID="hd*", NAME="%1c", SYMLINK="%2c"

HOST=${2%\.[0-9]}
TARGET=${2#[0-9]\.}

if [ -z ${HOST#[13579]} ]; then
	HOST=`expr $HOST - 1`
	BUS="1"
else
	BUS="0"
fi

if [ -z "$3" ]; then
	MEDIA=`cat /proc/ide/$1/media`
	if [ "$MEDIA" = "cdrom" ]; then
		echo $1 ide/host$HOST/bus$BUS/target$TARGET/lun0/cd
	elif [ "$MEDIA" = "disk" ]; then
		echo $1 ide/host$HOST/bus$BUS/target$TARGET/lun0/disc
	fi
else
	echo $1 ide/host$HOST/bus$BUS/target$TARGET/lun0/part$3
fi