OT: ARM a Linux
Michal Grunt
michal.grunt na vynet.cz
Pátek Březen 7 16:23:10 CET 2014
Tak už to částečně jde. Těch průserů tam bylo více:
- špatný argument v u-bootu v bootagrs (mělo být bootargs console=ttyS0,115200)
- špatná verze kompileru (tuším že jsem používal 4.7.1 a ta si s něčím nerozuměla, dal jsem tam sourcerycode 4.6.1)
Nicméně když se spustí kernel tak to vyhodí plno chyb (od řádku [0.507311] PC:... je to více méně podobné SP, LR, IP, FP atd. až asi do šestnácté vteřiny, pak je konec). Takže jdu zkoumat dál, proč...
Starting kernel ...
[ 0.000000] Initializing cgroup subsys cpu
[ 0.000000] Linux version 2.6.34 (root na pole01) (gcc version 4.8.2 (4.8.2-16+8) ) #13 Fri Mar 7 13:52:17 CET 2014
[ 0.000000] CPU: ARMv7 Processor [412fc094] revision 4 (ARMv7), cr=10c53c7f
[ 0.000000] CPU: VIPT nonaliasing data cache, VIPT nonaliasing instruction cache
[ 0.000000] Machine: AMLOGIC MESON3 8726M SKT SH
[ 0.000000] Ignoring unrecognised tag 0x00000000
[ 0.000000] Memory policy: ECC disabled, Data cache writeback
[ 0.000000] BUG: mapping for 0x84000000 at 0xc4000000 overlaps vmalloc space
[ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total pages: 214528
[ 0.000000] Kernel command line: console=ttyS0,115200 root=/dev/mtdblock2 rw rootfstype=yaffs2 init=/sbin/init
[ 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: 64MB 398MB 384MB = 846MB total
[ 0.000000] Memory: 849812k/849812k available, 16492k reserved, 393216K highmem
[ 0.000000] Virtual kernel memory layout:
[ 0.000000] vector : 0xffff0000 - 0xffff1000 ( 4 kB)
[ 0.000000] fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB)
[ 0.000000] DMA : 0xffc00000 - 0xffe00000 ( 2 MB)
[ 0.000000] vmalloc : 0xe8800000 - 0xf0000000 ( 120 MB)
[ 0.000000] lowmem : 0xc0000000 - 0xe8000000 ( 640 MB)
[ 0.000000] pkmap : 0xbfe00000 - 0xc0000000 ( 2 MB)
[ 0.000000] modules : 0xbf000000 - 0xbfe00000 ( 14 MB)
[ 0.000000] .init : 0xc0008000 - 0xc0037000 ( 188 kB)
[ 0.000000] .text : 0xc0037000 - 0xc0828024 (8133 kB)
[ 0.000000] .data : 0xc082a000 - 0xc0890a00 ( 411 kB)
[ 0.000000] SLUB: Genslabs=11, HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[ 0.000000] Hierarchical RCU implementation.
[ 0.000000] NR_IRQS:128
[ 0.000000] Console: colour dummy device 80x30
[ 0.000000] console [ttyS0] enabled
[ 0.178443] Calibrating delay loop... 1599.07 BogoMIPS (lpj=7995392)
[ 0.420143] Mount-cache hash table entries: 512
[ 0.422163] Initializing cgroup subsys cpuacct
[ 0.426219] Initializing cgroup subsys freezer
[ 0.430713] CPU: Testing write buffer coherency: ok
[ 0.436185] Unhandled fault: alignment exception (0x801) at 0xe7c37fa6
[ 0.442057] Internal error: : 801 [#1]
[ 0.445749] last sysfs file:
[ 0.448701] Modules linked in:
[ 0.451742] CPU: 0 Not tainted (2.6.34 #13)
[ 0.456266] PC is at devtmpfs_init+0x20/0xb4
[ 0.460512] LR is at driver_init+0x10/0x30
[ 0.464594] pc : [<c001caa8>] lr : [<c001ca3c>] psr: 80000013
[ 0.464599] sp : e7c37fa0 ip : e7c37fc8 fp : e7c37fc4
[ 0.476051] r10: 00000000 r9 : 00000000 r8 : 00000000
[ 0.481261] r7 : 00000000 r6 : 00000000 r5 : c0036288 r4 : c0036288
[ 0.487773] r3 : 00000035 r2 : 20000013 r1 : 3537303d r0 : 65646f6d
[ 0.494287] Flags: Nzcv IRQs on FIQs on Mode SVC_32 ISA ARM Segment kernel
[ 0.501579] Control: 10c53c7f Table: 80004059 DAC: 00000017
[ 0.507309]
[ 0.507311] PC: 0xc001ca28:
[ 0.511562] ca28 e89da800 e1a0c00d e92dd800 e24cb004 eb000012 ebfffe49 ebfffe8b ebfffe9b
[ 0.519724] ca48 ebffffe8 ebffffcb ebfffe74 ebffffde e89da800 e1a0c00d e92dd800 e24cb004
[ 0.527885] ca68 e3a01000 e1a02001 eb09b766 e30f3680 e34c3084 e5830000 e3a00001 e89da800
[ 0.536047] ca88 e1a0c00d e92dd830 e24cb004 e24dd010 e30a3f04 e34c3079 e8b30003 e1d330b0
[ 0.544209] caa8 e50b001e e59f0084 e14b31b6 e50b101a eb031500 e2505000 0a000005 e30a0e88
[ 0.552370] cac8 e1a01005 e34c0079 eb17c81c e1a00005 ea000014 e24b101e e59f0050 eb02c674
[ 0.560532] cae8 e3700a01 e1a04000 9a000007 e1a01004 e30a0ebc e34c0079 eb17c810 e59f002c
[ 0.568694] cb08 eb031452 e1a00004 ea000006 e30137d8 e34c308d e30a0ee8 e34c0079 e5834000
-----Original Message-----
From: Hw-list [mailto:hw-list-bounces na list.hw.cz] On Behalf Of d.petr
Sent: Thursday, March 06, 2014 2:50 PM
To: HW-news
Subject: Re: OT: ARM a Linux
Michal Grunt wrote:
>...
> Takže nějaký základ v kernelu je, ale asi ne všechen. Našel jsem si
>tedy kernel
> https://github.com/J1nx-Hackable-Gadgets/buildroot-linux-kernel-m3
> upravil soubor meson_reff16_defconfig (zapnul podporu tuneru MXL101) a kernel zkompiloval.
>
> Ale teď nevím jak správně s výsledným uImage naložit. Zkusil jsem
> toto: když jsem stáhnul zmiňovaný alternativní firmware
> http://www.j1nx.nl/downloads/?did=29
> tak jsem v ZIPu nahradil uImage-2.6.34 mým souborem (přejmenovaným na uImage-2.6.34).
> Firmware (ZIP) jsem nahrál do zařízení. Nabootoval jsem z SD karty clockworkmod (podržením resetu a zapnutím napájení a vybral z menu install ZIP from SD) - takto jsem postupoval i s neupraveným ZIPem a v pohodě. Po nahrání restartuji a sleduji přes UART (na desce byl vyvedený, ale bez konektoru, takže jsem napájel konektor a připojil k PC přes USB převodník) co to bude dělat.
> Naběhne u-boot a po něm:
> Uncompressing Kernel Image ... OK
> Starting kernel ...
>
> A to je vše, dál se nic neděje.
ARM je jedna tragédie a u-boot druhá. Ale nepodařilo by se (jestli se opravdu jedná o totožné jádro) zkompilovat potřebné věci jako moduly a přidat tam jen je do /lib/modules/... ?
PM
_______________________________________________
HW-list mailing list - sponsored by www.HW.cz Hw-list na list.hw.cz http://list.hw.cz/mailman/listinfo/hw-list
Další informace o konferenci Hw-list