contents
- 2018年2月10日(土) 関西*BSDユーザ会 第1回研究会
- 最近のAllwiner用NetBSDはこんな感じ
- Multiple console (fb + uart) support
- evbarm64 on H5 (NanoPi NEO Plus 2)!!
- NVIDIA Jetson TX1 (Tegra X1) in AArch64 mode
- CHIP
- CHIP spec
- DIP VGA, HDMI
- PocketCHIP spec
- CHIPに追加されるデバイス
- SUNXI at KOF2017 JNUG booth
- PocketCHIPでNetBSDが動いているらしい
- ソースから見る CHIPとPocketCHIPの違い
- u-bootの差分
- Device Tree Sourceの差分
- DTBからDTSを作る
- NetBSD CHIPを動かすための手順
- [A] ソースやツールの準備
- [B] ディスクイメージ, kernel, Device Tree Brobの作成
- [B'] ディスクイメージを取ってきて使う: お気楽モード
- [C] USBメモリの作成
- [D] u-bootの作成(32M対応)
- CONFIG_SYS_BOOTM_LENを増やす
- [E] boot.scr作成
- FELモードってなあに?
- FELモードに入る方法
- CHIP FELモード
- sunxi-felコマンド
- 主なコマンド
- [F]FELモードでの起動
- [G]ディスク関連の設定調整
- 変更方法
- [G] /etc/fstab, /etc/rc.confの修正
- /etc/fstab
- /etc/rc.conf
- sunxi-fel message
- u-boot message
- dmesg
- Compositeの出力
- [参考] ChipOSの起動メッセージ
- TODO
- Request for Comment
- 20周年記念イベント(KOF2018?)対応
- むとうの最近欲しいもの
- [補遺] NTSCで出してみよう
NetBSD on C.H.I.P.
2018年2月10日(土) 関西*BSDユーザ会 第1回研究会
むとうたけし@関西*BSDユーザ会 (@610t)
最近のAllwiner用NetBSDはこんな感じ
NetBSD/evbarm on Allwinner Technology SoCs
Family | SoC | NetBSD version | Example boards | Notes |
sun50i | H5 | 8.99.4以上 | 〇FriendlyARM NanoPi NEO2 | |
sun5i | R8 | 8.99.2以上 | Pocket C.H.I.P.(〇C.H.I.P.) | |
sun8i | H3 | 8.0以上 | 〇FriendlyARM NanoPi NEO | |
sun7i | A20 | 7.0以上 | LeMaker Banana Pi |
Multiple console (fb + uart) support
- kernel conf: WSDISPLAY_MULTICONS
- @jmcwhatever at 2017/12/19 05:56
evbarm64 on H5 (NanoPi NEO Plus 2)!!
- @jmcwhatever at 2018/02/03 23:27 (dmesg)
NVIDIA Jetson TX1 (Tegra X1) in AArch64 mode
- NVIDIA Jetson TX1 (Tegra X1) ¥81,800 (2018/02/07) @Amazon.jp
- @jmcwhatever at 2018/02/05 05:36 (dmesg)
CHIP
CHIP spec
- SoC: Allwinner’s R8 (sun5i-r8)
- GPU: Mail400
- RAM: 512M
- Storage: 4GB NAND
- I/O: Wifi/Bluetooth(Realtek8723BS) , USBx1, Serial, GPIO, Audio
- OS: CHIP Operating System(Debian base), NetBSD
- Display: Composite, DIP HDMI, DIP VGA
- Price: CHIP $9(売り切れ?), CHIP Pro(GR8): $16
DIP VGA, HDMI
PocketCHIP spec
CHIPに追加されるデバイス
- LCD: 480x272
- Touchpad
- Keyboard: SuperClicky QWERTY
- Battery: 5h
- シリアル, FEL, GPIOなどのピンが上部に出ている
- Price: $69
SUNXI at KOF2017 JNUG booth
PocketCHIP, Banana Pi, NanoPi NEO/NEO2
PocketCHIPでNetBSDが動いているらしい
CHIP / PocketCHIP support added to -current (2017/08/27)
ソースから見る CHIPとPocketCHIPの違い
SoCなどなどのCHIPに載っているものは共通
- そもそも、PocketCHIPにCHIPが刺さっているだけ
以下のソースに差分あり。
- u-boot: bootloader
- device tree: デバイス情報
u-bootの差分
- I2C, AXP_GPIO, VIDEOの有効化
- VIDEOに関する設定
diff -ruN u-boot-chip/Makefile u-boot-pocketchip/Makefile --- u-boot-chip/Makefile 2017-12-19 08:31:20.000000000 +0900 +++ u-boot-pocketchip/Makefile 2017-12-19 08:31:21.000000000 +0900 @@ -1,9 +1,20 @@ -# $NetBSD: Makefile,v 1.2 2017/12/18 23:31:20 jmcneill Exp $ +# $NetBSD: Makefile,v 1.3 2017/12/18 23:31:21 jmcneill Exp $ PKGREVISION= 1 -UBOOT_TARGET= chip +UBOOT_TARGET= pocketchip UBOOT_CONFIG= CHIP_defconfig UBOOT_BIN= u-boot-sunxi-with-spl.bin + +UBOOT_OPTIONS+= CONFIG_I2C1_ENABLE=y +UBOOT_OPTIONS+= CONFIG_AXP_GPIO=y +UBOOT_OPTIONS+= CONFIG_VIDEO=y +UBOOT_OPTIONS+= CONFIG_VIDEO_VGA_VIA_LCD=y +UBOOT_OPTIONS+= CONFIG_VIDEO_LCD_MODE=\"x:480,y:272,depth:18,pclk_khz:9000,le:10,ri:5,up:3,lo:8,hs:30,vs:5,sync:3,vmode:0\" +UBOOT_OPTIONS+= CONFIG_VIDEO_LCD_POWER=\"AXP0-1\" +UBOOT_OPTIONS+= CONFIG_VIDEO_LCD_BL_EN=\"PD18\" +UBOOT_OPTIONS+= CONFIG_VIDEO_LCD_BL_PWM=\"PB2\" +UBOOT_OPTIONS+= CONFIG_VIDEO_CHRONTEL_CH7033=y +UBOOT_OPTIONS+= CONFIG_VIDEO_CHRONTEL_CH7033_I2C_BUS=1 .include "../../sysutils/u-boot/u-boot-arm.mk"
Device Tree Sourceの差分
- タッチスクリーンの追加
- キーボードの追加
% diff -u rev-chip.dts rev-pocketchip.dts --- rev-chip.dts 2018-02-07 13:43:01.292710000 +0900 +++ rev-pocketchip.dts 2018-02-07 13:43:09.206261000 +0900 @@ -5,7 +5,7 @@ #address-cells = <0x1>; #size-cells = <0x1>; interrupt-parent = <0x1>; - model = "NextThing C.H.I.P."; + model = "NextThing PocketC.H.I.P."; compatible = "nextthing,chip", "allwinner,sun5i-r8", "allwinner,sun5i-a13"; chosen { @@ -624,6 +624,9 @@ reg = <0x1c25000 0x100>; interrupts = <0x1d>; #thermal-sensor-cells = <0x0>; + touchscreen-inverted-x; + touchscreen-inverted-y; + allwinner,ts-attached; linux,phandle = <0x1f>; phandle = <0x1f>; }; @@ -777,11 +780,22 @@ reg = <0x1c2b000 0x400>; interrupts = <0x8>; clocks = <0x2 0x39>; - status = "disabled"; + status = "okay"; #address-cells = <0x1>; #size-cells = <0x0>; pinctrl-names = "default"; pinctrl-0 = <0x1a>; + keyboard@34 { + + compatible = "ti,tca8418"; + reg = <0x34>; + interrupt-parent = <0xf>; + interrupts = <0x6 0x1 0x2>; + keypad,num-rows = <0x6>; + keypad,num-columns = <0xa>; + keypad,autorepeat; + linux,keymap = <0xd 0x10002 0x20003 0x30004 0x40005 0x50006 0x60007 0x70008 0x80009 0x9000a 0x1000010 0x1010011 0x1020012 0x1030013 0x1040014 0x1050015 0x1060016 0x1070017 0x1080018 0x1090019 0x200001e 0x201001f 0x2020020 0x2030021 0x2040022 0x2050023 0x2060024 0x2070025 0x2080026 0x209001c 0x300000f 0x301002c 0x302002d 0x303002e 0x304002f 0x3050030 0x3060031 0x3070032 0x3080067 0x309006c 0x4000001 0x4010064 0x4020038 0x4030039 0x4040061 0x4050035 0x4060036 0x4080069 0x409006a 0x500002a 0x501000b 0x502004a 0x503000e 0x5040034>; + }; }; i2c@1c2b400 {
DTBからDTSを作る
sun5i-r8-chip.dtsは、無いみたい
- dtc(device tree compile) コマンドで逆変換できる
% dtc -I dtb -O dts -o sun5i-r8-chip.dts sun5i-r8-chip.dtb
NetBSD CHIPを動かすための手順
CHIP / PocketCHIP support added to -currentの手順どおり
- [A] ソースやツールの準備
- [B] ディスクイメージ, kernel, Device Tree Blobの作成
- [B'] ディスクイメージを取ってきて使う: お気楽モード
- [C] USBメモリにディスクイメージを焼く
- [D] 32MB kernel対応u-boot作成
- [E] boot.scrの作成
- [F] FELモードでブート: u-boot, kernel, DTB
- [G] ディスク関連の設定調整
[A] ソースやツールの準備
要求されるバージョン:
- NetBSD/src >= 8.99.2
- pkgsrc/sysutils/sunxi-tools >= 20170823
- pkgsrc/sysutils/u-boot-chip >= 2017.07
- pkgsrc/sysutils/u-boot-pocketchip >= 2017.07
% cvs -d :pserver:anoncvs@anoncvs.netbsd.org:/cvsroot login CVS password: anoncvs % cvs -d :pserver:anoncvs@anoncvs.netbsd.org:/cvsroot co src % cvs -d :pserver:anoncvs@anoncvs.netbsd.org:/cvsroot co pkgsrc
[B] ディスクイメージ, kernel, Device Tree Brobの作成
- ディスクイメージ(armv7.img)
- obj/releasedir/evbarm/binary/gzimg/armv7.img.gz
- kernel(netbsd-SUNXI.ub)
- obj/releasedir/evbarm/binary/kernel/netbsd-SUNXI.ub.gz
- DTB(sun5i-r8-chip.dtb)
- obj/releasedir/evbarm/binary/kernel/sun5i-r8-chip.dtb.gz
% ./build.sh -uU -m evbearmv7hf-el tools % ./build.sh -uU -m evbearmv7hf-el kernel=SUNXI release
[B'] ディスクイメージを取ってきて使う: お気楽モード
- ディスクイメージをマウント(MSDOS)
% sudo mdconfig -a -t vnode -f armv7.img % sudo mount -t msdosfs /dev/md0s1 /mnt/msdos
- 必要なファイルをコピー
- kernel: /mnt/msdos/netbsd-SUNXI.ub
- DTB: /mnt/msdos/sun5i-r8-chip.dtb
[C] USBメモリの作成
% dd if=armv7.img of=/dev/rsd0d bs=1m conv=sync
[D] u-bootの作成(32M対応)
- u-boot は pkgsrc/sysutlls/u-boot-chip
- /usr/pkg/share/u-boot/chip/u-boot-sunxi-with-spl.bin
- kernelが大きすぎる (10.5MiB)
CONFIG_SYS_BOOTM_LENを増やす
- pkgsrc/sysutils/u-boot-chip/work/u-boot-2017.11/common/bootm.c
% diff -u work/u-boot-2017.11/common/bootm.c{.org,} --- work/u-boot-2017.11/common/bootm.c.org 2017-12-04 12:30:20.000000000 +0900 +++ work/u-boot-2017.11/common/bootm.c 2017-12-04 12:30:36.000000000 +0900 @@ -32,7 +32,7 @@ #ifndef CONFIG_SYS_BOOTM_LEN /* use 8MByte as default max gunzip size */ -#define CONFIG_SYS_BOOTM_LEN 0x800000 +#define CONFIG_SYS_BOOTM_LEN 0x2000000 #endif #define IH_INITRD_ARCH IH_ARCH_DEFAULT
[E] boot.scr作成
- boot.cmd
setenv bootargs 'root=sd0a' setenv bootcmd 'fdt addr ${fdt_addr_r}; bootm ${kernel_addr_r} - ${fdt_addr_r}' boot
mkimage(mkubootimage)でboot.scrに変換
% mkimage -C none -A arm -T script -d boot.cmd boot.scr Image Name: Created: Mon Dec 4 10:45:14 2017 Image Type: ARM Linux Script (uncompressed) Data Size: 888 Bytes = 0.87 KiB = 0.00 MiB Load Address: 00000000 Entry Point: 00000000 Contents: Image 0: 880 Bytes = 0.86 KiB = 0.00 MiB
FELモードってなあに?
FEL : http://linux-sunxi.org/FEL
- Allwinnerデバイス BootROMの低レベルサブルーチン群
- USB経由で、デバイスの復旧や初期化などに使われる
- sunxi-tools: sunxi-felがFELモード操作用
FELモードに入る方法
- CHIP: ピンヘッダの FEL と GND をジャンパでつなぐ
- 専用ボタン: FEL, recovery, uboot, ...
- ボタンの組みあわせ: [VOL+]+[PowerOn], ...
- u-bootコマンド: fel, fastboot_test(ファミコンミニ)
CHIP FELモード
sunxi-felコマンド
USB(libusb)経由でFELモードのAllwinerを操作する
主なコマンド
- version
- uboot file
- write addr file
sunxi-fel v1.4.2 Usage: sunxi-fel [options] command arguments... [command...] -v, --verbose Verbose logging -p, --progress "write" transfers show a progress bar -d, --dev bus:devnum Use specific USB bus and device number spl file Load and execute U-Boot SPL If file additionally contains a main U-Boot binary (u-boot-sunxi-with-spl.bin), this command also transfers that to memory (default address from image), but won't execute it. uboot file-with-spl like "spl", but actually starts U-Boot U-Boot execution will take place when the fel utility exits. This allows combining "uboot" with further "write" commands (to transfer other files needed for the boot). hex[dump] address length Dumps memory region in hex dump address length Binary memory dump exe[cute] address Call function address reset64 address RMR request for AArch64 warm boot readl address Read 32-bit value from device memory writel address value Write 32-bit value to device memory read address length file Write memory contents into file write address file Store file contents into memory write-with-progress addr file "write" with progress bar write-with-gauge addr file Output progress for "dialog --gauge" write-with-xgauge addr file Extended gauge output (updates prompt) multi[write] # addr file ... "write-with-progress" multiple files, sharing a common progress status multi[write]-with-gauge ... like their "write-with-*" counterpart, multi[write]-with-xgauge ... but following the 'multi' syntax: <#> addr file [addr file [...]] echo-gauge "some text" Update prompt/caption for gauge output ver[sion] Show BROM version sid Retrieve and output 128-bit SID key clear address length Clear memory fill address length value Fill memory
[F]FELモードでの起動
- dmesg
ugen3.3: <vendor 0x1f3a product 0xefe8> at usbus3
- version
% sunxi-fel version AWUSBFEX soc=00001625(A13) 00000001 ver=0001 44 08 scratchpad=00007e00 00000000 00000000
- FELモードで起動
% sunxi-fel -v -p \ uboot u-boot-sunxi-with-spl.bin \ write 0x42000000 netbsd.ub \ write 0x43000000 sun5i-r8-pocketchip.dtb \ write 0x43100000 boot.scr
[G]ディスク関連の設定調整
armv7.imgはSD(ld0)をマウントするので、USBメモリ(sd0)に
- /etc/fstab
- /etc/rc.conf
変更方法
- [母艦] armv7.imgをmdconfigでマウントして、修正、USBメモリに焼く
- [母艦] armv7.imgを焼いたUSBメモリをマウントして修正
- [本体] とりあえず起動して、single userモードからUSBメモリをマウントして修正
[G] /etc/fstab, /etc/rc.confの修正
/etc/fstab
% diff -u /etc/fstab.org /etc/fstab --- /etc/fstab.org 2017-11-22 04:54:48.217311791 +0000 +++ /etc/fstab 2017-11-22 02:26:04.375811124 +0000 @@ -1,8 +1,8 @@ # NetBSD /etc/fstab # See /usr/share/examples/fstab/ for more examples. -/dev/ld0a / ffs rw,noatime 1 1 -/dev/ld0b none swap sw 0 0 -/dev/ld0e /boot msdos rw 1 1 +/dev/sd0a / ffs rw,noatime 1 1 +/dev/sd0b none swap sw 0 0 +/dev/sd0e /boot msdos rw 1 1 kernfs /kern kernfs rw ptyfs /dev/pts ptyfs rw procfs /proc procfs rw
/etc/rc.conf
% diff -u /etc/rc.conf.org /etc/rc.conf --- /etc/rc.conf.org 2017-11-22 04:54:35.942422541 +0000 +++ /etc/rc.conf 2017-11-22 04:33:49.297689458 +0000 @@ -26,7 +26,7 @@ ntpd=YES ntpd_flags="-g" resize_disklabel=YES -resize_disklabel_disk=ld0 +resize_disklabel_disk=sd0 resize_disklabel_part=a resize_root=YES resize_root_flags="-p"
sunxi-fel message
Enabling the L2 cache Stack pointers: sp_irq=0x00002000, sp=0x00005DF8 Reading the MMU translation table from 0x00008000 Disabling I-cache, MMU and branch prediction... done. => Executing the SPL... done. Setting write-combine mapping for DRAM. Setting cached mapping for BROM. Writing back the MMU translation table. Enabling I-cache, MMU and branch prediction... done. Writing image "U-Boot 2017.11 for sunxi board", 372915 bytes @ 0x4A000000. 100% [================================================] 11020 kB, 458.9 kB/s 100% [================================================] 19 kB, 356.9 kB/s 100% [================================================] 0 kB, 3.4 kB/s Passing boot info via sunxi SPL: script address = 0x43100000, uEnv length = 0 Starting U-Boot (0x4A000000).
u-boot message
U-Boot SPL 2017.11 (Feb 04 2018 - 12:11:44) DRAM: 512 MiB CPU: 1008000000Hz, AXI/AHB/APB: 3/2/2 Trying to boot from FEL U-Boot 2017.11 (Feb 04 2018 - 12:11:44 +0900) Allwinner Technology CPU: Allwinner A13 (SUN5I) Model: NextThing C.H.I.P. I2C: ready DRAM: 512 MiB Using default environment Setting up a 720x576i composite-pal console (overscan 32x20) In: serial Out: vga Err: vga Allwinner mUSB OTG (Peripheral) Net: Warning: usb_ether using MAC address from ROM eth0: usb_ether starting USB... USB0: USB EHCI 1.00 USB1: USB OHCI 1.0 scanning bus 0 for devices... 2 USB Device(s) found scanning usb for storage devices... 1 Storage Device(s) found Hit any key to stop autoboot: 0 (FEL boot) Image Name: NetBSD/sunxi 8.99.9 Image Type: ARM Linux Kernel Image (gzip compressed) Data Size: 11019600 Bytes = 10.5 MiB Load Address: 40008000 Entry Point: 40008000 Verifying Checksum ... OK Booting using the fdt blob at 0x43000000 Uncompressing Kernel Image ... OK Loading Device Tree to 49ff8000, end 49fff987 ... OK Starting kernel ...
dmesg
Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018 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 8.99.12 (SUNXI) #0: Mon Jan 29 19:51:15 UTC 2018 mkrepro@mkrepro.NetBSD.org:/usr/src/sys/arch/evbarm/compile/SUNXI total memory = 510 MB avail memory = 497 MB timecounter: Timecounters tick every 10.000 msec armfdt0 (root) fdt0 at armfdt0: NextThing C.H.I.P. fdt1 at fdt0 fdt2 at fdt0 fdt3 at fdt0 cpus0 at fdt0 cpu0 at cpus0: Cortex-A8 r3p2 (Cortex V7A core) cpu0: DC enabled IC enabled WB disabled EABT branch prediction enabled cpu0: 32KB/64B 4-way L1 VIPT Instruction cache cpu0: 32KB/64B 4-way write-back-locking-C L1 PIPT Data cache cpu0: 256KB/64B 8-way write-through L2 PIPT Unified cache vfp0 at cpu0: NEON MPE (VFP 3.0+), rounding, NaN propagation, denormals cpufreqdt0 at cpu0 sunxiintc0 at fdt1: Interrupt Controller fclock0 at fdt2: 24000000 Hz fixed clock fclock1 at fdt2: 32768 Hz fixed clock sun5ia13ccu0 at fdt1: A13 CCU sunxigpio0 at fdt1: PIO gpio0 at sunxigpio0: 76 pins sunxigpio0: interrupting on INTC irq 28 sunxisramc0 at fdt1: SRAM Controller sunxisramc0: area: SRAM D fregulator0 at fdt0: vcc3v3 fregulator1 at fdt0: usb0-vbus fregulator2 at fdt0: vcc5v0 fregulator3 at fdt0: vcc3v0 sunxisid0 at fdt1: Security ID EFUSE sunxiusbphy0 at fdt1: USB PHY sunxitwi0 at fdt1: Marvell TWSI controller sunxitwi0: interrupting on INTC irq 7 iic0 at sunxitwi0: I2C bus axp20x0 at iic0 addr 0x34: VBUS used axp20x0: DCDC2 1400mV axp20x0: DCDC3 1250mV axp20x0: LDO2 3000mV, LDO4 3300mV axp20x0: LDO3 3300mV axp20xreg0 at axp20x0: dcdc2 (cpuvdd) axp20xreg1 at axp20x0: dcdc3 (corevdd) sun4idma0 at fdt1: DMA controller sun4idma0: interrupting on INTC irq 27 /soc@1c00000/lcd-controller@1c0c000 at fdt1 not configured /soc@1c00000/display-backend@1e60000 at fdt1 not configured /soc@1c00000/tv-encoder@1c0a000 at fdt1 not configured mmcpwrseq0 at fdt0 sunxits0 at fdt1: Touch Screen Controller sunxits0: interrupting on INTC irq 29 /display-engine at fdt0 not configured gpioleds0 at fdt0: /onewire at fdt0 not configured sunximmc0 at fdt1: SD/MMC controller sunximmc0: interrupting on INTC irq 32 motg0 at fdt1: 'otg' mode not supported ehci0 at fdt1: EHCI ehci0: interrupting on INTC irq 39 ehci0: EHCI version 1.0 ehci0: 1 companion controller, 1 port usb0 at ehci0: USB revision 2.0 ohci0 at fdt1: OHCI ohci0: interrupting on INTC irq 40 ohci0: OHCI version 1.0 usb1 at ohci0: USB revision 1.0 /soc@1c00000/crypto-engine@1c15000 at fdt1 not configured sunxitimer0 at fdt1: Timer timecounter: Timecounter "Timer 2" frequency 24000000 Hz quality 200 sunxiwdt0 at fdt1: Watchdog sunxiwdt0: default watchdog period is 16 seconds sunxicodec0 at fdt1: A10 Audio Codec audio0 at sunxicodec0: full duplex, playback, capture, mmap, independent sunxicodec0: Virtual format configured - Format SLINEAR, precision 16, channels 2, frequency 48000 sunxicodec0: Latency: 256 milliseconds spkr0 at audio0: PC Speaker (synthesized) wsbell at spkr0 not configured com0 at fdt1: ns16550a, working fifo com0: console com0: interrupting on INTC irq 2 com1 at fdt1: ns16550a, working fifo com1: interrupting on INTC irq 4 sunxitwi1 at fdt1: Marvell TWSI controller sunxitwi1: interrupting on INTC irq 9 iic1 at sunxitwi1: I2C bus gpio at iic1 addr 0x38 not configured /soc@1c00000/timer@1c60000 at fdt1 not configured genfb0 at fdt3: Simple Framebuffer (656x536 32-bpp @ 0x5fe79000) genfb0: framebuffer at 0x5fe79000, size 656x536, depth 32, stride 2880 wsdisplay0 at genfb0 kbdmux 1: console (default, vt100 emulation) wsmux1: connecting to wsdisplay0 wsdisplay0: screen 1-3 added (default, vt100 emulation) timecounter: Timecounter "clockinterrupt" frequency 100 Hz quality 0 sunxitimer0: interrupting on INTC irq 22 cpufreqdt0: 1008.000 MHz, 1400000 uV cpufreqdt0: 912.000 MHz, 1350000 uV cpufreqdt0: 864.000 MHz, 1300000 uV cpufreqdt0: 624.000 MHz, 1200000 uV cpufreqdt0: 576.000 MHz, 1200000 uV cpufreqdt0: 432.000 MHz, 1200000 uV sdmmc0 at sunximmc0 uhub0 at usb0: Generic (0000) EHCI root hub (0000), class 9/0, rev 2.00/1.00, addr 1 uhub0: 1 port with 1 removable, self powered uhub1 at usb1: Generic (0000) OHCI root hub (0000), class 9/0, rev 1.00/1.00, addr 1 uhub1: 1 port with 1 removable, self powered IPsec: Initialized Security Association Processing. (manufacturer 0x24c, product 0xb723, standard function interface code 0x7)at sdmmc0 function 1 not configured uhub2 at uhub0 port 1: vendor 05e3 (0x5e3) USB2.0 Hub (0x608), class 9/0, rev 2.00/9.01, addr 2 uhub2: single transaction translator uhub2: 4 ports with 4 removable, self powered urtwn0 at uhub2 port 3 urtwn0: Planex CommunicatioKw$Inc. (0x2019) product ab2a (0xab2a), rev 2.00/2.00, addr 3 urtwn0: MAC/BB RTL8188CUS, RF 6052 1T1R, address 00:22:cf:f5:a0:bd urtwn0: 1 rx pipe, 2 tx pipes urtwn0: 11b rates: 1Mbps 2Mbps 5.5Mbps 11Mbps urtwn0: 11g rates: 1Mbps 2Mbps 5.5Mbps 11Mbps 6Mbps 9Mbps 12Mbps 18Mbps 24Mbps 36Mbps 48Mbps 54Mbps umass0 at uhub2 port 4 configuration 1 interface 0 umass0: silicon (0x13fe) -power (0x1f23), rev 2.00/1.10, addr 4 umass0: using SCSI over Bulk-Only scsibus0 at umass0: 2 targets, 1 lun per target sd0 at scsibus0 target 0 lun 0: <silicon, -power, 0.00> disk removable sd0: 3822 MB, 15288 cyl, 16 head, 32 sec, 512 bytes/sect x 7827456 sectors boot device: sd0 root on sd0a dumps on sd0b root file system type: ffs kern.module.path=/stand/evbarm/8.99.12/modules WARNING: no TOD clock present WARNING: using filesystem time WARNING: CHECK AND RESET THE DATE! wsdisplay0: screen 4 added (default, vt100 emulation)
Compositeの出力
- なんか出てる?
- NTSCにするにはどうすんだ?
[参考] ChipOSの起動メッセージ
TODO
- 母艦が必要なFELモードを使わずにブートしたい
- NANDの書き換えはどうすれば良い?
- NANDのu-bootはどこまでできる? USBメモリからの直接ブートは?
- WiFi/Bluetooth (Realtek8723BS)
- もちろんLinux用ドライバはある
- DIP VGAやComposite経由でX11(fb)を使いたい
- PocketCHIPも試してみたい
Request for Comment
- ARMクラスタでやったら面白そうなこと
- distcc pkg build cluster ばかりでは…
- うまくDisplay類が使えるといいなぁ。
- やっぱり、GPIOで面白いことできないでしょうかねぇ?
- I2Cの使い方を知りたい: 広がるセンサーとアクチュエータの世界…
- ADCやPWMがあると、結構デバイスの幅も広がるんですが…
20周年記念イベント(KOF2018?)対応
- 展示: なんかネタありますか?
- 光るPocketCHIPとか。
- K*BUGの薄い本
- コピー誌 A5 4の倍数ページ
- 皆さんの普段の発表の簡単なまとめ
- 各種BSDの簡単な説明, BSD License, ...
- 20周年記念シール
むとうの最近欲しいもの
- Pinebook: $99, なかなかクーポンがこねぇorz
- NVIDIA JETSON TX1 Developer Kit SE : 25,900円 買っちゃった!!
- Cluster HAT v2.0: 3,511円