42 42
chocho

Armbian for Amlogic S912

Recommended Posts

Simple question, do we have to reinstall a full version each time bables make a release or an apt-get upgrade is enough ? 

I've saw that the firmware was updated last time I did an upgrade (version 0.24 to 0.25 I think).

Share this post


Link to post
Share on other sites

Alas, I don't have the technical ability to access network repositories for updates. Another problem is that not all changes can be carried out through regular updates. I was thinking about this question, but have not yet found a simple (for ordinary users) solution.

Share this post


Link to post
Share on other sites

 I wonder on other models S912, the system shuts down normally ?

 VONTAR Z5(s912, 2G, 16G) under Armbian_5.24_S9xxx_mate_Ubuntu_xenial_3.14.29_desktop_20170205.img shuts down normally.

 

But something  strange happens:

1. success boot without any dtb.img in SD card boot partition(from  /dtd*). Ethernet working, wifi working and Bluetooth not working.

2. success boot with native dtb.img from Z5 OTA upgrade image.  Ethernet working, wifi and Bluetooth not working.

    Z5_dtb: https://yadi.sk/d/zR3JgyOi3DpXPG

Share this post


Link to post
Share on other sites

Has anybody tried to build and run a mainline Linux kernel on a S912 device?

I do have a Beelink GT1 and would like to use a 4.9.x kernel, no graphics required for my headless server, just ethernet and maybe wifi for later. Currently I was able to boot the GT1 with an Armbian image from @balbes150, but this image has only a 3.14.29 kernel.

 

Any advice and pointers are really appreciated.

Share this post


Link to post
Share on other sites

Has anybody tried to build and run a mainline Linux kernel on a S912 device?

 

I do have a Beelink GT1 and would like to use a 4.9.x kernel, no graphics required for my headless server, just ethernet and maybe wifi for later. Currently I was able to boot the GT1 with an Armbian image from @balbes150, but this image has only a 3.14.29 kernel.

 

Any advice and pointers are really appreciated.

 

I have not tried any myself but

- http://linux-meson.com/ seems an effort to run latest kernel on amlogic

- https://forums.gentoo.org/viewtopic-t-1058530.html (raspberry pi 3) runs latest kernel

and

- I believe also ubuntu has a generic latest arm64 kernel

But, if any of those sufficiently support GT1 (e.g. network) is to be evaluated or enhanced.

Share this post


Link to post
Share on other sites

I would like to use a H96 Pro S912 box with armbian. It's the same hardware as the R-BOX reviewed here

I've opened the box, soldered the serial connector and connect to my laptop.

 

The log file is here.

 

There is no HDMI signal and nothing happens even if I wait half an hour.

 

What could I try to get it boot to armbian?

 

What is the image trying to run ? Delete media file "dtb.img" and try to run it without him. If not start, try to use a USB flash drive. Show the output of "printenv" and "help" from the console UARTиз u-boot.

Share this post


Link to post
Share on other sites

What is the image trying to run ? Delete media file "dtb.img" and try to run it without him. If not start, try to use a USB flash drive. Show the output of "printenv" and "help" from the console UARTиз u-boot.

I tried to run a 20161218 jessi image. I also tried without the dtb.img -> same result.

On the uart console there is no response to anything I type.

When should I type printenv or help?

During the boot?

 

I preparing an usb stick right now to try it. (Armbian_5.24_Amlogic-s905x_Debian_jessie_3.14.29_CPU_OVER_20170202.img)

 

Edit:

OK, I tried from an USB stick.

The log looks similar to me: http://pel.hu/down/20170218220646.log

It stucks at the same place.

 

The log when the android boots: http://pel.hu/down/20170218222630.log

At the end there is a printenv too.


Share this post


Link to post
Share on other sites

I tried again this morning and I was able to stop the boot process with CTRL-C so I can type printenv and help.

This is the result:

