FC2カウンター FPGAの部屋 ZYBOのDigilent Linux KernelにARMhfのRoot File Systemsを入れる
FC2ブログ

FPGAやCPLDの話題やFPGA用のツールの話題などです。 マニアックです。 日記も書きます。

FPGAの部屋

FPGAの部屋の有用と思われるコンテンツのまとめサイトを作りました。Xilinx ISEの初心者の方には、FPGAリテラシーおよびチュートリアルのページをお勧めいたします。

ZYBOのDigilent Linux KernelにARMhfのRoot File Systemsを入れる

ZYBO用のEmbedded Linux チュートリアル7(Linuxカーネルのビルド)”までで作ったZYBO用のDigilent Linux Kernel にARMhfで見つけたUbuntu Trusty 14.04 LTS とDebian Wheezy 7.5のRoot File Systems を入れてみようと思った。

まずは、Ubuntu Trusty 14.04 LTS のRoot File Systems をZYBOのMicroSDカードの第2パーティション ROOT_FS にコピーしてZYBOの電源をONした。
”* Starting OpenSSH server”まで進んだが、ここで停止してしまった。
ZYBO_ARMhf_11_150125.png

次に、Debian Wheezy 7.5のRoot File Systems をZYBOのMicroSDカードの第2パーティション ROOT_FS にコピーしてZYBOの電源をONした。
やはり、”[ ok ] Starting OpenBSD Secure Shell server: sshd.”まで進んだが停止した。
ZYBO_ARMhf_1_150125.png

/etc ディレクトリのinittab ファイルのinittab をgedit で開いた。
ZYBO_ARMhf_2_150125.png

default runlevel は 2 だった。
ZYBO_ARMhf_3_150125.png

/etc/rc2.d を見ると、S03plymouth があった。
ZYBO_ARMhf_4_150125.png

Plymouth は KMS (Kernel Mode Setting) を使ってグラフィックを表示します。”ということで怪しいのかな?と思い、これを削除した。
ZYBO_ARMhf_5_150125.png

でも、やはり、同様にssh で停止してしまった。

次に、/etc ディレクトリのinittab ファイルのinittab をgedit で開いて、default runlevel は 1 にした。
ZYBO_ARMhf_6_150125.png

電源をONすると、正常に立ち上がった。
ZYBO_ARMhf_7_150125.png

この状態で、DHCPで IP を取れていて、
apt-get update
apt-get upgrade

も問題無くできた。

/etc ディレクトリのinittab ファイルのinittab をgedit で開いて、default runlevel は 2 にして、rc2.d の内容をすべて削除しても立ち上がらなかった。
ZYBO_ARMhf_10_150125.png

parallellafan さん、hidemi_ishihara さん、jujurou さんにはお世話になりました。ありがとうございました。

Debian Wheezy 7.5のRoot File Systems をZYBOのMicroSDカードの第2パーティション ROOT_FS にコピーしてZYBOの電源をONした時の起動メッセージを貼っておく。

0
Device: zynq_sdhci
Manufacturer ID: 74
OEM: 4a45
Name: USD
Tran Speed: 50000000
Rd Block Len: 512
SD version 3.0
High Capacity: Yes
Capacity: 7.5 GiB
Bus Width: 4-bit
reading uEnv.txt
117 bytes read in 8 ms (13.7 KiB/s)
Loaded environment from uEnv.txt
Importing environment from SD ...
Running uenvcmd ...
reading uImage
3987160 bytes read in 351 ms (10.8 MiB/s)
reading devicetree.dtb
7762 bytes read in 16 ms (473.6 KiB/s)
## Booting kernel from Legacy Image at 03000000 ...
Image Name: Linux-3.14.0-xilinx-13567-g906a2
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 3987096 Bytes = 3.8 MiB
Load Address: 00008000
Entry Point: 00008000
Verifying Checksum ... OK
## Flattened Device Tree blob at 02a00000
Booting using the fdt blob at 0x2a00000
Loading Kernel Image ... OK
Loading Device Tree to 1fb29000, end 1fb2de51 ... OK

Starting kernel ...

