Jump to content

[Device specific] Odroid xu4


wildcat_paris

Recommended Posts

it is WIP :)
 
odroid xu3 & xu4 have
4 Cortex-A7 cores max=1400MHz
4 Cortex-A15 cores max=2000MHz
 
in HMP mode (patched kernel 3.10), 4 cores can run @1.4GHz and 4 cores @2GHz
 
Cf.
 
Heterogeneous Multi-Processing (HMP) solution 


The ODROID-XU4, equipped with four big cores (ARM® Cortex® -A15™ up to 2.0GHz) and four small cores (ARM® Cortex® -A7™ up to 1.4 GHz), provides improved processing capabilities while maintaining the most efficient power consumption available. With the big.LITTLE™ HMP solution, the Exynos-5422 can utilize a maximum of all eight cores to manage computationally intensive tasks.


 

Edited by wildcat_paris
Link to comment
Share on other sites

Igor,
 

If you don't want to hear a fan running, then lowering the top might be an option. I made only few tests so it's hard to say what's better.

 
the real answer for the fan (often up and running) is from kernel 4.2, same frequencies but less heat / temperature... at least what I have noticed.
 
but kernel 4.2 is pretty limited for the devices available

EDIT: I guess reading code, kernel 4.2 has PWM management for the fan [to be checked]

