[openfirmware] r1060 - dev

svn at openfirmware.info svn at openfirmware.info
Sun Jan 4 00:32:33 CET 2009


Author: wmb
Date: 2009-01-04 00:32:33 +0100 (Sun, 04 Jan 2009)
New Revision: 1060

Modified:
   dev/pcibus.fth
Log:
PCI bus driver - error check/graceful handling for hardwired
IO-space BARs that appear to the size prober as too large.


Modified: dev/pcibus.fth
===================================================================
--- dev/pcibus.fth	2009-01-03 23:31:04 UTC (rev 1059)
+++ dev/pcibus.fth	2009-01-03 23:32:33 UTC (rev 1060)
@@ -1085,6 +1085,14 @@
       4drop   exit
    then                           ( phys.lo,mid,hi size.lo )
 
+   over io?  if                   ( phys.lo,mid,hi size.lo )
+      dup h# 4000 u>=  if         ( phys.lo,mid,hi size.lo )
+         ." Can't assign more than 16K of I/O space" cr
+         ." Probably a non-writable BAR at PCI config address " drop h# ff.ffff and u. cr
+         2drop exit
+      then
+   then
+
    \ Mark as already assigned
    1  2 pick  >assigned dup 1+ >r c!  ( phys.lo,mid,hi size.lo ) ( r: adr)
    r> 2 pick 64mem?  if  1 swap c!  else  drop  then




More information about the openfirmware mailing list