Uncompressing Linux... done, booting the kernel.
[ 0.000000] Booting Linux on physical CPU 0x0
[ 0.000000] Linux version 3.14.0-xilinx-13567-g906a2c9-dirty (masaaki@masaaki-VirtualBox) (gcc version 4.6.3 (Sourcery CodeBench Lite 2012.03-79) ) #9 SMP PREEMPT Sun Oct 5 04:32:36 JST 2014
[ 0.000000] CPU: ARMv7 Processor [413fc090] revision 0 (ARMv7), cr=18c5387d
[ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[ 0.000000] Machine model: Xilinx Zynq
[ 0.000000] bootconsole [earlycon0] enabled
[ 0.000000] cma: CMA: reserved 128 MiB at 17800000
[ 0.000000] Memory policy: Data cache writealloc
[ 0.000000] PERCPU: Embedded 8 pages/cpu @dfb9e000 s10752 r8192 d13824 u32768
[ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total pages: 130048
[ 0.000000] Kernel command line: console=ttyPS0,115200 root=/dev/mmcblk0p2 rw earlyprintk rootfstype=ext4 rootwait devtmpfs.mount=1 coherent_pool=16M
[ 0.000000] PID hash table entries: 2048 (order: 1, 8192 bytes)
[ 0.000000] Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
[ 0.000000] Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
[ 0.000000] Memory: 375388K/524288K available (5144K kernel code, 319K rwdata, 1900K rodata, 202K init, 5339K bss, 148900K reserved, 0K highmem)
[ 0.000000] Virtual kernel memory layout:
[ 0.000000] vector : 0xffff0000 - 0xffff1000 ( 4 kB)
[ 0.000000] fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB)
[ 0.000000] vmalloc : 0xe0800000 - 0xff000000 ( 488 MB)
[ 0.000000] lowmem : 0xc0000000 - 0xe0000000 ( 512 MB)
[ 0.000000] pkmap : 0xbfe00000 - 0xc0000000 ( 2 MB)
[ 0.000000] modules : 0xbf000000 - 0xbfe00000 ( 14 MB)
[ 0.000000] .text : 0xc0008000 - 0xc06e9600 (7046 kB)
[ 0.000000] .init : 0xc06ea000 - 0xc071ca00 ( 203 kB)
[ 0.000000] .data : 0xc071e000 - 0xc076dde0 ( 320 kB)
[ 0.000000] .bss : 0xc076ddec - 0xc0ca4c88 (5340 kB)
[ 0.000000] Preemptible hierarchical RCU implementation.
[ 0.000000] RCU lockdep checking is enabled.
[ 0.000000] Dump stacks of tasks blocking RCU-preempt GP.
[ 0.000000] RCU restricting CPUs from NR_CPUS=4 to nr_cpu_ids=2.
[ 0.000000] RCU: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=2
[ 0.000000] NR_IRQS:16 nr_irqs:16 16
[ 0.000000] ps7-slcr mapped to e0802000
[ 0.000000] zynq_clock_init: clkc starts at e0802100
[ 0.000000] Zynq clock init
[ 0.000016] sched_clock: 64 bits at 325MHz, resolution 3ns, wraps every 3383112499200ns
[ 0.008493] ps7-ttc #0 at e0804000, irq=43
[ 0.013537] Console: colour dummy device 80x30
[ 0.017880] Lock dependency validator: Copyright (c) 2006 Red Hat, Inc., Ingo Molnar
[ 0.025929] ... MAX_LOCKDEP_SUBCLASSES: 8
[ 0.029952] ... MAX_LOCK_DEPTH: 48
[ 0.034124] ... MAX_LOCKDEP_KEYS: 8191
[ 0.038543] ... CLASSHASH_SIZE: 4096
[ 0.042895] ... MAX_LOCKDEP_ENTRIES: 16384
[ 0.047366] ... MAX_LOCKDEP_CHAINS: 32768
[ 0.051871] ... CHAINHASH_SIZE: 16384
[ 0.056312] memory used by lock dependency info: 3695 kB
[ 0.061761] per task-struct memory footprint: 1152 bytes
[ 0.067203] Calibrating delay loop... 1292.69 BogoMIPS (lpj=6463488)
[ 0.110951] pid_max: default: 32768 minimum: 301
[ 0.116258] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.122798] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.137372] CPU: Testing write buffer coherency: ok
[ 0.143614] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
[ 0.149250] Setting up static identity map for 0x4de8d0 - 0x4de928
[ 0.155623] L310 cache controller enabled
[ 0.159581] l2x0: 8 ways, CACHE_ID 0x410000c8, AUX_CTRL 0x72760000, Cache size: 512 kB
[ 0.240406] CPU1: Booted secondary processor
[ 0.328276] CPU1: thread -1, cpu 1, socket 0, mpidr 80000001
[ 0.329397] Brought up 2 CPUs
[ 0.342265] SMP: Total of 2 processors activated.
[ 0.346967] CPU: All CPU(s) started in SVC mode.
[ 0.354966] devtmpfs: initialized
[ 0.365666] VFP support v0.3: implementor 41 architecture 3 part 30 variant 9 rev 4
[ 0.379811] regulator-dummy: no parameters
[ 0.392657] NET: Registered protocol family 16
[ 0.429380] DMA: preallocated 16384 KiB pool for atomic coherent allocations
[ 0.443160] cpuidle: using governor ladder
[ 0.447142] cpuidle: using governor menu
[ 0.474344] syscon f8000000.ps7-slcr: regmap [mem 0xf8000000-0xf8000fff] registered
[ 0.488598] hw-breakpoint: found 5 (+1 reserved) breakpoint and 1 watchpoint registers.
[ 0.496700] hw-breakpoint: maximum watchpoint size is 4 bytes.
[ 0.502964] zynq-ocm f800c000.ps7-ocmc: ZYNQ OCM pool: 256 KiB @ 0xe0880000
[ 0.575116] bio: create slab at 0
[ 0.584089] vgaarb: loaded
[ 0.588644] SCSI subsystem initialized
[ 0.594799] usbcore: registered new interface driver usbfs
[ 0.601466] usbcore: registered new interface driver hub
[ 0.607204] usbcore: registered new device driver usb
[ 0.613761] media: Linux media interface: v0.10
[ 0.618757] Linux video capture interface: v2.00
[ 0.624034] pps_core: LinuxPPS API ver. 1 registered
[ 0.628874] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti
[ 0.638486] PTP clock support registered
[ 0.643335] EDAC MC: Ver: 3.0.0
[ 0.649611] Advanced Linux Sound Architecture Driver Initialized.
[ 0.665144] DMA-API: preallocated 4096 debug entries
[ 0.670185] DMA-API: debugging enabled by kernel config
[ 0.675923] Switched to clocksource arm_global_timer
[ 0.738658] NET: Registered protocol family 2
[ 0.745600] TCP established hash table entries: 4096 (order: 2, 16384 bytes)
[ 0.753592] TCP bind hash table entries: 4096 (order: 5, 147456 bytes)
[ 0.761803] TCP: Hash tables configured (established 4096 bind 4096)
[ 0.768287] TCP: reno registered
[ 0.771420] UDP hash table entries: 256 (order: 2, 20480 bytes)
[ 0.777804] UDP-Lite hash table entries: 256 (order: 2, 20480 bytes)
[ 0.785277] NET: Registered protocol family 1
[ 0.791203] RPC: Registered named UNIX socket transport module.
[ 0.797056] RPC: Registered udp transport module.
[ 0.801717] RPC: Registered tcp transport module.
[ 0.806496] RPC: Registered tcp NFSv4.1 backchannel transport module.
[ 0.814383] hw perfevents: enabled with ARMv7 Cortex-A9 PMU driver, 7 counters available
[ 0.828266] futex hash table entries: 512 (order: 3, 32768 bytes)
[ 0.841827] jffs2: version 2.2. (NAND) (SUMMARY) c 2001-2006 Red Hat, Inc.
[ 0.849398] msgmni has been set to 989
[ 0.854655] io scheduler noop registered
[ 0.858617] io scheduler deadline registered
[ 0.862868] io scheduler cfq registered (default)
[ 0.887625] dma-pl330 f8003000.ps7-dma: Loaded driver for PL330 DMAC-2364208
[ 0.894535] dma-pl330 f8003000.ps7-dma: DBUFF-128x8bytes Num_Chans-8 Num_Peri-4 Num_Events-16
[ 0.906786] e0001000.serial: ttyPS0 at MMIO 0xe0001000 (irq = 82, base_baud = 3125000) is a xuartps
[ 0.916208] console [ttyPS0] enabled
[ 0.916208] console [ttyPS0] enabled
[ 0.923261] bootconsole [earlycon0] disabled
[ 0.923261] bootconsole [earlycon0] disabled
[ 0.934678] xdevcfg f8007000.ps7-dev-cfg: ioremap 0xf8007000 to e0866000
[ 0.944496] [drm] Initialized drm 1.1.0 20060810
[ 0.982856] brd: module loaded
[ 1.005097] loop: module loaded
[ 1.021051] m25p80 spi0.0: found s25fl128s1, expected n25q128
[ 1.026984] m25p80 spi0.0: s25fl128s1 (16384 Kbytes)
[ 1.032008] 4 ofpart partitions found on MTD device spi0.0
[ 1.037468] Creating 4 MTD partitions on "spi0.0":
[ 1.042194] 0x000000000000-0x000000400000 : "qspi-fsbl-uboot"
[ 1.056411] 0x000000400000-0x000000900000 : "qspi-linux"
[ 1.066853] 0x000000900000-0x000000920000 : "qspi-device-tree"
[ 1.077593] 0x000000920000-0x000001000000 : "qspi-user"
[ 1.097217] e1000e: Intel(R) PRO/1000 Network Driver - 2.3.2-k
[ 1.102969] e1000e: Copyright(c) 1999 - 2013 Intel Corporation.
[ 1.114771] libphy: XEMACPS mii bus: probed
[ 1.121070] xemacps e000b000.ps7-ethernet: invalid address, use assigned
[ 1.128174] xemacps e000b000.ps7-ethernet: MAC updated 4e:96:07:9c:de:93
[ 1.135325] xemacps e000b000.ps7-ethernet: pdev->id -1, baseaddr 0xe000b000, irq 54
[ 1.150692] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[ 1.157754] ehci-pci: EHCI PCI platform driver
[ 1.162833] ULPI transceiver vendor/product ID 0x0424/0x0007
[ 1.168540] Found SMSC USB3320 ULPI transceiver.
[ 1.173098] ULPI integrity check: passed.
[ 1.178048] zynq-ehci zynq-ehci.0: Xilinx Zynq USB EHCI Host Controller
[ 1.185306] zynq-ehci zynq-ehci.0: new USB bus registered, assigned bus number 1
[ 1.215917] zynq-ehci zynq-ehci.0: irq 53, io mem 0x00000000
[ 1.235904] zynq-ehci zynq-ehci.0: USB 2.0 started, EHCI 1.00
[ 1.248654] hub 1-0:1.0: USB hub found
[ 1.252650] hub 1-0:1.0: 1 port detected
[ 1.260595] usbcore: registered new interface driver usb-storage
[ 1.269440] mousedev: PS/2 mouse device common for all mice
[ 1.277130] i2c /dev entries driver
[ 1.289800] zynq-edac f8006000.ps7-ddrc: ecc not enabled
[ 1.296053] cpufreq_cpu0: failed to get cpu0 regulator: -19
[ 1.304439] Xilinx Zynq CpuIdle Driver started
[ 1.310838] sdhci: Secure Digital Host Controller Interface driver
[ 1.317162] sdhci: Copyright(c) Pierre Ossman
[ 1.321437] sdhci-pltfm: SDHCI platform and OF driver helper
[ 1.328663] mmc0: no vqmmc regulator found
[ 1.332686] mmc0: no vmmc regulator found
[ 1.375838] mmc0: SDHCI controller on e0100000.ps7-sdio [e0100000.ps7-sdio] using ADMA
[ 1.391260] usbcore: registered new interface driver usbhid
[ 1.396870] usbhid: USB HID core driver
[ 1.412478] TCP: cubic registered
[ 1.415882] NET: Registered protocol family 17
[ 1.420853] Registering SWP/SWPB emulation handler
[ 1.428183] regulator-dummy: disabling
[ 1.432429] drivers/rtc/hctosys.c: unable to open rtc device (rtc0)
[ 1.448882] mmc0: new high speed SDHC card at address b368
[ 1.457326] mmcblk0: mmc0:b368 USD 7.45 GiB
[ 1.467669] mmcblk0: p1 p2
[ 1.467686] ALSA device list:
[ 1.467690] No soundcards found.
[ 1.512785] EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null)
[ 1.520978] VFS: Mounted root (ext4 filesystem) on device 179:2.
[ 1.529301] devtmpfs: mounted
[ 1.532581] Freeing unused kernel memory: 200K (c06ea000 - c071c000)
INIT: version 2.88 booting
[info] Using makefile-style concurrent boot in runlevel S.
[....] Starting the hotplug events dispatcher: udevd[ 3.223839] udevd[701]: starting version 175
. ok
[ ok ] Synthesizing the initial hotplug events...done.
[ ok ] Waiting for /dev to be fully populated...done.
[....] Setting preliminary keymap...[ 5.308635] random: mktemp urandom read with 92 bits of entropy available
[ 8.727210] random: nonblocking pool is initialized
done.
[ ok ] Activating swap...done.
[ 11.596128] EXT4-fs (mmcblk0p2): re-mounted. Opts: (null)
[ ok ] Cleaning up temporary files....
[ ok ] Activating lvm and md swap...done.
[....] Checking file systems...fsck from util-linux 2.20.1
done.
[ ok ] Mounting local filesystems...done.
[ ok ] Activating swapfile swap...done.
[ ok ] Cleaning up temporary files....
[ ok ] Setting kernel variables ...done.
[....] Setting up resolvconf.../etc/resolvconf/update.d/libc: Warning: /etc/resolv.conf is not a symbolic link to /etc/resolvconf/run/resolv.conf
done.
[....] Configuring network interfaces...Internet Systems Consortium DHCP Client 4.2.2
Copyright 2004-2011 Internet Systems Consortium.
All rights reserved.
For info, please visit https://www.isc.org/software/dhcp/

