Move board-specific tweaks to LINUXFAMILY templates

Add sunxi-fel to list of installed tools on host
This commit is contained in:
zador-blood-stained 2016-05-05 21:10:37 +03:00
parent 6b959e7ff4
commit d135151a31
12 changed files with 98 additions and 120 deletions

127
boards.sh
View File

@ -18,112 +18,11 @@ install_board_specific (){
# Install board common and specific applications
#---------------------------------------------------------------------------------------------------------------------------------
# Allwinner's
if [[ $LINUXFAMILY == sun* ]] ; then
# default lirc configuration
sed -i '1i sed -i \x27s/DEVICE="\\/dev\\/input.*/DEVICE="\\/dev\\/input\\/\x27$str\x27"/g\x27 /etc/lirc/hardware.conf' \
$CACHEDIR/sdcard/etc/lirc/hardware.conf
sed -i '1i str=$(cat /proc/bus/input/devices | grep "H: Handlers=sysrq rfkill kbd event" | awk \x27{print $(NF)}\x27)' \
$CACHEDIR/sdcard/etc/lirc/hardware.conf
sed -i '1i # Cubietruck automatic lirc device detection by Igor Pecovnik' $CACHEDIR/sdcard/etc/lirc/hardware.conf
sed -e 's/DEVICE=""/DEVICE="\/dev\/input\/event1"/g' -i $CACHEDIR/sdcard/etc/lirc/hardware.conf
sed -e 's/DRIVER="UNCONFIGURED"/DRIVER="devinput"/g' -i $CACHEDIR/sdcard/etc/lirc/hardware.conf
cp $SRC/lib/config/lirc.conf.cubietruck $CACHEDIR/sdcard/etc/lirc/lircd.conf
fi
# Lemaker Guitar
if [[ $BOARD == "guitar" ]] ; then
echo "blacklist wlan_8723bs_vq0" > $CACHEDIR/sdcard/etc/modprobe.d/blacklist-guitar.conf
echo "blacklist ctp_gslX680" >> $CACHEDIR/sdcard/etc/modprobe.d/blacklist-guitar.conf
echo "blacklist ctp_gsl3680" >> $CACHEDIR/sdcard/etc/modprobe.d/blacklist-guitar.conf
echo "blacklist gsensor_mir3da" >> $CACHEDIR/sdcard/etc/modprobe.d/blacklist-guitar.conf
echo "blacklist gsensor_stk8313" >> $CACHEDIR/sdcard/etc/modprobe.d/blacklist-guitar.conf
echo "blacklist gsensor_bma222" >> $CACHEDIR/sdcard/etc/modprobe.d/blacklist-guitar.conf
echo "blacklist lightsensor_ltr301" >> $CACHEDIR/sdcard/etc/modprobe.d/blacklist-guitar.conf
fi
# Odroid
if [[ $BOARD == "odroidxu4" ]] ; then
echo "blacklist ina231_sensor" > $CACHEDIR/sdcard/etc/modprobe.d/blacklist-odroid.conf
chroot $CACHEDIR/sdcard /bin/bash -c "apt-get -y -qq remove --auto-remove lirc >/dev/null 2>&1"
fi
if [[ $BOARD == "odroidc2" ]] ; then
sed -i 's/MODULES=.*/MODULES="meson-ir"/' $CACHEDIR/sdcard/etc/lirc/hardware.conf
sed -i 's/LOAD_MODULES=.*/LOAD_MODULES="true"/' $CACHEDIR/sdcard/etc/lirc/hardware.conf
sed -i 's/DEVICE=.*/DEVICE="\/dev\/lirc0"/' $CACHEDIR/sdcard/etc/lirc/hardware.conf
sed -i 's/LIRCD_ARGS=.*/LIRCD_ARGS="--uinput"/' $CACHEDIR/sdcard/etc/lirc/hardware.conf
cp $SRC/lib/config/lirc.conf.odroidc2 $CACHEDIR/sdcard/etc/lirc/lircd.conf
fi
# Armada
if [[ $BOARD == "armada" ]] ; then
chroot $CACHEDIR/sdcard /bin/bash -c "apt-get -y -qq remove --auto-remove lirc linux-sound-base alsa-base alsa-utils bluez>/dev/null 2>&1"
fi
# Odroid C2
if [[ $BOARD == "odroidc2" ]] ; then
install -m 755 $SRC/lib/scripts/c2_init.sh $CACHEDIR/sdcard/etc/
sed -e 's/exit 0//g' -i $CACHEDIR/sdcard/etc/rc.local
echo "/etc/c2_init.sh" >> $CACHEDIR/sdcard/etc/rc.local
echo "exit 0" >> $CACHEDIR/sdcard/etc/rc.local
fi
# Udoo
if [[ $BOARD == "udoo" ]] ; then
chroot $CACHEDIR/sdcard /bin/bash -c "apt-get -y -qq remove --auto-remove lirc >/dev/null 2>&1"
sed 's/wlan0/wlan2/' -i $CACHEDIR/sdcard/etc/network/interfaces.default
sed 's/wlan0/wlan2/' -i $CACHEDIR/sdcard/etc/network/interfaces.bonding
sed 's/wlan0/wlan2/' -i $CACHEDIR/sdcard/etc/network/interfaces.hostapd
fi
# Udoo neo
if [[ $BOARD == "udoo-neo" ]] ; then
chroot $CACHEDIR/sdcard /bin/bash -c "apt-get -y -qq remove --auto-remove lirc"
sed 's/wlan0/wlan2/' -i $CACHEDIR/sdcard/etc/network/interfaces.default
sed 's/wlan0/wlan2/' -i $CACHEDIR/sdcard/etc/network/interfaces.bonding
sed 's/wlan0/wlan2/' -i $CACHEDIR/sdcard/etc/network/interfaces.hostapd
# SD card is elsewhere
sed 's/mmcblk0p1/mmcblk1p1/' -i $CACHEDIR/sdcard/etc/fstab
# firmware for M4
mkdir -p $CACHEDIR/sdcard/boot/bin/
cp $SRC/lib/bin/m4startup.fw* $CACHEDIR/sdcard/boot/bin/
# fix for BT
cp $SRC/lib/bin/udoo-neo-debs/udooneo-bluetooth_1.2-1_armhf.deb /tmp
chroot $CACHEDIR/sdcard /bin/bash -c "dpkg -i /tmp/udooneo-bluetooth_1.2-1_armhf.deb >/dev/null 2>&1"
fi
# cubox / hummingboard
if [[ $BOARD == cubox-i* ]] ; then
# default lirc configuration
sed -e 's/DEVICE=""/DEVICE="\/dev\/lirc0"/g' -i $CACHEDIR/sdcard/etc/lirc/hardware.conf
sed -e 's/DRIVER="UNCONFIGURED"/DRIVER="default"/g' -i $CACHEDIR/sdcard/etc/lirc/hardware.conf
cp $SRC/lib/config/lirc.conf.cubox-i $CACHEDIR/sdcard/etc/lirc/lircd.conf
cp $SRC/lib/bin/brcm_patchram_plus_cubox $CACHEDIR/sdcard/usr/local/bin/brcm_patchram_plus
chroot $CACHEDIR/sdcard /bin/bash -c "chmod +x /usr/local/bin/brcm_patchram_plus"
cp $SRC/lib/scripts/brcm4330 $CACHEDIR/sdcard/etc/default
cp $SRC/lib/scripts/brcm4330-patch $CACHEDIR/sdcard/etc/init.d
chroot $CACHEDIR/sdcard /bin/bash -c "chmod +x /etc/init.d/brcm4330-patch"
#chroot $CACHEDIR/sdcard /bin/bash -c "LC_ALL=C LANG=C update-rc.d brcm4330-patch defaults>> /dev/null"
fi
# execute $LINUXFAMILY-specific tweaks from $BOARD.conf
[[ $(type -t family_tweaks) == function ]] && family_tweaks
# install custom root package
display_alert "Install board support package" "$BOARD" "info"
display_alert "Installing board support package" "$BOARD" "info"
chroot $CACHEDIR/sdcard /bin/bash -c "dpkg -i /tmp/$RELEASE/${CHOSEN_ROOTFS}_${REVISION}_${ARCH}.deb > /dev/null"
# enable first run script
@ -170,19 +69,10 @@ install_board_specific (){
# convert to uboot compatible script
[[ -f $CACHEDIR/sdcard/boot/boot.cmd ]] && \
mkimage -C none -A arm -T script -d $CACHEDIR/sdcard/boot/boot.cmd $CACHEDIR/sdcard/boot/boot.scr >> /dev/null
mkimage -C none -A arm -T script -d $CACHEDIR/sdcard/boot/boot.cmd $CACHEDIR/sdcard/boot/boot.scr >> /dev/null
# initial date for fake-hwclock
date -u '+%Y-%m-%d %H:%M:%S' > $CACHEDIR/sdcard/etc/fake-hwclock.data
}
install_kernel (){
#--------------------------------------------------------------------------------------------------------------------------------
# Install kernel to prepared root file-system
#--------------------------------------------------------------------------------------------------------------------------------
display_alert "Installing packages" "$CHOSEN_KERNEL" "info"
# configure MIN / MAX speed for cpufrequtils
echo "ENABLE=true" > $CACHEDIR/sdcard/etc/default/cpufrequtils
@ -215,6 +105,15 @@ install_kernel (){
# copy and create symlink to default interfaces configuration
cp $SRC/lib/config/network/interfaces.* $CACHEDIR/sdcard/etc/network/
ln -sf interfaces.default $CACHEDIR/sdcard/etc/network/interfaces
}
install_kernel (){
#--------------------------------------------------------------------------------------------------------------------------------
# Install kernel to prepared root file-system
#--------------------------------------------------------------------------------------------------------------------------------
display_alert "Installing packages" "$CHOSEN_KERNEL" "info"
# mount deb storage to tmp
mount --bind $DEST/debs/ $CACHEDIR/sdcard/tmp

View File

@ -100,7 +100,7 @@ n=0
for line in "${buildlist[@]}"; do
unset LINUXFAMILY LINUXCONFIG LINUXKERNEL LINUXSOURCE KERNELBRANCH BOOTLOADER BOOTSOURCE BOOTBRANCH ARCH UBOOT_NEEDS_GCC KERNEL_NEEDS_GCC \
CPUMIN CPUMAX UBOOT_VER KERNEL_VER GOVERNOR BOOTSIZE UBOOT_TOOLCHAIN KERNEL_TOOLCHAIN PACKAGE_LIST_EXCLUDE KERNEL_IMAGE_TYPE \
write_uboot_platform UBOOT_FILES
write_uboot_platform family_tweaks UBOOT_FILES
read BOARD BRANCH RELEASE BUILD_DESKTOP <<< $line
n=$[$n+1]

View File

@ -112,11 +112,11 @@ compile_sunxi_tools (){
display_alert "Compiling sunxi tools" "@host & target" "info"
cd $SOURCES/$MISC1_DIR
make -s clean >/dev/null 2>&1
rm -f sunxi-fexc sunxi-nand-part
make -s >/dev/null 2>&1
cp fex2bin bin2fex /usr/local/bin/
mkdir -p /usr/local/bin/
cp fex2bin bin2fex sunxi-fel /usr/local/bin/
# make -s clean >/dev/null 2>&1
# rm -f sunxi-fexc sunxi-nand-part meminfo sunxi-fel sunxi-pio 2>/dev/null
# NOTE: Fix CC=$CROSS_COMPILE"gcc" before reenabling
# make $CTHREADS 'sunxi-nand-part' CC=$CROSS_COMPILE"gcc" >> $DEST/debug/install.log 2>&1
# make $CTHREADS 'sunxi-fexc' CC=$CROSS_COMPILE"gcc" >> $DEST/debug/install.log 2>&1
@ -124,7 +124,6 @@ compile_sunxi_tools (){
}
compile_kernel (){
#---------------------------------------------------------------------------------------------------------------------------------
# Compile kernel

View File

@ -34,3 +34,15 @@ write_uboot_platform()
dd if=$1/SPL of=$2 bs=512 seek=2 status=noxfer > /dev/null 2>&1
dd if=$1/u-boot.img of=$2 bs=1K seek=42 status=noxfer > /dev/null 2>&1
}
family_tweaks()
{
# default lirc configuration
sed -e 's/DEVICE=""/DEVICE="\/dev\/lirc0"/g' -i $CACHEDIR/sdcard/etc/lirc/hardware.conf
sed -e 's/DRIVER="UNCONFIGURED"/DRIVER="default"/g' -i $CACHEDIR/sdcard/etc/lirc/hardware.conf
cp $SRC/lib/config/lirc.conf.cubox-i $CACHEDIR/sdcard/etc/lirc/lircd.conf
install -m 755 $SRC/lib/bin/brcm_patchram_plus_cubox $CACHEDIR/sdcard/usr/local/bin/brcm_patchram_plus
cp $SRC/lib/scripts/brcm4330 $CACHEDIR/sdcard/etc/default
install -m 755 $SRC/lib/scripts/brcm4330-patch $CACHEDIR/sdcard/etc/init.d/brcm4330-patch
#chroot $CACHEDIR/sdcard /bin/bash -c "LC_ALL=C LANG=C update-rc.d brcm4330-patch defaults>> /dev/null"
}

View File

@ -33,3 +33,8 @@ write_uboot_platform()
{
dd if=$1/u-boot.mmc of=$2 bs=512 seek=1 status=noxfer > /dev/null 2>&1
}
family_tweaks()
{
chroot $CACHEDIR/sdcard /bin/bash -c "apt-get -y -qq remove --auto-remove lirc linux-sound-base alsa-base alsa-utils bluez>/dev/null 2>&1"
}

View File

@ -20,3 +20,19 @@ write_uboot_platform()
dd if=$1/SPL of=$2 bs=1k seek=1 status=noxfer > /dev/null 2>&1
dd if=$1/u-boot.img of=$2 bs=1k seek=69 conv=fsync > /dev/null 2>&1
}
family_tweaks()
{
chroot $CACHEDIR/sdcard /bin/bash -c "apt-get -y -qq remove --auto-remove lirc"
sed 's/wlan0/wlan2/' -i $CACHEDIR/sdcard/etc/network/interfaces.default
sed 's/wlan0/wlan2/' -i $CACHEDIR/sdcard/etc/network/interfaces.bonding
sed 's/wlan0/wlan2/' -i $CACHEDIR/sdcard/etc/network/interfaces.hostapd
# SD card is elsewhere
sed 's/mmcblk0p1/mmcblk1p1/' -i $CACHEDIR/sdcard/etc/fstab
# firmware for M4
mkdir -p $CACHEDIR/sdcard/boot/bin/
cp $SRC/lib/bin/m4startup.fw* $CACHEDIR/sdcard/boot/bin/
# fix for BT
cp $SRC/lib/bin/udoo-neo-debs/udooneo-bluetooth_1.2-1_armhf.deb $CACHEDIR/sdcard/tmp
chroot $CACHEDIR/sdcard /bin/bash -c "dpkg -i /tmp/udooneo-bluetooth_1.2-1_armhf.deb >/dev/null 2>&1"
}

View File

@ -20,3 +20,17 @@ write_uboot_platform()
dd if=$1/u-boot.bin of=$2 bs=512 seek=97 conv=fsync > /dev/null 2>&1
dd if=/dev/zero of=$2 seek=1249 count=799 bs=512 conv=fsync > /dev/null 2>&1
}
family_tweaks()
{
sed -i 's/MODULES=.*/MODULES="meson-ir"/' $CACHEDIR/sdcard/etc/lirc/hardware.conf
sed -i 's/LOAD_MODULES=.*/LOAD_MODULES="true"/' $CACHEDIR/sdcard/etc/lirc/hardware.conf
sed -i 's/DEVICE=.*/DEVICE="\/dev\/lirc0"/' $CACHEDIR/sdcard/etc/lirc/hardware.conf
sed -i 's/LIRCD_ARGS=.*/LIRCD_ARGS="--uinput"/' $CACHEDIR/sdcard/etc/lirc/hardware.conf
cp $SRC/lib/config/lirc.conf.odroidc2 $CACHEDIR/sdcard/etc/lirc/lircd.conf
install -m 755 $SRC/lib/scripts/c2_init.sh $CACHEDIR/sdcard/etc/
sed -e 's/exit 0//g' -i $CACHEDIR/sdcard/etc/rc.local
echo "/etc/c2_init.sh" >> $CACHEDIR/sdcard/etc/rc.local
echo "exit 0" >> $CACHEDIR/sdcard/etc/rc.local
}

View File

@ -31,3 +31,9 @@ write_uboot_platform()
dd if=$1/tzsw.bin.hardkernel of=$2 seek=719 conv=fsync > /dev/null 2>&1
dd if=/dev/zero of=$2 seek=1231 count=32 bs=512 conv=fsync > /dev/null 2>&1
}
family_tweaks()
{
echo "blacklist ina231_sensor" > $CACHEDIR/sdcard/etc/modprobe.d/blacklist-odroid.conf
chroot $CACHEDIR/sdcard /bin/bash -c "apt-get -y -qq remove --auto-remove lirc >/dev/null 2>&1"
}

View File

@ -17,7 +17,7 @@ case $BRANCH in
dev)
LINUXKERNEL='https://github.com/apritzel/linux.git'
KERNELBRANCH='a64-v4'
KERNELBRANCH='a64-wip'
LINUXSOURCE='linux-pine64-dev'
GOVERNOR=ondemand
;;

