codesnake / linux-amlogic-old

Linux kernel from Amlogic
Other
28 stars 36 forks source link

Add DTD files for M82_1G and M82_2G boards, also known as MXIII #1

Closed steeve closed 9 years ago

steeve commented 9 years ago

These S802 boards come in 2 flavours:

They were extracted from the firmwares at http://www.bee-link.com/en/article.php?id=134

Thank you for your great work.

steeve commented 9 years ago

I should add that I've checked for doubles in case they were already there under a different name with shasum.

$ shasum * | sort
052a1caa49ae698c009e16d529ff24d5792e3046  meson8b_m202_512M.dtd
09d8697e68f4486418c676ea43c5260eebc29a2d  meson8_k200a_2G.dtd
0ece1569c94fa091226a5591e10e2d25cc07387d  meson8_k200a_1G.dtd
1f9ff125c14ffc1295292b7603facbb6a7fa13cd  Makefile
259a2a9464f5c0a18b6b1c62092dbdcf836b9a90  meson6tvc_h15.dtd
25a144a0fd63fc4e8b126c3a33264bd9c65283c9  meson8m2_pxp.dtd
2a75d06a4c5db7a0303e620d953ad5b05238c04f  meson6_g33_1G.dtd
306804631b35f1c947b1e1277557064eb99e5557  meson6tvd_ref_512m.dtd
35d8f6b5e30abf1c8b4d5f2b7755d3af8be2cc55  meson8_k200b_1G_emmc_sdio.dtd
36d8a4074b76278e9353857520ceab76b3ef041c  meson8_k101_512M.dtd
36f16d2cb64ac07799bca7de99928726fd0bb2ba  aml_top.dtd
38cadb3dd691f38e33e9a9b4dd4c0546188341aa  meson8m2_n100_1G.dtd
39ecba199f7a7d8a821641824ee3beaed19f5926  meson6tvc_h15_512m.dtd
3c1dc532ed3497dec2521d675bbb514b30420968  meson8_m82_1G.dtd <==================
3d0c363fa06f47dedb0d9d0f819f4fb4510e5cff  meson6_g18_512M.dtd
4090f09a998aedbcf6a8190207a4e1f3540fb31d  meson8_k200b_2G.dtd
46a71061767081c46e5f6af765fdb313dbe5e589  meson8_k200a_2G_4k2k.dtd
4cb1a12d3551c7906bce7d9c08e10584b9e0b8b7  meson8_k160_v1.dtd
5136fb42f4e72000a15e4b42a6f9760ceef84b93  meson6tv_ref.dtd
592d88d4bf7897cba7635fa3065f899fa57cbc26  meson6tvd_ref.dtd
5c36a43dd1e2ed3747c7fdd9e4c51198b305a862  meson8_k200b_1G_emmc_sdhc.dtd
5e4175919884ed07c2454f24b3c45dcc55a02910  meson8_k100_1G.dtd
5fb6c0be4b62edc4949af00d51af7a7ec04d30e7  meson8b_m200_1G.dtd
5fd731f511cac7b5a0bfe5b31b404180e7748899  meson8_k100_2G.dtd
6dfd0a721ebaf8de13403f9b5d16530d193ccffb  meson8_k150_v1.dtd
6e48e9e808846c692d071558d97efb171db40b27  meson6_g33_1212.dtd
6fccea9207622e31e14563e6fdbfaa84e1dfa9f4  meson8b_pxp.dtd
70d8467629759272037d86ed1d55db024bf60e6b  meson8_k101_1G.dtd
74a97f6a386c3ad78896747175ce472a47f95a1f  meson8_ZeBu.dtd
75f7fa05efcfc6e6990f1384e2db20f5dcc23f44  meson8m2_skt.dtd
76f5ff87c5d20be132f2376b660a836080628d7b  meson6_g18.dtd
7d178b62a31b53b04d6ef5b58ef5bbacaaece4c0  meson8b_m201_512M.dtd
840f165f40bc7cafa37ea7642273a4fe8971eecc  meson8m2_n200_2G.dtd
8f613c10d392326ee3de88fa0f4cfcd656237ccc  meson6_g33_512M.dtd
a2c9f06672a02ba99a674f1f853888eb61ca0751  meson8_k200a_2G_hdmiin.dtd
a8ca106ca9583681d4f4599c47d2e640f8b83d6d  meson8_k200b_2G_hdmiin.dtd
ac9fc0c79e2c72d9eaccca7aa8684680357ad961  meson8_k200b_2G_4k2k.dtd
b5acb0b5359e7d8b0898e0dbdb0a66b2eeebb0b9  meson8_skt.dtd
b7b555e9403004707e4a8d68363514e531ffab87  meson8b_skt.dtd
be5ddc7f610f1491dac728d952c602d4dcbfa0fa  meson8b_m201_1G.dtd
c3ce3fc98690de3c6539279c7b87699dfdeaa108  meson8m2_n101_512M.dtd
caeac17ec9d57ecf8f66ac0da8d0633b352eb112  meson8b_m100_1G.dtd
dc09a260b5dfb6bb263590f93008d33030050ba1  meson8b_m102_1G.dtd
dd7f843d8dfeb1d5528bf6d44b00f00b12a122b1  meson8_k102_v1.dtd
e1e82d9c05eb47fdc8fa5f670f12309604135227  meson8m2_n01_2G.dtd
e29142090423dd98dcef7ea926210c8728bd5060  meson6_g35.dtd
ea0c5ff4d86cdd26a57bc605a42806c5d3b0d7e4  meson6_g24.dtd
ead21d59933380bdd0ca40a30b97ec2b97501185  meson8_m82_2G.dtd <==================
f388e92a51c59355a6fdc08f516d79da9e349e14  meson6_skt.dtd
fd1e0207b86de7a61e7acdab23044cc3ebfd8d35  meson8_pxp.dtd
fe18afef47841b32fbb381d5ecfe0270b4ae33d2  meson8b_m101_512M.dtd
codesnake commented 9 years ago