gxm_q200_v1#printenv
EnableSelinux=enforcing
baudrate=115200
bootargs=rootfstype=ramfs init=/init console=ttyS0,115200 no_console_suspend earlyprintk=aml-uart,0xc81004c0 ramoops.pstore_en=1 ramoops.record_size=0x8000 ramoops.console_size=0x4000 androidboot.selinux=permissive androidboot.selinux=enforcing logo=osd1,loaded,0x3d800000,576cvbs maxcpus=8 vout=576cvbs,enable hdmimode=1080p60hz cvbsmode=576cvbs hdmitx= cvbsdrv=0 androidboot.firstboot=0 jtag=apee androidboot.hardware=amlogic mac=78:c2:c0:92:9e:0a androidboot.mac=78:c2:c0:92:9e:0a
bootcmd=run start_autoscript;run storeboot;
bootdelay=1
bootfromnand=0
bootfromrecovery=0
bootup_offset=0x1080240
bootup_size=0x3f4846
cmdline_keys=if keyman init 0x1234; then if keyman read usid ${loadaddr} str; then setenv bootargs ${bootargs} androidboot.serialno=${usid};fi;if keyman read mac ${loadaddr} str; then setenv bootargs ${bootargs} mac=${mac} androidboot.mac=${mac};fi;if keyman read deviceid ${loadaddr} str; then setenv bootargs ${bootargs} androidboot.deviceid=${deviceid};fi;fi;
cvbs_drv=0
cvbsmode=576cvbs
display_bpp=16
display_color_bg=0
display_color_fg=0xffff
display_color_index=16
display_height=576
display_layer=osd1
display_width=720
dtb_mem_addr=0x1000000
ethact=dwmac.c9410000
ethaddr=00:15:18:01:81:31
factory_reset_poweroff_protect=echo wipe_data=${wipe_data}; echo wipe_cache=${wipe_cache};if test ${wipe_data} = failed; then run init_display; run storeargs;if mmcinfo; then run recovery_from_sdcard;fi;if usb start 0; then run recovery_from_udisk;fi;run recovery_from_flash;fi; if test ${wipe_cache} = failed; then run init_display; run storeargs;if mmcinfo; then run recovery_from_sdcard;fi;if usb start 0; then run recovery_from_udisk;fi;run recovery_from_flash;fi;
fb_addr=0x3d800000
fb_height=1080
fb_width=1920
fdt_high=0x20000000
firstboot=0
gatewayip=10.18.9.1
hdmimode=1080p60hz
hostname=arm_gxbb
identifyWaitTime=750
init_display=osd open;osd clear;imgread pic logo bootup $loadaddr;bmp display $bootup_offset;bmp scale
initargs=rootfstype=ramfs init=/init console=ttyS0,115200 no_console_suspend earlyprintk=aml-uart,0xc81004c0 ramoops.pstore_en=1 ramoops.record_size=0x8000 ramoops.console_size=0x4000 androidboot.selinux=permissive
ipaddr=10.18.9.97
jtag=apee
loadaddr=1080000
mac=78:c2:c0:92:9e:0a
maxcpus=8
netmask=255.255.255.0
outputmode=576cvbs
preboot=run factory_reset_poweroff_protect;run upgrade_check;run init_display;run storeargs;run upgrade_key;forceupdate;run switch_bootmode;
reboot_mode=cold_boot
recovery_from_flash=setenv bootargs ${bootargs} aml_dt=${aml_dt} recovery_part={recovery_part} recovery_offset={recovery_offset};if imgread kernel ${recovery_part} ${loadaddr} ${recovery_offset}; then wipeisb; bootm ${loadaddr}; fi
recovery_from_sdcard=setenv bootargs ${bootargs} aml_dt=${aml_dt} recovery_part={recovery_part} recovery_offset={recovery_offset};if fatload mmc 0 ${loadaddr} aml_autoscript; then autoscr ${loadaddr}; fi;if fatload mmc 0 ${loadaddr} recovery.img; then if fatload mmc 0 ${dtb_mem_addr} dtb.img; then echo sd dtb.img loaded; fi;wipeisb; bootm ${loadaddr};fi;
recovery_from_udisk=setenv bootargs ${bootargs} aml_dt=${aml_dt} recovery_part={recovery_part} recovery_offset={recovery_offset};if fatload usb 0 ${loadaddr} aml_autoscript; then autoscr ${loadaddr}; fi;if fatload usb 0 ${loadaddr} recovery.img; then if fatload usb 0 ${dtb_mem_addr} dtb.img; then echo udisk dtb.img loaded; fi;wipeisb; bootm ${loadaddr};fi;
recovery_offset=0
recovery_part=recovery
sdc_burning=sdc_burn ${sdcburncfg}
sdcburncfg=aml_sdc_burn.ini
serverip=10.18.9.113
start_autoscript=if usb start ; then run start_usb_autoscript;fi;if mmcinfo; then run start_mmc_autoscript;fi;
start_mmc_autoscript=if fatload mmc 0 1020000 s905_autoscript; then autoscr 1020000; fi
start_usb_autoscript=if fatload usb 0 1020000 s905_autoscript; then autoscr 1020000; fi
stderr=serial
stdin=serial
stdout=serial
storeargs=setenv bootargs ${initargs} androidboot.selinux=${EnableSelinux} logo=${display_layer},loaded,${fb_addr},${outputmode} maxcpus=${maxcpus} vout=${outputmode},enable hdmimode=${hdmimode} cvbsmode=${cvbsmode} hdmitx=${cecconfig} cvbsdrv=${cvbs_drv} androidboot.firstboot=${firstboot} jtag=${jtag}; setenv bootargs ${bootargs} androidboot.hardware=amlogic;run cmdline_keys;
storeboot=if imgread kernel boot ${loadaddr}; then bootm ${loadaddr}; fi;run update;
switch_bootmode=get_rebootmode;if test ${reboot_mode} = factory_reset; then run recovery_from_flash;else if test ${reboot_mode} = update; then run update;else if test ${reboot_mode} = cold_boot; then run try_auto_burn; fi;fi;fi;
try_auto_burn=update 700 750;
update=run usb_burning; run sdc_burning; if mmcinfo; then run recovery_from_sdcard;fi;if usb start 0; then run recovery_from_udisk;fi;run recovery_from_flash;
upgrade_check=echo upgrade_step=${upgrade_step}; if itest ${upgrade_step} == 3; then run init_display; run storeargs; run update;else fi;
upgrade_key=if gpio input GPIOAO_2; then echo detect upgrade key; sleep 3;if gpio input GPIOAO_2; then run update; fi;fi;
upgrade_step=2
usb_burning=update 1000
wipe_cache=successful
wipe_data=successful

