blob: ac372eaadfcea2ddf03d8f6387b18009df188f5e (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
|
#
# $FreeBSD$
#
# The Broadcom Sentry5 series of processors and boards is very commonly
# used in COTS hardware including the Netgear WGT634U.
#
# Some tweaks are needed for use with this platform:
#
# * CFE firmware's ELF loader expects an ELF kernel which is linked so as
# not to contain offsets in PT_LOAD which point behind the actual offset
# of that PT header. FreeBSD normally links the first PT_LOAD header to
# begin at offset 0.
#
# * Broadcom's support package for the internal bus, the Sonics
# SiliconBackplane, needs to be integrated to detect and probe hardware
# correctly.
#
# * The clock needs to be calibrated correctly, so that DELAY() may work.
# One problem with this is that the low-level printf() routine calls DELAY(),
# which currently causes divide-by-zero trap
#
# * The Broadcom CPUs have no FPU. Attempting to detect one by reading CP1's
# status register causes an unhandled boot-time exception. An FPU emulator
# will be necessary to support multi-user boot.
#
machine mips
ident SENTRY5
cpu CPU_MIPS4KC
options CPU_NOFPU
options ISA_MIPS32
options CPU_SENTRY5 # XXX should this be a
# sub-cpu option?
# XXX only siba should be hardwired for now; we will use
# bus enumeration there
files "../mips32/sentry5/files.sentry5"
hints "SENTRY5.hints"
# sentry5 normally ships with cfe firmware; use the console for now
options CFE
options CFE_CONSOLE
options ALT_BREAK_TO_DEBUGGER
# cfe loader expects kernel at 0x80001000 for mips32 w/o backwards
# offsets in the linked elf image (see ldscript hack)
# XXX can we conditionalize the linker stuff on options CFE?
options KERNVIRTADDR=0x80001000
#makeoptions ARCH_FLAGS=-march=mips32
makeoptions MIPS_LITTLE_ENDIAN=defined
makeoptions DEBUG=-g #Build kernel with gdb(1) debug symbols
makeoptions MODULES_OVERRIDE=""
options DDB
options KDB
options SCHED_4BSD #4BSD scheduler
options INET #InterNETworking
options NFSCLIENT #Network Filesystem Client
options NFS_ROOT #NFS usable as /, requires NFSCLIENT
options PSEUDOFS #Pseudo-filesystem framework
options _KPOSIX_PRIORITY_SCHEDULING #Posix P1003_1B real-time extensions
# Debugging for use in -current
options INVARIANTS
options INVARIANT_SUPPORT
#options BUS_DEBUG
#makeoptions BUS_DEBUG
device siba # Sonics SiliconBackplane
device pci # siba_pcib
device bfe # XXX will build both pci and siba
device miibus # attachments
# pci devices
# notyet:
#device ath # in pci slot
#device ath_hal # in pci slot
device usb # USB Bus (required)
device uhci # UHCI PCI->USB interface
device ehci # EHCI PCI->USB interface (USB 2.0)
# need to teach the code to ignore the bridge....
# XXX notyet; need to be auto probed children of siba_cc.
#device uart
#device uart_ns8250
device loop
device ether
device md
device mem
|