WIP hosted port to the Surfans F28

* Only bootloader builds
 * Plugins disabled
 * No keymaps to anything else
 * No simulator
 * Touchscreen not wired up yet
 * Audio still untested

Bugs:

 * rotary encoder does nothing in bootloader
   (might be bootloader bug, might be something else)

Other stuff pulled in:

 * Unify all of the (identical!) hibyos makefiles
 * Rename the "bootloader" to more generic name

Change-Id: I6d8a3b58de726db8e89cf193c90960a070a575c2
This commit is contained in:
Solomon Peachy 2025-05-01 21:58:50 -04:00
parent 3270daf2c4
commit 82f3d0c18f
27 changed files with 730 additions and 127 deletions

35
tools/configure vendored
View file

@ -1730,8 +1730,8 @@ cat <<EOF
==Shanling== 242) X3II 248) Eros Q / K native
260) Q1 243) X20 (hw3 bl only)
249) Eros Q / K native
(hw4 bl only)
==Echo project==
==Surfans== (hw4 bl only)
==Echo project== 280) F28 (WIP)
270) Echo R1 (WIP)
EOF
@ -4019,7 +4019,7 @@ fi
240|agptekrocker)
application="yes"
app_type="rocker"
app_type="hibyos"
target_id=97
modelname="agptekrocker"
target="AGPTEK_ROCKER"
@ -4064,7 +4064,7 @@ fi
242|xduoox3ii)
target_id=110
application=yes
app_type="xduoo"
app_type="hibyos"
modelname="xduoox3ii"
target="XDUOO_X3II"
memory=8
@ -4087,7 +4087,7 @@ fi
243|xduoox20)
target_id=111
application=yes
app_type="xduoo"
app_type="hibyos"
modelname="xduoox20"
target="XDUOO_X20"
memory=8
@ -4133,7 +4133,7 @@ fi
245|aigoerosq|erosq)
target_id=113
application=yes
app_type="erosq"
app_type="hibyos"
modelname="aigoerosq"
target="EROS_Q"
memory=8
@ -4373,6 +4373,29 @@ fi
t_model="echoplayer"
;;
280|surfansf28)
target_id=120
application=yes
app_type="hibyos"
modelname="surfansf28"
target="SURFANS_F28"
memory=32 # 64 total!
mipsellinuxcc
tool="cp "
boottool="cp "
bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
bmp2rb_native="$rootdir/tools/bmp2rb -f 10"
output="rockbox.f28"
bootoutput="bootloader.f28"
appextra="recorder:gui:hosted"
plugins="no"
# architecture, manufacturer and model for the target-tree build
t_cpu="hosted"
t_manufacturer="surfans"
t_model="f28"
sysfontbl="16-Terminus"
;;
*)
echo "Please select a supported target platform!"
exit 7

View file

@ -42,6 +42,8 @@ if ($model eq 'rocker') {
@ubiopts = ("-e", "124KiB", "-c", "1024", "-m", "2048", "-j", "8192KiB", "-U");
} elsif ($model eq 'eros_q') {
@ubiopts = ("-e", "124KiB", "-c", "1024", "-m", "2048", "-j", "8192KiB", "-U");
} elsif ($model eq 'f28') {
@ubiopts = ("-e", "124KiB", "-c", "1024", "-m", "2048", "-j", "8192KiB", "-U");
} elsif ($model eq 'm3k') {
@ubiopts = ("-e", "124KiB", "-c", "2048", "-m", "2048", "-j", "8192KiB", "-U");
$hiby = 0;

View file

@ -105,12 +105,8 @@ endif
ifneq (,$(findstring bootloader,$(APPSDIR)))
ifneq (,$(findstring sonynwz,$(APP_TYPE)))
include $(ROOTDIR)/firmware/target/hosted/sonynwz/sonynwz.make
else ifneq (,$(findstring rocker,$(APP_TYPE)))
include $(ROOTDIR)/firmware/target/hosted/agptek/rocker.make
else ifneq (,$(findstring xduoo,$(APP_TYPE)))
include $(ROOTDIR)/firmware/target/hosted/xduoo/xduoo.make
else ifneq (,$(findstring erosq,$(APP_TYPE)))
include $(ROOTDIR)/firmware/target/hosted/aigo/erosq.make
else ifneq (,$(findstring hibyos,$(APP_TYPE)))
include $(ROOTDIR)/firmware/target/hosted/hibyos.make
else ifneq (,$(findstring fiio,$(APP_TYPE)))
include $(ROOTDIR)/firmware/target/hosted/fiio/fiio.make
else ifneq (,$(findstring ingenic_x1000,$(MANUFACTURER)))
@ -153,22 +149,14 @@ else # core
include $(ROOTDIR)/firmware/target/hosted/sonynwz/sonynwz.make
endif
ifneq (,$(findstring rocker,$(APP_TYPE)))
include $(ROOTDIR)/firmware/target/hosted/agptek/rocker.make
endif
ifneq (,$(findstring xduoo,$(APP_TYPE)))
include $(ROOTDIR)/firmware/target/hosted/xduoo/xduoo.make
ifneq (,$(findstring hibyos,$(APP_TYPE)))
include $(ROOTDIR)/firmware/target/hosted/hibyos.make
endif
ifneq (,$(findstring fiio,$(APP_TYPE)))
include $(ROOTDIR)/firmware/target/hosted/fiio/fiio.make
endif
ifneq (,$(findstring erosq,$(APP_TYPE)))
include $(ROOTDIR)/firmware/target/hosted/aigo/erosq.make
endif
ifneq (,$(findstring android_ndk, $(APP_TYPE)))
include $(ROOTDIR)/firmware/target/hosted/ibasso/android_ndk.make
else