summaryrefslogtreecommitdiffstats
path: root/sys/mips/nlm/mpreset.S
diff options
context:
space:
mode:
authorjchandra <jchandra@FreeBSD.org>2011-09-05 10:45:29 +0000
committerjchandra <jchandra@FreeBSD.org>2011-09-05 10:45:29 +0000
commit566ec163bd941bb5c3387c736651a924e9048110 (patch)
tree7989173ba2dfac9cf472373f9095dd74f8688618 /sys/mips/nlm/mpreset.S
parentcb24e9343dfdd2c90611cefacb0016af3e769349 (diff)
downloadFreeBSD-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.S9
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*/
OpenPOWER on IntegriCloud