diff options
author | jchandra <jchandra@FreeBSD.org> | 2011-09-05 10:45:29 +0000 |
---|---|---|
committer | jchandra <jchandra@FreeBSD.org> | 2011-09-05 10:45:29 +0000 |
commit | 566ec163bd941bb5c3387c736651a924e9048110 (patch) | |
tree | 7989173ba2dfac9cf472373f9095dd74f8688618 /sys/mips/nlm/mpreset.S | |
parent | cb24e9343dfdd2c90611cefacb0016af3e769349 (diff) | |
download | FreeBSD-src-566ec163bd941bb5c3387c736651a924e9048110.zip FreeBSD-src-566ec163bd941bb5c3387c736651a924e9048110.tar.gz |
MIPS XLP platform code update.
* Update the hardware access register definitions and functions to bring
them in line with other Netlogic software.
* Update the platform bus to use PCI even for on-chip devices. Add a dummy
PCI driver to ignore on-chip devices which do not need driver.
* Provide memory and IRQ resource allocation code for on-chip devices
which cannot get it from PCI config.
* add support for on-chip PCI and USB interfaces.
* update conf files, enable pci and retain old MAXCPU until we can support
>32 cpus.
Approved by: re(kib), jmallett
Diffstat (limited to 'sys/mips/nlm/mpreset.S')
-rw-r--r-- | sys/mips/nlm/mpreset.S | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/sys/mips/nlm/mpreset.S b/sys/mips/nlm/mpreset.S index c56bd9f..95b2440 100644 --- a/sys/mips/nlm/mpreset.S +++ b/sys/mips/nlm/mpreset.S @@ -25,8 +25,9 @@ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF * THE POSSIBILITY OF SUCH DAMAGE. * + * NETLOGIC_BSD * $FreeBSD$ - * NETLOGIC_BSD */ + */ #include <machine/asm.h> #include <machine/cpu.h> @@ -35,6 +36,8 @@ #include <mips/nlm/hal/sys.h> #include <mips/nlm/hal/cpucontrol.h> +#define SYS_REG_KSEG1(node, reg) (0xa0000000 + XLP_DEFAULT_IO_BASE + \ + XLP_IO_SYS_OFFSET(node) + XLP_IO_PCI_HDRSZ + (reg) * 4) #include "assym.s" .text @@ -59,7 +62,7 @@ VECTOR(XLPResetEntry, unknown) nor t0, t0, zero /* mask with core id bit clear */ /* clear CPU non-coherent bit */ - li t2, XLP_DEFAULT_IO_BASE_KSEG1 + XLP_IO_SYS_OFFSET(0) + XLP_SYS_CPU_NONCOHERENT_MODE_REG * 4 + li t2, SYS_REG_KSEG1(0, SYS_CPU_NONCOHERENT_MODE) lw t1, 0(t2) and t1, t1, t0 sw t1, 0(t2) @@ -109,7 +112,7 @@ LEAF(xlp_enable_threads) sd gp, 80(sp) sd ra, 88(sp) /* Use register number to work in o32 and n32 */ - li $9, ((XLP_CPU_BLOCKID_MAP << 8) | XLP_BLKID_MAP_THREADMODE) + li $9, ((CPU_BLOCKID_MAP << 8) | MAP_THREADMODE) move $8, a0 sync .word 0x71280019 /* mtcr t0, t1*/ |