Environment size: 5248/65532 bytes
gxm_q200_v1#help
? - alias for 'help'
aml_sysrecovery- Burning with amlogic format package from partition sysrecovery
amlmmc - AMLMMC sub system
amlnf - aml nand sub-system
amlnf_test- AMLPHYNAND sub-system
autoscr - run script from memory
base - print or set address offset
bmp - manipulate BMP image data
booti - boot arm64 Linux Image image from memory
bootm - boot application image from memory
bootp - boot image via network using BOOTP/TFTP protocol
cbusreg - cbus register read/write
clkmsr - measure PLL clock
cmp - memory compare
cp - memory copy
crc32 - checksum calculation
cvbs - CVBS sub-system
dcache - enable or disable data cache
defenv_reserv- reserve some specified envs after defaulting env
dhcp - boot image via network using DHCP/TFTP protocol
echo - echo args to console
efuse - efuse read/write data commands
efuse_user- efuse user space read write ops
emmc - EMMC sub system
env - environment handling commands
exit - exit script
false - do nothing, unsuccessfully
fatinfo - print information about filesystem
fatload - load binary file from a dos filesystem
fatls - list files in a directory (default /)
fatsize - determine a file's size
fdt - flattened device tree utility commands
forceupdate- forceupdate
get_rebootmode- get reboot mode
go - start application at address 'addr'
gpio - query and control gpio pins
hdmitx - HDMITX sub-system
help - print command description/usage
i2c - I2C sub-system
icache - enable or disable instruction cache
imgread - Read the image from internal flash with actual size
itest - return true/false on integer compare
jtagoff - disable jtag
jtagon - enable jtag
keyman - Unify key ops interfaces based dts cfg
keyunify- key unify sub-system
loop - infinite loop on address range
macreg - ethernet mac register read/write/dump
md - memory display
mm - memory modify (auto-incrementing address)
mmc - MMC sub system
mmcinfo - display MMC info
mw - memory write (fill)
mwm - mw mask function
nm - memory modify (constant address)
open_scp_log- print SCP messgage
osd - osd sub-system
phyreg - ethernet phy register read/write/dump
ping - send ICMP ECHO_REQUEST to network host
printenv- print environment variables
rarpboot- boot image via network using RARP/TFTP protocol
read_temp- cpu temp-system
reboot - set reboot mode and reboot system
reset - Perform RESET of the CPU
rsvmem - reserve memory
run - run commands in an environment variable
saradc - saradc sub-system
saradc_12bit- saradc sub-system
saveenv - save environment variables to persistent storage
sdc_burn- Burning with amlogic format package in sdmmc
sdc_update- Burning a partition with image file in sdmmc card
set_trim_base- cpu temp-system
set_usb_boot- set usb boot mode
setenv - set environment variables
showvar - print local hushshell variables
silent - silent
sleep - delay execution for some time
store - STORE sub-system
systemoff- system off
temp_triming- cpu temp-system
test - minimal test like /bin/sh
tftpboot- boot image via network using TFTP protocol
true - do nothing, successfully
unpackimg- un pack logo image into pictures
update - Enter v2 usbburning mode
usb - USB sub-system
usb_burn- Burning with amlogic format package in usb
usb_update- Burning a partition with image file in usb host
usbboot - boot from USB device
version - print monitor, compiler and linker version
vout - VOUT sub-system
vpu - vpu sub-system
wipeisb - wipeisb
write_trim- cpu temp-system
write_version- cpu temp-system
gxm_q200_v1#

