Mit einem Skalpell kann man die SD-Karte seitlich sehr vorsichtig aufschneiden. Auf der Platinenunterseite finden sich diverse PINs. Darunter RX und TX auf deinen ein UART-Bus mit 38400 Baud anliegt. Ich habe außerdem GND und VCC (3,3V) angelötet um die Karte autonom betreiben zu können. Wenn man die PINs an eine entsprechende Adapterplatine anlötet, kann man mittels Terminal-Software auf die Karte zugreifen.
Als Bootloader ist ein U-Boot installiert:
KA Boot 04240806 div=9f00 �scu: 11c33303,00000000,00040404,00009f00,1 Status 20200800 Hit to stop : 0
U-Boot Einstellungen:
bootargs=root=/dev/ram0 rw console=ttyS0,38400n8 mem=30M bootcmd=run set_bootargs; run bootf baudrate=38400 console_args=console=ttyS0,38400n8 root_args=root=/dev/ram0 rw initrd=0x800000,4M misc_args=mem=30M set_bootargs=setenv bootargs ${console_args} ${root_args} ${misc_args} boot_sd=run set_bootargs; mmc init; fatload mmc 1 208000 image2632; fatload mmc 1 600000 initramfs.gz; go 208000 bootcmd=run set_bootargs; run bootf stdin=serial stdout=serial stderr=serial bootf=mmc init; go 208000 bootdelay=2 ver=U-Boot 2010.06-rc1 (Aug 13 2011 - 00:08:49) on KeyAsic KA2000 Environment size: 574/32764 bytes
Von installierten U-Boot unterstützte Befehle:
? - alias for 'help' base - print or set address offset bdinfo - print Board Info structure boot - boot default, i.e., run 'bootcmd' bootd - boot default, i.e., run 'bootcmd' bootm - boot application image from memory clk - Clock Speed cmp - memory compare coninfo - print console devices and information cp - memory copy crc32 - checksum calculation dcache - enable or disable data cache echo - echo args to console editenv - edit environment variable fatinfo - print information about filesystem fatload - load binary file from a dos filesystem fatls - list files in a directory (default /) go - start application at address 'addr' help - print command description/usage icache - enable or disable instruction cache iminfo - print header information for application image imxtract- extract a part of a multi-image itest - return true/false on integer compare loadb - load binary file over serial line (kermit mode) loads - load S-Record file over serial line loady - load binary file over serial line (ymodem mode) loop - infinite loop on address range md - memory display mm - memory modify (auto-incrementing address) mmc - MMC sub-system mtest - simple RAM read/write test mw - memory write (fill) nm - memory modify (constant address) printenv- print environment variables reset - Perform RESET of the CPU run - run commands in an environment variable saveenv - save environment variables to persistent storage setenv - set environment variables sf - SPI flash sub-system sleep - delay execution for some time source - run script from memory sspi - SPI utility commands version - print monitor version
Hilfeausgabe zu diversen Kommandos:
Bootlog:
<mmc1>go 208000 Linux version 2.6.32.28 (root@ubuntu-desktop) (gcc version 4.5.2 (Sourcery G++ Lite 2011.03-42) ) #244 PREEMPT Mon Jun 11 11:39:31 CST 2012 CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=00057177 CPU: VIVT data cache, VIVT instruction cache Machine: KeyASIC Ka2000 EVM Memory policy: ECC disabled, Data cache writeback Built 1 zonelists in Zone order, mobility grouping on. Total pages: 8128 Kernel command line: root=/dev/ram0 rw console=ttyS0,38400n8 mem=32M initrd=0x500000,3M PID hash table entries: 128 (order: -3, 512 bytes) Dentry cache hash table entries: 4096 (order: 2, 16384 bytes) Inode-cache hash table entries: 2048 (order: 1, 8192 bytes) Memory: 32MB = 32MB total Memory: 26632KB available (2472K code, 192K data, 76K init, 0K highmem) SLUB: Genslabs=11, HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1 Hierarchical RCU implementation. NR_IRQS:64 (192-96-1)pclk rate 96000000 time setup irq clockevent PWM T1 time setup irq 22 time32_config 0 done time32_config 1 done clocksource mult -1411382395 shift 22 clocksevent mult 124940 shift 32 ka2000_set_mode 1 ka2000_set_mode 2 console [ttyS0] enabled Calibrating delay loop... 421.06 BogoMIPS (lpj=2105344) Mount-cache hash table entries: 512 CPU: Testing write buffer coherency: ok NET: Registered protocol family 16 bio: create slab <bio-0> at 0 cfg80211: Calling CRDA to update world regulatory domain Switching to clocksource timer0_1 NET: Registered protocol family 2 IP route cache hash table entries: 1024 (order: 0, 4096 bytes) TCP established hash table entries: 1024 (order: 1, 8192 bytes) TCP bind hash table entries: 1024 (order: 0, 4096 bytes) TCP: Hash tables configured (established 1024 bind 1024) TCP reno registered KA2000 unpack_to_rootfs c0500008 size 277e7d ttyS0 at MMIO 0xa0004000 (irq = 1) is a KA2000 JFFS2 version 2.2. (NAND) 2001-2006 Red Hat, Inc. msgmni has been set to 52 alg: No test for stdrng (krng) io scheduler noop registered io scheduler deadline registered (default) brd: module loaded loop: module loaded m25p80 spi0.0: mx25l6405d (8192 Kbytes) Creating 2 MTD partitions on "SPI NOR Flash Partition1": 0x000000080000-0x000000180000 : "SPI NOR Flash Partition1" 0x000000200000-0x000000680000 : "SPI: kernel" TCP cubic registered NET: Registered protocol family 17 lib80211: common routines for IEEE802.11 drivers Freeing init memory: 76K starting pid 27, tty '/dev/console': '/etc/init.d/rcS' KeyASIC WifiSD console ... Sun Jan 1 00:00:00 UTC 2012 (0>0)switch_modules init bomb irq Bypass Flag En=0 req irq 40 (1010000) req irq 43 (40) req irq 41 (43) ka_sdhc_drv_init mount: mounting /dev/mmcblk0p1 on /mnt/sd failed: No such device or address wsd to sd wsd to sd umount: can't umount /mnt/sd: Invalid argument mount: mounting /dev/mmcblk0p1 on /mnt/sd failed: No such device or address set pid 52 this is kcard startup app(0>1) KCARD_DISABLE_POWER_MGMT kcard app, call interval 10 Finding:"Auto WiFi Mode": Got: "Enable" default wifi on pwm set 0 pwm set 33685506 ..setup AP mode start start boa buzzer rcS done pwm set 0 pwm set 17432676 pwm set 17432577 pwm set 17432676 pwm set 17432968 pwm set 17432676 pwm set 17432577 pwm set 16842753 ifconfig: SIOCGIFFLAGS: No such device [01/Jan/2012:00:00:03 +0000] boa: server version Boa/0.94.14rc21 [01/Jan/2012:00:00:03 +0000] boa: server built May 3 2012 at 19:54:36. [01/Jan/2012:00:00:03 +0000] boa: starting server pid=77, port 80 sdio wakeuplo no wireless extensions. ---------------------------------------------------------- Production mode-VER. 138_JUN132012_M -Date 13/06/2012 ------------------------------------------------------------ ifconfig: SIOCGIFFLAGS: No such device sleep disable Please press Enter to activate this console. starting pid 86, tty '/dev/ttyS0': '-/bin/ash ' # Finding:"WIFISSID": Got: "PQI Air card" Finding:"My IP Addr": Got: "192.168.1.1" Finding:"Channel": Got: "1" Error for wireless request "Set Mode" (8B06) : SET failed on device mlan0 ; No such device. Error for wireless request "Set ESSID" (8B1A) : SET failed on device mlan0 ; No such device. Error for wireless request "Set Frequency" (8B04) : SET failed on device mlan0 ; No such device