mirror of
git://projects.qi-hardware.com/openwrt-xburst.git
synced 2024-12-12 17:01:54 +02:00
Merge commit 'origin/xburst' into xburst
This commit is contained in:
commit
f4362a8e34
11
package/busybox/patches/950-change-init-msg.patch
Normal file
11
package/busybox/patches/950-change-init-msg.patch
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
--- busybox-1.15.3/init/init.c.orig 2010-04-09 02:01:51.000000000 +0200
|
||||||
|
+++ busybox-1.15.3/init/init.c 2010-04-09 02:05:39.000000000 +0200
|
||||||
|
@@ -355,7 +355,7 @@
|
||||||
|
#ifdef CUSTOMIZED_BANNER
|
||||||
|
#include CUSTOMIZED_BANNER
|
||||||
|
#endif
|
||||||
|
- "\nPlease press Enter to activate this console. ";
|
||||||
|
+ "\nPlease wait while graphical environment is loading... ";
|
||||||
|
char c;
|
||||||
|
/*
|
||||||
|
* Save memory by not exec-ing anything large (like a shell)
|
123
scripts/build
Executable file
123
scripts/build
Executable file
@ -0,0 +1,123 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
BASE_DIR="xburst"
|
||||||
|
|
||||||
|
LOG="${BASE_DIR}/LOG"
|
||||||
|
|
||||||
|
BUILD_LOG="${BASE_DIR}/BUILD_LOG"
|
||||||
|
|
||||||
|
DATE=$(date "+%Y-%m-%d")
|
||||||
|
TIME=$(date "+%H-%M-%S")
|
||||||
|
DATE_TIME="${DATE}_${TIME}"
|
||||||
|
|
||||||
|
if [ "${0}" != "./scripts/build" ]; then
|
||||||
|
echo "Please call me that way: ./scripts/build"
|
||||||
|
echo " - out of the main directory"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ ! -f ".config" ]; then
|
||||||
|
echo "OpenWrt didn't get configured yet."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -f "config" ]; then
|
||||||
|
echo "file <config> exists."
|
||||||
|
echo "That means normally, a previous build failed"
|
||||||
|
echo "Please examine the situation"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "This script will move previous builds to bak/!"
|
||||||
|
echo "This script will reset modifications you made"
|
||||||
|
echo " to files which are part of the repository!"
|
||||||
|
echo "This script comes without any kind of warranty!"
|
||||||
|
echo " "
|
||||||
|
echo "Are you brave, dude? [NO/yes]"
|
||||||
|
|
||||||
|
read brave
|
||||||
|
|
||||||
|
echo " "
|
||||||
|
|
||||||
|
if [ "${brave}" != "yes" ]; then
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "cleaning up toolchain..."
|
||||||
|
mkdir bak 2>/dev/null
|
||||||
|
BAK="build_dir staging_dir tmp bin .config.old feeds xburst config"
|
||||||
|
for bak in $BAK; do
|
||||||
|
mv "${bak}" "bak/${bak}_${DATE_TIME}" 2> /dev/null && echo "backed up <${bak}>"
|
||||||
|
done
|
||||||
|
rm -rf package/feeds/*
|
||||||
|
|
||||||
|
mv .config config
|
||||||
|
mkdir xburst
|
||||||
|
|
||||||
|
echo "updating git repo..."
|
||||||
|
git pull > /dev/null
|
||||||
|
if [ "$?" != "0" ]; then
|
||||||
|
echo "ERROR: updating openwrt-xburst failed"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "updating feeds..."
|
||||||
|
scripts/feeds update -a > /dev/null 2>&1
|
||||||
|
if [ "$?" != "0" ]; then
|
||||||
|
echo "ERROR: updating feeds failed"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
echo "installing feeds..."
|
||||||
|
scripts/feeds install -a > /dev/null 2>&1
|
||||||
|
if [ "$?" != "0" ]; then
|
||||||
|
echo "ERROR: installing feeds failed"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "getting version numbers of used repositories..."
|
||||||
|
feeds="$(cat feeds.conf | grep -v -E "^#")"
|
||||||
|
VERSIONS_FILE="xburst/VERSIONS"
|
||||||
|
echo "# base :: 'openwrt' [scm-protocol] [revision] [source] [branch]" > ${VERSIONS_FILE}
|
||||||
|
tmp=($(git show-ref | head -n 1))
|
||||||
|
rev=${tmp[0]}
|
||||||
|
echo "openwrt git ${rev} git://projects.qi-hardware.com/openwrt-xburst.git xburst" >> ${VERSIONS_FILE}
|
||||||
|
echo "# feeds :: [feedname] [scm-protocol] [revision]" >> ${VERSIONS_FILE}
|
||||||
|
IFS=$'\n'
|
||||||
|
for feed in $feeds; do
|
||||||
|
IFS=' ' arr=(${feed:4})
|
||||||
|
proto=${arr[0]}
|
||||||
|
dir=${arr[1]}
|
||||||
|
url=${arr[2]}
|
||||||
|
if [ "$proto" = "svn" ]; then
|
||||||
|
cd feeds/${arr[1]} && tmp=($(svn info | grep -E "^Revision")) && cd ../../
|
||||||
|
rev=${tmp[1]}
|
||||||
|
fi
|
||||||
|
if [ "$proto" = "git" ]; then
|
||||||
|
cd feeds/${arr[1]} && tmp=($(git show-ref | head -n 1)) && cd ../../
|
||||||
|
rev=${tmp[0]}
|
||||||
|
fi
|
||||||
|
echo "${dir} ${proto} ${rev}" >> ${VERSIONS_FILE}
|
||||||
|
done
|
||||||
|
|
||||||
|
echo ${DATE} > files/etc/VERSION
|
||||||
|
|
||||||
|
mv config .config
|
||||||
|
|
||||||
|
make oldconfig
|
||||||
|
|
||||||
|
echo "starting compiling - this may take several hours..."
|
||||||
|
|
||||||
|
time make V=99 > xburst/BUILD_LOG 2>&1
|
||||||
|
|
||||||
|
if [ "$?" != "0" ]; then
|
||||||
|
echo "ERROR: Build failed!"
|
||||||
|
echo "Please refer to the log file"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
cp .config xburst/config
|
||||||
|
cp bin/xburst/* xburst/ 2>/dev/null
|
||||||
|
mkdir xburst/files
|
||||||
|
cp -a files/* xburst/files/
|
||||||
|
|
||||||
|
echo "DONE :)"
|
163
scripts/reflash_ben.sh
Normal file
163
scripts/reflash_ben.sh
Normal file
@ -0,0 +1,163 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
VERSION="latest"
|
||||||
|
|
||||||
|
# use 'http' to download and flash images, use 'file' to flash images present in the <WORKING_DIR>
|
||||||
|
PROTOCOL="http"
|
||||||
|
|
||||||
|
# working directory
|
||||||
|
#WORKING_DIR="/tmp/NanoNote/${VERSION}"
|
||||||
|
WORKING_DIR="${HOME}/.qi/nanonote/ben/${VERSION}"
|
||||||
|
|
||||||
|
# where the verbose output goes to
|
||||||
|
LOG_FILE="${WORKING_DIR}/log.txt"
|
||||||
|
|
||||||
|
# URL to images ($URL/$VERSION/$[images])
|
||||||
|
BASE_URL_HTTP="http://downloads.qi-hardware.com/software/images/Ben_NanoNote_2GB_NAND"
|
||||||
|
|
||||||
|
# names of images
|
||||||
|
LOADER="openwrt-xburst-u-boot.bin"
|
||||||
|
KERNEL="openwrt-xburst-uImage.bin"
|
||||||
|
#ROOTFS="openwrt-xburst-rootfs.ubi"
|
||||||
|
ROOTFS="openwrt-xburst-qi_lb60-root.ubi"
|
||||||
|
|
||||||
|
###############
|
||||||
|
|
||||||
|
# version of script
|
||||||
|
__VERSION__="2.1.1"
|
||||||
|
|
||||||
|
|
||||||
|
# options for reflash bootloader, kernel or rootfs
|
||||||
|
B="TRUE"
|
||||||
|
K="TRUE"
|
||||||
|
R="TRUE"
|
||||||
|
|
||||||
|
while getopts d:l:bkr OPTIONS
|
||||||
|
do
|
||||||
|
case $OPTIONS in
|
||||||
|
d)
|
||||||
|
VERSION=$OPTARG # override version by first argument if passed
|
||||||
|
B="TRUE"
|
||||||
|
K="TRUE"
|
||||||
|
R="TRUE"
|
||||||
|
;;
|
||||||
|
l)
|
||||||
|
WORKING_DIR=$OPTARG
|
||||||
|
VERSION=
|
||||||
|
PROTOCOL="file"
|
||||||
|
B="TRUE"
|
||||||
|
K="TRUE"
|
||||||
|
R="TRUE"
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo "\
|
||||||
|
Usage: $0 [-d <version>] [-l <path to local images>] [-b] [-k] [-r] [-h] [-v]
|
||||||
|
|
||||||
|
without any arguments, I will download and flash the latest official images
|
||||||
|
(includes bootloader, kernel and rootfs)
|
||||||
|
|
||||||
|
-d <> I will download and flash a specific version of official images
|
||||||
|
(includes bootloader, kernel and rootfs)
|
||||||
|
|
||||||
|
-l <> I will flash images present in <arg>
|
||||||
|
(includes bootloader, kernel and rootfs -
|
||||||
|
missing files will be skipped)
|
||||||
|
|
||||||
|
-h you already found out
|
||||||
|
|
||||||
|
|
||||||
|
reflash script for qi-hardware Ben NanoNote
|
||||||
|
|
||||||
|
written by: Mirko Vogt (mirko.vogt@sharism.cc)
|
||||||
|
Xiangfu Liu (xiangfu@sharism.cc)
|
||||||
|
|
||||||
|
version: ${__VERSION__}
|
||||||
|
|
||||||
|
Please report bugs to developer@lists.qi-hardware.com"
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
||||||
|
# if no arguments were given
|
||||||
|
if [ "$#" == "0" ]; then
|
||||||
|
B="TRUE"
|
||||||
|
K="TRUE"
|
||||||
|
R="TRUE"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# create working directory
|
||||||
|
mkdir -p ${WORKING_DIR}
|
||||||
|
date > "${LOG_FILE}" # purge logfile if exists
|
||||||
|
|
||||||
|
function abort() {
|
||||||
|
log "$1"
|
||||||
|
log "==="
|
||||||
|
log "fatal error occured - ABORT"
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
|
||||||
|
function log() {
|
||||||
|
echo "$1"
|
||||||
|
echo "$1" >> "${LOG_FILE}"
|
||||||
|
}
|
||||||
|
|
||||||
|
[ "$(whoami)" == "root" ] || abort "this script must be run as root"
|
||||||
|
|
||||||
|
log "working dir: ${WORKING_DIR}"
|
||||||
|
log "chosed method: ${PROTOCOL}"
|
||||||
|
test ${VERSION} && log "chosed version: ${VERSION}"
|
||||||
|
log "==="
|
||||||
|
|
||||||
|
if [ "$PROTOCOL" == "http" ]; then
|
||||||
|
|
||||||
|
MD5SUMS_SERVER=$(wget -O - ${BASE_URL_HTTP}/${VERSION}/md5sums 2> /dev/null | grep -E "(${LOADER}|${KERNEL}|${ROOTFS})" | sort)
|
||||||
|
[ "${MD5SUMS_SERVER}" ] || abort "can't fetch files from server"
|
||||||
|
|
||||||
|
MD5SUMS_LOCAL=$( (cd "${WORKING_DIR}" ; md5sum --binary "${LOADER}" "${KERNEL}" "${ROOTFS}" 2> /dev/null) | sort )
|
||||||
|
|
||||||
|
if [ "${MD5SUMS_SERVER}" == "${MD5SUMS_LOCAL}" ]; then
|
||||||
|
log "present files are identical to the ones on the server - do not download them again"
|
||||||
|
else
|
||||||
|
rm -f "${WORKING_DIR}/${LOADER}" "${WORKING_DIR}/${KERNEL}" "${WORKING_DIR}/${ROOTFS}"
|
||||||
|
if [ "$B" == "TRUE" ]; then
|
||||||
|
log "fetching bootloader..."
|
||||||
|
wget \
|
||||||
|
-o "${LOG_FILE}" \
|
||||||
|
-P "${WORKING_DIR}" \
|
||||||
|
"${BASE_URL_HTTP}/${VERSION}/${LOADER}"
|
||||||
|
fi
|
||||||
|
if [ "$K" == "TRUE" ]; then
|
||||||
|
log "fetching kernel..."
|
||||||
|
wget \
|
||||||
|
-o "${LOG_FILE}" \
|
||||||
|
-P "${WORKING_DIR}" \
|
||||||
|
"${BASE_URL_HTTP}/${VERSION}/${KERNEL}"
|
||||||
|
fi
|
||||||
|
if [ "$R" == "TRUE" ]; then
|
||||||
|
log "fetching rootfs..."
|
||||||
|
wget \
|
||||||
|
-o "${LOG_FILE}" \
|
||||||
|
-P "${WORKING_DIR}" \
|
||||||
|
"${BASE_URL_HTTP}/${VERSION}/${ROOTFS}"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
log "booting device..."
|
||||||
|
usbboot -c "boot" > "${LOG_FILE}" || abort "can't boot device - xburst-tools setup correctly? device in boot-mode? device connected?"
|
||||||
|
|
||||||
|
if [ "$B" == "TRUE" ]; then
|
||||||
|
log "flashing bootloader..."
|
||||||
|
usbboot -c "nprog 0 ${WORKING_DIR}/${LOADER} 0 0 -n" >> "${LOG_FILE}"
|
||||||
|
fi
|
||||||
|
if [ "$K" == "TRUE" ]; then
|
||||||
|
log "flashing kernel..."
|
||||||
|
usbboot -c "nprog 1024 ${WORKING_DIR}/${KERNEL} 0 0 -n" >> "${LOG_FILE}"
|
||||||
|
fi
|
||||||
|
if [ "$R" == "TRUE" ]; then
|
||||||
|
log "erase nand rootfs partition..."
|
||||||
|
usbboot -c "boot;nerase 16 4079 0 0" >> "${LOG_FILE}"
|
||||||
|
log "flashing rootfs..."
|
||||||
|
usbboot -c "nprog 2048 ${WORKING_DIR}/${ROOTFS} 0 0 -n" >> "${LOG_FILE}"
|
||||||
|
fi
|
||||||
|
log "done"
|
@ -1,6 +0,0 @@
|
|||||||
config mount
|
|
||||||
option target /card
|
|
||||||
option device /dev/mmcblk0p1
|
|
||||||
option fstype auto
|
|
||||||
option options rw,sync
|
|
||||||
option enabled 1
|
|
@ -94,7 +94,11 @@ static struct mtd_partition qi_lb60_partitions_2gb[] = {
|
|||||||
},
|
},
|
||||||
{ .name = "NAND ROOTFS partition",
|
{ .name = "NAND ROOTFS partition",
|
||||||
.offset = 8 * 0x100000,
|
.offset = 8 * 0x100000,
|
||||||
.size = (504 + 512 + 1024) * 0x100000,
|
.size = 256 * 0x100000,
|
||||||
|
},
|
||||||
|
{ .name = "NAND DATA partition",
|
||||||
|
.offset = 264 * 0x100000,
|
||||||
|
.size = 1784 * 0x100000,
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user