Share this post


Link to post
Share on other sites

I see in the log Armbian run from a USB flash drive that uses a file "dtb.img". You didn't delete it ? For the first check is to start the system WITHOUT a file "dtb.img". Need to see how to run the system with the use of regular dtb data from the internal memory. Add the dtb file is necessary only if without it there is no system start-up. After checking without a dtb file, you can try to use the files from the dtb on the media with names that begin with gxm_q200.

Share this post


Link to post
Share on other sites

I see in the log Armbian run from a USB flash drive that uses a file "dtb.img". You didn't delete it ? For the first check is to start the system WITHOUT a file "dtb.img". Need to see how to run the system with the use of regular dtb data from the internal memory. Add the dtb file is necessary only if without it there is no system start-up. After checking without a dtb file, you can try to use the files from the dtb on the media with names that begin with gxm_q200.

There is no dtb.img file on the pendrive as you suggested in your earlier post.

E:\>dir
 Volume in drive E is BOOT
 Volume Serial Number is BE02-DDE9

 Directory of E:\

2017. 02. 02.  12:47    <DIR>          dtb-3.14.29.old
2017. 02. 02.  12:51    <DIR>          dtb-3.14.29
2017. 02. 02.  12:51    <DIR>          dtb
2017. 02. 02.  12:51             1 589 amlogics905x_init.sh
2017. 02. 02.  12:51                 0 .verbose
2017. 02. 02.  12:47         3 347 318 System.map-3.14.29
2017. 02. 02.  12:51               533 aml_autoscript
2017. 02. 02.  12:51               395 aml_autoscript.zip
2017. 02. 02.  12:51             1 557 armbian_first_run.txt
2017. 02. 02.  12:51             6 944 boot.bmp
2017. 02. 02.  12:47           103 369 config-3.14.29
2017. 02. 02.  12:51         3 930 879 initrd.img-3.14.29
2017. 02. 02.  12:51               871 s905_autoscript
2017. 02. 02.  12:51               799 s905_autoscript.cmd
2017. 02. 02.  12:51         3 930 943 uInitrd
2017. 02. 02.  12:51         3 930 943 uInitrd-3.14.29
2017. 02. 02.  12:47        16 385 208 vmlinuz-3.14.29
2017. 02. 02.  12:47        16 385 208 zImage
              15 File(s)     48 026 556 bytes
               3 Dir(s)      51 230 720 bytes free

