mirror of
https://github.com/MiyooCFW/buildroot.git
synced 2025-09-27 22:24:19 +03:00
add build image
This commit is contained in:
39
board/miyoo/rootfs/etc/inittab
Normal file
39
board/miyoo/rootfs/etc/inittab
Normal file
@@ -0,0 +1,39 @@
|
||||
# /etc/inittab
|
||||
#
|
||||
# Copyright (C) 2001 Erik Andersen <andersen@codepoet.org>
|
||||
#
|
||||
# Note: BusyBox init doesn't support runlevels. The runlevels field is
|
||||
# completely ignored by BusyBox init. If you want runlevels, use
|
||||
# sysvinit.
|
||||
#
|
||||
# Format for each entry: <id>:<runlevels>:<action>:<process>
|
||||
#
|
||||
# id == tty to run on, or empty for /dev/console
|
||||
# runlevels == ignored
|
||||
# action == one of sysinit, respawn, askfirst, wait, and once
|
||||
# process == program to run
|
||||
|
||||
# Startup the system
|
||||
::sysinit:/bin/mount -t proc proc /proc
|
||||
::sysinit:/bin/mount -o remount,ro /
|
||||
::sysinit:/bin/mkdir -p /dev/pts
|
||||
::sysinit:/bin/mkdir -p /dev/shm
|
||||
::sysinit:/bin/mount -a
|
||||
::sysinit:/bin/hostname -F /etc/hostname
|
||||
::sysinit:/bin/mount /dev/mmcblk0p4 /mnt -t vfat -o rw,sync,utf8
|
||||
::sysinit:/bin/mount /dev/mmcblk0p1 /boot -t vfat -o ro,exec,sync,utf8
|
||||
::sysinit:/sbin/swapon /dev/mmcblk0p3
|
||||
|
||||
# now run any rc scripts
|
||||
#::sysinit:/etc/init.d/rcS
|
||||
tty1::respawn:/etc/main
|
||||
::respawn:/sbin/getty -L ttyAM0 115200 vt100
|
||||
::respawn:/sbin/getty -L ttyGS0 115200 vt100
|
||||
|
||||
# Stuff to do for the 3-finger salute
|
||||
#::ctrlaltdel:/sbin/reboot
|
||||
|
||||
# Stuff to do before rebooting
|
||||
#::shutdown:/etc/init.d/rcK
|
||||
::shutdown:/sbin/swapoff -a
|
||||
::shutdown:/bin/umount -a -r
|
||||
136
board/miyoo/rootfs/etc/main
Executable file
136
board/miyoo/rootfs/etc/main
Executable file
@@ -0,0 +1,136 @@
|
||||
#!/bin/busybox sh
|
||||
|
||||
BOOTLOGO="boot-logo"
|
||||
export HOME=/mnt
|
||||
export SDL_NOMOUSE=1
|
||||
START="${HOME}/autoexec.sh"
|
||||
|
||||
BOOTDIR=/boot # we expect /dev/mmcblk0p1 has been mounted here read only, from inittab
|
||||
LOGS=/dev/null
|
||||
#LOGS=/mnt/log.txt
|
||||
# can use /mnt/log.txt here, but note that this prevents clean shutdowns - so only use this for debugging
|
||||
export LOGS # so that subshells can use this as well
|
||||
|
||||
# try to read what handheld we're on
|
||||
if test -r "${BOOTDIR}/console.cfg"; then
|
||||
source "${BOOTDIR}/console.cfg"
|
||||
fi
|
||||
# sanity checks - we default to V90/Q90
|
||||
if test -z "${CONSOLE_VARIANT}"; then
|
||||
CONSOLE_VARIANT="v90_q90"
|
||||
fi
|
||||
export CONSOLE_VARIANT
|
||||
|
||||
# check if it's first boot and turn on messages if yes
|
||||
if test -r "${BOOTDIR}/firstboot"; then
|
||||
DEBUG_MSG="yes"
|
||||
fi
|
||||
|
||||
if test "x${DEBUG_MSG}" == "xyes"; then
|
||||
echo -e "\e[0m" # normal foreground colour
|
||||
export DEBUG_MSG # set it globally for further programs
|
||||
else
|
||||
echo -e "\e[30m" # black foreground colour
|
||||
fi
|
||||
|
||||
# load kernel modules
|
||||
modprobe "g_acm_ms" file=/dev/mmcblk0p4,/dev/mmcblk0p1,/dev/mmcblk0p2 removable=1,1 ro=0,0 >> "${LOGS}" 2>&1
|
||||
|
||||
|
||||
# just load the expected ones (screen driver) from here
|
||||
# do it directly and not rely on modprobe trying to find them
|
||||
# automatically in rootfs/lib/modules/VERSION
|
||||
# (also because with custom kernels the VERSION will be different.
|
||||
#
|
||||
# the uEnv.txt is autogenerated by u-boot from HW which outputs
|
||||
# environmental variables needed for ID of screen type
|
||||
video=`cat ${BOOTDIR}/uEnv.txt |grep -a "CONSOLE_VIDEO" | cut -d "=" -f 2 | cut -d "." -f 1`
|
||||
params=`cat ${BOOTDIR}/uEnv.txt |grep -a "CONSOLE_PARAMETERS" | cut -d "=" -f 2-`
|
||||
|
||||
# TVout scripting backend
|
||||
tvout=`cat ${HOME}/tvout`
|
||||
if ((test -r "${HOME}/tvout")); then
|
||||
echo 0 >/sys/class/backlight/backlight/brightness
|
||||
echo 0 > /sys/class/vtconsole/vtcon1/bind
|
||||
modprobe -r $video
|
||||
if (grep -q TVMODE\=\1 "${HOME}/options.cfg"); then
|
||||
modprobe miyoo-tvout tvmode=1
|
||||
else
|
||||
modprobe miyoo-tvout
|
||||
fi
|
||||
echo 1 > /sys/class/vtconsole/vtcon1/bind
|
||||
modprobe -r $video
|
||||
else
|
||||
# MODULES_CUSTOM scripting
|
||||
if ((test -r "${BOOTDIR}/modules.custom.sh") && !(grep -q MODULES_CUSTOM\=\0 "${HOME}/options.cfg")); then
|
||||
(cd "${BOOTDIR}" && sh modules.custom.sh ) >> "${LOGS}" 2>&1
|
||||
else
|
||||
# Load video module read from uEnv.txt & defined by variant in console.cfg
|
||||
if (grep -q FLIP\=\1 "${HOME}/options.cfg"); then
|
||||
modprobe $video $params flip=1
|
||||
else
|
||||
modprobe $video $params
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
# check if it's first boot and defer to the firstboot script if yes
|
||||
if test -r "${BOOTDIR}/firstboot"; then
|
||||
exec sh "${BOOTDIR}/firstboot"
|
||||
fi
|
||||
|
||||
if !(grep -q FAT_CHECK\=\0 "${HOME}/options.cfg"); then
|
||||
##Check if fat32 is flagged as "dirty", and if so unmount, repair, remount
|
||||
if dmesg | grep "mmcblk0p4" > /dev/null; then
|
||||
echo -e "\e[31mUnclean shutdown detected.\e[0m"
|
||||
echo -e "\e[32mChecking FAT32 partition...\e[0m"
|
||||
umount /dev/mmcblk0p4
|
||||
fsck.vfat -y /dev/mmcblk0p4 > /dev/null;
|
||||
mount /dev/mmcblk0p4 "${HOME}" -t vfat -o rw,sync,utf8
|
||||
echo -e "\e[32mCheck complete.\e[0m"
|
||||
fi
|
||||
fi
|
||||
|
||||
clear
|
||||
|
||||
echo "Boot!" >> "${LOGS}"
|
||||
echo "Handheld type is ${CONSOLE_VARIANT}" >> "${LOGS}"
|
||||
|
||||
# run any custom commands ('daemon' expected to be run from there)
|
||||
if test -r "${BOOTDIR}/normalboot.custom.sh" ; then
|
||||
(cd "${BOOTDIR}" && sh normalboot.custom.sh) # don't redirect, want output on screen
|
||||
else
|
||||
# at least run 'daemon'
|
||||
daemon >> "${LOGS}" 2>&1
|
||||
fi
|
||||
|
||||
# run boot logo animation
|
||||
if (!(grep -q BOOT_LOGO\=\0 "${HOME}/options.cfg")); then
|
||||
${BOOTLOGO} >> "${LOGS}" 2>&1
|
||||
#st7789s video driver long initialization fix
|
||||
elif (lsmod | grep -q st7789s); then
|
||||
sleep 1
|
||||
fi
|
||||
|
||||
# can't unmount boot because 'daemon' runs from it - but it's mounted read-only
|
||||
# so it's fine
|
||||
## umount /dev/mmcblk0p1
|
||||
|
||||
if test "x${DEBUG_MSG}" == "xyes"; then
|
||||
echo "(Waiting 5 seconds before proceeding...)"
|
||||
sleep 5
|
||||
dmesg > /mnt/dmesg.txt
|
||||
fi
|
||||
|
||||
while [ 1 ]
|
||||
do
|
||||
if test -f "${START}"; then
|
||||
source "${START}"
|
||||
else
|
||||
|
||||
cd "${HOME}"/gmenu2x;
|
||||
./gmenu2x >> "${LOGS}" 2>&1;
|
||||
fi
|
||||
clear
|
||||
done
|
||||
Reference in New Issue
Block a user