1 1.7 thorpej /* $NetBSD: pci_machdep.c,v 1.7 2020/06/17 06:55:42 thorpej Exp $ */ 2 1.1 rearnsha 3 1.1 rearnsha /*- 4 1.1 rearnsha * Copyright (c) 2001 ARM Ltd 5 1.1 rearnsha * All rights reserved. 6 1.1 rearnsha * 7 1.1 rearnsha * Redistribution and use in source and binary forms, with or without 8 1.1 rearnsha * modification, are permitted provided that the following conditions 9 1.1 rearnsha * are met: 10 1.1 rearnsha * 1. Redistributions of source code must retain the above copyright 11 1.1 rearnsha * notice, this list of conditions and the following disclaimer. 12 1.1 rearnsha * 2. Redistributions in binary form must reproduce the above copyright 13 1.1 rearnsha * notice, this list of conditions and the following disclaimer in the 14 1.1 rearnsha * documentation and/or other materials provided with the distribution. 15 1.1 rearnsha * 3. The name of the company may not be used to endorse or promote 16 1.1 rearnsha * products derived from this software without specific prior written 17 1.1 rearnsha * permission. 18 1.1 rearnsha * 19 1.1 rearnsha * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED 20 1.1 rearnsha * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 21 1.1 rearnsha * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 22 1.1 rearnsha * IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 23 1.1 rearnsha * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 24 1.1 rearnsha * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 25 1.1 rearnsha * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 26 1.1 rearnsha * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 27 1.1 rearnsha * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 28 1.1 rearnsha * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 29 1.1 rearnsha * SUCH DAMAGE. 30 1.1 rearnsha */ 31 1.2 lukem 32 1.2 lukem #include <sys/cdefs.h> 33 1.7 thorpej __KERNEL_RCSID(0, "$NetBSD: pci_machdep.c,v 1.7 2020/06/17 06:55:42 thorpej Exp $"); 34 1.1 rearnsha 35 1.4 matt #include <sys/param.h> 36 1.1 rearnsha #include <sys/types.h> 37 1.1 rearnsha #include <sys/device.h> 38 1.1 rearnsha #include <sys/systm.h> 39 1.4 matt #include <sys/cpu.h> 40 1.1 rearnsha 41 1.1 rearnsha #include <dev/pci/pcivar.h> 42 1.1 rearnsha #include <dev/pci/pciconf.h> 43 1.1 rearnsha 44 1.1 rearnsha #include <evbarm/ifpga/ifpgareg.h> 45 1.6 matt #include <evbarm/ifpga/ifpga_pcivar.h> 46 1.1 rearnsha 47 1.1 rearnsha void 48 1.6 matt ifpga_pci_conf_interrupt(void *v, int bus, int dev, int ipin, int swiz, int *iline) 49 1.1 rearnsha { 50 1.5 matt printf("pci_conf_interrupt(v(%p), bus(%d), dev(%d), ipin(%d), swiz(%d), *iline(%p)\n", v, bus, dev, ipin, swiz, iline); 51 1.1 rearnsha if (dev >= 9) 52 1.1 rearnsha *iline = IFPGA_INTRNUM_PCIINT0 53 1.5 matt + (((dev - 9) + (ipin - 1)) & 3); 54 1.1 rearnsha } 55