Hi Steeve, It seems that MXIII uses the same K200 board as the M8 box. So you can use existing Meson8_k200a_1G.dtd and Meson8_k200a_2g.dtd. They may look a liitle different from the ones that you extracted from MIII firmwares, but that's mainly because the extracted device trees don't have comments.

steeve commented 9 years ago

Indeed the update files has the k200 prefix, which indeed would point in that direction.

The weird thing though is that I've tried to use dtc to do a dts to dts conversion, for instance:

$ dtc -I dts meson8_k200a_1G.dtd -O dts -o tmp.dtd
$ diff tmp.dtd meson8_m82_1G.dtd

And I'm finding some significant differences, such as:

-       phys_offset = <0x200000>;
-       linux,total-memory = <0x3fe00000>;
+       phys_offset = <0x0>;
+       linux,total-memory = <0x40000000>;

I guess I should really test building the firmware and see if it boots

codesnake commented 9 years ago

Please try to build with meson8_k200a_1G.dtd and let me know if it works.

steeve commented 9 years ago

Will do, many thanks

steeve commented 9 years ago

Alright, I just tested it. The kernel boots, but no output to HDMI. Here is the console log: http://pastebin.com/pMDMcXCq

I've just unpacked/repacked/signed your OTA update with the new dtb.

I'm going to test the extracted dtd.

steeve commented 9 years ago

Weird, with the extracted dtd, the kernel doesn't boot...

Starting kernel ...

