RESULT=0
}
+handle_platform () {
+ local DEV=$1
+ cd -P $1
+ DEV=${PWD}
+ platform_id=${DEV##*/}
+ host_dev_path=$DEV
+ while [ ! -z "$host_dev_path" ] ; do
+ case "$host_dev_path" in
+ */platform*)
+ host_dev_path=${host_dev_path%/*}
+ ;;
+ *)
+ break
+ ;;
+ esac
+ done
+ if [ "$d" ]; then
+ d="platform-$platform_id-$d"
+ else
+ d="platform-$platform_id"
+ fi
+ D="$host_dev_path"
+ RESULT=0
+}
+
+handle_serio () {
+ local DEV=$1
+ cd -P $1
+ DEV=${PWD}
+ serio_id=${DEV##*/serio}
+ host_dev_path=$DEV
+ while [ ! -z "$host_dev_path" ] ; do
+ case "$host_dev_path" in
+ */serio*)
+ host_dev_path=${host_dev_path%/*}
+ ;;
+ *)
+ break
+ ;;
+ esac
+ done
+ if [ "$d" ]; then
+ d="serio-$serio_id-$d"
+ else
+ d="serio-$serio_id"
+ fi
+ D="$host_dev_path"
+ RESULT=0
+}
+
handle_ide () {
: handle_ide $*
local DEV=$1
*/pci[0-9]*:[0-9]*)
handle_pci "$D"
;;
+ */serio[0-9]*)
+ handle_serio "$D"
+ ;;
+ */platform/*)
+ handle_platform "$D"
+ ;;
*/devices)
D=
;;