This adds a kernel configuration file for the Nokia N900 smartphone. It
is heavily based on the one for the Beagleboard (as documented first by rhaamo). The kernel boots properly and then asks for the root device. The default partitions for flash memory are based on what's expected on a stock N900 device. ok mrg@, after initial review on port-arm@ a few weeks ago.
This commit is contained in:
parent
7d7f70e66e
commit
e6cca881cf
|
@ -0,0 +1,311 @@
|
|||
#
|
||||
# $NetBSD: N900,v 1.1 2012/12/07 00:02:36 khorben Exp $
|
||||
#
|
||||
# N900 -- Nokia N900 Kernel
|
||||
#
|
||||
|
||||
include "arch/evbarm/conf/std.n900"
|
||||
|
||||
# estimated number of users
|
||||
|
||||
maxusers 32
|
||||
|
||||
# Standard system options
|
||||
|
||||
options RTC_OFFSET=0 # hardware clock is this many mins. west of GMT
|
||||
#options NTP # NTP phase/frequency locked loop
|
||||
|
||||
# CPU options
|
||||
|
||||
options CPU_CORTEXA8
|
||||
options OMAP_3530
|
||||
options PMAPCOUNTERS
|
||||
|
||||
# Architecture options
|
||||
|
||||
# File systems
|
||||
|
||||
file-system FFS # UFS
|
||||
#file-system LFS # log-structured file system
|
||||
file-system MFS # memory file system
|
||||
file-system NFS # Network file system
|
||||
#file-system ADOSFS # AmigaDOS-compatible file system
|
||||
#file-system EXT2FS # second extended file system (linux)
|
||||
#file-system CD9660 # ISO 9660 + Rock Ridge file system
|
||||
file-system MSDOSFS # MS-DOS file system
|
||||
#file-system FDESC # /dev/fd
|
||||
#file-system KERNFS # /kern
|
||||
#file-system NULLFS # loopback file system
|
||||
#file-system PROCFS # /proc
|
||||
#file-system PUFFS # Userspace file systems (e.g. ntfs-3g & sshfs)
|
||||
#file-system UMAPFS # NULLFS + uid and gid remapping
|
||||
#file-system UNION # union file system
|
||||
file-system TMPFS # memory file system
|
||||
file-system PTYFS # /dev/pts/N support
|
||||
|
||||
# File system options
|
||||
#options QUOTA # legacy UFS quotas
|
||||
#options QUOTA2 # new, in-filesystem UFS quotas
|
||||
#options FFS_EI # FFS Endian Independent support
|
||||
#options NFSSERVER
|
||||
options WAPBL # File system journaling support
|
||||
#options FFS_NO_SNAPSHOT # No FFS snapshot support
|
||||
|
||||
# Networking options
|
||||
|
||||
#options GATEWAY # packet forwarding
|
||||
options INET # IP + ICMP + TCP + UDP
|
||||
options INET6 # IPV6
|
||||
#options IPSEC # IP security
|
||||
#options IPSEC_ESP # IP security (encryption part; define w/ IPSEC)
|
||||
#options IPSEC_NAT_T # IPsec NAT traversal (NAT-T)
|
||||
#options IPSEC_DEBUG # debug for IP security
|
||||
#options MROUTING # IP multicast routing
|
||||
#options PIM # Protocol Independent Multicast
|
||||
#options NS # XNS
|
||||
#options NSIP # XNS tunneling over IP
|
||||
#options ISO,TPIP # OSI
|
||||
#options EON # OSI tunneling over IP
|
||||
#options CCITT,LLC,HDLC # X.25
|
||||
#options NETATALK # AppleTalk networking
|
||||
#options PFIL_HOOKS # pfil(9) packet filter hooks
|
||||
#options PPP_BSDCOMP # BSD-Compress compression support for PPP
|
||||
#options PPP_DEFLATE # Deflate compression support for PPP
|
||||
#options PPP_FILTER # Active filter support for PPP (requires bpf)
|
||||
#options TCP_DEBUG # Record last TCP_NDEBUG packets with SO_DEBUG
|
||||
|
||||
options NFS_BOOT_BOOTP
|
||||
options NFS_BOOT_DHCP
|
||||
#options NFS_BOOT_BOOTSTATIC
|
||||
#options NFS_BOOTSTATIC_MYIP="\"192.168.1.4\""
|
||||
#options NFS_BOOTSTATIC_GWIP="\"192.168.1.1\""
|
||||
#options NFS_BOOTSTATIC_MASK="\"255.255.255.0\""
|
||||
#options NFS_BOOTSTATIC_SERVADDR="\"192.168.1.1\""
|
||||
#options NFS_BOOTSTATIC_SERVER="\"192.168.1.1:/nfs/sdp2430\""
|
||||
|
||||
options NFS_BOOT_RWSIZE=1024
|
||||
|
||||
# Compatibility options
|
||||
|
||||
#options COMPAT_43 # 4.3BSD compatibility.
|
||||
options COMPAT_60 # NetBSD 6.0 compatibility.
|
||||
options COMPAT_50 # NetBSD 5.0 compatibility.
|
||||
options COMPAT_40 # NetBSD 4.0 compatibility.
|
||||
options COMPAT_30 # NetBSD 3.0 compatibility.
|
||||
#options COMPAT_20 # NetBSD 2.0 compatibility.
|
||||
#options COMPAT_16 # NetBSD 1.6 compatibility.
|
||||
#options COMPAT_15 # NetBSD 1.5 compatibility.
|
||||
#options COMPAT_14 # NetBSD 1.4 compatibility.
|
||||
#options COMPAT_13 # NetBSD 1.3 compatibility.
|
||||
#options COMPAT_12 # NetBSD 1.2 compatibility.
|
||||
#options COMPAT_11 # NetBSD 1.1 compatibility.
|
||||
#options COMPAT_10 # NetBSD 1.0 compatibility.
|
||||
#options COMPAT_09 # NetBSD 0.9 compatibility.
|
||||
#options TCP_COMPAT_42 # 4.2BSD TCP/IP bug compat. Not recommended.
|
||||
#options COMPAT_BSDPTY # /dev/[pt]ty?? ptys.
|
||||
|
||||
# Shared memory options
|
||||
|
||||
options SYSVMSG # System V-like message queues
|
||||
options SYSVSEM # System V-like semaphores
|
||||
options SYSVSHM # System V-like memory sharing
|
||||
|
||||
# Device options
|
||||
|
||||
#options MEMORY_DISK_HOOKS # boottime setup of ramdisk
|
||||
#options MEMORY_DISK_ROOT_SIZE=8192 # Size in blocks
|
||||
#options MEMORY_DISK_DYNAMIC
|
||||
#options MINIROOTSIZE=1000 # Size in blocks
|
||||
#options MEMORY_DISK_IS_ROOT # use memory disk as root
|
||||
|
||||
# Miscellaneous kernel options
|
||||
options KTRACE # system call tracing, a la ktrace(1)
|
||||
#options KMEMSTATS # kernel memory statistics
|
||||
#options SCSIVERBOSE # Verbose SCSI errors
|
||||
#options MIIVERBOSE # Verbose MII autoconfuration messages
|
||||
#options DDB_KEYCODE=0x40
|
||||
#options USERCONF # userconf(4) support
|
||||
#options PIPE_SOCKETPAIR # smaller, but slower pipe(2)
|
||||
|
||||
# Development and Debugging options
|
||||
|
||||
#options PERFCTRS # performance counters
|
||||
options DIAGNOSTIC # internally consistency checks
|
||||
#options DEBUG
|
||||
#options PMAP_DEBUG # Enable pmap_debug_level code
|
||||
#options IPKDB # remote kernel debugging
|
||||
#options VERBOSE_INIT_ARM # verbose bootstraping messages
|
||||
options DDB # in-kernel debugger
|
||||
options DDB_ONPANIC=1
|
||||
options DDB_HISTORY_SIZE=100 # Enable history editing in DDB
|
||||
#options KGDB
|
||||
makeoptions DEBUG="-g" # compile full symbol table
|
||||
options SYMTAB_SPACE=530000
|
||||
|
||||
## USB Debugging options
|
||||
options USB_DEBUG
|
||||
options EHCI_DEBUG
|
||||
options OHCI_DEBUG
|
||||
options UHUB_DEBUG
|
||||
|
||||
|
||||
# Valid options for BOOT_ARGS:
|
||||
# single Boot to single user only
|
||||
# kdb Give control to kernel debugger
|
||||
# ask Ask for file name to reboot from
|
||||
# pmapdebug=<n> If PMAP_DEBUG, set pmap_debug_level to <n>
|
||||
# memorydisk=<n> Set memorydisk size to <n> KB
|
||||
# quiet Show aprint_naive output
|
||||
# verbose Show aprint_normal and aprint_verbose output
|
||||
options BOOT_ARGS="\"\""
|
||||
|
||||
config netbsd root on ? type ?
|
||||
|
||||
# The main bus device
|
||||
mainbus0 at root
|
||||
|
||||
# The boot cpu
|
||||
cpu0 at mainbus?
|
||||
|
||||
# Specify the memory size in megabytes.
|
||||
options MEMSIZE=256
|
||||
|
||||
# L3 Interconnect
|
||||
L3i0 at mainbus?
|
||||
|
||||
# OBIO
|
||||
obio0 at mainbus? base 0x48000000 size 0x1000000 # L4 CORE
|
||||
obio1 at mainbus? base 0x48300000 size 0x0040000 # L4 WAKEUP
|
||||
obio2 at mainbus? base 0x49000000 size 0x0100000 # L4 PERIPHERAL
|
||||
#obio3 at mainbus? base 0x54000000 size 0x0800000 # L4 EMUL
|
||||
|
||||
# General Purpose Memory Controller
|
||||
gpmc0 at mainbus? base 0x6e000000
|
||||
|
||||
# SDHC controllers
|
||||
sdhc0 at obio0 addr 0x4809C000 size 0x0400 intr 83
|
||||
#sdhc1 at obio0 addr 0x480B4000 size 0x0400 intr 86
|
||||
#sdhc2 at obio0 addr 0x480AD000 size 0x0400 intr 94
|
||||
sdmmc* at sdhc? # SD/MMC bus
|
||||
ld* at sdmmc?
|
||||
|
||||
|
||||
# NAND controller
|
||||
omapnand0 at gpmc? addr 0x30000000
|
||||
|
||||
# NAND layer
|
||||
nand0 at nandbus?
|
||||
|
||||
# use the bad block table
|
||||
options NAND_BBT
|
||||
|
||||
# Define flash partitions for board
|
||||
flash0 at nand0 offset 0x0000040 size 0x3602000 # MyDocs
|
||||
flash1 at nand0 offset 0x3602040 size 0x0400000 # filesystem
|
||||
flash2 at nand0 offset 0x3a02040 size 0x0180000 # swap
|
||||
|
||||
# Interrupt Controller
|
||||
omapicu0 at obio0 addr 0x48200000 size 0x1000 intrbase 0
|
||||
omapgpio0 at obio1 addr 0x48310000 size 0x0400 intrbase 96 intr 29
|
||||
#omapgpio1 at obio2 addr 0x49050000 size 0x0400 intrbase 128 intr 30
|
||||
#omapgpio2 at obio2 addr 0x49052000 size 0x0400 intrbase 160 intr 31
|
||||
#omapgpio3 at obio2 addr 0x49054000 size 0x0400 intrbase 192 intr 32
|
||||
omapgpio4 at obio2 addr 0x49056000 size 0x0400 intrbase 224 intr 33
|
||||
#omapgpio5 at obio2 addr 0x49058000 size 0x0400 intrbase 256 intr 34
|
||||
|
||||
gpio* at omapgpio?
|
||||
|
||||
# # I2C Controller
|
||||
# omapi2c0 at tipb? addr 0xfffb3800 intr 36 mult 4
|
||||
# iic* at omapi2c?
|
||||
# # omap's own i2c address
|
||||
# options OMAP_I2C_ADDRESS=0xe
|
||||
# # i2c bus clock low and high times in ns
|
||||
# options I2C_LOW_TIME_nSEC=1500
|
||||
# options I2C_HIGH_TIME_nSEC=1000
|
||||
|
||||
# On-board 16550 UARTs
|
||||
com0 at obio2 addr 0x49020000 intr 74 mult 4 # UART3 (console)
|
||||
#options CONSADDR=0x49020000, CONSPEED=38400
|
||||
options CONSADDR=0x49020000, CONSPEED=115200
|
||||
|
||||
# Operating System Timer
|
||||
omapmputmr0 at obio2 addr 0x49032000 intr 38 # GP Timer 2
|
||||
# Statistics Timer
|
||||
omapmputmr1 at obio2 addr 0x49034000 intr 39 # GP Timer 3
|
||||
# Microtime Reference Timer
|
||||
omapmputmr2 at obio2 addr 0x49036000 intr 40 # GP Timer 4
|
||||
options OMAP_MPU_TIMER_CLOCK_FREQ=12000000
|
||||
|
||||
# Watchdog timers
|
||||
#omapwdt32k* at obio2 addr 0x49030000 size 2048 # WDT3
|
||||
#omapwdt32k* at obio1 addr 0x4830c000 size 2048 # WDT1
|
||||
#omapwdt32k* at obio1 addr 0x48314000 size 2048 # WDT2
|
||||
|
||||
# onboard video
|
||||
omapfb* at obio0 addr 0x48050000 size 0x10000
|
||||
|
||||
# make sure the console display is always wsdisplay0
|
||||
wsdisplay0 at wsemuldisplaydev? console 1
|
||||
wsdisplay* at wsemuldisplaydev?
|
||||
|
||||
# various options for wscons - we try to look as much like a standard
|
||||
# sun console as possible
|
||||
options WSEMUL_VT100 # sun terminal emulation
|
||||
options WS_DEFAULT_FG=WSCOL_BLACK
|
||||
options WS_DEFAULT_BG=WSCOL_LIGHT_WHITE
|
||||
options WS_KERNEL_FG=WSCOL_GREEN
|
||||
options WS_KERNEL_BG=WSCOL_LIGHT_WHITE
|
||||
options WSDISPLAY_COMPAT_USL # wsconscfg VT handling
|
||||
options WSDISPLAY_COMPAT_RAWKBD # can get raw scancodes
|
||||
options WSDISPLAY_DEFAULTSCREENS=4
|
||||
options FONT_QVSS8x15
|
||||
#options FONT_GALLANT12x22 # the console font
|
||||
|
||||
pseudo-device wsmux # mouse & keyboard multiplexor
|
||||
pseudo-device wsfont
|
||||
|
||||
# Power, Reset and Clock Management
|
||||
prcm* at obio1 addr 0x48306000 size 0x2000 # PRM Module
|
||||
|
||||
# On-board USB
|
||||
#ehci* at obio0 addr 0x48064800 size 0x0400 intr 77
|
||||
#ohci* at obio0 addr 0x48064400 size 0x0400 intr 76
|
||||
#usb* at ohci?
|
||||
#usb* at ehci?
|
||||
#uhub* at usb?
|
||||
#uhub* at uhub? port ?
|
||||
#umass* at uhub? port ? configuration ? interface ?
|
||||
#wd* at umass?
|
||||
#uhidev* at uhub?
|
||||
#ukbd* at uhidev?
|
||||
#ums* at uhidev?
|
||||
#wskbd* at ukbd?
|
||||
#wsmouse* at ums?
|
||||
|
||||
#axe* at uhub? port ? configuration ? interface ?
|
||||
|
||||
# Hardware clocking and power management
|
||||
|
||||
options HWCLOCK
|
||||
options HWCLOCK_MACHINE="<arch/arm/omap/hwclock_omap1.h>"
|
||||
options OMAP_CK_REF_SPEED=12000000
|
||||
|
||||
# Pseudo-Devices
|
||||
|
||||
# disk/mass storage pseudo-devices
|
||||
#pseudo-device md # memory disk device (ramdisk)
|
||||
#pseudo-device vnd # disk-like interface to files
|
||||
#pseudo-device fss # file system snapshot device
|
||||
#pseudo-device putter # for puffs and pud
|
||||
|
||||
# network pseudo-devices
|
||||
pseudo-device bpfilter # Berkeley packet filter
|
||||
pseudo-device loop # network loopback
|
||||
#pseudo-device kttcp # network loopback
|
||||
|
||||
# miscellaneous pseudo-devices
|
||||
pseudo-device pty # pseudo-terminals
|
||||
#options RND_COM
|
||||
#pseudo-device clockctl # user control of clock subsystem
|
||||
pseudo-device ksyms # /dev/ksyms
|
|
@ -1,4 +1,4 @@
|
|||
$NetBSD: README.evbarm,v 1.4 2012/09/01 11:11:31 matt Exp $
|
||||
$NetBSD: README.evbarm,v 1.5 2012/12/07 00:02:36 khorben Exp $
|
||||
|
||||
config date boards
|
||||
-------------------------------------------------------------------------------
|
||||
|
@ -31,6 +31,7 @@ MINI2440 2012/01/30 FrendlyARM Mini2440 S3C2440 SoC board
|
|||
MMNET_GENERIC 2011/11/04 Propox MMnet1002 board
|
||||
MPCSA_GENERIC 2008/07/03 MPCSA Atmel AT91RM9200 based board
|
||||
MV2120 2011/07/20 HP Media Vault MV2011 Marvell Orion board
|
||||
N900 2012/12/07 Nokia N900 smartphone
|
||||
NAPPI 2002/07/15 Netwise APlication Platform Board
|
||||
NETWALKER 2010/11/13 Sharp NetWalker
|
||||
NSLU2 2006/02/28 Linksys NSLU2 (a.k.a. "Slug")
|
||||
|
|
|
@ -0,0 +1,29 @@
|
|||
# $NetBSD: std.n900,v 1.1 2012/12/07 00:02:36 khorben Exp $
|
||||
#
|
||||
# standard NetBSD/evbarm for N900 options
|
||||
|
||||
machine evbarm arm
|
||||
include "conf/std" # MI standard options
|
||||
|
||||
# Pull in BEAGLEBOARD config definitions.
|
||||
include "arch/evbarm/conf/files.beagle"
|
||||
|
||||
options EXEC_ELF32
|
||||
options EXEC_SCRIPT
|
||||
|
||||
# To support easy transit to ../arch/arm/arm32
|
||||
options __HAVE_CPU_COUNTER
|
||||
options ARM32
|
||||
options CORTEX_PMC
|
||||
options __HAVE_FAST_SOFTINTS # should be in types.h
|
||||
options TPIDRPRW_IS_CURCPU
|
||||
options KERNEL_BASE_EXT=0x80000000
|
||||
options FPU_VFP
|
||||
|
||||
makeoptions LOADADDRESS="0x80300000"
|
||||
makeoptions BOARDTYPE="n900"
|
||||
makeoptions BOARDMKFRAG="${THISARM}/conf/mk.beagle"
|
||||
makeoptions CPPFLAGS+="-I$S/../../../include"
|
||||
|
||||
options ARM_INTR_IMPL="<arch/arm/omap/omap2_intr.h>"
|
||||
options ARM_GENERIC_TODR
|
Loading…
Reference in New Issue