aboutsummaryrefslogtreecommitdiffstats
path: root/platforms/xu4
diff options
context:
space:
mode:
authorDaniel Tartavel <contact@librepc.com>2019-09-29 06:50:44 +0200
committerDaniel Tartavel <contact@librepc.com>2019-09-29 06:50:44 +0200
commit2a82e889e8fc50d72be705ded4a50292c02b38b0 (patch)
treee6cd9365a439db56f8f69fc107243185be48a49d /platforms/xu4
parent22115e7251b4526913948ab0b8780c8419cb6682 (diff)
downloadmageia4arm-2a82e889e8fc50d72be705ded4a50292c02b38b0.tar
mageia4arm-2a82e889e8fc50d72be705ded4a50292c02b38b0.tar.gz
mageia4arm-2a82e889e8fc50d72be705ded4a50292c02b38b0.tar.bz2
mageia4arm-2a82e889e8fc50d72be705ded4a50292c02b38b0.tar.xz
mageia4arm-2a82e889e8fc50d72be705ded4a50292c02b38b0.zip
added platform dir
Diffstat (limited to 'platforms/xu4')
-rw-r--r--platforms/xu4/boot.ini224
-rw-r--r--platforms/xu4/boot.tar.gzbin0 -> 174080 bytes
-rw-r--r--platforms/xu4/extlinux.conf10
-rw-r--r--platforms/xu4/extlinux.conf.orig10
-rw-r--r--platforms/xu4/mageia4arm.cfg53
-rw-r--r--platforms/xu4/mageia4arm.cfg~52
-rw-r--r--platforms/xu4/sd_fuse/bl1.bin.hardkernelbin0 -> 15616 bytes
-rwxr-xr-xplatforms/xu4/sd_fuse/bl2.bin.hardkernel.720k_ubootbin0 -> 14592 bytes
-rwxr-xr-xplatforms/xu4/sd_fuse/sd_fusing.sh91
-rw-r--r--platforms/xu4/sd_fuse/tzsw.bin.hardkernelbin0 -> 262144 bytes
-rwxr-xr-xplatforms/xu4/sd_fuse/u-boot.bin.hardkernelbin0 -> 620062 bytes
-rw-r--r--platforms/xu4/second_stage_install.sh34
-rw-r--r--platforms/xu4/second_stage_install.sh~34
-rw-r--r--platforms/xu4/u-boot-20180507-3.mga7.armv7hl.rpmbin0 -> 392504 bytes
14 files changed, 508 insertions, 0 deletions
diff --git a/platforms/xu4/boot.ini b/platforms/xu4/boot.ini
new file mode 100644
index 0000000..71d34db
--- /dev/null
+++ b/platforms/xu4/boot.ini
@@ -0,0 +1,224 @@
+ODROIDXU-UBOOT-CONFIG
+
+# U-Boot Parameters
+setenv initrd_high "0xffffffff"
+setenv fdt_high "0xffffffff"
+
+# Mac address configuration
+setenv macaddr "00:1e:06:61:7a:87
+
+#------------------------------------------------------------------------------------------------------
+# Basic Ubuntu Setup. Don't touch unless you know what you are doing.
+# --------------------------------
+
+
+
+setenv bootrootfs "console=tty1 console=ttySAC2,115200n8 root=UUID=<UUID> rootwait ro fsck.repair=yes net.ifnames=0"
+
+
+
+# --- Screen Configuration for HDMI --- #
+# ---------------------------------------
+# Uncomment only ONE line! Leave all commented for automatic selection.
+# Uncomment only the setenv line!
+# ---------------------------------------
+# ODROID-VU forced resolution
+# setenv videoconfig "video=HDMI-A-1:1280x800@60"
+# -----------------------------------------------
+# ODROID-VU forced EDID
+# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1280x800.bin"
+# -----------------------------------------------
+# 1920x1080 (1080P) with monitor provided EDID information. (1080p-edid)
+# setenv videoconfig "video=HDMI-A-1:1920x1080@60"
+# -----------------------------------------------
+# 1920x1080 (1080P) without monitor data using generic information (1080p-noedid)
+# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1920x1080.bin"
+# -----------------------------------------------
+# 1920x1080 50hz (1080P) with monitor provided EDID information. (1080p 50hz-edid)
+# setenv videoconfig "video=HDMI-A-1:1920x1080@50"
+# -----------------------------------------------
+# 1920x1080 50hz (1080P) without monitor data using generic information (1080p 50hz-noedid)
+# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1920x1080_50hz.bin"
+# -----------------------------------------------
+# 1440x900 with monitor provided EDID information.
+# setenv videoconfig "video=HDMI-A-1:1440x900@60"
+# -----------------------------------------------
+# 1440x900 without monitor data using generic information
+# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1440x900.bin"
+# -----------------------------------------------
+# 1280x1024 without monitor data using generic information
+# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1280x1024.bin"
+# -----------------------------------------------
+# 1280x720 (720P) with monitor provided EDID information. (720p-edid)
+# setenv videoconfig "video=HDMI-A-1:1280x720@60"
+# -----------------------------------------------
+# 1280x720 (720P) without monitor data using generic information (720p-noedid)
+# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1280x720.bin"
+# -----------------------------------------------
+# 1024x768 without monitor data using generic information
+# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1024x768.bin"
+# -----------------------------------------------
+# 1024x600 without monitor data using generic information (ODROID VU7+)
+# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1024x600.bin"
+# -----------------------------------------------
+# 800x600 without monitor data using generic information
+# setenv videoconfig "drm_kms_helper.edid_firmware=edid/800x600.bin"
+# -----------------------------------------------
+# 800x480 without monitor data using generic information (ODROID 7")
+# setenv videoconfig "drm_kms_helper.edid_firmware=edid/800x480.bin"
+# -----------------------------------------------
+# 720x576 without monitor data using generic information
+# setenv videoconfig "drm_kms_helper.edid_firmware=edid/720x576.bin"
+# -----------------------------------------------
+# 720x480 without monitor data using generic information
+# setenv videoconfig "drm_kms_helper.edid_firmware=edid/720x480.bin"
+# -----------------------------------------------
+# 640x480 without monitor data using generic information
+# setenv videoconfig "drm_kms_helper.edid_firmware=edid/640x480.bin"
+
+
+# --- HDMI / DVI Mode Selection ---
+# ------------------------------------------
+# - HDMI Mode
+setenv vout "hdmi"
+# - DVI Mode (disables sound over HDMI as per DVI compat)
+# setenv vout "dvi"
+
+
+# --- HDMI CEC Configuration ---
+# ------------------------------------------
+setenv cecenable "false" # false or true
+# set to true to enable HDMI CEC
+
+
+# --- CPU Governor Setup ---
+# Uncomment only one line. New governor is set after 90secs after boot.
+# ------------------------------------------
+# - Performance (Keep all the CPU's at Maximum frequency)
+setenv governor "performance"
+# ------------------------------------------
+# - Ondemand
+# setenv governor "ondemand"
+# ------------------------------------------
+# - Interactive (Pretty much just like ondemand with more possible customization via sysfs.)
+# setenv governor "interactive"
+# ------------------------------------------
+# - Conservative (Like ondemand, but do the frequency transitions more slowly, great for battery powered applications)
+# setenv governor "conservative"
+# ------------------------------------------
+# - Powersave (Keeps the CPU's to the lowest possible temps)
+# setenv governor "powersave"
+
+# Enable/Disable ODROID-VU7 Touchsreen
+setenv disable_vu7 "true" # false
+
+
+#------------------------------------------------------------------------------
+#
+# HDMI-PHY Parameter Control
+#
+#------------------------------------------------------------------------------
+#------------------------------------------------------------------------------
+#
+# HDMI Hot Plug detection
+#
+#------------------------------------------------------------------------------
+#
+# Forces the HDMI subsystem to ignore the check if the cable is connected or
+# not.
+# false : disable the detection and force it as connected.
+# true : let cable, board and monitor decide the connection status.
+#
+# default: true
+#
+#------------------------------------------------------------------------------
+setenv HPD "true"
+
+#------------------------------------------------------------------------------
+#
+# TMDS data amplitude control.
+#
+#------------------------------------------------------------------------------
+#
+# 1LSB corresponds to 20 mVdiff amplitude level.
+# tx_amp_lvl : 0 = 760 mVdiff(Min), 31 = 1380 mVdiff(Max)
+#
+# Hardkernel default hdmi_tx_amp_lvl = 31(1380 mVdiff);
+#------------------------------------------------------------------------------
+setenv hdmi_tx_amp_lvl "31"
+
+#------------------------------------------------------------------------------
+#
+# TMDS data amplitude fine control for each channel.
+#
+#------------------------------------------------------------------------------
+#
+# 1LSB corresponds to 20 mVdiff amplitude level.
+# tx_lvl : 0 = 0 mVdiff(Min), 3 = 60 mVdiff(Max)
+#
+# Hardkernel default
+# hdmi_tx_lvl_ch0 = 3, hdmi_tx_lvl_ch1 = 3, hdmi_tx_lvl_ch2 = 3,
+#------------------------------------------------------------------------------
+setenv hdmi_tx_lvl_ch0 "3"
+setenv hdmi_tx_lvl_ch1 "3"
+setenv hdmi_tx_lvl_ch2 "3"
+
+#------------------------------------------------------------------------------
+#
+# TMDS data pre-emphasis level control.
+#
+#------------------------------------------------------------------------------
+#
+# 1LSB corresponds to -0.45dB emphasis level except for 1
+# tx_emp_lvl : 0 = 0 db(Min), 1 = -0.25 db, 2 = 0.7 db, 15 = -7.45 db(Max)
+#
+# Hardkernel default hdmi_tx_emp_lvl = 6 (-2.50 db);
+#------------------------------------------------------------------------------
+setenv hdmi_tx_emp_lvl "6"
+
+#------------------------------------------------------------------------------
+#
+# TMDS clock amplitude control.
+#
+#------------------------------------------------------------------------------
+#
+# 1LSB corresponds to 20 mVdiff amplitude level.
+# clk_amp_lvl : 0 = 790 mVdiff(Min), 31 = 1410 mVdiff(Max)
+#
+# Hardkernel default hdmi_clk_amp_lvl = 31 (1410 mVdiff)
+#------------------------------------------------------------------------------
+setenv hdmi_clk_amp_lvl "31"
+
+#------------------------------------------------------------------------------
+#
+# TMDS data source termination resistor control.
+#
+#------------------------------------------------------------------------------
+#
+# tx_res :
+# 0 = Source Termination OFF(Min), 1 = 200 ohm, 2 = 300 ohm, 3 = 120 ohm(Max)
+#
+# Hardkernrel default hdmi_tx_res = 0 (Source Termination OFF)
+#------------------------------------------------------------------------------
+setenv hdmi_tx_res "0"
+
+#------------------------------------------------------------------------------
+
+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}"
+
+# Load kernel, initrd and dtb in that sequence
+fatload mmc 0:1 0x40008000 zImage
+fatload mmc 0:1 0x42000000 uInitrd
+fatload mmc 0:1 0x44000000 <DTB>
+
+# set FDT address
+fdt addr 0x44000000
+
+if test "${cecenable}" = "false"; then fdt rm /cec@101B0000; fi
+if test "${disable_vu7}" = "false"; then setenv hid_quirks "usbhid.quirks=0x0eef:0x0005:0x0004"; fi
+
+# final boot args
+setenv bootargs "${bootrootfs} ${videoconfig} smsc95xx.macaddr=${macaddr} governor=${governor} ${hdmi_phy_control} ${hid_quirks}"
+# drm.debug=0xff"
+# Boot the board
+bootz 0x40008000 0x42000000 0x44000000
diff --git a/platforms/xu4/boot.tar.gz b/platforms/xu4/boot.tar.gz
new file mode 100644
index 0000000..10bad4e
--- /dev/null
+++ b/platforms/xu4/boot.tar.gz
Binary files differ
diff --git a/platforms/xu4/extlinux.conf b/platforms/xu4/extlinux.conf
new file mode 100644
index 0000000..91a46a2
--- /dev/null
+++ b/platforms/xu4/extlinux.conf
@@ -0,0 +1,10 @@
+menu Welcome to Mageia-Minimal.
+timeout 20
+default Mageia
+
+label Mageia
+ kernel /boot/vmlinuz
+ append root=UUID=<UUID> dwc_otg.lpm_enable=0 console=ttyS0,115200 kgdboc=ttyS0,115200 console=tty1 rootwait fsck.repair=1 8250.nr_uarts=1 elevator=deadline cma=256M\@512M audit=0
+ fdtdir /usr/lib/<FDTDIR>
+ initrd /boot/initrd
+
diff --git a/platforms/xu4/extlinux.conf.orig b/platforms/xu4/extlinux.conf.orig
new file mode 100644
index 0000000..91a46a2
--- /dev/null
+++ b/platforms/xu4/extlinux.conf.orig
@@ -0,0 +1,10 @@
+menu Welcome to Mageia-Minimal.
+timeout 20
+default Mageia
+
+label Mageia
+ kernel /boot/vmlinuz
+ append root=UUID=<UUID> dwc_otg.lpm_enable=0 console=ttyS0,115200 kgdboc=ttyS0,115200 console=tty1 rootwait fsck.repair=1 8250.nr_uarts=1 elevator=deadline cma=256M\@512M audit=0
+ fdtdir /usr/lib/<FDTDIR>
+ initrd /boot/initrd
+
diff --git a/platforms/xu4/mageia4arm.cfg b/platforms/xu4/mageia4arm.cfg
new file mode 100644
index 0000000..3d7d025
--- /dev/null
+++ b/platforms/xu4/mageia4arm.cfg
@@ -0,0 +1,53 @@
+
+# Copyright (C) 2017-2018 Daniel Tartavel-jeannot <contact@librepc.com>
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+
+MAGEIA_VERSION="7"
+ARM_VERSION="armv7hl"
+TARGET="odroid"
+TARGET_VERSION="xu4"
+
+# URL of the Mageia mirror used to install ( see mirrors.mageia.org )
+#MIRROR="http://ftp.free.fr/mirrors/mageia.org/distrib/$MAGEIA_VERSION/$ARM_VERSION"
+MIRROR="http://192.168.1.252/mageia/distrib/$MAGEIA_VERSION/$ARM_VERSION"
+# image will be created here
+INSTALL_PATH="/mnt/perso/xu4-test/"
+
+# Build directory will be created here
+BUILD_PATH="$INSTALL_PATH/build"
+
+#name of the image
+IMAGE="Mageia-${MAGEIA_VERSION}-$TARGET.img"
+
+#Mount point of image's partitions
+BOOT="/mnt/boot_xu4"
+ROOT="/mnt/root_xu4"
+
+#Default user
+ID_USER="odroid"
+PASSWORD="xu4"
+
+#root password
+ROOT_PWD="odroid"
+
+#Hostname
+HOSTNAME="xu4.odroid"
+
+#Filesystem of boot partitions (default ext4)
+BOOTFS=ext4
+
+#kernel package to install
+KERNEL=kernel-odroid
diff --git a/platforms/xu4/mageia4arm.cfg~ b/platforms/xu4/mageia4arm.cfg~
new file mode 100644
index 0000000..178b1fa
--- /dev/null
+++ b/platforms/xu4/mageia4arm.cfg~
@@ -0,0 +1,52 @@
+
+# Copyright (C) 2017-2018 Daniel Tartavel-jeannot <contact@librepc.com>
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+
+MAGEIA_VERSION="cauldron"
+ARM_VERSION="armv7hl"
+TARGET="xu4"
+
+# URL of the Mageia mirror used to install ( see mirrors.mageia.org )
+MIRROR="http://ftp.free.fr/mirrors/mageia.org/distrib/$MAGEIA_VERSION/$ARM_VERSION"
+
+# image will be created here
+INSTALL_PATH="/mnt/perso/xu4-test/"
+
+# Build directory will be created here
+BUILD_PATH="$INSTALL_PATH/build"
+
+#name of the image
+IMAGE="Mageia-${MAGEIA_VERSION}-$TARGET.img"
+
+#Mount point of image's partitions
+BOOT="/mnt/boot_xu4"
+ROOT="/mnt/root_xu4"
+
+#Default user
+ID_USER="odroid"
+PASSWORD="xu4"
+
+#root password
+ROOT_PWD="odroid"
+
+#Hostname
+HOSTNAME="xu4.odroid"
+
+#Filesystem of boot partitions (default ext4)
+BOOTFS=ext4
+
+#kernel package to install
+KERNEL=kernel-odroid
diff --git a/platforms/xu4/sd_fuse/bl1.bin.hardkernel b/platforms/xu4/sd_fuse/bl1.bin.hardkernel
new file mode 100644
index 0000000..a0b62ca
--- /dev/null
+++ b/platforms/xu4/sd_fuse/bl1.bin.hardkernel
Binary files differ
diff --git a/platforms/xu4/sd_fuse/bl2.bin.hardkernel.720k_uboot b/platforms/xu4/sd_fuse/bl2.bin.hardkernel.720k_uboot
new file mode 100755
index 0000000..50ba4bc
--- /dev/null
+++ b/platforms/xu4/sd_fuse/bl2.bin.hardkernel.720k_uboot
Binary files differ
diff --git a/platforms/xu4/sd_fuse/sd_fusing.sh b/platforms/xu4/sd_fuse/sd_fusing.sh
new file mode 100755
index 0000000..71c2e03
--- /dev/null
+++ b/platforms/xu4/sd_fuse/sd_fusing.sh
@@ -0,0 +1,91 @@
+#
+# Copyright (C) 2011 Samsung Electronics Co., Ltd.
+# http://www.samsung.com/
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License version 2 as
+# published by the Free Software Foundation.
+#
+####################################
+set -x
+
+if [ -z $1 ]
+then
+ echo "usage: ./sd_fusing.sh <SD Reader's device file>"
+ exit 0
+fi
+
+if [ -b $1 ]
+then
+ echo "$1 reader is identified."
+else
+ echo "$1 is NOT identified."
+ exit 0
+fi
+
+if [ -d /sys/block/${1##*/}boot0 ]; then
+ echo "$1 is an eMMC card, disabling ${1##*/}boot0 ro"
+ if ! echo -n 0 | sudo tee /sys/block/${1##*/}boot0/force_ro; then
+ echo "Enabling r/w for $1boot0 failed"
+ exit 1
+ fi
+ emmc=1
+fi
+
+####################################
+# fusing images
+
+if [ -n "$emmc" ]; then
+ signed_bl1_position=0
+ bl2_position=30
+ uboot_position=62
+ tzsw_position=1502
+ device=$1boot0
+else
+ signed_bl1_position=1
+ bl2_position=31
+ uboot_position=63
+ tzsw_position=1503
+ device=$1
+fi
+
+env_position=2015
+
+# Get the U-Boot blob
+if [ -f ./u-boot-dtb.bin ]; then
+ uboot="./u-boot-dtb.bin"
+elif [ -f ./u-boot.bin ]; then
+ uboot="./u-boot.bin"
+elif [ -f ../u-boot-dtb.bin ]; then
+ uboot="../u-boot-dtb.bin"
+elif [ -f ./u-boot.bin.hardkernel ]; then
+ uboot="./u-boot.bin.hardkernel"
+else
+ echo "U-Boot blob not found."
+ exit
+fi
+
+#<BL1 fusing>
+echo "BL1 fusing"
+sudo dd iflag=dsync oflag=dsync if=./bl1.bin.hardkernel of=$device seek=$signed_bl1_position
+
+#<BL2 fusing>
+echo "BL2 fusing"
+sudo dd iflag=dsync oflag=dsync if=./bl2.bin.hardkernel.720k_uboot of=$device seek=$bl2_position
+
+#<u-boot fusing>
+echo "u-boot fusing"
+sudo dd iflag=dsync oflag=dsync if=$uboot of=$device seek=$uboot_position
+
+#<TrustZone S/W fusing>
+echo "TrustZone S/W fusing"
+sudo dd iflag=dsync oflag=dsync if=./tzsw.bin.hardkernel of=$device seek=$tzsw_position
+
+#<u-boot env erase>
+echo "u-boot env erase..."
+sudo dd iflag=dsync oflag=dsync if=/dev/zero of=$device seek=$env_position bs=512 count=32
+
+####################################
+#<Message Display>
+echo "U-boot image is fused successfully."
+echo "Eject $1 and insert it again."
diff --git a/platforms/xu4/sd_fuse/tzsw.bin.hardkernel b/platforms/xu4/sd_fuse/tzsw.bin.hardkernel
new file mode 100644
index 0000000..23ecc6e
--- /dev/null
+++ b/platforms/xu4/sd_fuse/tzsw.bin.hardkernel
Binary files differ
diff --git a/platforms/xu4/sd_fuse/u-boot.bin.hardkernel b/platforms/xu4/sd_fuse/u-boot.bin.hardkernel
new file mode 100755
index 0000000..a41fd73
--- /dev/null
+++ b/platforms/xu4/sd_fuse/u-boot.bin.hardkernel
Binary files differ
diff --git a/platforms/xu4/second_stage_install.sh b/platforms/xu4/second_stage_install.sh
new file mode 100644
index 0000000..c9f023f
--- /dev/null
+++ b/platforms/xu4/second_stage_install.sh
@@ -0,0 +1,34 @@
+#!/bin/bash
+
+# Copyright (C) 2017-2018 Daniel Tartavel-jeannot <contact@librepc.com>
+#
+
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+/usr/bin/chown :shadow /etc/shadow /etc/gshadow /etc/login.defs /etc/pam.d/chage-chfn-chsh /etc/pam.d/chpasswd-newusers /etc/pam.d/system-auth /etc/pam.d/user-group-mod /bin/passwd /bin/chage
+
+/usr/bin/chown :systemd-journal -R /var/log/journal
+
+#Install all packages you need
+
+/usr/sbin/urpmi --auto --no-verify-rpm /root/kernel-odroid-4.14.y-1.armv7hl.rpm basesystem chrony rng-tools man openssh-server rfkill wireless-tools bluez wpa_supplicant make dracut u-boot-tools rsync kernel-desktop-latest
+#/usr/sbin/urpmi --urpmi-root "$BUILD_PATH" --ignorearch --no-verify-rpm --auto --split-level 200 --split-length 200
+/usr/sbin/urpmi --auto --no-verify-rpm /root/u-boot-20180507-3.mga7.armv7hl.rpm
+/usr/bin/chown :chrony -R /etc/chrony.keys /var/log/chrony
+/usr/bin/chown :daemon /etc/wpa_supplicant.conf
+/usr/bin/chown :tty /bin/write /bin/wall
+/usr/bin/chown :lock /sbin/lockdev
+/usr/bin/chown :bin /sbin/traceroute
+/usr/bin/chown polkitd /etc/polkit-1/rules.d
+
diff --git a/platforms/xu4/second_stage_install.sh~ b/platforms/xu4/second_stage_install.sh~
new file mode 100644
index 0000000..e78de1c
--- /dev/null
+++ b/platforms/xu4/second_stage_install.sh~
@@ -0,0 +1,34 @@
+#!/bin/bash
+
+# Copyright (C) 2017-2018 Daniel Tartavel-jeannot <contact@librepc.com>
+#
+
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+/usr/bin/chown :shadow /etc/shadow /etc/gshadow /etc/login.defs /etc/pam.d/chage-chfn-chsh /etc/pam.d/chpasswd-newusers /etc/pam.d/system-auth /etc/pam.d/user-group-mod /bin/passwd /bin/chage
+
+/usr/bin/chown :systemd-journal -R /var/log/journal
+
+#Install all packages you need
+
+/usr/sbin/urpmi --auto --no-verify-rpm /root/kernel-odroid-4.14.y-1.armv7hl.rpm basesystem chrony rng-tools man openssh-server rfkill wireless-tools bluez wpa_supplicant make dracut u-boot-tools rsync
+#/usr/sbin/urpmi --urpmi-root "$BUILD_PATH" --ignorearch --no-verify-rpm --auto --split-level 200 --split-length 200
+
+/usr/bin/chown :chrony -R /etc/chrony.keys /var/log/chrony
+/usr/bin/chown :daemon /etc/wpa_supplicant.conf
+/usr/bin/chown :tty /bin/write /bin/wall
+/usr/bin/chown :lock /sbin/lockdev
+/usr/bin/chown :bin /sbin/traceroute
+/usr/bin/chown polkitd /etc/polkit-1/rules.d
+
diff --git a/platforms/xu4/u-boot-20180507-3.mga7.armv7hl.rpm b/platforms/xu4/u-boot-20180507-3.mga7.armv7hl.rpm
new file mode 100644
index 0000000..4711e39
--- /dev/null
+++ b/platforms/xu4/u-boot-20180507-3.mga7.armv7hl.rpm
Binary files differ