svn commit: r207892 - stable/8/sys/dev/isp
Marius Strobl
marius at FreeBSD.org
Mon May 10 20:34:17 UTC 2010
Author: marius
Date: Mon May 10 20:34:16 2010
New Revision: 207892
URL: http://svn.freebsd.org/changeset/base/207892
Log:
MFC: r207570
On sparc64 obtain the initiator ID from the Open Firmware device tree
in order to match what the PROM built-in driver uses.
Modified:
stable/8/sys/dev/isp/isp_pci.c
stable/8/sys/dev/isp/isp_sbus.c
Directory Properties:
stable/8/sys/ (props changed)
stable/8/sys/amd64/include/xen/ (props changed)
stable/8/sys/cddl/contrib/opensolaris/ (props changed)
stable/8/sys/contrib/dev/acpica/ (props changed)
stable/8/sys/contrib/pf/ (props changed)
stable/8/sys/dev/xen/xenpci/ (props changed)
stable/8/sys/geom/sched/ (props changed)
Modified: stable/8/sys/dev/isp/isp_pci.c
==============================================================================
--- stable/8/sys/dev/isp/isp_pci.c Mon May 10 20:25:51 2010 (r207891)
+++ stable/8/sys/dev/isp/isp_pci.c Mon May 10 20:34:16 2010 (r207892)
@@ -46,6 +46,11 @@ __FBSDID("$FreeBSD$");
#include <sys/malloc.h>
#include <sys/uio.h>
+#ifdef __sparc64__
+#include <dev/ofw/openfirm.h>
+#include <machine/ofw_machdep.h>
+#endif
+
#include <dev/isp/isp_freebsd.h>
static uint32_t isp_pci_rd_reg(ispsoftc_t *, int);
@@ -517,7 +522,11 @@ isp_get_specific_options(device_t dev, i
if (IS_FC(isp)) {
ISP_FC_PC(isp, chan)->default_id = 109 - chan;
} else {
+#ifdef __sparc64__
+ ISP_SPI_PC(isp, chan)->iid = OF_getscsinitid(dev);
+#else
ISP_SPI_PC(isp, chan)->iid = 7;
+#endif
}
} else {
if (IS_FC(isp)) {
Modified: stable/8/sys/dev/isp/isp_sbus.c
==============================================================================
--- stable/8/sys/dev/isp/isp_sbus.c Mon May 10 20:25:51 2010 (r207891)
+++ stable/8/sys/dev/isp/isp_sbus.c Mon May 10 20:34:16 2010 (r207892)
@@ -41,8 +41,10 @@ __FBSDID("$FreeBSD$");
#include <sys/resource.h>
#include <dev/ofw/ofw_bus.h>
+#include <dev/ofw/openfirm.h>
#include <machine/bus.h>
+#include <machine/ofw_machdep.h>
#include <machine/resource.h>
#include <sys/rman.h>
#include <sparc64/sbus/sbusvar.h>
@@ -264,11 +266,7 @@ isp_sbus_attach(device_t dev)
isp->isp_confopts |= ISP_CFG_OWNLOOPID;
}
if (default_id == -1) {
- /*
- * XXX: should be a way to get properties w/o having
- * XXX: to call OF_xxx functions
- */
- default_id = 7;
+ default_id = OF_getscsinitid(dev);
}
ISP_SPI_PC(isp, 0)->iid = default_id;
More information about the svn-src-all
mailing list