[PATCH] rockchip: Add support for GameForce Ace
Chris Morgan
macromorgan at hotmail.com
Fri Jun 6 21:02:12 CEST 2025
On Fri, Jun 06, 2025 at 05:30:11PM +0800, Kever Yang wrote:
> Hi Chris,
>
> On 2025/6/4 06:13, Chris Morgan wrote:
> > From: Chris Morgan <macromorgan at hotmail.com>
> >
> > The GameForce Ace is an RK3588S based handheld gaming device.
> >
> > Signed-off-by: Chris Morgan <macromorgan at hotmail.com>
> > ---
> > arch/arm/mach-rockchip/rk3588/Kconfig | 18 +++++++
> > board/gameforce/ace-rk3588s/Kconfig | 9 ++++
> > board/gameforce/ace-rk3588s/MAINTAINERS | 5 ++
> > configs/gameforce-ace-rk3588s_defconfig | 69 +++++++++++++++++++++++++
> > doc/board/rockchip/rockchip.rst | 1 +
> > 5 files changed, 102 insertions(+)
> > create mode 100644 board/gameforce/ace-rk3588s/Kconfig
> > create mode 100644 board/gameforce/ace-rk3588s/MAINTAINERS
> > create mode 100644 configs/gameforce-ace-rk3588s_defconfig
> >
> > diff --git a/arch/arm/mach-rockchip/rk3588/Kconfig b/arch/arm/mach-rockchip/rk3588/Kconfig
> > index 4e7942ada87..9fbe3f225aa 100644
> > --- a/arch/arm/mach-rockchip/rk3588/Kconfig
> > +++ b/arch/arm/mach-rockchip/rk3588/Kconfig
> > @@ -27,6 +27,23 @@ config TARGET_CM3588_NAS_RK3588
> > - 3.5mm Headphone out, 2.0mm PH-2A Mic in
> > - 5V Fan connector, PWM beeper, IR receiver, RTC battery connector
> > +config TARGET_GAMEFORCE_ACE_RK3588S
> > + bool "GameForce Ace"
> > + help
> > + The GameForce Ace is a handheld game console from GameForce with
> > + the Rockchip RK3588S SoC.
> > +
> > + Hardware features:
> > + - Rockchip RK3588S SoC
> > + - 12GB LPDDR4x RAM
> > + - 128GB eMMC
> > + - MicroSD card slot
> > + - 1x USB 3.0 Type-C with DP AltMode support
> > + - 1x HDMI 2.1 micro-HDMI out
> > + - 1920x1080 touchscreen MIPI-DSI panel
> > + - Analog joysticks and L/R triggers
> > + - 16 digital buttons
> > +
> > config TARGET_GENBOOK_CM5_RK3588
> > bool "Cool Pi CM5 GenBook"
> > help
> > @@ -410,6 +427,7 @@ source "board/friendlyelec/cm3588-nas-rk3588/Kconfig"
> > source "board/friendlyelec/nanopc-t6-rk3588/Kconfig"
> > source "board/friendlyelec/nanopi-r6c-rk3588s/Kconfig"
> > source "board/friendlyelec/nanopi-r6s-rk3588s/Kconfig"
> > +source "board/gameforce/ace-rk3588s/Kconfig"
> > source "board/hardkernel/odroid_m2/Kconfig"
> > source "board/indiedroid/nova/Kconfig"
> > source "board/khadas/khadas-edge2-rk3588s/Kconfig"
> > diff --git a/board/gameforce/ace-rk3588s/Kconfig b/board/gameforce/ace-rk3588s/Kconfig
> > new file mode 100644
> > index 00000000000..52f98ccf897
> > --- /dev/null
> > +++ b/board/gameforce/ace-rk3588s/Kconfig
> > @@ -0,0 +1,9 @@
> > +if TARGET_GAMEFORCE_ACE_RK3588S
> > +
> > +config SYS_BOARD
> > + default "gameforce-ace-rk3588s"
> > +
> > +config SYS_VENDOR
> > + default "GameForce"
> > +
> > +endif
> > diff --git a/board/gameforce/ace-rk3588s/MAINTAINERS b/board/gameforce/ace-rk3588s/MAINTAINERS
> > new file mode 100644
> > index 00000000000..dc18e7c8849
> > --- /dev/null
> > +++ b/board/gameforce/ace-rk3588s/MAINTAINERS
> > @@ -0,0 +1,5 @@
> > +GAMEFORCE-ACE-RK3588S
> > +M: Chris Morgan <macromorgan at hotmail.com>
> > +S: Maintained
> > +F: board/gameforce/ace-rk3588s/
> > +F: configs/gameforce-ace-rk3588s_defconfig
> > diff --git a/configs/gameforce-ace-rk3588s_defconfig b/configs/gameforce-ace-rk3588s_defconfig
> > new file mode 100644
> > index 00000000000..19893a76c15
> > --- /dev/null
> > +++ b/configs/gameforce-ace-rk3588s_defconfig
> > @@ -0,0 +1,69 @@
> > +CONFIG_ARM=y
> > +CONFIG_SKIP_LOWLEVEL_INIT=y
> > +CONFIG_COUNTER_FREQUENCY=24000000
> > +CONFIG_ARCH_ROCKCHIP=y
> > +CONFIG_DEFAULT_DEVICE_TREE="rockchip/rk3588s-gameforce-ace"
> > +CONFIG_ROCKCHIP_RK3588=y
> > +CONFIG_SPL_SERIAL=y
> > +CONFIG_SYS_LOAD_ADDR=0xc00800
> > +CONFIG_DEBUG_UART_BASE=0xFEB50000
> > +CONFIG_DEBUG_UART_CLOCK=24000000
> > +CONFIG_PCI=y
>
> Does this device has/need PCI support in U-Boot?
>
> If not, please remove
It depends, but I'm going to disable it. The device has an M.2 2230
slot, but it is not populated with anything (it's designed for an
NVME drive). I'll remove this and the other pci-e references.
>
> > +CONFIG_DEBUG_UART=y
> > +CONFIG_FIT=y
> > +CONFIG_FIT_VERBOSE=y
> > +CONFIG_SPL_FIT_SIGNATURE=y
> > +CONFIG_SPL_LOAD_FIT=y
> > +CONFIG_LEGACY_IMAGE_FORMAT=y
> > +CONFIG_DEFAULT_FDT_FILE="rockchip/rk3588s-gameforce-ace.dtb"
> > +# CONFIG_DISPLAY_CPUINFO is not set
> > +CONFIG_DISPLAY_BOARDINFO_LATE=y
> > +CONFIG_SPL_MAX_SIZE=0x40000
> > +# CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
> > +CONFIG_SPL_ATF=y
> > +CONFIG_CMD_MMC=y
> > +# CONFIG_CMD_SETEXPR is not set
> > +# CONFIG_SPL_DOS_PARTITION is not set
> > +CONFIG_SPL_OF_CONTROL=y
> > +CONFIG_OF_LIVE=y
> > +CONFIG_OF_SPL_REMOVE_PROPS="clock-names interrupt-parent assigned-clocks assigned-clock-rates assigned-clock-parents"
> > +CONFIG_NO_NET=y
> > +CONFIG_SPL_DM_SEQ_ALIAS=y
> > +CONFIG_SPL_REGMAP=y
> > +CONFIG_SPL_SYSCON=y
> > +CONFIG_BUTTON=y
> > +CONFIG_BUTTON_ADC=y
> > +CONFIG_BUTTON_GPIO=y
> > +CONFIG_SPL_CLK=y
> > +CONFIG_ROCKCHIP_GPIO=y
> > +CONFIG_SYS_I2C_ROCKCHIP=y
> > +CONFIG_LED=y
> > +CONFIG_LED_GPIO=y
> > +CONFIG_MISC=y
> > +CONFIG_MMC_DW=y
> > +CONFIG_MMC_DW_ROCKCHIP=y
> > +CONFIG_MMC_SDHCI=y
> > +CONFIG_MMC_SDHCI_SDMA=y
> > +CONFIG_MMC_SDHCI_ROCKCHIP=y
> > +CONFIG_PCIE_DW_ROCKCHIP=y
>
> also this one
>
> > +CONFIG_PHY_ROCKCHIP_INNO_USB2=y
> > +CONFIG_PHY_ROCKCHIP_NANENG_COMBOPHY=y
> > +CONFIG_PHY_ROCKCHIP_USBDP=y
> > +CONFIG_SPL_PINCTRL=y
> > +CONFIG_PWM_ROCKCHIP=y
> > +CONFIG_SPL_RAM=y
> > +# CONFIG_RAM_ROCKCHIP_DEBUG is not set
> > +CONFIG_BAUDRATE=1500000
> > +CONFIG_DEBUG_UART_SHIFT=2
> > +CONFIG_SYS_NS16550_MEM32=y
> > +CONFIG_ROCKCHIP_SPI=y
> > +CONFIG_SYSRESET=y
> > +CONFIG_USB=y
> > +CONFIG_USB_XHCI_HCD=y
> > +CONFIG_USB_EHCI_HCD=y
> > +CONFIG_USB_EHCI_GENERIC=y
> > +CONFIG_USB_OHCI_HCD=y
> > +CONFIG_USB_OHCI_GENERIC=y
> > +CONFIG_USB_DWC3=y
> > +CONFIG_USB_DWC3_GENERIC=y
> > +CONFIG_ERRNO_STR=y
> > diff --git a/doc/board/rockchip/rockchip.rst b/doc/board/rockchip/rockchip.rst
> > index b88299cbba2..941d729dbe2 100644
> > --- a/doc/board/rockchip/rockchip.rst
> > +++ b/doc/board/rockchip/rockchip.rst
> > @@ -141,6 +141,7 @@ List of mainline supported Rockchip boards:
> > - Rockchip EVB (evb-rk3588)
> > - Edgeble Neural Compute Module 6A SoM - Neu6a (neu6a-io-rk3588)
> > - Edgeble Neural Compute Module 6B SoM - Neu6b (neu6b-io-rk3588)
> > + - GameForce Ace (gameforce-ace-rk3588s)
>
> This should follow the alphabet order.
Sorry, will get this fixed too.
>
>
> Thanks,
>
> - Kever
>
> > - FriendlyElec CM3588 NAS (cm3588-nas-rk3588)
> > - FriendlyElec NanoPC-T6 (nanopc-t6-rk3588)
> > - FriendlyElec NanoPi R6C (nanopi-r6c-rk3588s)
Thank you,
Chris
More information about the U-Boot
mailing list