Listening on LPF/eth0/4e:96:07:9c:de:93
Sending on LPF/eth0/4e:96:07:9c:de:93
Sending on Socket/fallback
DHCPREQUEST on eth0 to 255.255.255.255 port 67
[ 22.376773] xemacps e000b000.ps7-ethernet: Set clk to 25000000 Hz
[ 22.382921] xemacps e000b000.ps7-ethernet: link up (100/FULL)
DHCPREQUEST on eth0 to 255.255.255.255 port 67
DHCPNAK from 192.168.3.1
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 6
DHCPREQUEST on eth0 to 255.255.255.255 port 67
DHCPOFFER from 192.168.3.1
DHCPACK from 192.168.3.1
/etc/resolvconf/update.d/libc: Warning: /etc/resolv.conf is not a symbolic link to /etc/resolvconf/run/resolv.conf
bound to 192.168.3.2 -- renewal in 37814 seconds.
done.
[ ok ] Cleaning up temporary files....
[info] Setting console screen modes.
setterm: cannot (un)set powersave mode: Inappropriate ioctl for device
[info] Skipping font and keymap setup (handled by console-setup).
[ ok ] Setting up console font and keymap...done.
INIT: Entering runlevel: 2
[info] Using makefile-style concurrent boot in runlevel 2.
[ ok ] Starting enhanced syslogd: rsyslogd.
[ ok ] Starting periodic command scheduler: cron.
[ ok ] Starting system message bus: dbus.
[ ok ] Starting OpenBSD Secure Shell server: sshd.


(2014/01/31:追記)
Debian Wheezy 7.5 を使うことができるようになった。
詳しくは、”ZYBOのDigilent Linux KernelにARMhfのRoot File Systemsを入れる2”を参照して下さい。
  1. 2015年01月25日 19:46 |
  2. Linux
  3. | トラックバック:0
  4. | コメント:0

コメント

コメントの投稿


管理者にだけ表示を許可する

トラックバック URL
http://marsee101.blog.fc2.com/tb.php/3056-0ca9421a
この記事にトラックバックする(FC2ブログユーザー)