#!/bin/sh
set -e

echo "loadoa.sh starting..."

echo -n "Loading RTAI modules... [hal] "
/sbin/insmod /usr/realtime/modules/rtai_hal.ko
echo -n "[smp] "
/sbin/insmod /usr/realtime/modules/rtai_smp.ko
echo -n "[sem] "
/sbin/insmod /usr/realtime/modules/rtai_sem.ko
echo -n "[ndbg] "
/sbin/insmod /usr/realtime/modules/rtai_ndbg.ko
echo -n "[fifos] "
/sbin/insmod /usr/realtime/modules/rtai_fifos.ko
echo "Done."

echo "Loading STGEnabler..."
/sbin/insmod /sbin/STGEnabler.ko
echo "Loading STGGmp..."
/sbin/insmod /sbin/STGGmp.ko

echo "Setting IRQ SMP affinity..."
irq=$(cat /proc/interrupts | grep '[ex]hci' | awk '{ print $1 }' | busybox tr -d :)
echo " USB IRQ: $irq"
echo 4 > /proc/irq/$irq/smp_affinity

echo "Loading OmapNKS4Module..."
/sbin/insmod /sbin/OmapNKS4Module.ko
echo "Loading OmapVideoModule..."
/sbin/insmod /sbin/OmapVideoModule.ko
echo "Loading GetPubIdMod..."
/sbin/insmod /sbin/GetPubIdMod.ko
#/sbin/insmod /sbin/loadmod.ko

echo "Bindmounting cryptoloop directories..."
mount --bind /korg/rw/PCM/WaveMotion2 /korg/rw/PCM/WaveMotion
mount --bind /korg/ro/Mod /korg/Mod
mount --bind /korg/ro/Eva /korg/Eva

echo "Loading KorgUsbAudioDriver..."
/sbin/insmod /korg/Mod/KorgUsbAudioDriver.ko

echo "Loading USBMidiAccessory..."
/sbin/insmod /sbin/USBMidiAccessory.ko

echo "Bindmounting SSD1..."
mount --bind /korg/rw/HD /korg/ftp/SSD1

echo "Checking for 2nd internal HDD..."

Has2ndInternalDisk=0
if ls -ald /sys/block/sdb 2>/dev/null | grep -vq usb; then
	echo "  Detected secondary internal HDD"
	Has2ndInternalDisk=1
	echo "  Mounting..."
	mount -t ext3 -o commit=1,noatime /dev/sdb1 /korg/rw2
	echo "  Moving options..."
	mv -f /korg/rw2/Options/* /korg/rw/Options
	echo "  Bindmounting SSD2..."
	mkdir --mode=777 /korg/ftp/SSD2
	chown 500:500 /korg/ftp/SSD2
	mount --bind /korg/rw2/HD /korg/ftp/SSD2
else
	umount /korg/ftp/SSD2 2>/dev/null || true
	rm -rf /korg/ftp/SSD2
fi

echo "Loading OA.ko..."
/sbin/insmod /korg/Mod/OA.ko Has2ndInternalDisk=$Has2ndInternalDisk

echo "Starting fanctrld..."
/bin/fanctrld >/dev/null

echo "Starting Eva..."
ulimit -l unlimited
/korg/Eva/Eva &

echo "loadoa done!"

