PERFORCE change 211334 for review
Robert Watson
rwatson at FreeBSD.org
Fri May 18 16:07:48 UTC 2012
http://p4web.freebsd.org/@@211334?ac=10
Change 211334 by rwatson at rwatson_svr_ctsrd_mipsbuild on 2012/05/18 16:07:29
Integrate the CheriBSD branch to pick up the last few week of work
on BeriBSD: syscons text console, new video and touch screen
drivers, MIPS fixes, support for multi-user mode, Avalon generic
driver, and much general fixery to use FreeBSD on BERI MIPS.
Affected files ...
.. //depot/projects/ctsrd/cheribsd/src/etc/etc.mips/ttys#2 integrate
.. //depot/projects/ctsrd/cheribsd/src/sys/conf/NOTES#2 integrate
.. //depot/projects/ctsrd/cheribsd/src/sys/conf/files.mips#2 integrate
.. //depot/projects/ctsrd/cheribsd/src/sys/conf/options#2 integrate
.. //depot/projects/ctsrd/cheribsd/src/sys/conf/options.mips#2 integrate
.. //depot/projects/ctsrd/cheribsd/src/sys/dev/altera/avgen/altera_avgen.c#1 branch
.. //depot/projects/ctsrd/cheribsd/src/sys/dev/altera/avgen/altera_avgen.h#1 branch
.. //depot/projects/ctsrd/cheribsd/src/sys/dev/altera/jtag_uart/altera_jtag_uart.c#2 integrate
.. //depot/projects/ctsrd/cheribsd/src/sys/dev/fb/fbreg.h#2 integrate
.. //depot/projects/ctsrd/cheribsd/src/sys/dev/gxemul/cons/gxemul_cons.c#1 branch
.. //depot/projects/ctsrd/cheribsd/src/sys/dev/syscons/schistory.c#2 integrate
.. //depot/projects/ctsrd/cheribsd/src/sys/dev/syscons/scterm-teken.c#2 integrate
.. //depot/projects/ctsrd/cheribsd/src/sys/dev/syscons/syscons.c#2 integrate
.. //depot/projects/ctsrd/cheribsd/src/sys/dev/terasic/mtl/terasic_mtl.c#1 branch
.. //depot/projects/ctsrd/cheribsd/src/sys/dev/terasic/mtl/terasic_mtl.h#1 branch
.. //depot/projects/ctsrd/cheribsd/src/sys/dev/terasic/mtl/terasic_mtl_nexus.c#1 branch
.. //depot/projects/ctsrd/cheribsd/src/sys/dev/terasic/mtl/terasic_mtl_pixel.c#1 branch
.. //depot/projects/ctsrd/cheribsd/src/sys/dev/terasic/mtl/terasic_mtl_reg.c#1 branch
.. //depot/projects/ctsrd/cheribsd/src/sys/dev/terasic/mtl/terasic_mtl_syscons.c#1 branch
.. //depot/projects/ctsrd/cheribsd/src/sys/dev/terasic/mtl/terasic_mtl_text.c#1 branch
.. //depot/projects/ctsrd/cheribsd/src/sys/dev/terasic/mtllcd/terasic_mtllcd.c#2 delete
.. //depot/projects/ctsrd/cheribsd/src/sys/dev/terasic/mtllcd/terasic_mtllcd.h#2 delete
.. //depot/projects/ctsrd/cheribsd/src/sys/dev/terasic/mtllcd/terasic_mtllcd_nexus.c#2 delete
.. //depot/projects/ctsrd/cheribsd/src/sys/kern/init_main.c#2 integrate
.. //depot/projects/ctsrd/cheribsd/src/sys/mips/beri/files.beri#2 integrate
.. //depot/projects/ctsrd/cheribsd/src/sys/mips/beri/gxemul_cons.c#2 delete
.. //depot/projects/ctsrd/cheribsd/src/sys/mips/beri/std.beri#2 integrate
.. //depot/projects/ctsrd/cheribsd/src/sys/mips/conf/BERI.hints#2 integrate
.. //depot/projects/ctsrd/cheribsd/src/sys/mips/conf/BERI_MDROOT#2 integrate
.. //depot/projects/ctsrd/cheribsd/src/sys/mips/conf/BERI_SDROOT#2 integrate
.. //depot/projects/ctsrd/cheribsd/src/sys/mips/conf/GXEMUL#2 integrate
.. //depot/projects/ctsrd/cheribsd/src/sys/mips/conf/GXEMUL.hints#1 branch
.. //depot/projects/ctsrd/cheribsd/src/sys/mips/gxemul/files.gxemul#1 branch
.. //depot/projects/ctsrd/cheribsd/src/sys/mips/gxemul/gxemul_machdep.c#1 branch
.. //depot/projects/ctsrd/cheribsd/src/sys/mips/gxemul/std.gxemul#1 branch
.. //depot/projects/ctsrd/cheribsd/src/sys/mips/include/sc_machdep.h#1 branch
.. //depot/projects/ctsrd/cheribsd/src/sys/mips/mips/bus_space_generic.c#2 integrate
.. //depot/projects/ctsrd/cheribsd/src/sys/mips/mips/sc_machdep.c#1 branch
Differences ...
==== //depot/projects/ctsrd/cheribsd/src/etc/etc.mips/ttys#2 (text+ko) ====
@@ -28,6 +28,17 @@
# If console is marked "insecure", then init will ask for the root password
# when going to single-user mode.
console none unknown off secure
+#
+ttyv0 "/usr/libexec/getty Pc" xterm on secure
+# Virtual terminals
+ttyv1 "/usr/libexec/getty Pc" xterm off secure
+ttyv2 "/usr/libexec/getty Pc" xterm off secure
+ttyv3 "/usr/libexec/getty Pc" xterm off secure
+ttyv4 "/usr/libexec/getty Pc" xterm off secure
+ttyv5 "/usr/libexec/getty Pc" xterm off secure
+ttyv6 "/usr/libexec/getty Pc" xterm off secure
+ttyv7 "/usr/libexec/getty Pc" xterm off secure
+ttyv8 "/usr/local/bin/xdm -nodaemon" xterm off secure
# Serial terminals
# The 'dialup' keyword identifies dialin lines to login, fingerd etc.
ttyu0 "/usr/libexec/getty std.115200" dialup on secure
==== //depot/projects/ctsrd/cheribsd/src/sys/conf/NOTES#2 (text+ko) ====
@@ -139,6 +139,12 @@
#
options INCLUDE_CONFIG_FILE # Include this file in kernel
+#
+# Compile-time defaults for various boot parameters
+#
+options BOOTVERBOSE=1
+options BOOTHOWTO=RB_MULTIPLE
+
options GEOM_AES # Don't use, use GEOM_BDE
options GEOM_BDE # Disk encryption.
options GEOM_BSD # BSD disklabels
==== //depot/projects/ctsrd/cheribsd/src/sys/conf/files.mips#2 (text+ko) ====
@@ -126,3 +126,9 @@
dev/fdt/fdt_mips.c optional fdt
+dev/fb/fb.c optional sc
+dev/kbd/kbd.c optional sc
+dev/syscons/scgfbrndr.c optional sc
+dev/syscons/scterm-teken.c optional sc
+dev/syscons/scvtb.c optional sc
+mips/mips/sc_machdep.c optional sc
==== //depot/projects/ctsrd/cheribsd/src/sys/conf/options#2 (text+ko) ====
@@ -66,6 +66,8 @@
ADAPTIVE_LOCKMGRS
ALQ
AUDIT opt_global.h
+BOOTHOWTO opt_global.h
+BOOTVERBOSE opt_global.h
CAPABILITIES opt_capsicum.h
CAPABILITY_MODE opt_capsicum.h
CODA_COMPAT_5 opt_coda.h
==== //depot/projects/ctsrd/cheribsd/src/sys/conf/options.mips#2 (text+ko) ====
@@ -55,6 +55,10 @@
CFE_ENV opt_global.h
CFE_ENV_SIZE opt_global.h
+GFB_DEBUG opt_gfb.h
+GFB_NO_FONT_LOADING opt_gfb.h
+GFB_NO_MODE_CHANGE opt_gfb.h
+
NOFPU opt_global.h
TICK_USE_YAMON_FREQ opt_global.h
==== //depot/projects/ctsrd/cheribsd/src/sys/dev/altera/jtag_uart/altera_jtag_uart.c#2 (text+ko) ====
@@ -37,6 +37,7 @@
#include <sys/kdb.h>
#include <sys/systm.h>
#include <sys/kernel.h>
+#include <sys/reboot.h>
#include <sys/tty.h>
#include <ddb/ddb.h>
@@ -297,7 +298,7 @@
{
sprintf(cp->cn_name, "ttyu0");
- cp->cn_pri = CN_NORMAL;
+ cp->cn_pri = (boothowto & RB_SERIAL) ? CN_REMOTE : CN_NORMAL;
}
static void
==== //depot/projects/ctsrd/cheribsd/src/sys/dev/fb/fbreg.h#2 (text+ko) ====
@@ -84,6 +84,29 @@
u_int16_t ofwfb_readw(u_int16_t *addr);
void ofwfb_writew(u_int16_t *addr, u_int16_t val);
+#elif defined(__mips__)
+
+/*
+ * Use amd64/i386-like settings under the assumption that MIPS-based display
+ * drivers will have to add a level of indirection between a syscons-managed
+ * frame buffer and the actual video hardware. We are forced to do this
+ * because syscons doesn't carry around required busspace handles and tags to
+ * use here. This is only really a problem for true VGA devices hooked up to
+ * MIPS, as others will be performing a translation anyway.
+ */
+#define bcopy_io(s, d, c) memcpy((void *)(d), (void *)(s), (c))
+#define bcopy_toio(s, d, c) memcpy((void *)(d), (void *)(s), (c))
+#define bcopy_fromio(s, d, c) memcpy((void *)(d), (void *)(s), (c))
+#define bzero_io(d, c) memset((void *)(d), 0, (c))
+#define fill_io(p, d, c) memset((void *)(d), (p), (c))
+static __inline void
+fillw(int val, uint16_t *buf, size_t size)
+{
+ while (size--)
+ *buf++ = val;
+}
+#define fillw_io(p, d, c) fillw((p), (void *)(d), (c))
+
#else /* !__i386__ && !__amd64__ && !__ia64__ && !__sparc64__ && !__powerpc__ */
#define bcopy_io(s, d, c) memcpy_io((d), (s), (c))
#define bcopy_toio(s, d, c) memcpy_toio((d), (void *)(s), (c))
==== //depot/projects/ctsrd/cheribsd/src/sys/dev/syscons/schistory.c#2 (text+ko) ====
@@ -42,7 +42,7 @@
#include <sys/kernel.h>
#include <sys/malloc.h>
-#if defined(__sparc64__) || defined(__powerpc__)
+#if defined(__sparc64__) || defined(__powerpc__) || defined(__mips__)
#include <machine/sc_machdep.h>
#else
#include <machine/pc/display.h>
==== //depot/projects/ctsrd/cheribsd/src/sys/dev/syscons/scterm-teken.c#2 (text+ko) ====
@@ -40,7 +40,7 @@
#include <sys/consio.h>
#include <sys/kbio.h>
-#if defined(__sparc64__) || defined(__powerpc__)
+#if defined(__sparc64__) || defined(__powerpc__) || defined(__mips__)
#include <machine/sc_machdep.h>
#else
#include <machine/pc/display.h>
==== //depot/projects/ctsrd/cheribsd/src/sys/dev/syscons/syscons.c#2 (text+ko) ====
@@ -62,7 +62,7 @@
#include <sys/power.h>
#include <machine/clock.h>
-#if defined(__sparc64__) || defined(__powerpc__)
+#if defined(__sparc64__) || defined(__powerpc__) || defined(__mips__)
#include <machine/sc_machdep.h>
#else
#include <machine/pc/display.h>
==== //depot/projects/ctsrd/cheribsd/src/sys/kern/init_main.c#2 (text+ko) ====
@@ -101,10 +101,17 @@
struct vmspace vmspace0;
struct proc *initproc;
-int boothowto = 0; /* initialized so that it can be patched */
+#ifndef BOOTHOWTO
+#define BOOTHOWTO 0
+#endif
+int boothowto = BOOTHOWTO; /* initialized so that it can be patched */
SYSCTL_INT(_debug, OID_AUTO, boothowto, CTLFLAG_RD, &boothowto, 0,
"Boot control flags, passed from loader");
-int bootverbose;
+
+#ifndef BOOTVERBOSE
+#define BOOTVERBOSE 0
+#endif
+int bootverbose = BOOTVERBOSE;
SYSCTL_INT(_debug, OID_AUTO, bootverbose, CTLFLAG_RW, &bootverbose, 0,
"Control the output of verbose kernel messages");
==== //depot/projects/ctsrd/cheribsd/src/sys/mips/beri/files.beri#2 (text+ko) ====
@@ -1,4 +1,5 @@
# $FreeBSD$
+dev/altera/avgen/altera_avgen.c optional altera_avgen
dev/altera/jtag_uart/altera_jtag_uart.c optional altera_jtag_uart
dev/altera/sdcard/altera_sdcard.c optional altera_sdcard
dev/altera/sdcard/altera_sdcard_disk.c optional altera_sdcard
@@ -6,9 +7,12 @@
dev/altera/sdcard/altera_sdcard_nexus.c optional altera_sdcard
dev/terasic/de4led/terasic_de4led.c optional terasic_de4led
dev/terasic/de4led/terasic_de4led_nexus.c optional terasic_de4led
-dev/terasic/mtllcd/terasic_mtllcd.c optional terasic_mtllcd
-dev/terasic/mtllcd/terasic_mtllcd_nexus.c optional terasic_mtllcd
+dev/terasic/mtl/terasic_mtl.c optional terasic_mtl
+dev/terasic/mtl/terasic_mtl_nexus.c optional terasic_mtl
+dev/terasic/mtl/terasic_mtl_pixel.c optional terasic_mtl
+dev/terasic/mtl/terasic_mtl_reg.c optional terasic_mtl
+dev/terasic/mtl/terasic_mtl_syscons.c optional terasic_mtl
+dev/terasic/mtl/terasic_mtl_text.c optional terasic_mtl
mips/beri/beri_machdep.c standard
-mips/beri/gxemul_cons.c optional gxemul_cons
mips/mips/intr_machdep.c standard
mips/mips/tick.c standard
==== //depot/projects/ctsrd/cheribsd/src/sys/mips/beri/std.beri#2 (text+ko) ====
==== //depot/projects/ctsrd/cheribsd/src/sys/mips/conf/BERI.hints#2 (text+ko) ====
@@ -24,6 +24,21 @@
#
# Terasic Multi-touch LCD (MTL), an optional feature in DE-4 configurations
#
-hint.terasic_mtllcd.0.at="nexus0"
-hint.terasic_mtllcd.0.maddr=0x7f800000
-hint.terasic_mtllcd.0.msize=0x800000
+hint.terasic_mtl.0.at="nexus0"
+hint.terasic_mtl.0.reg_maddr=0x70400000
+hint.terasic_mtl.0.reg_msize=0x1000
+hint.terasic_mtl.0.pixel_maddr=0x70000000
+hint.terasic_mtl.0.pixel_msize=0x177000
+hint.terasic_mtl.0.text_maddr=0x70177000
+hint.terasic_mtl.0.text_msize=0x2000
+
+#
+# Expose the DE4 flash via an Avalon "generic" device.
+#
+hint.altera_avgen.0.at="nexus0"
+hint.altera_avgen.0.maddr=0x74000000
+hint.altera_avgen.0.msize=0x4000000
+hint.altera_avgen.0.width=2
+hint.altera_avgen.0.fileio="rw"
+hint.altera_avgen.0.mmapio="rwx"
+hint.altera_avgen.0.devname="de4flash"
==== //depot/projects/ctsrd/cheribsd/src/sys/mips/conf/BERI_MDROOT#2 (text+ko) ====
@@ -33,6 +33,11 @@
options FFS #Berkeley Fast Filesystem
+options INET
+options INET6
+options NFSCL
+options NFS_ROOT
+
# Debugging for use in -current
#options DEADLKRES #Enable the deadlock resolver
options INVARIANTS #Enable calls of extra sanity checking
@@ -49,11 +54,15 @@
makeoptions MFS_IMAGE=/local/scratch/rnw24/mdroot.img
options ROOTDEVNAME=\"ufs:md0\"
+device altera_avgen
device altera_jtag_uart
device altera_sdcard
device terasic_de4led
-device terasic_mtllcd
+device terasic_mtl
device md
+device ether
device loop
device random
+device sc
+device snp
==== //depot/projects/ctsrd/cheribsd/src/sys/mips/conf/BERI_SDROOT#2 (text+ko) ====
@@ -32,6 +32,11 @@
options FFS #Berkeley Fast Filesystem
+options INET
+options INET6
+options NFSCL
+options NFS_ROOT
+
# Debugging for use in -current
#options DEADLKRES #Enable the deadlock resolver
options INVARIANTS #Enable calls of extra sanity checking
@@ -41,11 +46,15 @@
options ROOTDEVNAME=\"ufs:altera_sdcard0\"
+device altera_avgen
device altera_jtag_uart
device altera_sdcard
device terasic_de4led
-device terasic_mtllcd
+device terasic_mtl
device md
+device ether
device loop
device random
+device sc
+device snp
==== //depot/projects/ctsrd/cheribsd/src/sys/mips/conf/GXEMUL#2 (text+ko) ====
@@ -1,5 +1,52 @@
-include BERI
-ident GXEMUL
+#
+# GXEMUL "oldtestmips" sample kernel configuration.
+#
+# $FreeBSD$
+#
+
+ident GXEMUL
+
+machine mips mips64eb
+cpu CPU_MIPS4KC
+
+options HZ=100
+
+makeoptions ARCH_FLAGS="-march=mips64 -mabi=64"
+
+makeoptions KERNLOADADDR=0xffffffff80100000
+
+include "../gxemul/std.gxemul"
+
+hints "GXEMUL.hints" #Default places to look for devices.
+
+makeoptions DEBUG=-g #Build kernel with gdb(1) debug symbols
+
+makeoptions MODULES_OVERRIDE=""
+
+options DDB
+options KDB
+
+options SCHED_ULE
+
+options FFS #Berkeley Fast Filesystem
+
+# Debugging for use in -current
+#options DEADLKRES #Enable the deadlock resolver
+options INVARIANTS #Enable calls of extra sanity checking
+options INVARIANT_SUPPORT #Extra sanity checks of internal structures, required by INVARIANTS
+#options WITNESS #Enable checks to detect deadlocks and cycles
+#options WITNESS_SKIPSPIN #Don't run witness on spinlocks for speed
+
+#
+# This kernel configuration uses an embedded 8MB memory root file system.
+# Adjust the following path based on local requirements.
+#
+options MD_ROOT # MD is a potential root device
+options MD_ROOT_SIZE=8192
+#makeoptions MFS_IMAGE=/local/scratch/rnw24/mdroot.img
+options ROOTDEVNAME=\"ufs:md0\"
-nodevice altera_jtag_uart
device gxemul_cons
+device md
+device loop
+device random
==== //depot/projects/ctsrd/cheribsd/src/sys/mips/mips/bus_space_generic.c#2 (text+ko) ====
@@ -99,8 +99,8 @@
generic_bs_subregion,
/* allocation/deallocation */
- NULL,
- NULL,
+ generic_bs_alloc,
+ generic_bs_free,
/* barrier */
generic_bs_barrier,
@@ -109,91 +109,91 @@
generic_bs_r_1,
generic_bs_r_2,
generic_bs_r_4,
- NULL,
+ generic_bs_r_8,
/* read multiple */
generic_bs_rm_1,
generic_bs_rm_2,
generic_bs_rm_4,
- NULL,
+ generic_bs_rm_8,
/* read region */
generic_bs_rr_1,
generic_bs_rr_2,
generic_bs_rr_4,
- NULL,
+ generic_bs_rr_8,
/* write (single) */
generic_bs_w_1,
generic_bs_w_2,
generic_bs_w_4,
- NULL,
+ generic_bs_w_8,
/* write multiple */
generic_bs_wm_1,
generic_bs_wm_2,
generic_bs_wm_4,
- NULL,
+ generic_bs_wm_8,
/* write region */
generic_bs_wr_1,
generic_bs_wr_2,
generic_bs_wr_4,
- NULL,
+ generic_bs_wr_8,
/* set multiple */
- NULL,
- NULL,
- NULL,
- NULL,
+ generic_bs_sm_1,
+ generic_bs_sm_2,
+ generic_bs_sm_4,
+ generic_bs_sm_8,
/* set region */
generic_bs_sr_1,
generic_bs_sr_2,
generic_bs_sr_4,
- NULL,
+ generic_bs_sr_8,
/* copy */
generic_bs_c_1,
generic_bs_c_2,
generic_bs_c_4,
- NULL,
+ generic_bs_c_8,
/* read (single) stream */
generic_bs_r_1,
generic_bs_r_2,
generic_bs_r_4,
- NULL,
+ generic_bs_r_8,
/* read multiple stream */
generic_bs_rm_1,
generic_bs_rm_2,
generic_bs_rm_4,
- NULL,
+ generic_bs_rm_8,
/* read region stream */
generic_bs_rr_1,
generic_bs_rr_2,
generic_bs_rr_4,
- NULL,
+ generic_bs_rr_8,
/* write (single) stream */
generic_bs_w_1,
generic_bs_w_2,
generic_bs_w_4,
- NULL,
+ generic_bs_w_8,
/* write multiple stream */
generic_bs_wm_1,
generic_bs_wm_2,
generic_bs_wm_4,
- NULL,
+ generic_bs_wm_8,
/* write region stream */
generic_bs_wr_1,
generic_bs_wr_2,
generic_bs_wr_4,
- NULL,
+ generic_bs_wr_8,
};
/* Ultra-gross kludge */
@@ -254,6 +254,22 @@
return (0);
}
+int
+generic_bs_alloc(void *t, bus_addr_t rstart, bus_addr_t rend,
+ bus_size_t size, bus_size_t alignment, bus_size_t boundary, int flags,
+ bus_addr_t *bpap, bus_space_handle_t *bshp)
+{
+
+ panic("%s: not implemented", __func__);
+}
+
+void
+generic_bs_free(void *t, bus_space_handle_t bsh, bus_size_t size)
+{
+
+ panic("%s: not implemented", __func__);
+}
+
uint8_t
generic_bs_r_1(void *t, bus_space_handle_t handle,
bus_size_t offset)
@@ -278,7 +294,13 @@
return (rd32(handle + offset));
}
+uint64_t
+generic_bs_r_8(void *t, bus_space_handle_t handle, bus_size_t offset)
+{
+ panic("%s: not implemented", __func__);
+}
+
void
generic_bs_rm_1(void *t, bus_space_handle_t bsh,
bus_size_t offset, uint8_t *addr, size_t count)
@@ -308,6 +330,13 @@
*addr++ = rd32(baddr);
}
+void
+generic_bs_rm_8(void *t, bus_space_handle_t bsh, bus_size_t offset,
+ uint64_t *addr, size_t count)
+{
+
+ panic("%s: not implemented", __func__);
+}
/*
* Read `count' 1, 2, 4, or 8 byte quantities from bus space
@@ -350,6 +379,14 @@
}
}
+void
+generic_bs_rr_8(void *t, bus_space_handle_t bsh, bus_size_t offset,
+ uint64_t *addr, size_t count)
+{
+
+ panic("%s: not implemented", __func__);
+}
+
/*
* Write the 1, 2, 4, or 8 byte value `value' to bus space
* described by tag/handle/offset.
@@ -378,6 +415,14 @@
wr32(bsh + offset, value);
}
+void
+generic_bs_w_8(void *t, bus_space_handle_t bsh, bus_size_t offset,
+ uint64_t value)
+{
+
+ panic("%s: not implemented", __func__);
+}
+
/*
* Write `count' 1, 2, 4, or 8 byte quantities from the buffer
* provided to bus space described by tag/handle/offset.
@@ -412,6 +457,14 @@
wr32(baddr, *addr++);
}
+void
+generic_bs_wm_8(void *t, bus_space_handle_t bsh, bus_size_t offset,
+ const uint64_t *addr, size_t count)
+{
+
+ panic("%s: not implemented", __func__);
+}
+
/*
* Write `count' 1, 2, 4, or 8 byte quantities from the buffer provided
* to bus space described by tag/handle starting at `offset'.
@@ -452,6 +505,14 @@
}
}
+void
+generic_bs_wr_8(void *t, bus_space_handle_t bsh, bus_size_t offset,
+ const uint64_t *addr, size_t count)
+{
+
+ panic("%s: not implemented", __func__);
+}
+
/*
* Write the 1, 2, 4, or 8 byte value `val' to bus space described
* by tag/handle/offset `count' times.
@@ -486,6 +547,14 @@
wr32(addr, value);
}
+void
+generic_bs_sm_8(void *t, bus_space_handle_t bsh, bus_size_t offset,
+ uint64_t value, size_t count)
+{
+
+ panic("%s: not implemented", __func__);
+}
+
/*
* Write `count' 1, 2, 4, or 8 byte value `val' to bus space described
* by tag/handle starting at `offset'.
@@ -520,6 +589,14 @@
wr32(addr, value);
}
+void
+generic_bs_sr_8(void *t, bus_space_handle_t bsh, bus_size_t offset,
+ uint64_t value, size_t count)
+{
+
+ panic("%s: not implemented", __func__);
+}
+
/*
* Copy `count' 1, 2, 4, or 8 byte values from bus space starting
* at tag/bsh1/off1 to bus space starting at tag/bsh2/off2.
@@ -585,6 +662,14 @@
}
void
+generic_bs_c_8(void *t, bus_space_handle_t bsh1, bus_size_t off1,
+ bus_space_handle_t bsh2, bus_size_t off2, size_t count)
+{
+
+ panic("%s: not implemented", __func__);
+}
+
+void
generic_bs_barrier(void *t __unused,
bus_space_handle_t bsh __unused,
bus_size_t offset __unused, bus_size_t len __unused,
More information about the p4-projects
mailing list