View File

@ -27,3 +27,9 @@ write_uboot_platform()
[ -f "$1/s500-bootloader-roseapple.bin" ] && dd if=$1/bootloader-roseapple.bin of=$2 bs=512 seek=4097 conv=fsync > /dev/null 2>&1
dd if=$1/u-boot-dtb.img of=$2 bs=512 seek=6144 conv=fsync > /dev/null 2>&1
}
family_tweaks()
{
printf 'blacklist wlan_8723bs_vq0\nblacklist ctp_gslX680\nblacklist ctp_gsl3680\n" > $CACHEDIR/sdcard/etc/modprobe.d/blacklist-guitar.conf
printf 'blacklist gsensor_mir3da\nblacklist gsensor_stk8313\nblacklist gsensor_bma222\nblacklist lightsensor_ltr301\n" >> $CACHEDIR/sdcard/etc/modprobe.d/blacklist-guitar.conf
}

View File

@ -26,3 +26,16 @@ write_uboot_platform()
dd if=/dev/zero of=$2 bs=1k count=1023 seek=1 status=noxfer > /dev/null 2>&1
dd if=$1/u-boot-sunxi-with-spl.bin of=$2 bs=1024 seek=8 status=noxfer > /dev/null 2>&1
}
family_tweaks()
# default lirc configuration
sed -i '1i sed -i \x27s/DEVICE="\\/dev\\/input.*/DEVICE="\\/dev\\/input\\/\x27$str\x27"/g\x27 /etc/lirc/hardware.conf' \
$CACHEDIR/sdcard/etc/lirc/hardware.conf
sed -i '1i str=$(cat /proc/bus/input/devices | grep "H: Handlers=sysrq rfkill kbd event" | awk \x27{print $(NF)}\x27)' \
$CACHEDIR/sdcard/etc/lirc/hardware.conf
sed -i '1i # Cubietruck automatic lirc device detection by Igor Pecovnik' $CACHEDIR/sdcard/etc/lirc/hardware.conf
sed -e 's/DEVICE=""/DEVICE="\/dev\/input\/event1"/g' -i $CACHEDIR/sdcard/etc/lirc/hardware.conf
sed -e 's/DRIVER="UNCONFIGURED"/DRIVER="devinput"/g' -i $CACHEDIR/sdcard/etc/lirc/hardware.conf
cp $SRC/lib/config/lirc.conf.cubietruck $CACHEDIR/sdcard/etc/lirc/lircd.conf
}

View File

@ -28,3 +28,11 @@ write_uboot_platform()
dd if=$1/SPL of=$2 bs=1k seek=1 status=noxfer > /dev/null 2>&1
dd if=$1/u-boot.img of=$2 bs=1k seek=69 conv=fsync > /dev/null 2>&1
}
family_tweaks()
{
chroot $CACHEDIR/sdcard /bin/bash -c "apt-get -y -qq remove --auto-remove lirc >/dev/null 2>&1"
sed 's/wlan0/wlan2/' -i $CACHEDIR/sdcard/etc/network/interfaces.default
sed 's/wlan0/wlan2/' -i $CACHEDIR/sdcard/etc/network/interfaces.bonding
sed 's/wlan0/wlan2/' -i $CACHEDIR/sdcard/etc/network/interfaces.hostapd
}