1178171Simp# 2178171Simp# $FreeBSD$ 3178171Simp# 4178171Simp# The Broadcom Sentry5 series of processors and boards is very commonly 5178171Simp# used in COTS hardware including the Netgear WGT634U. 6178171Simp# 7178171Simp# Some tweaks are needed for use with this platform: 8178171Simp# 9178171Simp# * CFE firmware's ELF loader expects an ELF kernel which is linked so as 10178171Simp# not to contain offsets in PT_LOAD which point behind the actual offset 11178171Simp# of that PT header. FreeBSD normally links the first PT_LOAD header to 12178171Simp# begin at offset 0. 13178171Simp# 14178171Simp# * Broadcom's support package for the internal bus, the Sonics 15178171Simp# SiliconBackplane, needs to be integrated to detect and probe hardware 16178171Simp# correctly. 17178171Simp# 18178171Simp# * The clock needs to be calibrated correctly, so that DELAY() may work. 19178171Simp# One problem with this is that the low-level printf() routine calls DELAY(), 20178171Simp# which currently causes divide-by-zero trap 21178171Simp# 22178171Simp# * The Broadcom CPUs have no FPU. Attempting to detect one by reading CP1's 23178171Simp# status register causes an unhandled boot-time exception. An FPU emulator 24178171Simp# will be necessary to support multi-user boot. 25178171Simp# 26178171Simp 27178171Simpident SENTRY5 28302190Slandonfcpu CPU_MIPS4KC 29302190Slandonfmakeoptions TRAMPLOADADDR=0x807963c0 30178171Simp 31178171Simphints "SENTRY5.hints" 32302190Slandonfinclude "../broadcom/std.broadcom" 33178171Simp 34178171Simp# sentry5 normally ships with cfe firmware; use the console for now 35263301Simpoptions CFE 36263301Simpoptions CFE_CONSOLE 37263301Simpoptions ALT_BREAK_TO_DEBUGGER 38178171Simp 39178171Simpmakeoptions DEBUG=-g #Build kernel with gdb(1) debug symbols 40178171Simpmakeoptions MODULES_OVERRIDE="" 41178171Simp 42263301Simpoptions DDB 43263301Simpoptions KDB 44178171Simp 45263301Simpoptions SCHED_4BSD #4BSD scheduler 46263301Simpoptions INET #InterNETworking 47263301Simpoptions NFSCL #Network Filesystem Client 48263301Simpoptions NFS_ROOT #NFS usable as /, requires NFSCL 49263301Simpoptions PSEUDOFS #Pseudo-filesystem framework 50263301Simpoptions _KPOSIX_PRIORITY_SCHEDULING #Posix P1003_1B real-time extensions 51178171Simp 52178171Simp# Debugging for use in -current 53215270Simp#options DEADLKRES 54263301Simpoptions INVARIANTS 55263301Simpoptions INVARIANT_SUPPORT 56178171Simp 57215270Simp#options BUS_DEBUG 58178171Simp#makeoptions BUS_DEBUG 59178171Simp 60301410Slandonfdevice bhnd 61301410Slandonfdevice siba 62301410Slandonfdevice siba_nexus 63301410Slandonfdevice bhnd_pcib 64301410Slandonfdevice pci # bhnd_pcib 65178171Simp 66215270Simp# device bfe # XXX will build both pci and siba 67215270Simp# device miibus # attachments 68178171Simp 69178171Simp# pci devices 70178171Simp# notyet: 71178171Simp#device ath # in pci slot 72220185Sadrian#device ath_pci # Atheros pci/cardbus glue 73185522Ssam#device ath_hal # pci chip support 74263301Simp#options AH_SUPPORT_AR5416 # enable AR5416 tx/rx descriptors 75178171Simp 76207077Sthompsaoptions USB_DEBUG # enable debug msgs 77178171Simpdevice usb # USB Bus (required) 78178171Simpdevice uhci # UHCI PCI->USB interface 79178171Simpdevice ehci # EHCI PCI->USB interface (USB 2.0) 80178171Simp 81302190Slandonfdevice cfi # parallel flash 82302190Slandonfdevice cfid 83178171Simp 84302190Slandonfdevice uart 85178171Simp 86178171Simpdevice loop 87178171Simpdevice ether 88178171Simpdevice md 89