Should I delete the dtb folders?

 

I see this:

reading dtb.img

** Unable to read file dtb.img **

Share this post


Link to post
Share on other sites

Sorry, I mistakenly looked at the first log (from SD card). So the built-in dtb data are not suitable for this kernel. I received the following error (related to dwc_otg) on the other TV consoles. You need to find a working dtb file. Either pull the firmware from the regular dtb file and re assemble it under it - (change in file settings dwc_otg).

Can try to run Armbian with another kernel (3.14.79)

Share this post


Link to post
Share on other sites

Another link to the firmware: https://mega.nz/#!U5NQASgZ!WSUivH5juSspjZoDBEAt3wRBq2VJEoi6OsTd4YhpWuY

 

I've tried the latest Armbian_5.24_S9xxx_server_Debian_jessie_3.14.29_20170220.img with s96 dtb -> kernel didn't start. (http://pel.hu/down/20170220194046.log)

 

I've tried Armbian_5.24_Amlogic-s905x_Debian_jessie_3.14.29_20161210.img with s96 dtb -> kernel didn't start 

 

Try this one dtb.

https://yadi.sk/d/dPma5z6w3ELX8Z

Share this post


Link to post
Share on other sites

Hello everyone and thank you.
I have a Quintex Q912 3 g of ram and 32 of rom version of kernel 3.14.29
Let me see if you can give me a hand.
I do not install the multiboot, and tested with 3 pendrivers and 2 different microsd, formatting Fat with particon of 1.3 g, install it from the update, restart in recovery but always gives error. I do not do something wrong or it is not compatible.

And I'm not clear the most advisable version for my Q912 if it can run.

Thank you and greetings. And sorry for my English.

Share this post


Link to post
Share on other sites

Hello everyone and thank you.

I have a Quintex Q912 3 g of ram and 32 of rom version of kernel 3.14.29

Let me see if you can give me a hand.

I do not install the multiboot, and tested with 3 pendrivers and 2 different microsd, formatting Fat with particon of 1.3 g, install it from the update, restart in recovery but always gives error. I do not do something wrong or it is not compatible.

 

And I'm not clear the most advisable version for my Q912 if it can run.

 

Thank you and greetings. And sorry for my English.

You can try the same images I tried in the last few days. I wonder if you can start any of them because your box is very similar to mine.

Share this post


Link to post
Share on other sites

Hello everyone and thank you.

I have a Quintex Q912 3 g of ram and 32 of rom version of kernel 3.14.29

Let me see if you can give me a hand.

I do not install the multiboot, and tested with 3 pendrivers and 2 different microsd, formatting Fat with particon of 1.3 g, install it from the update, restart in recovery but always gives error. I do not do something wrong or it is not compatible.

 

And I'm not clear the most advisable version for my Q912 if it can run.

 

Thank you and greetings. And sorry for my English.

 

Armbian burn the image to a USB flash drive and activate the multiboot with it. Neither of which is in manual format is not required.

 

 

Thank you!

I've tried it with Armbian_5.24_Amlogic-s905x_Debian_jessie_3.14.29_20161210.img with s96 dtb -> kernel didn't start http://pel.hu/down/20170221143741.log

I've tried it with Armbian_5.24_S9xxx_server_Debian_jessie_3.14.29_20170220.img with s96 dtb -> kernel didn't start. http://pel.hu/down/20170221144312.log

 

Tomorrow I will collect another option dtb for tests.

 

Is the dtb file from the firmware (no change). Try it. If the system will give the same log (without starting the kernel). So firmware, the link which You gave, is not suitable.

https://yadi.sk/d/noYaHTxm3ELsxF

Share this post


Link to post
Share on other sites

I do not boot, and connected the usb to otg formatted to fat32 with this burned file.

 

Armbian_5.24_S9xxx_mate_Ubuntu_xenial_3.14.29_desktop_20170205

 

Start the Quintex logo and the monitor is left without signal, it is left 15 min and nothing.
Will I have to modify the dtb? I have no idea how to do it.

Thank you and greetings.

Share this post


Link to post
Share on other sites

Tomorrow I will collect another option dtb for tests.

 

Is the dtb file from the firmware (no change). Try it. If the system will give the same log (without starting the kernel). So firmware, the link which You gave, is not suitable.

https://yadi.sk/d/noYaHTxm3ELsxF

I tried it with the same two images but the kernel didn't start. :(

Summary:

All the images with 3.14.79 kernel cannot start (with or without dtb.img)

All the images with 3.14.29 kernel without dtb.img starts but after 7 seconds stops.

All the images with 3.14.29 kernel with dtb.img for H96 pro cannot start.

Share this post


Link to post
Share on other sites

I do not boot, and connected the usb to otg formatted to fat32 with this burned file.

 

Armbian_5.24_S9xxx_mate_Ubuntu_xenial_3.14.29_desktop_20170205

 

Start the Quintex logo and the monitor is left without signal, it is left 15 min and nothing.

Will I have to modify the dtb? I have no idea how to do it.

 

Thank you and greetings.

 

If you are connecting media Armbian TV box does not run more than 10-15 minutes. 1. Good news. This means that multiboot You have activated. 2. Bad news. Dtb data from the internal memory are not suitable for this kernel. Need to pick or make your dtb file.

 

 

I tried it with the same two images but the kernel didn't start. :(

Summary:

All the images with 3.14.79 kernel cannot start (with or without dtb.img)

All the images with 3.14.29 kernel without dtb.img starts but after 7 seconds stops.

All the images with 3.14.29 kernel with dtb.img for H96 pro cannot start.

 

Have you checked both the dtb file (source and converted) ?

Images kernel  "S905 _ 3.14.79" you can no longer check for S912\S905X . They can only work at S905.

Share this post


Link to post
Share on other sites

Have you checked both the dtb file (source and converted) ?

Images kernel  "S905 _ 3.14.79" you can no longer check for S912\S905X . They can only work at S905.

Yes I checked both you provided.

OK, so I need 3.14.29, thanks.

Share this post


Link to post
Share on other sites

If you are connecting media Armbian TV box does not run more than 10-15 minutes. 1. Good news. This means that multiboot You have activated. 2. Bad news. Dtb data from the internal memory are not suitable for this kernel. Need to pick or make your dtb file.

 

 

Thank you first @balbes150 . I already have the dtb.img extracted from the rom , is there any manual to do it? .Thanks.

Share this post


Link to post
Share on other sites

Thank you first @balbes150 . I already have the dtb.img extracted from the rom , is there any manual to do it? .Thanks.

 

Sorry, my previous post was addressed to another user.

If You have the original dtb file from the firmware You can try to use it in Armbian. Copy it to the root of the FAT partition with the name "dtb.img".

Share this post


Link to post
Share on other sites

@pel.hu

Do I understand correctly that you have when You use both of dtb files from the site, same result - does not start ?

Yes, you do. The kernel didn't start with neither of the two dtb files.

Share this post


Link to post
Share on other sites

Are you sure that the firmware you specified for the link it is from Your TV box ? dtb files from the firmware file. If they don't work - hence they differ from those dtb data in the internal memory. Try to pull out of internal memory real dtb data. Instructions on how this can be done is in this thread on previous pages. Then we can obtain the source code and make changes to them (to switch the port settings).

Share this post


Link to post
Share on other sites

Are you sure that the firmware you specified for the link it is from Your TV box ? dtb files from the firmware file. If they don't work - hence they differ from those dtb data in the internal memory. Try to pull out of internal memory real dtb data. Instructions on how this can be done is in this thread on previous pages. Then we can obtain the source code and make changes to them (to switch the port settings).

Unfortunately I'm not sure if this image is fit for my box because I couldn't flash it with USB burning tool. After 'Start' it just doesn't do anything. I can flash all of my boxes except this one (the only one wich has  S912). 

OK, I reread all this thread and try to get the dtb info from my box.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
42 42