aboutsummaryrefslogtreecommitdiff
path: root/slof/fs/usb
diff options
context:
space:
mode:
authorNikunj A Dadhania <nikunj@linux.vnet.ibm.com>2013-07-24 14:27:09 +0530
committerNikunj A Dadhania <nikunj@linux.vnet.ibm.com>2013-07-24 14:46:23 +0530
commit2deb222c4c9eac625526f9d2f45df8666753c09a (patch)
tree420d9d8057a07715e735b54352f9d7e59a0be96d /slof/fs/usb
parent912a746dc1530179560a87f65121feb1920b583f (diff)
downloadSLOF-2deb222c4c9eac625526f9d2f45df8666753c09a.zip
SLOF-2deb222c4c9eac625526f9d2f45df8666753c09a.tar.gz
SLOF-2deb222c4c9eac625526f9d2f45df8666753c09a.tar.bz2
usb-core: setup new device
* Configures the newly found usb devices. Signed-off-by: Nikunj A Dadhania <nikunj@linux.vnet.ibm.com> Fixes-by: Avik Sil <aviksil@linux.vnet.ibm.com> Signed-off-by: Nikunj A Dadhania <nikunj@linux.vnet.ibm.com> Acked-by: Thomas Huth <thuth@linux.vnet.ibm.com>
Diffstat (limited to 'slof/fs/usb')
-rw-r--r--slof/fs/usb/dev-keyb.fs29
-rw-r--r--slof/fs/usb/dev-mouse.fs21
-rw-r--r--slof/fs/usb/dev-storage.fs31
-rw-r--r--slof/fs/usb/slofdev.fs8
4 files changed, 89 insertions, 0 deletions
diff --git a/slof/fs/usb/dev-keyb.fs b/slof/fs/usb/dev-keyb.fs
new file mode 100644
index 0000000..b445733
--- /dev/null
+++ b/slof/fs/usb/dev-keyb.fs
@@ -0,0 +1,29 @@
+new-device
+
+VALUE sudev
+
+s" slofdev.fs" included
+sudev slof-dev>port l@ dup set-unit encode-phys " reg" property
+sudev slof-dev>udev @ VALUE udev
+
+s" usb-keyboard" device-name
+s" keyboard" device-type
+s" EN" encode-string s" language" property
+s" keyboard" get-node node>path set-alias
+
+: open ( -- true | false )
+ TRUE
+;
+
+\ method to check if a key is present in output buffer
+\ used by 'term-io.fs'
+: key-available? ( -- true|false )
+ false
+;
+
+: read ( addr len -- actual )
+ 2drop 0
+;
+
+." USB Keyboard " cr
+finish-device
diff --git a/slof/fs/usb/dev-mouse.fs b/slof/fs/usb/dev-mouse.fs
new file mode 100644
index 0000000..278a7c0
--- /dev/null
+++ b/slof/fs/usb/dev-mouse.fs
@@ -0,0 +1,21 @@
+new-device
+
+VALUE sudev
+s" slofdev.fs" included
+sudev slof-dev>port l@ dup set-unit encode-phys " reg" property
+sudev slof-dev>udev @ VALUE udev
+
+s" usb-mouse" device-name
+s" mouse" device-type
+
+\ .S cr
+\ dup slof-dev>udev dup . @ . cr
+\ dup slof-dev>port dup . l@ . cr
+\ dup slof-dev>devaddr dup . l@ . cr
+\ dup slof-dev>hcitype dup . l@ . cr
+\ dup slof-dev>num dup . l@ . cr
+\ dup slof-dev>devtype dup . l@ . cr
+
+." USB mouse " cr
+
+finish-device
diff --git a/slof/fs/usb/dev-storage.fs b/slof/fs/usb/dev-storage.fs
new file mode 100644
index 0000000..cb70bed
--- /dev/null
+++ b/slof/fs/usb/dev-storage.fs
@@ -0,0 +1,31 @@
+new-device
+
+VALUE usbdev
+
+s" slofdev.fs" included
+usbdev slof-dev>port l@ dup set-unit encode-phys " reg" property
+s" disk" device-name
+s" block" device-type
+
+\ s" disk" get-node node>path set-alias
+
+: open ( -- true | false )
+ ." Opening disk device " cr
+ \ usbdev slof-dev>udev @ OPEN-KEYB-DEVICE
+;
+
+: close ( -- )
+ ." Closing disk device " cr
+;
+
+: read ( addr len -- actual )
+ nip ." read called " cr
+;
+
+: read-blocks ( address block# #blocks -- #read-blocks )
+ nip nip ." read-blocks called " cr
+;
+
+." USB Storage " cr
+
+finish-device
diff --git a/slof/fs/usb/slofdev.fs b/slof/fs/usb/slofdev.fs
new file mode 100644
index 0000000..d6e20fd
--- /dev/null
+++ b/slof/fs/usb/slofdev.fs
@@ -0,0 +1,8 @@
+STRUCT
+ /n FIELD slof-dev>udev
+ /l FIELD slof-dev>port
+ /l FIELD slof-dev>devaddr
+ /l FIELD slof-dev>hcitype
+ /l FIELD slof-dev>num
+ /l FIELD slof-dev>devtype
+CONSTANT slof-usb-dev