satip-axe/fs-add/etc/init.d/rcS

131 lines
3.1 KiB
Plaintext
Executable File

#!/bin/busybox sh
busybox echo "Welcome to SATIP-AXE Linux!"
busybox mount -t proc proc /proc
# remount root filesystem in rw mode
busybox mount -o remount,rw /
# Create all symbolic links.
/bin/busybox --install -s
# Date
date 010112002015 >/dev/null
# mount /dev and devpts to allow logging in
mount -t tmpfs -o size=64k,mode=0755 tmpfs /dev
mkdir /dev/pts /dev/input
mount -t devpts none /dev/pts -ogid=5,mode=620
# use mdev/sysfs
mkdir -p /lib/modules/$(uname -r)
mount -t sysfs sysfs /sys
touch /dev/mdev.seq
mkdir -p /media
echo /sbin/mdev > /proc/sys/kernel/hotplug
mdev -s
# make /tmp as tmpfs
mount -t tmpfs -o size=4M tmpfs /tmp
mv /var /var.2
mkdir /tmp/var
ln -s /tmp/var /var
rm -rf /var.2
mkdir -p /tmp/var/run /tmp/var/log /tmp/var/spool
# sysctl.conf
sysctl -q -p
# start syslogd
syslogd -C256
# config/data storage
mkdir -p /mnt/data
mount -t jffs2 /dev/mtdblock4 /mnt/data/
mkdir -p /mnt/data/satip-axe/sysconfig
ln -s /mnt/data/satip-axe/sysconfig /etc/sysconfig
if ! test -r /etc/sysconfig/config ; then
cp /etc/config.default /etc/sysconfig/config
fi
if test -r /etc/sysconfig/passwd ; then
cp /etc/sysconfig/passwd /etc/passwd
fi
# loopback
ifconfig lo 127.0.0.1 netmask 255.255.255.0
# AXE modules and AXE hw initialization
sync
d=/lib/modules/axe
insmod $d/stapi_core_stripped.ko
insmod $d/stapi_ioctl_stripped.ko
insmod $d/axe_i2c.ko
echo "i2c_dbg_trans 1" > /proc/bus/ivo_i2c
insmod $d/axe_fe.ko
insmod $d/axe_fp.ko
insmod $d/axe_dmx.ko
insmod $d/axe_dmxts.ko
mkdir -p /dev/axe /dev/stapi
maj=
for i in $(cat /proc/devices); do
if test -z "$maj"; then
if test "$i" = "Block"; then
break
fi
maj=$i
continue
fi
if test -z "$i"; then
maj=
continue
elif test "${i::2}" = "st" -a "${i:$(expr ${#i} - 6)}" = "_ioctl"; then
mknod /dev/stapi/$i c $maj 0
elif test "$i" = "i2c_drv"; then
mknod /dev/axe/i2c_drv-0 c $maj 0
elif test "$i" = "fp"; then
mknod /dev/axe/fp-0 c $maj 0
elif test "$i" = "frontend"; then
mknod /dev/axe/frontend-0 c $maj 0
mknod /dev/axe/frontend-1 c $maj 1
mknod /dev/axe/frontend-2 c $maj 2
mknod /dev/axe/frontend-3 c $maj 3
elif test "$i" = "demux"; then
mknod /dev/axe/demux-0 c $maj 0
mknod /dev/axe/demux-1 c $maj 1
mknod /dev/axe/demux-2 c $maj 2
mknod /dev/axe/demux-3 c $maj 3
elif test "$i" = "demuxts"; then
mknod /dev/axe/demuxts-0 c $maj 0
mknod /dev/axe/demuxts-1 c $maj 1
mknod /dev/axe/demuxts-2 c $maj 2
mknod /dev/axe/demuxts-3 c $maj 3
fi
maj=
done
/etc/init.d/axe &
axehelper wait 5000 -10 /tmp/axe-done
axehelper wait 2000 -10
#nc -l 127.0.0.1:1001 -e /bin/true
rm -f /root/main_init.sh /tmp/axe-done
echo "i2c_dbg_trans 0" > /proc/bus/ivo_i2c
# hostname
test -r /etc/sysconfig/config && . /etc/sysconfig/config
test -n "$HOSTNAME" && hostname "$HOSTNAME"
test -z "$HOSTNAME" && hostname satip-axe
# modules
if test -n "$KMODULES"; then
for m in $KMODULES; do
insmod "/lib/modules/$m"
done
fi
# basic network
ifconfig eth0 txqueuelen 2000 up
route add -net 224.0.0.0 netmask 240.0.0.0 dev eth0
# local boot
if test -x /etc/sysconfig/localboot ; then
/etc/sysconfig/localboot
fi