Deleted Added
full compact
adw_pci.c (119690) adw_pci.c (127135)
1/*
2 * Device probe and attach routines for the following
3 * Advanced Systems Inc. SCSI controllers:
4 *
5 * ABP[3]940UW - Bus-Master PCI Ultra-Wide (253 CDB)
6 * ABP950UW - Dual Channel Bus-Master PCI Ultra-Wide (253 CDB/Channel)
7 * ABP970UW - Bus-Master PCI Ultra-Wide (253 CDB)
8 * ABP3940U2W - Bus-Master PCI LVD/Ultra2-Wide (253 CDB)

--- 20 unchanged lines hidden (view full) ---

29 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
30 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
31 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
32 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
33 * SUCH DAMAGE.
34 */
35
36#include <sys/cdefs.h>
1/*
2 * Device probe and attach routines for the following
3 * Advanced Systems Inc. SCSI controllers:
4 *
5 * ABP[3]940UW - Bus-Master PCI Ultra-Wide (253 CDB)
6 * ABP950UW - Dual Channel Bus-Master PCI Ultra-Wide (253 CDB/Channel)
7 * ABP970UW - Bus-Master PCI Ultra-Wide (253 CDB)
8 * ABP3940U2W - Bus-Master PCI LVD/Ultra2-Wide (253 CDB)

--- 20 unchanged lines hidden (view full) ---

29 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
30 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
31 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
32 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
33 * SUCH DAMAGE.
34 */
35
36#include <sys/cdefs.h>
37__FBSDID("$FreeBSD: head/sys/dev/advansys/adw_pci.c 119690 2003-09-02 17:30:40Z jhb $");
37__FBSDID("$FreeBSD: head/sys/dev/advansys/adw_pci.c 127135 2004-03-17 17:50:55Z njl $");
38
39#include <sys/param.h>
40#include <sys/systm.h>
41#include <sys/kernel.h>
42#include <sys/module.h>
43#include <sys/lock.h>
44#include <sys/mutex.h>
45#include <sys/bus.h>

--- 166 unchanged lines hidden (view full) ---

212 return (ENXIO);
213 regs = NULL;
214 regs_type = 0;
215 regs_id = 0;
216#ifdef ADW_ALLOW_MEMIO
217 if ((command & PCIM_CMD_MEMEN) != 0) {
218 regs_type = SYS_RES_MEMORY;
219 regs_id = ADW_PCI_MEMBASE;
38
39#include <sys/param.h>
40#include <sys/systm.h>
41#include <sys/kernel.h>
42#include <sys/module.h>
43#include <sys/lock.h>
44#include <sys/mutex.h>
45#include <sys/bus.h>

--- 166 unchanged lines hidden (view full) ---

212 return (ENXIO);
213 regs = NULL;
214 regs_type = 0;
215 regs_id = 0;
216#ifdef ADW_ALLOW_MEMIO
217 if ((command & PCIM_CMD_MEMEN) != 0) {
218 regs_type = SYS_RES_MEMORY;
219 regs_id = ADW_PCI_MEMBASE;
220 regs = bus_alloc_resource(dev, regs_type,
221 &regs_id, 0, ~0, 1, RF_ACTIVE);
220 regs = bus_alloc_resource_any(dev, regs_type,
221 &regs_id, RF_ACTIVE);
222 }
223#endif
224 if (regs == NULL && (command & PCIM_CMD_PORTEN) != 0) {
225 regs_type = SYS_RES_IOPORT;
226 regs_id = ADW_PCI_IOBASE;
222 }
223#endif
224 if (regs == NULL && (command & PCIM_CMD_PORTEN) != 0) {
225 regs_type = SYS_RES_IOPORT;
226 regs_id = ADW_PCI_IOBASE;
227 regs = bus_alloc_resource(dev, regs_type,
228 &regs_id, 0, ~0, 1, RF_ACTIVE);
227 regs = bus_alloc_resource_any(dev, regs_type,
228 &regs_id, RF_ACTIVE);
229 }
230
231 if (regs == NULL) {
232 device_printf(dev, "can't allocate register resources\n");
233 return (ENOMEM);
234 }
235
236 adw = adw_alloc(dev, regs, regs_type, regs_id);

--- 63 unchanged lines hidden (view full) ---

300 */
301 if ((command & PCIM_CMD_PERRESPEN) == 0)
302 adw_lram_write_16(adw, ADW_MC_CONTROL_FLAG,
303 adw_lram_read_16(adw, ADW_MC_CONTROL_FLAG)
304 | ADW_MC_CONTROL_IGN_PERR);
305
306 zero = 0;
307 adw->irq_res_type = SYS_RES_IRQ;
229 }
230
231 if (regs == NULL) {
232 device_printf(dev, "can't allocate register resources\n");
233 return (ENOMEM);
234 }
235
236 adw = adw_alloc(dev, regs, regs_type, regs_id);

--- 63 unchanged lines hidden (view full) ---

300 */
301 if ((command & PCIM_CMD_PERRESPEN) == 0)
302 adw_lram_write_16(adw, ADW_MC_CONTROL_FLAG,
303 adw_lram_read_16(adw, ADW_MC_CONTROL_FLAG)
304 | ADW_MC_CONTROL_IGN_PERR);
305
306 zero = 0;
307 adw->irq_res_type = SYS_RES_IRQ;
308 adw->irq = bus_alloc_resource(dev, adw->irq_res_type, &zero,
309 0, ~0, 1, RF_ACTIVE | RF_SHAREABLE);
308 adw->irq = bus_alloc_resource_any(dev, adw->irq_res_type, &zero,
309 RF_ACTIVE | RF_SHAREABLE);
310 if (adw->irq == NULL) {
311 adw_free(adw);
312 return (ENOMEM);
313 }
314
315 error = adw_attach(adw);
316 if (error != 0)
317 adw_free(adw);

--- 84 unchanged lines hidden ---
310 if (adw->irq == NULL) {
311 adw_free(adw);
312 return (ENOMEM);
313 }
314
315 error = adw_attach(adw);
316 if (error != 0)
317 adw_free(adw);

--- 84 unchanged lines hidden ---