Module Name: src
Committed By: cliff
Date: Sun Sep 13 07:00:31 UTC 2009
Modified Files:
src/sys/arch/evbmips/rmixl [matt-nb5-mips64]: machdep.c
src/sys/arch/mips/rmi [matt-nb5-mips64]: rmixl_com.c rmixl_obio_space.c
rmixl_obiovar.h rmixlvar.h
Log Message:
improve how some config data are managed
To generate a diff of this commit:
cvs rdiff -u -r1.1.2.1 -r1.1.2.2 src/sys/arch/evbmips/rmixl/machdep.c
cvs rdiff -u -r1.1.2.1 -r1.1.2.2 src/sys/arch/mips/rmi/rmixl_com.c \
src/sys/arch/mips/rmi/rmixl_obio_space.c \
src/sys/arch/mips/rmi/rmixl_obiovar.h src/sys/arch/mips/rmi/rmixlvar.h
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/arch/evbmips/rmixl/machdep.c
diff -u src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.1 src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.2
--- src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.1 Sun Sep 13 03:27:38 2009
+++ src/sys/arch/evbmips/rmixl/machdep.c Sun Sep 13 07:00:30 2009
@@ -1,4 +1,4 @@
-/* $NetBSD: machdep.c,v 1.1.2.1 2009/09/13 03:27:38 cliff Exp $ */
+/* $NetBSD: machdep.c,v 1.1.2.2 2009/09/13 07:00:30 cliff Exp $ */
/*
* Copyright 2001, 2002 Wasabi Systems, Inc.
@@ -112,7 +112,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: machdep.c,v 1.1.2.1 2009/09/13 03:27:38 cliff Exp $");
+__KERNEL_RCSID(0, "$NetBSD: machdep.c,v 1.1.2.2 2009/09/13 07:00:30 cliff Exp $");
#include "opt_ddb.h"
#include "opt_com.h"
@@ -264,7 +264,7 @@
physmem = btoc(memsize);
rcp = &rmixl_configuration;
- rcp->rc_io_base = rmixlfw_info.io_base;
+ rcp->rc_io_pbase = MIPS_KSEG1_TO_PHYS(rmixlfw_info.io_base);
rmixl_bus_mem_init(&rcp->rc_memt, rcp);
#ifdef NOTYET
rmixl_bus_io_init(&rcp->rc_iot, rcp);
@@ -392,7 +392,7 @@
goto found;
}
- rmixl_putchar_init(rmixlfw_info.io_base);
+ rmixl_putchar_init(MIPS_KSEG1_TO_PHYS(rmixlfw_info.io_base));
rmixl_puts("\r\nWARNING: untested psb_version: ");
rmixl_puthex64(rmixlfw_info.psb_version);
rmixl_puts("\r\n");
Index: src/sys/arch/mips/rmi/rmixl_com.c
diff -u src/sys/arch/mips/rmi/rmixl_com.c:1.1.2.1 src/sys/arch/mips/rmi/rmixl_com.c:1.1.2.2
--- src/sys/arch/mips/rmi/rmixl_com.c:1.1.2.1 Sun Sep 13 03:27:38 2009
+++ src/sys/arch/mips/rmi/rmixl_com.c Sun Sep 13 07:00:30 2009
@@ -1,4 +1,4 @@
-/* $Id: rmixl_com.c,v 1.1.2.1 2009/09/13 03:27:38 cliff Exp $ */
+/* $Id: rmixl_com.c,v 1.1.2.2 2009/09/13 07:00:30 cliff Exp $ */
/*-
* Copyright (c) 2006 Urbana-Champaign Independent Media Center.
* Copyright (c) 2006 Garrett D'Amore.
@@ -101,7 +101,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: rmixl_com.c,v 1.1.2.1 2009/09/13 03:27:38 cliff Exp $");
+__KERNEL_RCSID(0, "$NetBSD: rmixl_com.c,v 1.1.2.2 2009/09/13 07:00:30 cliff Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -144,10 +144,9 @@
MIPS_PHYS_TO_KSEG1(RMIXL_IO_DEV_PBASE + RMIXL_IO_DEV_UART_1);
void
-rmixl_putchar_init(uint64_t io_base)
+rmixl_putchar_init(uint64_t io_pbase)
{
- com0addr = (uint32_t *)
- MIPS_PHYS_TO_KSEG1(io_base + RMIXL_IO_DEV_UART_1);
+ com0addr = (uint32_t *)MIPS_PHYS_TO_KSEG1(io_pbase + RMIXL_IO_DEV_UART_1);
}
void
Index: src/sys/arch/mips/rmi/rmixl_obio_space.c
diff -u src/sys/arch/mips/rmi/rmixl_obio_space.c:1.1.2.1 src/sys/arch/mips/rmi/rmixl_obio_space.c:1.1.2.2
--- src/sys/arch/mips/rmi/rmixl_obio_space.c:1.1.2.1 Sun Sep 13 03:27:38 2009
+++ src/sys/arch/mips/rmi/rmixl_obio_space.c Sun Sep 13 07:00:30 2009
@@ -1,4 +1,4 @@
-/* $NetBSD: rmixl_obio_space.c,v 1.1.2.1 2009/09/13 03:27:38 cliff Exp $ */
+/* $NetBSD: rmixl_obio_space.c,v 1.1.2.2 2009/09/13 07:00:30 cliff Exp $ */
/*-
* Copyright (c) 2001 The NetBSD Foundation, Inc.
@@ -34,8 +34,9 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: rmixl_obio_space.c,v 1.1.2.1 2009/09/13 03:27:38 cliff Exp $");
+__KERNEL_RCSID(0, "$NetBSD: rmixl_obio_space.c,v 1.1.2.2 2009/09/13 07:00:30 cliff Exp $");
+#include <sys/types.h>
#include <sys/param.h>
#include <machine/bus.h>
@@ -50,32 +51,34 @@
/* MEM region 1 */
#define CHIP_W1_BUS_START(v) 0
#define CHIP_W1_BUS_END(v) (RMIXL_IO_DEV_SIZE - 1)
-#define CHIP_W1_SYS_START(v) (((struct rmixl_config *)(v))->rc_io_base)
+#define CHIP_W1_SYS_START(v) (((struct rmixl_config *)(v))->rc_io_pbase)
#define CHIP_W1_SYS_END(v) (CHIP_W1_SYS_START(v) + RMIXL_IO_DEV_SIZE - 1)
-struct mips_bus_space rmixl_bus_memt;
-struct mips_bus_dma_tag rmixl_bus_dmat;
-
void
rmixl_obio_bus_init(void)
{
static int done = 0;
+
if (done)
return;
done = 1;
-
- rmixl_bus_mem_init(&rmixl_bus_memt, &rmixl_configuration);
+ rmixl_bus_mem_init(&rmixl_configuration.rc_memt, &rmixl_configuration);
#ifdef NOTYET
- rmixl_dma_init(NULL, &rmixl_bus_dmat);
+ rmixl_dma_init(&rmixl_configuration.rc_pci_dmat);
#endif
}
-/* this primarily exists so we can get to the console... */
bus_space_tag_t
rmixl_obio_get_bus_space_tag(void)
{
- rmixl_obio_bus_init();
- return (bus_space_tag_t)&rmixl_bus_memt;
+ return (bus_space_tag_t)&rmixl_configuration.rc_memt;
}
+bus_addr_t
+rmixl_obio_get_io_pbase(void)
+{
+ return (bus_addr_t)rmixl_configuration.rc_io_pbase;
+}
+
+
#include <mips/mips/bus_space_alignstride_chipdep.c>
Index: src/sys/arch/mips/rmi/rmixl_obiovar.h
diff -u src/sys/arch/mips/rmi/rmixl_obiovar.h:1.1.2.1 src/sys/arch/mips/rmi/rmixl_obiovar.h:1.1.2.2
--- src/sys/arch/mips/rmi/rmixl_obiovar.h:1.1.2.1 Sun Sep 13 03:27:38 2009
+++ src/sys/arch/mips/rmi/rmixl_obiovar.h Sun Sep 13 07:00:30 2009
@@ -1,4 +1,4 @@
-/* $NetBSD: rmixl_obiovar.h,v 1.1.2.1 2009/09/13 03:27:38 cliff Exp $ */
+/* $NetBSD: rmixl_obiovar.h,v 1.1.2.2 2009/09/13 07:00:30 cliff Exp $ */
#ifndef _MIPS_RMIXL_OBIOVAR_H_
#define _MIPS_RMIXL_OBIOVAR_H_
@@ -18,8 +18,8 @@
typedef struct obio_softc {
struct device sc_dev;
bus_dma_tag_t sc_dmat;
- bus_space_tag_t sc_iot;
- bus_space_handle_t sc_ioh;
+ bus_space_tag_t sc_bst;
+ bus_space_handle_t sc_bsh;
bus_addr_t sc_base;
bus_size_t sc_size;
@@ -31,9 +31,6 @@
#endif
} obio_softc_t;
-extern void rmixl_obio_bus_init(void);
-extern bus_space_tag_t rmixl_obio_get_bus_space_tag(void);
-
extern struct mips_bus_space rmixl_bus_mbst;
extern struct mips_bus_dma_tag rmixl_bus_mdt;
Index: src/sys/arch/mips/rmi/rmixlvar.h
diff -u src/sys/arch/mips/rmi/rmixlvar.h:1.1.2.1 src/sys/arch/mips/rmi/rmixlvar.h:1.1.2.2
--- src/sys/arch/mips/rmi/rmixlvar.h:1.1.2.1 Sun Sep 13 03:27:38 2009
+++ src/sys/arch/mips/rmi/rmixlvar.h Sun Sep 13 07:00:30 2009
@@ -1,4 +1,4 @@
-/* $NetBSD: rmixlvar.h,v 1.1.2.1 2009/09/13 03:27:38 cliff Exp $ */
+/* $NetBSD: rmixlvar.h,v 1.1.2.2 2009/09/13 07:00:30 cliff Exp $ */
/*
* Copyright 2002 Wasabi Systems, Inc.
@@ -39,8 +39,7 @@
#include <machine/bus.h>
struct rmixl_config {
- uint64_t rc_io_base;
- struct mips_bus_space rc_iot;
+ uint64_t rc_io_pbase;
struct mips_bus_space rc_memt;
struct mips_bus_dma_tag rc_pci_dmat;
struct mips_pci_chipset rc_pc;
@@ -52,6 +51,9 @@
extern struct rmixl_config rmixl_configuration;
extern void rmixl_bus_mem_init(bus_space_tag_t, void *);
+extern void rmixl_obio_bus_init(void);
+extern bus_space_tag_t rmixl_obio_get_bus_space_tag(void);
+extern bus_addr_t rmixl_obio_get_io_pbase(void);
extern void *rmixl_intr_establish(int, int, int (*)(void *), void *);
extern void rmixl_intr_disestablish(void *);