[   28.070009@0] BUG: soft lockup - CPU#0 stuck for 23s! [swapper/0:1]
[   28.072125@0] Kernel panic - not syncing: softlockup: hung tasks
[   28.076615@0] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 3.10.57 #1
[   28.082774@0] [<c0014bec>] (unwind_backtrace+0x0/0xf8) from [<c0011cd8>] (show_stack+0x10/0x14)
[   28.091442@0] [<c0011cd8>] (show_stack+0x10/0x14) from [<c0769400>] (panic+0x8c/0x1e4)
[   28.099330@0] [<c0769400>] (panic+0x8c/0x1e4) from [<c008dec0>] (watchdog_timer_fn+0x1f8/0x270)
[   28.107999@0] [<c008dec0>] (watchdog_timer_fn+0x1f8/0x270) from [<c0050014>] (__run_hrtimer.isra.13+0x88/0x108)
[   28.118053@0] [<c0050014>] (__run_hrtimer.isra.13+0x88/0x108) from [<c0050dcc>] (hrtimer_run_queues+0x160/0x188)
[   28.128195@0] [<c0050dcc>] (hrtimer_run_queues+0x160/0x188) from [<c003ca5c>] (run_local_timers+0x8/0x14)
[   28.137729@0] [<c003ca5c>] (run_local_timers+0x8/0x14) from [<c003ca98>] (update_process_times+0x30/0x68)
[   28.147265@0] [<c003ca98>] (update_process_times+0x30/0x68) from [<c0074f70>] (tick_handle_periodic+0x18/0x7c)
[   28.157233@0] [<c0074f70>] (tick_handle_periodic+0x18/0x7c) from [<c001c254>] (meson_timer_interrupt+0x64/0x94)
[   28.167288@0] [<c001c254>] (meson_timer_interrupt+0x64/0x94) from [<c008e8d8>] (handle_irq_event_percpu+0x34/0x178)
[   28.177690@0] [<c008e8d8>] (handle_irq_event_percpu+0x34/0x178) from [<c008ea58>] (handle_irq_event+0x3c/0x5c)
[   28.187659@0] [<c008ea58>] (handle_irq_event+0x3c/0x5c) from [<c0091708>] (handle_fasteoi_irq+0xf8/0x13c)
[   28.197194@0] [<c0091708>] (handle_fasteoi_irq+0xf8/0x13c) from [<c008e1f0>] (generic_handle_irq+0x24/0x38)
[   28.206903@0] [<c008e1f0>] (generic_handle_irq+0x24/0x38) from [<c000f074>] (handle_IRQ+0x68/0x90)
[   28.215829@0] [<c000f074>] (handle_IRQ+0x68/0x90) from [<c0008450>] (gic_handle_irq+0x3c/0x5c)
[   28.224411@0] [<c0008450>] (gic_handle_irq+0x3c/0x5c) from [<c000dd00>] (__irq_svc+0x40/0x70)
[   28.232902@0] Exception stack(0xe1a79eb0 to 0xe1a79ef8)
[   28.238104@0] 9ea0:                                     00000001 00000000 000c03c2 fe040000
[   28.246427@0] 9ec0: 00000001 ffff8ad8 c0afa0c0 e1a72ec0 00000000 00000000 c0b0c4ec 00000000
[   28.254748@0] 9ee0: 00000001 e1a79ef8 c076759c c001bc68 20000113 ffffffff
[   28.261512@0] [<c000dd00>] (__irq_svc+0x40/0x70) from [<c001bc68>] (meson_get_cpu_ctrl_addr+0x4/0x18)
[   28.270700@0] [<c001bc68>] (meson_get_cpu_ctrl_addr+0x4/0x18) from [<c076759c>] (meson_boot_secondary+0x54/0x13c)
[   28.280928@0] [<c076759c>] (meson_boot_secondary+0x54/0x13c) from [<c0766d88>] (boot_secondary+0x18/0x28)
[   28.290463@0] [<c0766d88>] (boot_secondary+0x18/0x28) from [<c0766e08>] (__cpu_up+0x70/0x118)
[   28.298957@0] [<c0766e08>] (__cpu_up+0x70/0x118) from [<c07677fc>] (_cpu_up+0xd4/0x154)
[   28.306932@0] [<c07677fc>] (_cpu_up+0xd4/0x154) from [<c07678e0>] (cpu_up+0x64/0x84)
[   28.314649@0] [<c07678e0>] (cpu_up+0x64/0x84) from [<c0ac4114>] (smp_init+0x9c/0xd4)
[   28.322365@0] [<c0ac4114>] (smp_init+0x9c/0xd4) from [<c0abaaf4>] (kernel_init_freeable+0x78/0x1cc)
[   28.331379@0] [<c0abaaf4>] (kernel_init_freeable+0x78/0x1cc) from [<c0764858>] (kernel_init+0x8/0xe4)
[   28.340566@0] [<c0764858>] (kernel_init+0x8/0xe4) from [<c000e1d8>] (ret_from_fork+0x14/0x3c)
codesnake commented 9 years ago

But you even use different kernel from this one. You have 3.10.57 version in your log, but this has 3.10.33 version number.

steeve commented 9 years ago

Thanks for your quick answer Where do you see 3.10.33? I've used the same kernel/ramdisk when mkbootimg

codesnake commented 9 years ago

I see 3.10.57: [ 28.076615@0] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 3.10.57 #1

steeve commented 9 years ago

I'm using the kernel you provided in OpenELEC-CodeSnake-Meson8-K200-devel-320a148.zip I shouldn't ?

You on IRC maybe?

codesnake commented 9 years ago

No, you use different kernel from the one in this repository. I never used kernel 3.10.57 in my builds.

steeve commented 9 years ago

Ok I must have screwed up somewhere. Anyway, many thanks. I'll reopen the PR if need be