Author: quozl
Date: Tue Nov 29 07:46:48 2011
New Revision: 2714
URL: http://tracker.coreboot.org/trac/openfirmware/changeset/2714
Log:
USB UHCI - begin-intr-in stack balance was wrong if already started
Modified:
dev/usb2/hcd/uhci/intr.fth
Modified: dev/usb2/hcd/uhci/intr.fth
==============================================================================
--- dev/usb2/hcd/uhci/intr.fth Tue Nov 29 07:22:20 2011 (r2713)
+++ dev/usb2/hcd/uhci/intr.fth Tue Nov 29 07:46:48 2011 (r2714)
@@ -58,7 +58,7 @@
: begin-intr-in ( buf len pipe interval -- )
debug? if ." begin-intr-in" cr then
- intr-in-qh if 3drop exit then \ Already started
+ intr-in-qh if 4drop exit then \ Already started
to intr-in-interval
dup to intr-in-pipe
Author: wmb
Date: Tue Nov 29 01:27:01 2011
New Revision: 2712
URL: http://tracker.coreboot.org/trac/openfirmware/changeset/2712
Log:
Initial revision of VESA framebuffer driver.
Added:
dev/video/controlr/vesa.fth
Added: dev/video/controlr/vesa.fth
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dev/video/controlr/vesa.fth Tue Nov 29 01:27:01 2011 (r2712)
@@ -0,0 +1,110 @@
+\ See license at end of file
+purpose: VESA framebuffer driver
+
+0 0 " d0000000" " /" begin-package
+
+" display" device-name
+" vesa" " compatible" string-property
+h# 40000 constant /fb
+
+my-address my-space encode-phys /fb encode-int encode+ " reg" property
+
+\ Assume mode 117 - 1024x768x16 - for now
+d# 16 value depth
+d# 1280 value width \ If scaled is false, will be replaced with hdisplay
+d# 1024 value height \ If scaled is false, will be replaced with vdisplay
+
+: setmode ( -- ) ;
+
+\ : bytes/line ( -- n ) width depth 8 / * ;
+: /scanline ( -- n ) width depth 8 / * ;
+
+: erase-frame-buffer ( -- )
+ frame-buffer-adr /fb ( adr len )
+ depth case
+ 8 of h# 0f fill endof
+ d# 16 of h# ffff " wfill" evaluate endof
+ d# 32 of h# ffff.ffff " lfill" evaluate endof
+ ( default ) nip nip
+ endcase
+ h# f to background-color
+;
+: map-frame-buffer ( -- )
+ my-space /fb " map-in" $call-parent to frame-buffer-adr
+;
+: declare-props ( -- ) \ Instantiate screen properties
+ " width" get-my-property if
+ width encode-int " width" property
+ height encode-int " height" property
+ depth encode-int " depth" property
+ /scanline encode-int " linebytes" property
+ else
+ 2drop
+ then
+;
+: set-terminal ( -- )
+ width height ( width height )
+ over char-width / over char-height / ( width height rows cols )
+ /scanline depth " fb-install" evaluate ( gp-install ) ( )
+;
+
+0 value open-count
+
+: display-remove ( -- )
+ open-count 1 = if
+ then
+ open-count 1- 0 max to open-count
+;
+
+: display-install ( -- )
+ open-count 0= if
+ setmode
+ declare-props \ Setup properites
+ map-frame-buffer
+ erase-frame-buffer
+ else
+ map-frame-buffer
+ then
+ default-font set-font
+ set-terminal
+ open-count 1+ to open-count
+;
+
+: display-selftest ( -- failed? ) false ;
+
+' display-install is-install
+' display-remove is-remove
+' display-selftest is-selftest
+
+" display" device-type
+" ISO8859-1" encode-string " character-set" property
+0 0 encode-bytes " iso6429-1983-colors" property
+
+fload ${BP}/dev/video/common/rectangle16.fth
+alias color! 4drop
+
+end-package
+
+\ LICENSE_BEGIN
+\ Copyright (c) 2011 FirmWorks
+\
+\ Permission is hereby granted, free of charge, to any person obtaining
+\ a copy of this software and associated documentation files (the
+\ "Software"), to deal in the Software without restriction, including
+\ without limitation the rights to use, copy, modify, merge, publish,
+\ distribute, sublicense, and/or sell copies of the Software, and to
+\ permit persons to whom the Software is furnished to do so, subject to
+\ the following conditions:
+\
+\ The above copyright notice and this permission notice shall be
+\ included in all copies or substantial portions of the Software.
+\
+\ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+\ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+\ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+\ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+\ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+\ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+\ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+\
+\ LICENSE_END