Edited by wildcat_paris
PLAIN WRONG :( OVERHEATING 121°C full load
Link to comment
Share on other sites

@Igor,

 

I have make an Odroid XU4 image (kernel 4.2.6, trusty) but realized after unzipping & burning the sdcard both /dev/sdb1 and /dev/sdb2 file systems are broken from the raw image (same sdcard used to test an image for lamobo-r1 kernel 4.3.3 with "master" branch)

 

I will make an new image later in the afternoon, back from work

note : I had error messages on the first build, I deleted "trusty.tgz" , error messages disappeared

Link to comment
Share on other sites

FYI boot from my spare sdcard (not Armbian)

 

 

root@odroid:~#
Broadcast message from root@odroid (pts/0) (Wed Dec 23 13:49:31 2015):

The system is going down for reboot NOW!
INIT: Sending[info] Using makefile-style concurrent boot in runlevel 6.
[ ok ] Asking all remaining processes to terminate...done.
[ ok ] All processes ended within 1 seconds...done.
[ ok ] Stopping enhanced syslogd: rsyslogd.
[....] Deconfiguring 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/eth1/00:1e:06:30:15:03
Sending on   LPF/eth1/00:1e:06:30:15:03
Sending on   Socket/fallback
DHCPRELEASE on eth1 to 192.168.0.254 port 67
done.
[info] Saving the system clock.
[info] Hardware Clock updated to Wed Dec 23 13:49:34 KST 2015.
[ ok ] Deactivating swap...done.
[ ok ] Unmounting local filesystems...done.
[  399.350643] EXT4-fs (mmcblk0p2): re-mounted. Opts: (null)
[info] Will now restart.
[  401.397650] sd 0:0:0:0: [sda] Synchronizing SCSI cache
[  401.696328] reboot: Rest

U-Boot 2012.07-00030-gfe1c8f0 (Jul 17 2015 - 18:30:27) for Exynos5422

CPU: Exynos5422 Rev0.1 [Samsung SOC on SMP Platform Base on ARM CortexA7]
APLL = 800MHz, KPLL = 800MHz
MPLL = 532MHz, BPLL = 825MHz

Board: HardKernel ODROID
DRAM:  2 GiB
WARNING: Caches not enabled

TrustZone Enabled BSP
BL1 version: â–’/â–’â–’â–’
VDD_KFC: 0x44
LDO19: 0xf2

Checking Boot Mode ... SDMMC
MMC:   S5P_MSHC2: 0, S5P_MSHC0: 1
MMC Device 0: 7.4 GiB
MMC Device 1: [ERROR] response error : 00000006 cmd 8
[ERROR] response error : 00000006 cmd 55
[ERROR] response error : 00000006 cmd 2
*** Warning - bad CRC, using default environment

In:    serial
Out:   serial
Err:   serial
Net:   No ethernet found.
Press quickly 'Enter' twice to stop autoboot:  0
there are pending interrupts 0x00000001
reading boot.ini

727 bytes read
Loading boot.ini from FAT
Find boot.ini file from FAT/Ext4 Area!!
boot.ini command = setenv version 4.2.0-82
boot.ini command = setenv zimage vmlinuz-${version}
boot.ini command = setenv uinitrd uInitrd-${version}
boot.ini command = setenv fdtbin exynos5422-odroidxu4-${version}.dtb
boot.ini command = setenv zimage_addr_r 0x40008000
boot.ini command = setenv initrd_addr_r 0x42000000
boot.ini command = setenv fdtbin_addr_r 0x44000000
boot.ini command = setenv initrd_high "0xffffffff"
boot.ini command = setenv fdt_high "0xffffffff"
boot.ini command = setenv bootrootfs "root=/dev/mmcblk0p2 rootwait ro"
boot.ini command = setenv console "console=ttySAC2,115200n8"
boot.ini command = setenv bootargs "${bootrootfs} ${console}"
boot.ini command = fatload mmc 0:1 ${zimage_addr_r} ${zimage}
reading vmlinuz-4.2.0-82

3995608 bytes read
boot.ini command = fatload mmc 0:1 ${initrd_addr_r} ${uinitrd}
reading uInitrd-4.2.0-82

3486447 bytes read
boot.ini command = fatload mmc 0:1 ${fdtbin_addr_r} ${fdtbin}
reading exynos5422-odroidxu4-4.2.0-82.dtb

45419 bytes read
boot.ini command = bootz ${zimage_addr_r} ${initrd_addr_r} ${fdtbin_addr_r}"
## Loading init Ramdisk from Legacy Image at 42000000 ...
   Image Name:   uInitrd
   Image Type:   ARM Linux RAMDisk Image (gzip compressed)
   Data Size:    3486383 Bytes = 3.3 MiB
   Load Address: 42000000
   Entry Point:  42000000
## Flattened Device Tree blob at 44000000
   Booting using the fdt blob at 0x44000000
   Using Device Tree in place at 44000000, end 4400e16a

Starting kernel ...

[    0.000000] Booting Linux on physical CPU 0x100
[    0.000000] Initializing cgroup subsys cpuset
[    0.000000] Initializing cgroup subsys cpu
[    0.000000] Initializing cgroup subsys cpuacct
[    0.000000] Linux version 4.2.0-82 (jenkins@build) (gcc version 4.9.2 20140904 (prerelease) (crosstool-NG linaro-1.13.1-4.9-2014.09 - Linaro GCC 4.9-2014.09) ) #36 SMP PREEMPT Mon Sep 14 18:29:43 KST 2015

booting from my "stable" kernel 3.10 eMMC card

[  626.693769] sd 0:0:0:0: [sda] Synchronizing SCSI cache
[  626.994042] reboot: Power down
[  626.995681â–’â–’

U-Boot 2012.07-00032-g57c0796-dirty (Oct 05 2015 - 17:37:11) for Exynos5422

CPU: Exynos5422 Rev0.1 [Samsung SOC on SMP Platform Base on ARM CortexA7]
APLL = 800MHz, KPLL = 800MHz
MPLL = 532MHz, BPLL = 825MHz

Board: HardKernel ODROID
DRAM:  2 GiB
WARNING: Caches not enabled

TrustZone Enabled BSP
BL1 version: â–’/â–’â–’â–’
VDD_KFC: 0x44
LDO19: 0xf2

Checking Boot Mode ... EMMC
MMC:   S5P_MSHC0: 0, S5P_MSHC2: 1
MMC Device 0: 29.1 GiB
MMC Device 1: [ERROR] response timeout error : 00000104 cmd 1
Card did not respond to voltage select!
*** Warning - bad CRC, using default environment

In:    serial
Out:   serial
Err:   serial
Net:   No ethernet found.
Press quickly 'Enter' twice to stop autoboot:  0
reading boot.ini

8548 bytes read
Loading boot.ini from FAT
Find boot.ini file from FAT/Ext4 Area!!
boot.ini command = setenv initrd_high "0xffffffff"
boot.ini command = setenv fdt_high "0xffffffff"
boot.ini command = setenv macaddr "00:1e:06:61:7a:39"
boot.ini command = setenv bootrootfs "console=tty1 console=ttySAC2,115200n8 root=UUID=e139ce78-9841-40fe-8823-96a304a09859 rootwait ro fsck.repair=yes"
boot.ini command = setenv bootcmd "fatload mmc 0:1 0x40008000 zImage; fatload mmc 0:1 0x42000000 uInitrd; fatload mmc 0:1 0x44000000 exynos5422-odroidxu3.dtb; bootz 0x40008000 0x42000000 0x44000000"
boot.ini command = setenv vout "hdmi"
boot.ini command = setenv governor "performance"
boot.ini command = setenv HPD "true"
boot.ini command = setenv hdmi_tx_amp_lvl  "31"
boot.ini command = setenv hdmi_tx_lvl_ch0      "3"
boot.ini command = setenv hdmi_tx_lvl_ch1      "3"
boot.ini command = setenv hdmi_tx_lvl_ch2      "3"
boot.ini command = setenv hdmi_tx_emp_lvl      "6"
boot.ini command = setenv hdmi_clk_amp_lvl     "31"
boot.ini command = setenv hdmi_tx_res      "0"
boot.ini command = setenv hdmi_phy_control "hdmi_tx_amp_lvl=${hdmi_tx_amp_lvl} hdmi_tx_lvl_ch0=${hdmi_tx_lvl_ch0} hdmi_tx_lvl_ch1=${hdmi_tx_lvl_ch1} hdmi_tx_lvl_ch2=${hdmi_tx_lvl_ch2} hdmi_tx_emp_lvl=${hdmi_tx_emp_lvl} hdmi_clk_amp_lvl=${hdmi_clk_amp_lvl} hdmi_tx_res=${hdmi_tx_res} HPD=${HPD} vout=${vout}"
boot.ini command = setenv bootargs "${bootrootfs} ${videoconfig} smsc95xx.macaddr=${macaddr} governor=${governor} ${hdmi_phy_control}"
boot.ini command = boot
reading zImage

3256448 bytes read
reading uInitrd

3232004 bytes read
reading exynos5422-odroidxu3.dtb

50746 bytes read
## Loading init Ramdisk from Legacy Image at 42000000 ...
   Image Name:   uInitrd
   Image Type:   ARM Linux RAMDisk Image (uncompressed)
   Data Size:    3231940 Bytes = 3.1 MiB
   Load Address: 00000000
   Entry Point:  00000000
## Flattened Device Tree blob at 44000000
   Booting using the fdt blob at 0x44000000
   Using Device Tree in place at 44000000, end 4400f639

Starting kernel ...

[    0.000000] [c0] Booting Linux on physical CPU 0x100
[    0.000000] [c0] Initializing cgroup subsys cpuset
[    0.000000] [c0] Initializing cgroup subsys cpu
[    0.000000] [c0] Initializing cgroup subsys cpuacct
[    0.000000] [c0] Linux version 3.10.92-71 (root@odroid) (gcc version 4.9.2 (Ubuntu/Linaro 4.9.2-10ubuntu13) ) #1 SMP PREEMPT Fri Dec 18 00:38:54 BRST 2015

 

Link to comment
Share on other sites

FYI

 

Just updated everything and I am using the lastest non modified compile.sh

 

I wanted to build a OdroidXU4 + default kernel + CLI only + trusty (same issue with wheezy/jessie)

 

=> *** Configuration file ".config" not found!

 

so "cp linux-odroidxu-default.config ../../sources/linux-odroidxu/odroidxu3-3.10.y/.config"

 

then I get

[ o.k. ] Using kernel config file [ lib/config/linux-odroidxu4-default.config ]
cp: cannot stat '/home/gr/armbian/lib/config/linux-odroidxu4-default.config': No such file or directory

(and some kernel config are not complete => CEPH related)
 

root@server1404:~/armbian# ll /home/gr/armbian/lib/config/*odroid*
-rw-r--r-- 1 root root   8528 Dec 25 23:51 /home/gr/armbian/lib/config/boot-odroid.ini
-rw-r--r-- 1 root root 111026 Jan  8 18:03 /home/gr/armbian/lib/config/linux-odroidxu-default.config
-rw-r--r-- 1 root root 103487 Jan  8 18:03 /home/gr/armbian/lib/config/linux-odroidxu-next.config
 

Link to comment
Share on other sites

@Zador

"And so on."

 This is what I supposed :)

 

@Igor

[ o.k. ] Install kernel [ linux-image-odroidxu4_4.83_armhf.deb ]
dpkg-deb: error: failed to read archive `/home/gr/armbian/output/debs/linux-image-odroidxu4_4.83_armhf.deb': No such file or directory
 

root@server1404:~/armbian# tree /home/gr/armbian/output/debs/

 


/home/gr/armbian/output/debs/
|-- customize-image.sh
|-- linux-firmware-image_4.83_armhf.deb
|-- linux-headers-3.10.92-odroidxu4_4.83_armhf.deb
|-- linux-image-3.10.92-odroidxu4_4.83_armhf.deb
|-- linux-libc-dev_4.83_armhf.deb
|-- linux-u-boot-odroidxu4_4.83_armhf.deb
`-- trusty
    `-- linux-trusty-root-odroidxu4_4.83_armhf.deb

 

 

 

A week-end with Igor:

Attention please

 

1/ :rolleyes:

2/ :beer:

3/ :thumbup:

 

 

 

EDIT:

I was doing "ln -s" as a workaround... but... ok Igor has just fixed... my heroe

 

EDIT2:

still need to remove CLEAN="debs" and redo

 

root@server1404:~/armbian/output/debs# ln -s linux-headers-3.10.92-odroidxu4_4.83_armhf.deb linux-headers-odroidxu4_4.83_armhf.deb
root@server1404:~/armbian/output/debs# ln -s linux-image-3.10.92-odroidxu4_4.83_armhf.deb linux-image-odroidxu4_4.83_armhf.deb

@Igor: don't worry I can handle this :)

 

 

Edited by wildcat_paris
Igor has already fixed the problem :) no, wait a second :)
Link to comment
Share on other sites

@Igor (fresh water from France, Slovenia or Zadorland is great for :beer: )

 

:thumbup:

 

FYI you have not published a trusty version for odroid, so you may know the issue

 

it boots/reboots as expected

UART => unable to use root as a login

SSH => root login, then password replacement, then ssh drops me

 

I will dig the sdcard!

 

 

 


U-Boot 2012.07 (Jan 09 2016 - 22:27:11) for Exynos5422

CPU: Exynos5422 Rev0.1 [Samsung SOC on SMP Platform Base on ARM CortexA7]
APLL = 800MHz, KPLL = 800MHz
MPLL = 532MHz, BPLL = 825MHz

Board: HardKernel ODROID
DRAM:  2 GiB
WARNING: Caches not enabled

TrustZone Enabled BSP
BL1 version: â–’/â–’â–’â–’
VDD_KFC: 0x44
LDO19: 0xf2

Checking Boot Mode ... SDMMC
MMC:   S5P_MSHC2: 0, S5P_MSHC0: 1
MMC Device 0: 29.7 GiB
MMC Device 1: [ERROR] response error : 00000006 cmd 8
[ERROR] response error : 00000006 cmd 55
[ERROR] response error : 00000006 cmd 2
*** Warning - bad CRC, using default environment

In:    serial
Out:   serial
Err:   serial
Net:   No ethernet found.
Press quickly 'Enter' twice to stop autoboot:  0
there are pending interrupts 0x00000001
reading boot.ini

8528 bytes read
Loading boot.ini from FAT
Find boot.ini file from FAT/Ext4 Area!!
boot.ini command = setenv initrd_high "0xffffffff"
boot.ini command = setenv fdt_high "0xffffffff"
boot.ini command = setenv macaddr "00:1e:06:61:7a:55
boot.ini command = setenv bootrootfs "console=tty1 loglevel=1 root=/dev/mmcblk0p2 rootwait ro fsck.repair=yes"
boot.ini command = setenv bootcmd "fatload mmc 0:1 0x40008000 zImage; fatload mmc 0:1 0x44000000 dtb/exynos5422-odroidxu3.dtb; bootz 0x40008000 0x44000000"
boot.ini command = setenv vout "hdmi"
boot.ini command = setenv governor "performance"
boot.ini command = setenv HPD "true"
boot.ini command = setenv hdmi_tx_amp_lvl  "31"
boot.ini command = setenv hdmi_tx_lvl_ch0      "3"
boot.ini command = setenv hdmi_tx_lvl_ch1      "3"
boot.ini command = setenv hdmi_tx_lvl_ch2      "3"
boot.ini command = setenv hdmi_tx_emp_lvl      "6"
boot.ini command = setenv hdmi_clk_amp_lvl     "31"
boot.ini command = setenv hdmi_tx_res      "0"
boot.ini command = setenv hdmi_phy_control "hdmi_tx_amp_lvl=${hdmi_tx_amp_lvl} hdmi_tx_lvl_ch0=${hdmi_tx_lvl_ch0} hdmi_tx_lvl_ch1=${hdmi_tx_lvl_ch1} hdmi_tx_lvl_ch2=${hdmi_tx_lvl_ch2} hdmi_tx_emp_lvl=${hdmi_tx_emp_lvl} hdmi_clk_amp_lvl=${hdmi_clk_amp_lvl} hdmi_tx_res=${hdmi_tx_res} HPD=${HPD} vout=${vout}"
boot.ini command = setenv bootargs "${bootrootfs} ${videoconfig} smsc95xx.macaddr=${macaddr} governor=${governor} ${hdmi_phy_control}"
boot.ini command = boot
reading zImage

3303746 bytes read
reading dtb/exynos5422-odroidxu3.dtb

50746 bytes read

Starting kernel ...

[    0.000000] [c0] hdmi: using HDMI Mode
[   34.876042] [c5] s2mps11_pmic_shutdown : PWR_HOLD Clear Bit. (retry 0)
[   34.893620] [c0] Restarting system.


U-Boot 2012.07 (Jan 09 2016 - 22:27:11) for Exynos5422

CPU: Exynos5422 Rev0.1 [Samsung SOC on SMP Platform Base on ARM CortexA7]
APLL = 800MHz, KPLL = 800MHz
MPLL = 532MHz, BPLL = 825MHz

Board: HardKernel ODROID
DRAM:  2 GiB
WARNING: Caches not enabled

TrustZone Enabled BSP
BL1 version: â–’/â–’â–’â–’
VDD_KFC: 0x44
LDO19: 0xf2

Checking Boot Mode ... SDMMC
MMC:   S5P_MSHC2: 0, S5P_MSHC0: 1
MMC Device 0: 29.7 GiB
MMC Device 1: [ERROR] response timeout error : 00000104 cmd 1
Card did not respond to voltage select!
*** Warning - bad CRC, using default environment

In:    serial
Out:   serial
Err:   serial
Net:   No ethernet found.
Press quickly 'Enter' twice to stop autoboot:  0
there are pending interrupts 0x00000001
reading boot.ini

8528 bytes read
Loading boot.ini from FAT
Find boot.ini file from FAT/Ext4 Area!!
boot.ini command = setenv initrd_high "0xffffffff"
boot.ini command = setenv fdt_high "0xffffffff"
boot.ini command = setenv macaddr "00:1e:06:61:7a:55
boot.ini command = setenv bootrootfs "console=tty1 loglevel=1 root=/dev/mmcblk0p2 rootwait ro fsck.repair=yes"
boot.ini command = setenv bootcmd "fatload mmc 0:1 0x40008000 zImage; fatload mmc 0:1 0x44000000 dtb/exynos5422-odroidxu3.dtb; bootz 0x40008000 0x44000000"
boot.ini command = setenv vout "hdmi"
boot.ini command = setenv governor "performance"
boot.ini command = setenv HPD "true"
boot.ini command = setenv hdmi_tx_amp_lvl  "31"
boot.ini command = setenv hdmi_tx_lvl_ch0      "3"
boot.ini command = setenv hdmi_tx_lvl_ch1      "3"
boot.ini command = setenv hdmi_tx_lvl_ch2      "3"
boot.ini command = setenv hdmi_tx_emp_lvl      "6"
boot.ini command = setenv hdmi_clk_amp_lvl     "31"
boot.ini command = setenv hdmi_tx_res      "0"
boot.ini command = setenv hdmi_phy_control "hdmi_tx_amp_lvl=${hdmi_tx_amp_lvl} hdmi_tx_lvl_ch0=${hdmi_tx_lvl_ch0} hdmi_tx_lvl_ch1=${hdmi_tx_lvl_ch1} hdmi_tx_lvl_ch2=${hdmi_tx_lvl_ch2} hdmi_tx_emp_lvl=${hdmi_tx_emp_lvl} hdmi_clk_amp_lvl=${hdmi_clk_amp_lvl} hdmi_tx_res=${hdmi_tx_res} HPD=${HPD} vout=${vout}"
boot.ini command = setenv bootargs "${bootrootfs} ${videoconfig} smsc95xx.macaddr=${macaddr} governor=${governor} ${hdmi_phy_control}"
boot.ini command = boot
reading zImage

3303746 bytes read
reading dtb/exynos5422-odroidxu3.dtb

50746 bytes read

Starting kernel ...

[    0.000000] [c0] hdmi: using HDMI Mode

Ubuntu 14.04 LTS odroidxu4 ttySAC2

odroidxu4 login: root

Login incorrect
odroidxu4 login:
Using username "root".
root@192.168.1.15's password:
Server refused to set environment variables
You are required to change your password immediately (root enforced)

  ___      _           _     _  __  ___   _ _  _
 / _ \  __| |_ __ ___ (_) __| | \ \/ / | | | || |
| | | |/ _` | '__/ _ \| |/ _` |  \  /| | | | || |_
| |_| | (_| | | | (_) | | (_| |  /  \| |_| |__   _|
 \___/ \__,_|_|  \___/|_|\__,_| /_/\_\\___/   |_|

Welcome to ARMBIAN (Ubuntu trusty 3.10.94-odroidxu4)

Last login: Sun Jan 10 00:42:43 2016 from golfromeo7
Changing password for root.
(current) UNIX password:



 

 

EDIT2:

after modifying the sdcard /etc/passwd /etc/shadow /etc/group (adding a user)

I can login!!!

Edited by wildcat_paris
Link to comment
Share on other sites

@Igor

I have seen the creation of debootstrap-ng with git pull before I create a new image with trusty... I also removed trusty cache (now I almost always remove...)

 

But I leave Sherlock Holmes doing the investigation... or Dr Watson! Maybe Dr. Henry Jekyll as well but certainly not the evil Edward Hyde B)

 

EDIT: I will be trying odroidxu4-next (again) as odroid-default has faulty ax88179_178a driver (Hardkernel image with kernel 3.10.92 works but BW is 1/3 of GMAC)

I need ax88179_178a as part of my Plan B to move the "router" part of my Lamobo-r1 on OdroidXU4

Edited by wildcat_paris
Link to comment
Share on other sites

@AnyFox

 

FYI In my path to move the router with Odroid XU4...

 

:( the very kind contributor of odroid kernel 4.2  just forgot to compile le 8021q module I really need for the eth2.835 to ppp0 internet connexion...

but has a working ax88179_178a module (compared to 3.x kernel) thanks you iperf3

 

https://github.com/tobetter/linux/tree/odroidxu4-v4.2

http://ppa.launchpad.net/tobetter/ppa/ubuntu/

https://launchpad.net/~tobetter

 

=> I would need to compile the kernel with 8021q by myself...

 

apparently linaro toolchain 4.9 is needed

http://odroid.com/dokuwiki/doku.php?id=en:xu4_building_kernel=> gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux.tar.xz

=> maybe that is why kernel 4.2 does not boot with Armbian.

 

Also someone is testing  4.4-rcX

 

https://github.com/cberner/linux/tree/xu4-v4.4-rc6

https://github.com/cberner/linux/commit/9d6a3fdc5ec4115067d24e0311b0bead2cdc4487

 

Monday already... back to ERP software for retail companies: orderable, saleable, deliverable assortments and article consignment in my DEV topic... the week-end is over

Link to comment
Share on other sites

@AnyOdroidBuddy

 

I have installed linaro 4.9.2 for kernel 4.2 as advised by hardkernel

 

(the binary is i386... I needed some tricks...ok)

 

 

 

gr@server1404:~/armbian$ arm-linux-gnueabihf-gcc -v
Using built-in specs.
COLLECT_GCC=arm-linux-gnueabihf-gcc
COLLECT_LTO_WRAPPER=/opt/toolchains/gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin/../libexec/gcc/arm-linux-gnueabihf/4.9.2/lto-wrapper
Target: arm-linux-gnueabihf
Configured with: /cbuild/slaves/oorts/crosstool-ng/builds/arm-linux-gnueabihf-linux/.build/src/gcc-linaro-4.9-2014.09/configure --build=i686-build_pc-linux-gnu --host=i686-build_pc-linux-gnu --target=arm-linux-gnueabihf --prefix=/cbuild/slaves/oorts/crosstool-ng/builds/arm-linux-gnueabihf-linux/install --with-sysroot=/cbuild/slaves/oorts/crosstool-ng/builds/arm-linux-gnueabihf-linux/install/arm-linux-gnueabihf/libc --enable-languages=c,c++,fortran --disable-multilib --enable-multiarch --with-arch=armv7-a --with-tune=cortex-a9 --with-fpu=vfpv3-d16 --with-float=hard --with-pkgversion='crosstool-NG linaro-1.13.1-4.9-2014.09 - Linaro GCC 4.9-2014.09' --with-bugurl=https://bugs.launchpad.net/gcc-linaro --enable-__cxa_atexit --enable-libmudflap --enable-libgomp --enable-libssp --with-gmp=/cbuild/slaves/oorts/crosstool-ng/builds/arm-linux-gnueabihf-linux/.build/arm-linux-gnueabihf/build/static --with-mpfr=/cbuild/slaves/oorts/crosstool-ng/builds/arm-linux-gnueabihf-linux/.build/arm-linux-gnueabihf/build/static --with-mpc=/cbuild/slaves/oorts/crosstool-ng/builds/arm-linux-gnueabihf-linux/.build/arm-linux-gnueabihf/build/static --with-isl=/cbuild/slaves/oorts/crosstool-ng/builds/arm-linux-gnueabihf-linux/.build/arm-linux-gnueabihf/build/static --with-cloog=/cbuild/slaves/oorts/crosstool-ng/builds/arm-linux-gnueabihf-linux/.build/arm-linux-gnueabihf/build/static --with-libelf=/cbuild/slaves/oorts/crosstool-ng/builds/arm-linux-gnueabihf-linux/.build/arm-linux-gnueabihf/build/static --enable-threads=posix --disable-libstdcxx-pch --enable-linker-build-id --enable-plugin --enable-gold --with-local-prefix=/cbuild/slaves/oorts/crosstool-ng/builds/arm-linux-gnueabihf-linux/install/arm-linux-gnueabihf/libc --enable-c99 --enable-long-long --with-mode=thumb --disable-multilib --with-float=hard
Thread model: posix
gcc version 4.9.2 20140904 (prerelease) (crosstool-NG linaro-1.13.1-4.9-2014.09 - Linaro GCC 4.9-2014.09)

 

 

 

Armbian odroidxu4 next delivers an image

 

question: is it ok if the fat partition contains a "boot" folder and the ext4 a /boot folder as well? I have tried to move the files in the fat partition but no luck.

 

 

 

U-Boot 2012.07 (Jan 12 2016 - 05:29:22) for Exynos5422

CPU: Exynos5422 Rev0.1 [Samsung SOC on SMP Platform Base on ARM CortexA7]
APLL = 800MHz, KPLL = 800MHz
MPLL = 532MHz, BPLL = 825MHz

Board: HardKernel ODROID
DRAM:  2 GiB
WARNING: Caches not enabled

TrustZone Enabled BSP
BL1 version: â/âââ
VDD_KFC: 0x44
LDO19: 0xf2

Checking Boot Mode ... SDMMC
MMC:   S5P_MSHC2: 0, S5P_MSHC0: 1
MMC Device 0: 29.5 GiB
MMC Device 1: [ERROR] response error : 00000006 cmd 8
[ERROR] response error : 00000006 cmd 55
[ERROR] response error : 00000006 cmd 2
*** Warning - bad CRC, using default environment

In:    serial
Out:   serial
Err:   serial
Net:   No ethernet found.
Press quickly 'Enter' twice to stop autoboot:  0
there are pending interrupts 0x00000001
reading boot.ini

** Unable to read "boot.ini" from mmc 0:1 **
Unknown command 'ext4load' - try 'help'
Unknown command 'ext4load' - try 'help'
>>> Load Boot Script from mmc 0:1 <<<
reading boot.scr

** Unable to read "boot.scr" from mmc 0:1 **
>>> Load Boot Script from mmc 0:2 <<<

** Unable to use mmc 0:2 for fatload **
>>> Run Default Bootcmd <<<
reading kernel..device 0 Start 1263, Count 16384
MMC read: dev # 0, block # 1263, count 16384 ... 16384 blocks read: OK
completed
reading RFS..device 0 Start 17647, Count 2048
MMC read: dev # 0, block # 17647, count 2048 ... 2048 blocks read: OK
completed
Bad Linux ARM zImage magic!
Exynos5422 #


fat partition /boot/* => /

U-Boot 2012.07 (Jan 12 2016 - 05:29:22) for Exynos5422

CPU: Exynos5422 Rev0.1 [Samsung SOC on SMP Platform Base on ARM CortexA7]
APLL = 800MHz, KPLL = 800MHz
MPLL = 532MHz, BPLL = 825MHz

Board: HardKernel ODROID
DRAM:  2 GiB
WARNING: Caches not enabled

TrustZone Enabled BSP
BL1 version: â/âââ
VDD_KFC: 0x44
LDO19: 0xf2

Checking Boot Mode ... SDMMC
MMC:   S5P_MSHC2: 0, S5P_MSHC0: 1
MMC Device 0: 29.5 GiB
MMC Device 1: [ERROR] response error : 00000006 cmd 8
[ERROR] response error : 00000006 cmd 55
[ERROR] response error : 00000006 cmd 2
*** Warning - bad CRC, using default environment

In:    serial
Out:   serial
Err:   serial
Net:   No ethernet found.
Press quickly 'Enter' twice to stop autoboot:  0
there are pending interrupts 0x00000001
reading boot.ini

8528 bytes read
Loading boot.ini from FAT
Find boot.ini file from FAT/Ext4 Area!!
boot.ini command = setenv initrd_high "0xffffffff"
boot.ini command = setenv fdt_high "0xffffffff"
boot.ini command = setenv macaddr "00:1e:06:61:7a:55
boot.ini command = setenv bootrootfs "console=tty1 loglevel=1 root=/dev/mmcblk0p2 rootwait ro fsck.repair=yes"
boot.ini command = setenv bootcmd "fatload mmc 0:1 0x40008000 zImage; fatload mmc 0:1 0x44000000 dtb/exynos5422-odroidxu3.dtb; bootz 0x40008000 0x44000000"
boot.ini command = setenv vout "hdmi"
boot.ini command = setenv governor "performance"
boot.ini command = setenv HPD "true"
boot.ini command = setenv hdmi_tx_amp_lvl  "31"
boot.ini command = setenv hdmi_tx_lvl_ch0      "3"
boot.ini command = setenv hdmi_tx_lvl_ch1      "3"
boot.ini command = setenv hdmi_tx_lvl_ch2      "3"
boot.ini command = setenv hdmi_tx_emp_lvl      "6"
boot.ini command = setenv hdmi_clk_amp_lvl     "31"
boot.ini command = setenv hdmi_tx_res      "0"
boot.ini command = setenv hdmi_phy_control "hdmi_tx_amp_lvl=${hdmi_tx_amp_lvl} hdmi_tx_lvl_ch0=${hdmi_tx_lvl_ch0} hdmi_tx_lvl_ch1=${hdmi_tx_lvl_ch1} hdmi_tx_lvl_ch2=${hdmi_tx_lvl_ch2} hdmi_tx_emp_lvl=${hdmi_tx_emp_lvl} hdmi_clk_amp_lvl=${hdmi_clk_amp_lvl} hdmi_tx_res=${hdmi_tx_res} HPD=${HPD} vout=${vout}"
boot.ini command = setenv bootargs "${bootrootfs} ${videoconfig} smsc95xx.macaddr=${macaddr} governor=${governor} ${hdmi_phy_control}"
boot.ini command = boot
reading zImage

** Unable to read "zImage" from mmc 0:1 **
reading dtb/exynos5422-odroidxu3.dtb

** Unable to read "dtb/exynos5422-odroidxu3.dtb" from mmc 0:1 **
Bad Linux ARM zImage magic!
boot.ini command = â
Unknown command 'â' - try 'help'
>>> Load Boot Script from mmc 0:1 <<<
reading boot.scr

** Unable to read "boot.scr" from mmc 0:1 **
>>> Load Boot Script from mmc 0:2 <<<

** Unable to use mmc 0:2 for fatload **
>>> Run Default Bootcmd <<<
reading kernel..device 0 Start 1263, Count 16384
MMC read: dev # 0, block # 1263, count 16384 ... 16384 blocks read: OK
completed
reading RFS..device 0 Start 17647, Count 2048
MMC read: dev # 0, block # 17647, count 2048 ... 2048 blocks read: OK
completed
Bad Linux ARM zImage magic!

 

 

 

other test: I have installed the kernel on the hardkernel image, installed gcc 4.9.2, compiled the modules (8021q)

but (as expected) I have not found yet how to replace "4.2.0-173089-g5eb40d45-dirty" by "4.2.0-82"

 

 

[ 3323.623549] 8021q: version magic '4.2.0-173089-g5eb40d45-dirty SMP preempt mod_unload ARMv7 p2v8 ' should be '4.2.0-82 SMP preempt mod_unload ARMv7 p2v8 '
[ 3335.250723] 8021q: version magic '4.2.0-173089-g5eb40d45-dirty SMP preempt mod_unload ARMv7 p2v8 ' should be '4.2.0-82 SMP preempt mod_unload ARMv7 p2v8 '
[ 3814.563941] 8021q: version magic '4.2.0-173089-g5eb40d45-dirty SMP preempt mod_unload ARMv7 p2v8 ' should be '4.2.0-82 SMP preempt mod_unload ARMv7 p2v8 '
[ 4050.438894] mrp: version magic '4.2.0-173089-g5eb40d45-dirty SMP preempt mod_unload ARMv7 p2v8 ' should be '4.2.0-82 SMP preempt mod_unload ARMv7 p2v8 '
[ 4705.575763] mrp: version magic '4.2.0-173089-g5eb40d45-dirty SMP preempt mod_unload ARMv7 p2v8 ' should be '4.2.0-82 SMP preempt mod_unload ARMv7 p2v8 '

 

 

Link to comment
Share on other sites

@wildcat_paris

I don't exactly understand what do you want

 

First - you are trying to compile non-vanilla 4.x kernel for odroid because one from kernel.org lacks some odroid-specific features / hardware support?

Second - if kernel is supposed to be built with linaro toolchain, it doesn't mean that you can't "convince" it to build with standart Ubuntu cross-gcc toolchain. I.e. Armada u-boot is supposed to be built with buildroot 2015.whatever version, but you can build it on ubuntu too with minimal patching.

 

question: is it ok if the fat partition contains a "boot" folder and the ext4 a /boot folder as well? I have tried to move the files in the fat partition but no luck.

It's OK as long as u-boot script is changed accordingly. Generally it tries to load kernel & DTB from root of FAT partition and from /boot directory of ext4 partition, but it can be changed.

 

I have not found yet how to replace "4.2.0-173089-g5eb40d45-dirty" by "4.2.0-82"

It should be defined in kernel Makefile. Also there is an option (when building kernel) to allow loading modules with wrong version numbers.

Link to comment
Share on other sites

@zador

 

from memory, Igor has been using the same 4.x kernel (now???), I guess he has tested, me as well, the images are not booting.

 

As Igor has more urgent tasks, he has produced a 3.x kernel and left vanilla for later

 

I only found one stable 4.x image "server" version (what I need) but lacking of 802q module, the only missing point.

 

=> my idea, one needs to use Xgcc 4.9.2 to have a working 4.2+ kernel (not 4.8.2 as usual)... Hardkernel piece of info to be confirmed

and also, unless uboot 16.01 has proper support for exynos (maybe), the only uboot usable is the old (?)12.07

 

I will test later tonight (if I have time) to compile the 8021q with "4.2.0-82" as you suggest (thanks). it may be enough.

I don't want to use again Archlinux (odroid xu3-xu4/kernel 4.2?) far too different from Ubuntu 14.04 :)

 

note : Igor (complained, me too) the kernel 3.x "makes" the fan too noisy... my test with kernel 4.x seems to manage fan "better"

Link to comment
Share on other sites

@Igor

 

FYI, you may already know

ODROID-XU4 mainline =>

https://github.com/umiddelb/armhf/wiki/How-To-compile-a-custom-Linux-kernel-for-your-ARM-device

 

note:

ax88179 driver (USB3/GMAC/PHY driver is broken in kernel 3.10... it crashes the available Armbian legacy OdroidXU4) @Zador that's why I need kernel 4.2+ or 4.4+

 

note2:

the "next" Odroid XU4 does not seem to write the BL1 blob as it exists in Armbian legacy, and appearing in u-boot logs as

TrustZone Enabled BSP
BL1 version: â/âââ
VDD_KFC: 0x44
LDO19: 0xf2

EDIT: in fact in the raw image I can find traces of BL1 and TrustZone, so?

 

 

I get it a little better... but that the first time I go so far

U-Boot 2012.07 (Jan 18 2016 - 03:12:30) for Exynos5422

CPU: Exynos5422 Rev0.1 [Samsung SOC on SMP Platform Base on ARM CortexA7]
APLL = 800MHz, KPLL = 800MHz
MPLL = 532MHz, BPLL = 825MHz

Board: HardKernel ODROID
DRAM:  2 GiB
WARNING: Caches not enabled

TrustZone Enabled BSP
BL1 version: â/âââ
VDD_KFC: 0x44
LDO19: 0xf2

Checking Boot Mode ... SDMMC
MMC:   S5P_MSHC2: 0, S5P_MSHC0: 1
MMC Device 0: 29.5 GiB
MMC Device 1: [ERROR] response error : 00000006 cmd 8
[ERROR] response error : 00000006 cmd 55
[ERROR] response error : 00000006 cmd 2
*** Warning - bad CRC, using default environment

In:    serial
Out:   serial
Err:   serial
Net:   No ethernet found.
Press quickly 'Enter' twice to stop autoboot:  0
there are pending interrupts 0x00000001
reading boot.ini

8528 bytes read
Loading boot.ini from FAT
Find boot.ini file from FAT/Ext4 Area!!
boot.ini command = setenv initrd_high "0xffffffff"
boot.ini command = setenv fdt_high "0xffffffff"
boot.ini command = setenv macaddr "00:1e:06:61:7a:55
boot.ini command = setenv bootrootfs "console=tty1 loglevel=1 root=/dev/mmcblk0p2 rootwait ro fsck.repair=yes"
boot.ini command = setenv bootcmd "fatload mmc 0:1 0x40008000 zImage; fatload mmc 0:1 0x44000000 dtb/exynos5422-odroidxu3.dtb; bootz 0x40008000 0x44000000"
boot.ini command = setenv vout "hdmi"
boot.ini command = setenv governor "performance"
boot.ini command = setenv HPD "true"
boot.ini command = setenv hdmi_tx_amp_lvl  "31"
boot.ini command = setenv hdmi_tx_lvl_ch0      "3"
boot.ini command = setenv hdmi_tx_lvl_ch1      "3"
boot.ini command = setenv hdmi_tx_lvl_ch2      "3"
boot.ini command = setenv hdmi_tx_emp_lvl      "6"
boot.ini command = setenv hdmi_clk_amp_lvl     "31"
boot.ini command = setenv hdmi_tx_res      "0"
boot.ini command = setenv hdmi_phy_control "hdmi_tx_amp_lvl=${hdmi_tx_amp_lvl} hdmi_tx_lvl_ch0=${hdmi_tx_lvl_ch0} hdmi_tx_lvl_ch1=${hdmi_tx_lvl_ch1} hdmi_tx_lvl_ch2=${hdmi_tx_lvl_ch2} hdmi_tx_emp_lvl=${hdmi_tx_emp_lvl} hdmi_clk_amp_lvl=${hdmi_clk_amp_lvl} hdmi_tx_res=${hdmi_tx_res} HPD=${HPD} vout=${vout}"
boot.ini command = setenv bootargs "${bootrootfs} ${videoconfig} smsc95xx.macaddr=${macaddr} governor=${governor} ${hdmi_phy_control}"
boot.ini command = boot
reading zImage

** Unable to read "zImage" from mmc 0:1 **
reading dtb/exynos5422-odroidxu3.dtb

** Unable to read "dtb/exynos5422-odroidxu3.dtb" from mmc 0:1 **
Bad Linux ARM zImage magic!
boot.ini command = â
Unknown command 'â' - try 'help'
>>> Load Boot Script from mmc 0:1 <<<
reading boot.scr

** Unable to read "boot.scr" from mmc 0:1 **
>>> Load Boot Script from mmc 0:2 <<<

** Unable to use mmc 0:2 for fatload **
>>> Run Default Bootcmd <<<
reading kernel..device 0 Start 1263, Count 16384
MMC read: dev # 0, block # 1263, count 16384 ... 16384 blocks read: OK
completed
reading RFS..device 0 Start 17647, Count 2048
MMC read: dev # 0, block # 17647, count 2048 ... 2048 blocks read: OK
completed
Bad Linux ARM zImage magic!
Exynos5422 #

 

 

Link to comment
Share on other sites

@wildcat_paris

 

OK, I'll take a look when possible. You can also try to install kernel 4.4 and DTB on the top of the working legacy build. You will only need to manually set DTB and that's all I think.

Link to comment
Share on other sites

@wildcats_paris

 

Have you built a "good" 4.2.* kernel? I had many issues with rootfs on USB3 (Igors armbian 3.10.94)  using jMICROn bridge adapter (maybe I should retire it and buy a new one controller). I could not fix it because I didn't know if the problem was at micron controller side (I runned update firmware) or at kernel side https://github.com/hardkernel/linux/issues/120#issuecomment-180874515.

 

BTW is a good feeling to observe 8 CPUS working together :o

 

https://locky.noip.me/seafile/f/ac1beed0f4/

Link to comment
Share on other sites

@jobenvil

 

I am afraid not yet...

 

ideas... using the Archlinux "fuse" (blob for uboot) so the kernel can start, make one single partition as the fat partition is too small for a kernel upgrade (compared to 4.2 provided in August 2015 by Hardkernel), put Armbian trusty or jessie tar image, then Armbian or self compiled kernel (kernel 4.4.x)

 

note: due to the blob to start the kernel, the first sector of the first partition has to be 3072 (not 2048 as usual)

 

BIG issues with Hardkernel image 4.2 from Aug 2015

- no journal in EXT4 partition... the first boot can kill the image (at least some files @boot)
- HUGE fan issue the kernel can stop under heavy load with "odroid-server login: [61364.127269] thermal thermal_zone3: critical temperature reached(121 C),shutting down"

I am following changes in XU4 mainline notes

https://github.com/umiddelb/armhf/wiki/How-To-compile-a-custom-Linux-kernel-for-your-ARM-device#odroid-xu4-mainline

Link to comment
Share on other sites

I appreciate your answer. What I built until now, doesn't work. I Followed basically the same link for Kernel 4.2 (tobetter) but without succes. I was using gparted to mov ext4 and then expand fat partition because I got a big 26MB uInitrd file. After that fix it with fsck. Unfortunatelly I don't have UART and its like a feeling everytime that start the boot process. At least, due to the tty1 I can see where it stops the boot. I'm also confused with why Igors armbian doesn't use the uInitrd and adress inside the boot.ini. Igor is mountig on /boot the /dev/mmcblk0p1 and here I'm also little bit confused following the compiling guide from ummilddeb. Probably having the Igors base image from 3.10.94  is not working, because some scripts are mounted or depending in this /boot, which in ummilddeb is placed on /media/boot and respecting the /boot of ext4. BTW, I have to read a lot your given inputs.

 

- So, you use default config odroidxu4_defconfig ? or you select other choices inside?

 

- Which boot.ini do you use for 4.*? needs only zImage, dtb file and uInitrd?

 

Thank you in advance

 

PS: Igor, if we need to open a new topic, feel free to advice.

Link to comment
Share on other sites

I have created a brand new Armbian image for XU4

 

1/

(comment) It is nice to have a user creation on the first boot

2/

(issue) So far a command is missing after reboot (the filesystem is not resized):

sudo resize2fs /dev/mmcblk0p2

3/

(issue) as previously, UART => unable to use root as a login

but SSH works fine.

4/

(testing/issue) the fan doesn't seem to work

[    1.493670] [c6] odroid-fan odroid_fan.14: unable to request PWM, trying legacy API

I am testing https://evilshit.wordpress.com/2016/05/06/how-to-silence-an-odroid-xu4/

=> part "Fan control software"

https://github.com/f1vefour/odroid-xu4-fan-control

https://www.mrneilypops.org/xu4-fan-control/

 

/sys/devices/odroid_fan.13 is now odroid_fan.14

 

5/

I had to step back to linaro 4.9 because linaro 5.1 failed to compile the 3.10 kernel

6/

tested image with xenial but it failed on different occasion

7/

tweak for 4.6 kernel, I failed to change the lib tool to make it work

https://github.com/umiddelb/armhf/wiki/How-To-compile-a-custom-Linux-kernel-for-your-ARM-device#odroid-xu4-mainline

Link to comment
Share on other sites

We are not yet on XU4 since my transfer script failed - I forgot on some major things - and I didn't find time for another try. Yet. I hope I manage to do it in a week or two.

 

2.) It was working fine for me. Huh?

3.) Yes, this is known and annoying. Found anything @hardkernel forum?

4.) working fine

5.) yap. this would require some extra (hard) work without any real added value.

6.) Xenial is not 100% reliable yet. I had some luck on Xenial host

7.) i also failed. mainline looks (far) away.

Link to comment
Share on other sites

I get a kind reply from luisbg from Samsung OpenSource Group (after reading Tjoe newsfeed)

 

https://twitter.com/luisbg/status/737239277319426048

no need to update the initramfs. The firmware knows where to look for the kernel to boot. My steps: http://pastie.org/10857895 

Steps to run mainline Linux kernel in ODROID XU4
------------------------------------------------

download latest stable from kernel.org
                (4.6 currently)
untar; cd
sudo apt-get install gcc-5-arm-linux-gnueabihf
                (cross-compiler, arm-linux-gnueabihf)
export CROSS_COMPILE="ccache arm-linux-gnueabihf-" ARCH=arm
sudo ln -s /usr/bin/arm-linux-gnueabihf-gcc-5 /usr/bin/arm-linux-gnueabihf-gcc

make exynos_defconfig
make prepare modules_prepare
                (to refresh include/generated/autoconf.h)
make -j4 bzImage modules dtbs
plug microSD card
sudo mount /dev/sdb1 /mnt/boot; sudo mount /dev/sdb2 /mnt/rootfs
make modules_install INSTALL_MOD_PATH=/mnt/rootfs/
sudo cp -rv arch/arm/boot/zImage /mnt/boot/zImage
sudo cp arch/arm/boot/dts/exynos5422-odroidxu4.dtb /mnt/boot/exynos5422-odroidxu3.dtb
Link to comment
Share on other sites

XU4 is running forum now. Can't test  :huh:

Igor,

 

Yes, I have noticed the XU4 little.BIG Exynos effect on the forum.

one page loads fast, the second slower, the next faster, etc.

depending on the core little or BIG

 

:P

 

I have my Odroid XU4 not in production mode... available for testing...

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines