summaryrefslogtreecommitdiffstats
path: root/sys
diff options
context:
space:
mode:
authorgibbs <gibbs@FreeBSD.org>1996-05-21 18:38:41 +0000
committergibbs <gibbs@FreeBSD.org>1996-05-21 18:38:41 +0000
commite917af9def4f0bef0e795cac47b61d65d141fcd6 (patch)
tree218e867bd97b290bc07df7a95054145b9bb81d36 /sys
parentd69a6ddc497c860b41bb091401d5042e725ce5e7 (diff)
downloadFreeBSD-src-e917af9def4f0bef0e795cac47b61d65d141fcd6.zip
FreeBSD-src-e917af9def4f0bef0e795cac47b61d65d141fcd6.tar.gz
It seems that the aic78X0 chips will either have their scratch ram
as all 0s or all 1s after POST if there is no BIOS installed.
Diffstat (limited to 'sys')
-rw-r--r--sys/pci/aic7870.c13
1 files changed, 12 insertions, 1 deletions
diff --git a/sys/pci/aic7870.c b/sys/pci/aic7870.c
index dda058c..20eb453c 100644
--- a/sys/pci/aic7870.c
+++ b/sys/pci/aic7870.c
@@ -29,7 +29,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $Id: aic7870.c,v 1.32 1996/05/12 01:50:33 gibbs Exp $
+ * $Id: aic7870.c,v 1.33 1996/05/12 16:25:32 gibbs Exp $
*/
#include <pci.h>
@@ -428,6 +428,17 @@ aic7870_attach(config_id, unit)
if(inb(i) != 0x00)
break;
}
+ if(i == io_port + TARG_SCRATCH) {
+ /*
+ * Try looking for all ones. You can get
+ * either.
+ */
+ for(i=io_port + TARG_SCRATCH;
+ i < io_port + 0x60; i++) {
+ if(inb(i) != 0xff)
+ break;
+ }
+ }
if(i != io_port + 0x60) {
printf("ahc%d: Using left over BIOS settings\n",
ahc->unit);
OpenPOWER on IntegriCloud