From 3c629cfc230029bd8dca40a0d3f0c01f96f8ad68 Mon Sep 17 00:00:00 2001 From: Miod Vallat Date: Fri, 8 May 2009 18:39:02 +0000 Subject: The default initiator value is 0 on sgi IP27, IP30 and IP35 systems. Since they don't seem to have a valid NVRAM either, override the default value. --- sys/dev/pci/isp_pci.c | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) (limited to 'sys/dev/pci') diff --git a/sys/dev/pci/isp_pci.c b/sys/dev/pci/isp_pci.c index 5c74cddab84..49bb6e70348 100644 --- a/sys/dev/pci/isp_pci.c +++ b/sys/dev/pci/isp_pci.c @@ -1,4 +1,4 @@ -/* $OpenBSD: isp_pci.c,v 1.44 2008/06/01 15:49:25 kettenis Exp $ */ +/* $OpenBSD: isp_pci.c,v 1.45 2009/05/08 18:39:01 miod Exp $ */ /* * PCI specific probe and attach routines for QLogic ISP SCSI adapters. * @@ -43,6 +43,10 @@ #ifdef __sparc64__ #include #endif +#ifdef __sgi__ +#include +#include +#endif static u_int16_t isp_pci_rd_reg(struct ispsoftc *, int); static void isp_pci_wr_reg(struct ispsoftc *, int, u_int16_t); @@ -426,6 +430,18 @@ isp_pci_attach(struct device *parent, struct device *self, void *aux) node = OF_parent(node); } #endif +#ifdef __sgi__ + /* + * The on-board isp controllers found on Octane, Origin 200 and + * Origin 300 families use id #0. + * XXX We'll need to be able to tell apart onboard isp from + * XXX other isp... + */ + if (sys_config.system_type == SGI_OCTANE || + sys_config.system_type == SGI_O200 || + sys_config.system_type == SGI_O300) + DEFAULT_IID(isp) = 0; +#endif ioh_valid = memh_valid = 0; -- cgit v1.2.3