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 28178171Simp 29178171Simp# XXX only siba should be hardwired for now; we will use 30178171Simp# bus enumeration there 31178171Simphints "SENTRY5.hints" 32216671Snwhitehorninclude "../sentry5/std.sentry5" 33178171Simp 34178171Simp# sentry5 normally ships with cfe firmware; use the console for now 35266331Sianoptions CFE 36266331Sianoptions CFE_CONSOLE 37266331Sianoptions ALT_BREAK_TO_DEBUGGER 38178171Simp 39178171Simpmakeoptions DEBUG=-g #Build kernel with gdb(1) debug symbols 40178171Simpmakeoptions MODULES_OVERRIDE="" 41178171Simp 42266331Sianoptions DDB 43266331Sianoptions KDB 44178171Simp 45266331Sianoptions SCHED_4BSD #4BSD scheduler 46266331Sianoptions INET #InterNETworking 47266331Sianoptions NFSCL #Network Filesystem Client 48266331Sianoptions NFS_ROOT #NFS usable as /, requires NFSCL 49266331Sianoptions PSEUDOFS #Pseudo-filesystem framework 50266331Sianoptions _KPOSIX_PRIORITY_SCHEDULING #Posix P1003_1B real-time extensions 51178171Simp 52178171Simp# Debugging for use in -current 53215270Simp#options DEADLKRES 54266331Sianoptions INVARIANTS 55266331Sianoptions INVARIANT_SUPPORT 56178171Simp 57215270Simp#options BUS_DEBUG 58178171Simp#makeoptions BUS_DEBUG 59178171Simp 60178171Simpdevice siba # Sonics SiliconBackplane 61178171Simpdevice pci # siba_pcib 62178171Simp 63215270Simp# device bfe # XXX will build both pci and siba 64215270Simp# device miibus # attachments 65178171Simp 66178171Simp# pci devices 67178171Simp# notyet: 68178171Simp#device ath # in pci slot 69220185Sadrian#device ath_pci # Atheros pci/cardbus glue 70185522Ssam#device ath_hal # pci chip support 71266331Sian#options AH_SUPPORT_AR5416 # enable AR5416 tx/rx descriptors 72178171Simp 73207077Sthompsaoptions USB_DEBUG # enable debug msgs 74178171Simpdevice usb # USB Bus (required) 75178171Simpdevice uhci # UHCI PCI->USB interface 76178171Simpdevice ehci # EHCI PCI->USB interface (USB 2.0) 77178171Simp 78178171Simp# need to teach the code to ignore the bridge.... 79178171Simp 80178171Simp 81178171Simp# XXX notyet; need to be auto probed children of siba_cc. 82178171Simp#device uart 83178171Simp 84178171Simpdevice loop 85178171Simpdevice ether 86178171Simpdevice md 87