summaryrefslogtreecommitdiffstats
path: root/tools/configure
diff options
context:
space:
mode:
authorAidan MacDonald <amachronic@protonmail.com>2021-02-27 22:08:58 +0000
committerAidan MacDonald <amachronic@protonmail.com>2021-03-28 00:01:37 +0000
commit3ec66893e377b088c1284d2d23adb2aeea6d7965 (patch)
treeb647717f83ad56b15dc42cfdef5d04d68cd9bd6b /tools/configure
parent83fcbedc65f4b9ae7e491ecf6f07c0af4b245f74 (diff)
downloadrockbox-3ec66893e377b088c1284d2d23adb2aeea6d7965.tar.gz
rockbox-3ec66893e377b088c1284d2d23adb2aeea6d7965.zip
New port: FiiO M3K on bare metal
Change-Id: I7517e7d5459e129dcfc9465c6fbd708619888fbe
Diffstat (limited to 'tools/configure')
-rwxr-xr-xtools/configure50
1 files changed, 48 insertions, 2 deletions
diff --git a/tools/configure b/tools/configure
index 4ddd044b71..c4d98f3f70 100755
--- a/tools/configure
+++ b/tools/configure
@@ -586,6 +586,16 @@ mipselcc () {
gccchoice="4.9.4"
}
+mipsr2elcc () {
+ prefixtools mipsel-elf-
+ # mips is predefined, but we want it for paths. use __mips instead
+ GCCOPTS="$CCOPTS -march=mips32r2 -mno-mips16 -mno-long-calls -Umips"
+ GCCOPTS="$GCCOPTS -ffunction-sections -msoft-float -G 0 -Wno-parentheses"
+ GCCOPTIMIZE="-fomit-frame-pointer"
+ endian="little"
+ gccchoice="4.9.4"
+}
+
maemocc () {
# Scratchbox sets up "gcc" based on the active target
prefixtools ""
@@ -1596,8 +1606,7 @@ cat <<EOF
240) Rocker 228) NWZ-A860 series
==FiiO== 229) NWZ-S750 series
==AIGO== 244) M3K Linux
- 245) Eros Q / K
-
+ 245) Eros Q / K 246) M3K baremetal
EOF
buildfor=`input`;
@@ -4200,6 +4209,31 @@ fi
t_model="ihifi2"
;;
+ 246|fiiom3k)
+ target_id=114
+ modelname="fiiom3k"
+ target="FIIO_M3K"
+ memory=64
+ mipsr2elcc
+ appextra="recorder:gui"
+ plugins="yes"
+ tool="$rootdir/tools/scramble -add=fiiom3k "
+ boottool="$rootdir/tools/scramble -add=fiiom3k "
+ spltool="$rootdir/tools/mkspl-x1000 -type=nand -ppb=2 -bpp=2 "
+ output="rockbox.m3k"
+ bootoutput="bootloader.m3k"
+ sploutput="spl.m3k"
+ # toolset is the tools within the tools directory that we build for
+ # this particular target.
+ toolset="$toolset mkspl-x1000"
+ bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
+ bmp2rb_native="$rootdir/tools/bmp2rb -f 4"
+ # architecture, manufacturer and model for the target-tree build
+ t_cpu="mips"
+ t_manufacturer="ingenic_x1000"
+ t_model="fiiom3k"
+ ;;
+
*)
echo "Please select a supported target platform!"
exit 7
@@ -4275,6 +4309,9 @@ case $modelname in
sansae200)
gdbstub=", (E)raser"
;;
+ fiiom3k)
+ gdbstub=", (X) SPL loader"
+ ;;
*)
;;
esac
@@ -4300,6 +4337,15 @@ fi
bootloader="1"
echo "sansa eraser build selected"
;;
+ [Xx])
+ appsdir='$(ROOTDIR)/bootloader'
+ apps="bootloader"
+ extradefines="$extradefines -DBOOTLOADER -DBOOTLOADER_SPL -ffunction-sections -fdata-sections"
+ bootloader="1"
+ tool="$spltool"
+ output="$sploutput"
+ echo "SPL bootloader build selected"
+ ;;
[Bb])
appsdir='$(ROOTDIR)/bootloader'
apps="bootloader"