- drivers for on-chip ehci and ohci have been added. Ohci works fine, ehci for some reason detects all high speed devices as full speed and hands them over to ohci. No idea why.
- I2C ports work now, including the onboard RTC. You have to hook up your own battery though.
- we're no longer limited to 256MB, all RAM is usable now.
- onboard ethernet is supported by the dme driver.
The RTC is a bit funny - according to the manual there's a Pericom RTC on iic4 addr 0x68 - not on my preproduction board. I've got something that looks like a PCF8563 at addr 0x51, and so do the production boards that I know of. Some pins on one of the expansion connectors seem to be for a battery but I haven't been able to confirm that yet. Either way, since the main connector is supposed to be Raspberry Pi compatible any RTC module for the RPi should Just Work(tm), with the appropriate line added to the kernel config.
Some more work has been done under the hood, like some preparations for SMP support.
Here's the obligatory boot transcript, complete with incomplete drivers and debug spam:
U-Boot SPL 2013.10-rc3-g9329ab16a204 (Jun 26 2014 - 09:43:22) SDRAM H5TQ2G83CFR initialization... done U-Boot 2013.10-rc3-g9329ab16a204 (Jun 26 2014 - 09:43:22) Board: ci20 (Ingenic XBurst JZ4780 SoC) DRAM: 1 GiB NAND: 8192 MiB MMC: jz_mmc msc1: 0 In: eserial3 Out: eserial3 Err: eserial3 Net: dm9000 ci20# dhcp ERROR: resetting DM9000 -> not responding dm9000 i/o: 0xb6000000, id: 0x90000a46 DM9000: running in 8 bit mode MAC: d0:31:10:ff:7e:89 operating at 100M full duplex mode BOOTP broadcast 1 DHCP client bound to address 192.168.0.47 *** Warning: no boot file name; using 'C0A8002F.img' Using dm9000 device TFTP from server 192.168.0.44; our IP address is 192.168.0.47 Filename 'C0A8002F.img'. Load address: 0x88000000 Loading: ################################################################# ############################################## 369.1 KiB/s done Bytes transferred = 1621771 (18bf0b hex) ci20# bootm ## Booting kernel from Legacy Image at 88000000 ... Image Name: evbmips 7.99.18 (CI20) Image Type: MIPS NetBSD Kernel Image (gzip compressed) Data Size: 1621707 Bytes = 1.5 MiB Load Address: 80020000 Entry Point: 80020000 Verifying Checksum ... OK Uncompressing Kernel Image ... OK subcommand not supported ci20# g 80020000 ## Starting application at 0x80020000 ... pmap_steal_memory: seg 0: 0x6bf 0x6bf 0xffff 0xffff Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015 The NetBSD Foundation, Inc. All rights reserved. Copyright (c) 1982, 1986, 1989, 1991, 1993 The Regents of the University of California. All rights reserved. NetBSD 7.99.18 (CI20) #20: Thu Jun 11 13:06:41 EDT 2015 ml@blackbush:/home/build/obj_evbmips32/sys/arch/evbmips/compile/CI20 Ingenic XBurst total memory = 1024 MB avail memory = 997 MB mainbus0 (root) cpu0 at mainbus0: 1200.00MHz (hz cycles = 120000, delay divisor = 12) cpu0: Ingenic XBurst (0x3ee1024f) Rev. 79 with unknown FPC type (0x330000) Rev. 0 cpu0: 32 TLB entries, 16MB max page size cpu0: 32KB/32B 8-way set-associative L1 instruction cache cpu0: 32KB/32B 8-way set-associative write-back L1 data cache com0 at mainbus0: Ingenic UART, working fifo com0: console apbus0 at mainbus0 JZ_CLKGR0 3f587fe0 JZ_CLKGR1 000073e0 JZ_SPCR0 00000000 JZ_SPCR1 00000000 JZ_SRBC 00000002 JZ_OPCR 000015e6 JZ_UHCCDR c0000000 dwctwo0 at apbus0 addr 0x13500000 irq 21: USB OTG controller ohci0 at apbus0 addr 0x134a0000 irq 5: OHCI USB controller ohci0: OHCI version 1.0 usb0 at ohci0: USB revision 1.0 ehci0 at apbus0 addr 0x13490000 irq 20: EHCI USB controller 48352 46418 UHCCDR: c0000000 UHCCDR: 60000017 caplength 10 ehci0: companion controller, 1 port each: ohci0 usb1 at ehci0: USB revision 2.0 dme0 at apbus0 addr 0x16000000: DM9000 Ethernet controller jzgpio at apbus0 addr 0x10010000 not configured jzgpio at apbus0 addr 0x10010100 not configured jzgpio at apbus0 addr 0x10010200 not configured jzgpio at apbus0 addr 0x10010300 not configured jzgpio at apbus0 addr 0x10010400 not configured jzgpio at apbus0 addr 0x10010500 not configured jziic0 at apbus0 addr 0x10050000 irq 60: SMBus controller iic0 at jziic0: I2C bus jziic1 at apbus0 addr 0x10051000 irq 59: SMBus controller iic1 at jziic1: I2C bus jziic2 at apbus0 addr 0x10052000 irq 58: SMBus controller iic2 at jziic2: I2C bus jziic3 at apbus0 addr 0x10053000 irq 57: SMBus controller iic3 at jziic3: I2C bus jziic4 at apbus0 addr 0x10054000 irq 56: SMBus controller iic4 at jziic4: I2C bus pcf8563rtc0 at iic4 addr 0x51: NXP PCF8563 Real-time Clock jzmmc0 at apbus0 addr 0x13450000 irq 37: SD/MMC controller 25227 24176 jzmmc0: going to use 25227 kHz MSC*CDR: 80000000 sdmmc0 at jzmmc0 jzmmc1 at apbus0 addr 0x13460000 irq 36: SD/MMC controller 25227 24176 jzmmc1: going to use 25227 kHz MSC*CDR: 20000018 sdmmc1 at jzmmc1 jzmmc2 at apbus0 addr 0x13470000 irq 35: SD/MMC controller 25227 24176 jzmmc2: going to use 25227 kHz MSC*CDR: 00000000 sdmmc2 at jzmmc2 jzfb at apbus0 addr 0x13050000 not configured JZ_CLKGR0 2c586780 JZ_CLKGR1 000060e0 usb2 at dwctwo0: USB revision 2.0 starting timer interrupt... jzmmc_bus_clock: 400 sh: 6 freq: 394 sdmmc0: couldn't identify card sdmmc0: no functions jzmmc_bus_clock: 0 sh: 7 freq: 197 jzmmc_bus_clock: 400 sh: 6 freq: 394 sdmmc1: couldn't identify card sdmmc1: no functions jzmmc_bus_clock: 0 sh: 7 freq: 197 jzmmc_bus_clock: 400 sh: 6 freq: 394 sdmmc2: couldn't identify card sdmmc2: no functions jzmmc_bus_clock: 0 sh: 7 freq: 197 uhub0 at usb0: Ingenic OHCI root hub, class 9/0, rev 1.00/1.00, addr 1 uhub1 at usb1: Ingenic EHCI root hub, class 9/0, rev 2.00/1.00, addr 1 uhub2 at usb2: Ingenic DWC2 root hub, class 9/0, rev 2.00/1.00, addr 1 PS_LS(1): 00001801 port1: 00001801 port2: 00000000 ehci0: handing over full speed device on port 1 to ohci0 umass0 at uhub2 port 1 configuration 1 interface 0 umass0: Generic Mass Storage Device, rev 2.00/1.05, addr 2 scsibus0 at umass0: 2 targets, 1 lun per target sd0 at scsibus0 target 0 lun 0: disk removable sd0: fabricating a geometry sd0: 15193 MB, 15193 cyl, 64 head, 32 sec, 512 bytes/sect x 31116288 sectors root on sd0a dumps on sd0b sd0: fabricating a geometry /: replaying log to memory kern.module.path=/stand/evbmips/7.99.18/modules pid 1(init): ABI set to O32 (e_flags=0x70001007) Thu Jun 11 07:15:08 GMT 2015 uhub3 at uhub0 port 1: Terminus Technology USB 2.0 Hub [MTT], class 9/0, rev 2.00/1.00, addr 2 Starting root file system check: /dev/rsd0a: file system is journaled; not checking /: replaying log to disk umass1 at uhub3 port 5 configuration 1 interface 0 umass1: LaCie P'9220 Mobile Drive, rev 2.10/0.06, addr 3 scsibus1 at umass1: 2 targets, 1 lun per target sd1 at scsibus1 target 0 lun 0: disk fixed sd1: 465 GB, 16383 cyl, 16 head, 63 sec, 512 bytes/sect x 976773168 sectors swapctl: adding /dev/sd1b as swap device at priority 0 Starting file system checks: /dev/rsd0e: file system is journaled; not checking /dev/rsd0g: file system is journaled; not checking /dev/rsd0f: 1 files, 249856 free (31232 clusters) /dev/rsd1e: file system is journaled; not checking random_seed: /var/db/entropy-file: Not present Setting tty flags. Setting sysctl variables: ddb.onpanic: 1 -> 0 Starting network. Hostname: ci20 IPv6 mode: autoconfigured host Configuring network interfaces: dme0. Adding interface aliases:. add net default: gateway 192.168.0.1 Waiting for DAD to complete for statically configured addresses... /usr: replaying log to disk Building databases: dev, dev, utmp, utmpx. Starting syslogd. Starting rpcbind. Mounting all file systems... /stuff: replaying log to disk /home: replaying log to disk Clearing temporary files. Updating fontconfig cache: done. Checking quotas: done. /etc/rc: WARNING: /etc/exports is not readable. /etc/rc.d/mountd exited with code 1 Setting securelevel: kern.securelevel: 0 -> 1 Starting virecover. Checking for core dump... savecore: no core dump Starting local daemons:. Updating motd. Starting ntpd. Starting sshd. Starting mdnsd. Jun 11 03:23:01 ci20 mdnsd: mDNSResponder (Engineering Build) starting Starting inetd. Starting cron. The following components reported failures: /etc/rc.d/mountd See /var/run/rc.log for more information. Thu Jun 11 03:23:02 EDT 2015 NetBSD/evbmips (ci20) (console) login:
On behalf of the NetBSD project, it is my pleasure to announce the first release candidate of NetBSD 7.0.
Many changes have been made since 6.0. Here are a few highlights:
- Greatly improved support for modern Intel and Radeon graphics hardware through a port of the Linux DRM/KMS code. Most X.Org components have been updated as well.
- ARM multiprocessor support
- Support for new ARM boards, some of which are listed below:
- Raspberry Pi 2
- BeagleBone Black
- Banana Pi
- Cubieboard 2
- Merii Hummingbird
- Marvell ARMADA XP
- GlobalScale MiraBox
- Sharp Netwalker PC-Z1
- GPT support in sysinst
- Lua kernel scripting
- Multiprocessor USB stack
- Many improvements to NPF, the NetBSD packet filter
- GCC 4.8.4 (and optionally, LLVM/Clang 3.6.1)
Binaries of NetBSD 7.0_RC1 are available for download at:
Those who prefer to build from source can either use the netbsd-7-0-RC1 tag or follow the netbsd-7 branch.
Please help us out by testing 7.0_RC1. We love any and all feedback. Report problems through the usual channels (submit a PR or write to the appropriate list). More general feedback is welcome at releng@NetBSD.org. Your input will help us put the finishing touches on what promises to be a great release!