Commit 982872e7 authored by David Barbion's avatar David Barbion Committed by Bkg2k

feat: add rpi4 support

parent 0d3416e3
......@@ -96,6 +96,13 @@ build rpi3:
- tags
variables:
ARCH: 'rpi3'
build rpi4:
<<: *build_definition
only:
- master
- tags
variables:
ARCH: 'rpi4'
build x86_64:
<<: *build_definition
when: manual
......@@ -148,6 +155,15 @@ build rpi3 for test:
- master
variables:
ARCH: 'rpi3'
build rpi4 for test:
<<: *build_definition
when: manual
only:
- branches
except:
- master
variables:
ARCH: 'rpi4'
build x86_64 for test:
<<: *build_definition
when: manual
......
......@@ -13,6 +13,11 @@ All notable changes to this project will be documented in this file.
- Major system upgrade. See https://github.com/buildroot/buildroot/blob/2020.02/CHANGES#L1-L1427 for the full log
- Bump virtualgamepads to v1.4.0 and added fixes for nodejs 12
- Bump rpi-firmware to v1.20200212
## [6.2]
- Major system upgrade. See https://github.com/buildroot/buildroot/blob/2020.02/CHANGES#L1-L1427 for the full log
- Bump virtualgamepads to v1.4.0 and added fixes for nodejs 12
- Bump rpi-firmware to v1.20200212
- Bump megatools to 1.10.2
- Fix Omxplayer after Ffmpeg bump
- Fix Kodi after Ffmpeg bump
- Add WiringPi progs abd libs
......
......@@ -213,6 +213,7 @@ menu "Utils"
source "$BR2_EXTERNAL_RECALBOX_PATH/package/nanoarch/Config.in"
source "$BR2_EXTERNAL_RECALBOX_PATH/package/raspi2png/Config.in"
source "$BR2_EXTERNAL_RECALBOX_PATH/package/rgbds/Config.in"
source "$BR2_EXTERNAL_RECALBOX_PATH/package/rpi-userland-tools/Config.in"
endmenu
menu "Small TFT Screen"
source "$BR2_EXTERNAL_RECALBOX_PATH/package/rpi-fbcp/Config.in"
......
......@@ -64,11 +64,10 @@ RECALBOX_IMG="${RECALBOX_BINARIES_DIR}/recalbox-${RECALBOX_TARGET_LOWER}.img"
echo -e "\n----- Generating images/recalbox files -----\n"
case "${RECALBOX_TARGET}" in
RPI0|RPI1|RPI2|RPI3)
# /boot
RPI0|RPI1|RPI2|RPI3|RPI4)
# /boot
echo "generating boot"
cp -f "${BINARIES_DIR}/"*.dtb "${BINARIES_DIR}/rpi-firmware"
cp -f "${BINARIES_DIR}/"*.dtb "${BINARIES_DIR}/rpi-firmware"
rm -rf "${BINARIES_DIR}/rpi-firmware/boot" || exit 1
mkdir -p "${BINARIES_DIR}/rpi-firmware/boot" || exit 1
"${BUILD_DIR}/linux-custom/scripts/mkknlimg" "${BINARIES_DIR}/zImage" "${BINARIES_DIR}/rpi-firmware/boot/linux"
......
......@@ -21,7 +21,11 @@ case "$1" in
[ $? = "0" ] && tvservice -e "$videoMode"
settings_lang="`$systemsetting -command load -key system.language`"
recallog "starting emulationstation with lang = $settings_lang"
HOME=/recalbox/share/system LANG="${settings_lang}.UTF-8" SDL_VIDEO_GL_DRIVER=/usr/lib/libGLESv2.so SDL_VIDEO_EGL_DRIVER=/usr/lib/libGLESv2.so SDL_NOMOUSE=1 start-stop-daemon -S -q -m -p /var/run/emulationstation.pid --exec /usr/bin/emulationstation &
if grep -q rpi4 /recalbox/recalbox.arch; then
HOME=/recalbox/share/system LANG="${settings_lang}.UTF-8" SDL_VIDEO_GL_DRIVER=/usr/lib/libGLESv2.so SDL_VIDEO_EGL_DRIVER=/usr/lib/libEGL.so SDL_NOMOUSE=1 start-stop-daemon -S -q -m -p /var/run/emulationstation.pid --exec /usr/bin/emulationstation &
else
HOME=/recalbox/share/system LANG="${settings_lang}.UTF-8" SDL_VIDEO_GL_DRIVER=/usr/lib/libGLESv2.so SDL_VIDEO_EGL_DRIVER=/usr/lib/libGLESv2.so SDL_NOMOUSE=1 start-stop-daemon -S -q -m -p /var/run/emulationstation.pid --exec /usr/bin/emulationstation &
fi
fi
;;
stop)
......
CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y
CONFIG_USB_HID=y
CONFIG_NLS_ISO8859_1=y
CONFIG_NLS_UTF8=y
CONFIG_SQUASHFS=y
CONFIG_OVERLAY_FS=y
--- a/drivers/hid/hid-input.c 2015-04-14 01:05:54.000000000 +0200
+++ b/drivers/hid/hid-input.c 2015-06-29 16:06:50.546064561 +0200
@@ -602,11 +602,11 @@
/* These usage IDs map directly to the usage codes. */
case HID_GD_X: case HID_GD_Y: case HID_GD_Z:
case HID_GD_RX: case HID_GD_RY: case HID_GD_RZ:
- if (field->flags & HID_MAIN_ITEM_RELATIVE)
- map_rel(usage->hid & 0xf);
- else
- map_abs_clear(usage->hid & 0xf);
- break;
+// if (field->flags & HID_MAIN_ITEM_RELATIVE)
+// map_rel(usage->hid & 0xf);
+// else
+// map_abs_clear(usage->hid & 0xf);
+// break;
case HID_GD_SLIDER: case HID_GD_DIAL: case HID_GD_WHEEL:
if (field->flags & HID_MAIN_ITEM_RELATIVE)
diff --git a/drivers/hid/hid-quirks.c b/drivers/hid/hid-quirks.c
index 16f0188d9..60986898f 100644
--- a/drivers/hid/hid-quirks.c
+++ b/drivers/hid/hid-quirks.c
@@ -177,6 +177,7 @@ static const struct hid_device_id hid_quirks[] = {
{ HID_USB_DEVICE(USB_VENDOR_ID_WISEGROUP_LTD2, USB_DEVICE_ID_SMARTJOY_DUAL_PLUS), HID_QUIRK_NOGET | HID_QUIRK_MULTI_INPUT },
{ HID_USB_DEVICE(USB_VENDOR_ID_WISEGROUP, USB_DEVICE_ID_QUAD_USB_JOYPAD), HID_QUIRK_NOGET | HID_QUIRK_MULTI_INPUT },
{ HID_USB_DEVICE(USB_VENDOR_ID_XIN_MO, USB_DEVICE_ID_XIN_MO_DUAL_ARCADE), HID_QUIRK_MULTI_INPUT },
+ { HID_USB_DEVICE(USB_VENDOR_ID_XIN_MO, USB_DEVICE_ID_THT_2P_ARCADE), HID_QUIRK_NOGET | HID_QUIRK_MULTI_INPUT },
{ HID_USB_DEVICE(USB_VENDOR_ID_XENTA, USB_DEVICE_ID_AIRMOUSE_MX3), HID_QUIRK_INCREMENT_USAGE_ON_DUPLICATE },
{ 0 }
diff --git a/drivers/hid/hid-wiimote-modules.c b/drivers/hid/hid-wiimote-modules.c
index 4390eee..76ed60b 100644
--- a/drivers/hid/hid-wiimote-modules.c
+++ b/drivers/hid/hid-wiimote-modules.c
@@ -1113,12 +1113,12 @@ static void wiimod_classic_in_ext(struct wiimote_data *wdata, const __u8 *ext)
rt <<= 1;
lt <<= 1;
- input_report_abs(wdata->extension.input, ABS_HAT1X, lx - 0x20);
- input_report_abs(wdata->extension.input, ABS_HAT1Y, ly - 0x20);
- input_report_abs(wdata->extension.input, ABS_HAT2X, rx - 0x20);
- input_report_abs(wdata->extension.input, ABS_HAT2Y, ry - 0x20);
- input_report_abs(wdata->extension.input, ABS_HAT3X, rt);
- input_report_abs(wdata->extension.input, ABS_HAT3Y, lt);
+ input_report_abs(wdata->extension.input, ABS_HAT0X, lx - 0x20);
+ input_report_abs(wdata->extension.input, ABS_HAT0Y, ly - 0x20);
+ input_report_abs(wdata->extension.input, ABS_HAT1X, rx - 0x20);
+ input_report_abs(wdata->extension.input, ABS_HAT1Y, ry - 0x20);
+ input_report_abs(wdata->extension.input, ABS_HAT2X, rt);
+ input_report_abs(wdata->extension.input, ABS_HAT2Y, lt);
input_report_key(wdata->extension.input,
wiimod_classic_map[WIIMOD_CLASSIC_KEY_RIGHT],
@@ -1228,12 +1228,16 @@ static int wiimod_classic_probe(const struct wiimod_ops *ops,
wdata->extension.input->keybit);
set_bit(EV_ABS, wdata->extension.input->evbit);
+ set_bit(ABS_HAT0X, wdata->extension.input->absbit);
+ set_bit(ABS_HAT0Y, wdata->extension.input->absbit);
set_bit(ABS_HAT1X, wdata->extension.input->absbit);
set_bit(ABS_HAT1Y, wdata->extension.input->absbit);
set_bit(ABS_HAT2X, wdata->extension.input->absbit);
set_bit(ABS_HAT2Y, wdata->extension.input->absbit);
- set_bit(ABS_HAT3X, wdata->extension.input->absbit);
- set_bit(ABS_HAT3Y, wdata->extension.input->absbit);
+ input_set_abs_params(wdata->extension.input,
+ ABS_HAT0X, -30, 30, 1, 1);
+ input_set_abs_params(wdata->extension.input,
+ ABS_HAT0Y, -30, 30, 1, 1);
input_set_abs_params(wdata->extension.input,
ABS_HAT1X, -30, 30, 1, 1);
input_set_abs_params(wdata->extension.input,
@@ -1242,10 +1246,6 @@ static int wiimod_classic_probe(const struct wiimod_ops *ops,
ABS_HAT2X, -30, 30, 1, 1);
input_set_abs_params(wdata->extension.input,
ABS_HAT2Y, -30, 30, 1, 1);
- input_set_abs_params(wdata->extension.input,
- ABS_HAT3X, -30, 30, 1, 1);
- input_set_abs_params(wdata->extension.input,
- ABS_HAT3Y, -30, 30, 1, 1);
ret = input_register_device(wdata->extension.input);
if (ret)
diff --git a/drivers/input/joystick/xpad.c b/drivers/input/joystick/xpad.c
index aa4e431cb..e532c3d52 100644
--- a/drivers/input/joystick/xpad.c
+++ b/drivers/input/joystick/xpad.c
@@ -86,6 +86,8 @@
#define XPAD_PKT_LEN 64
+#define CONFIG_JOYSTICK_XPAD_LEDS 1
+
/*
* xbox d-pads should map to buttons, as is required for DDR pads
* but we map them to axes when possible to simplify things
@@ -1769,12 +1771,13 @@ static int xpad_probe(struct usb_interface *intf, const struct usb_device_id *id
if (dpad_to_buttons)
xpad->mapping |= MAP_DPAD_TO_BUTTONS;
- if (triggers_to_buttons)
- xpad->mapping |= MAP_TRIGGERS_TO_BUTTONS;
if (sticks_to_null)
xpad->mapping |= MAP_STICKS_TO_NULL;
}
+ if (triggers_to_buttons)
+ xpad->mapping |= MAP_TRIGGERS_TO_BUTTONS;
+
if (xpad->xtype == XTYPE_XBOXONE &&
intf->cur_altsetting->desc.bInterfaceNumber != 0) {
/*
diff --git a/include/linux/hid.h b/include/linux/hid.h
index 251a1d3..e15f38f 100644
--- a/include/linux/hid.h
+++ b/include/linux/hid.h
@@ -305,7 +305,7 @@ struct hid_item {
/*
* Increase this if you need to configure more HID quirks at module load time
*/
-#define MAX_USBHID_BOOT_QUIRKS 4
+#define MAX_USBHID_BOOT_QUIRKS 40
#define HID_QUIRK_INVERT 0x00000001
#define HID_QUIRK_NOTOUCH 0x00000002
......@@ -161,6 +161,7 @@ BR2_PACKAGE_BLUEZ5_UTILS_CLIENT=y
BR2_PACKAGE_BLUEZ5_UTILS_PLUGINS_SIXAXIS=y
BR2_PACKAGE_BLUEZ5_UTILS_TEST=y
BR2_PACKAGE_CRDA=y
BR2_PACKAGE_DHCPCD=y
BR2_PACKAGE_DROPBEAR=y
BR2_PACKAGE_GESFTPSERVER=y
BR2_PACKAGE_IW=y
......@@ -177,6 +178,7 @@ BR2_PACKAGE_HTOP=y
BR2_PACKAGE_PROCPS_NG=y
BR2_PACKAGE_TAR=y
BR2_PACKAGE_UTIL_LINUX_SETTERM=y
BR2_PACKAGE_UTIL_LINUX_RFKILL=y
BR2_PACKAGE_NANO=y
BR2_PACKAGE_VIM=y
BR2_PACKAGE_UBOOT_XU4=y
......
......@@ -135,6 +135,8 @@ BR2_PACKAGE_PYTHON_PYGAME=y
BR2_PACKAGE_PYTHON_PYGAME_IMAGE=y
BR2_PACKAGE_PYTHON_PYGAME_FONT=y
BR2_PACKAGE_LIBVPX=y
BR2_PACKAGE_TCL=y
BR2_PACKAGE_EXPECT=y
BR2_PACKAGE_CA_CERTIFICATES=y
BR2_PACKAGE_JPEG_TURBO=y
BR2_PACKAGE_LIBOPENSSL_BIN=y
......@@ -149,6 +151,7 @@ BR2_PACKAGE_BLUEZ5_UTILS_CLIENT=y
BR2_PACKAGE_BLUEZ5_UTILS_PLUGINS_SIXAXIS=y
BR2_PACKAGE_BLUEZ5_UTILS_TEST=y
BR2_PACKAGE_CRDA=y
BR2_PACKAGE_DHCPCD=y
BR2_PACKAGE_DROPBEAR=y
BR2_PACKAGE_GESFTPSERVER=y
BR2_PACKAGE_IW=y
......@@ -219,7 +222,6 @@ BR2_PACKAGE_RETROARCH=y
BR2_PACKAGE_SCUMMVM=y
BR2_PACKAGE_LIBRETRO_ATARI800=y
BR2_PACKAGE_LIBRETRO_FREEINTV=y
BR2_PACKAGE_LIBRETRO_81=y
BR2_PACKAGE_LIBRETRO_BEETLE_LYNX=y
BR2_PACKAGE_LIBRETRO_BEETLE_NGP=y
BR2_PACKAGE_LIBRETRO_BEETLE_PCE_FAST=y
......
......@@ -156,6 +156,7 @@ BR2_PACKAGE_BLUEZ5_UTILS_CLIENT=y
BR2_PACKAGE_BLUEZ5_UTILS_PLUGINS_SIXAXIS=y
BR2_PACKAGE_BLUEZ5_UTILS_TEST=y
BR2_PACKAGE_CRDA=y
BR2_PACKAGE_DHCPCD=y
BR2_PACKAGE_DROPBEAR=y
BR2_PACKAGE_GESFTPSERVER=y
BR2_PACKAGE_IW=y
......@@ -232,7 +233,6 @@ BR2_PACKAGE_RETROARCH=y
BR2_PACKAGE_SCUMMVM=y
BR2_PACKAGE_LIBRETRO_ATARI800=y
BR2_PACKAGE_LIBRETRO_FREEINTV=y
BR2_PACKAGE_LIBRETRO_81=y
BR2_PACKAGE_LIBRETRO_BEETLE_LYNX=y
BR2_PACKAGE_LIBRETRO_BEETLE_NGP=y
BR2_PACKAGE_LIBRETRO_BEETLE_PCE_FAST=y
......
......@@ -141,6 +141,7 @@ BR2_PACKAGE_SNAPPY=y
BR2_PACKAGE_LIBVPX=y
BR2_PACKAGE_CA_CERTIFICATES=y
BR2_PACKAGE_LIBOPENSSL_BIN=y
BR2_PACKAGE_WIRINGPI=y
BR2_PACKAGE_X264=y
BR2_PACKAGE_LIBCURL_CURL=y
BR2_PACKAGE_BOOST_ATOMIC=y
......@@ -155,6 +156,7 @@ BR2_PACKAGE_BLUEZ5_UTILS_CLIENT=y
BR2_PACKAGE_BLUEZ5_UTILS_PLUGINS_SIXAXIS=y
BR2_PACKAGE_BLUEZ5_UTILS_TEST=y
BR2_PACKAGE_CRDA=y
BR2_PACKAGE_DHCPCD=y
BR2_PACKAGE_DROPBEAR=y
BR2_PACKAGE_GESFTPSERVER=y
BR2_PACKAGE_IW=y
......@@ -234,7 +236,6 @@ BR2_PACKAGE_RETROARCH=y
BR2_PACKAGE_SCUMMVM=y
BR2_PACKAGE_LIBRETRO_ATARI800=y
BR2_PACKAGE_LIBRETRO_FREEINTV=y
BR2_PACKAGE_LIBRETRO_81=y
BR2_PACKAGE_LIBRETRO_BEETLE_LYNX=y
BR2_PACKAGE_LIBRETRO_BEETLE_NGP=y
BR2_PACKAGE_LIBRETRO_BEETLE_PCE_FAST=y
......
This diff is collapsed.
......@@ -47,6 +47,7 @@ BR2_PACKAGE_KODI_EVENTCLIENTS=y
BR2_PACKAGE_KODI_LIBBLURAY=y
BR2_PACKAGE_KODI_LIBCEC=y
BR2_PACKAGE_KODI_LCMS2=y
BR2_PACKAGE_KODI_LIBMICROHTTPD=y
BR2_PACKAGE_KODI_LIBNFS=y
BR2_PACKAGE_KODI_MYSQL=y
BR2_PACKAGE_KODI_LIBSHAIRPLAY=y
......@@ -55,6 +56,7 @@ BR2_PACKAGE_KODI_LIBTHEORA=y
BR2_PACKAGE_KODI_LIBVA=y
BR2_PACKAGE_KODI_LIBVDPAU=y
BR2_PACKAGE_KODI_UPNP=y
BR2_PACKAGE_KODI_OPTICALDRIVE=y
BR2_PACKAGE_KODI_AUDIODECODER_MODPLUG=y
BR2_PACKAGE_KODI_AUDIODECODER_NOSEFART=y
BR2_PACKAGE_KODI_AUDIODECODER_SIDPLAY=y
......@@ -106,25 +108,35 @@ BR2_PACKAGE_MESA3D_DEMOS=y
BR2_PACKAGE_FBDUMP=y
BR2_PACKAGE_FBGRAB=y
BR2_PACKAGE_FBV=y
BR2_PACKAGE_MESA3D=y
BR2_PACKAGE_MESA3D_LLVM=y
BR2_PACKAGE_MESA3D_OPENCL=y
BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_I915=y
BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_IRIS=y
BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_NOUVEAU=y
BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_R300=y
BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_NOUVEAU=y
BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_R600=y
BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_RADEONSI=y
BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_SWRAST=y
BR2_PACKAGE_MESA3D_DRI_DRIVER_RADEON=y
BR2_PACKAGE_MESA3D_DRI_DRIVER_I915=y
BR2_PACKAGE_MESA3D_DRI_DRIVER_I965=y
BR2_PACKAGE_MESA3D_DRI_DRIVER_NOUVEAU=y
BR2_PACKAGE_MESA3D_VULKAN_DRIVER_INTEL=y
BR2_PACKAGE_MESA3D_OPENGL_GLX=y
BR2_PACKAGE_MESA3D_OPENGL_EGL=y
BR2_PACKAGE_SDL_X11=y
BR2_PACKAGE_SDL_IMAGE_XPM=y
BR2_PACKAGE_SDL_MIXER=y
BR2_PACKAGE_SDL_NET=y
BR2_PACKAGE_SDL_X11=y
BR2_PACKAGE_SDL2_KMSDRM=y
BR2_PACKAGE_SDL2_OPENGL=y
BR2_PACKAGE_SDL2_OPENGLES=y
BR2_PACKAGE_SDL2_MIXER=y
BR2_PACKAGE_QT5=y
BR2_PACKAGE_QT5BASE_GUI=y
BR2_PACKAGE_QT5BASE_WIDGETS=y
BR2_PACKAGE_QT5BASE_DEFAULT_QPA="xcb"
BR2_PACKAGE_XORG7=y
BR2_PACKAGE_XSERVER_XORG_SERVER=y
......@@ -149,7 +161,6 @@ BR2_PACKAGE_XDRIVER_XF86_VIDEO_INTEL=y
BR2_PACKAGE_XDRIVER_XF86_VIDEO_MACH64=y
BR2_PACKAGE_XDRIVER_XF86_VIDEO_MGA=y
BR2_PACKAGE_XDRIVER_XF86_VIDEO_NEOMAGIC=y
BR2_PACKAGE_XDRIVER_XF86_VIDEO_NOUVEAU=y
BR2_PACKAGE_XDRIVER_XF86_VIDEO_NV=y
BR2_PACKAGE_XDRIVER_XF86_VIDEO_OPENCHROME=y
BR2_PACKAGE_XDRIVER_XF86_VIDEO_QXL=y
......@@ -245,17 +256,22 @@ BR2_PACKAGE_USBUTILS=y
BR2_PACKAGE_NODEJS=y
BR2_PACKAGE_NODEJS_MODULES_ADDITIONAL="request"
BR2_PACKAGE_PYTHON_PY_PYC=y
BR2_PACKAGE_PYTHON_DJANGO=y
BR2_PACKAGE_PYTHON_GOBJECT=y
BR2_PACKAGE_PYTHON_PAHO_MQTT=y
BR2_PACKAGE_PYTHON_PYGAME=y
BR2_PACKAGE_PYTHON_PYGAME_IMAGE=y
BR2_PACKAGE_PYTHON_PYGAME_FONT=y
BR2_PACKAGE_PYTHON_PSUTIL=y
BR2_PACKAGE_LIBZIP=y
BR2_PACKAGE_TCL=y
BR2_PACKAGE_EXPECT=y
BR2_PACKAGE_PYTHON_PSUTIL=y
BR2_PACKAGE_LIBVPX=y
BR2_PACKAGE_LIBZIP=y
BR2_PACKAGE_SNAPPY=y
BR2_PACKAGE_CA_CERTIFICATES=y
BR2_PACKAGE_LIBSHA1=y
BR2_PACKAGE_LIBOPENSSL_BIN=y
BR2_PACKAGE_IMLIB2=y
BR2_PACKAGE_IMLIB2_JPEG=y
BR2_PACKAGE_IMLIB2_PNG=y
......@@ -264,7 +280,6 @@ BR2_PACKAGE_LIBGTK2=y
BR2_PACKAGE_LIBSVG_CAIRO=y
BR2_PACKAGE_LIBVA_INTEL_DRIVER=y
BR2_PACKAGE_TSLIB=y
BR2_PACKAGE_LIBVPX=y
BR2_PACKAGE_X264=y
BR2_PACKAGE_LIBCURL_CURL=y
BR2_PACKAGE_LIBCURL_GNUTLS=y
......@@ -273,8 +288,8 @@ BR2_PACKAGE_BOOST=y
BR2_PACKAGE_BOOST_ATOMIC=y
BR2_PACKAGE_NCURSES_WCHAR=y
# BR2_PACKAGE_AVAHI_AUTOIPD is not set
BR2_PACKAGE_BLUEZ5_UTILS_CLIENT=y
BR2_PACKAGE_BLUEZ5_UTILS_DEPRECATED=y
BR2_PACKAGE_BLUEZ5_UTILS_CLIENT=y
BR2_PACKAGE_BLUEZ5_UTILS_PLUGINS_SIXAXIS=y
BR2_PACKAGE_BLUEZ5_UTILS_TEST=y
BR2_PACKAGE_CRDA=y
......@@ -295,39 +310,35 @@ BR2_PACKAGE_WPA_SUPPLICANT_DBUS_INTROSPECTION=y
BR2_PACKAGE_HTOP=y
BR2_PACKAGE_PROCPS_NG=y
BR2_PACKAGE_TAR=y
BR2_PACKAGE_UTIL_LINUX_LOSETUP=y
BR2_PACKAGE_UTIL_LINUX_RFKILL=y
BR2_PACKAGE_NANO=y
BR2_PACKAGE_VIM=y
BR2_TARGET_ROOTFS_SQUASHFS=y
BR2_TARGET_ROOTFS_SQUASHFS4_LZO=y
# BR2_TARGET_ROOTFS_TAR is not set
BR2_TARGET_GRUB2=y
BR2_TARGET_SYSLINUX=y
BR2_TARGET_SYSLINUX_MBR=y
BR2_TARGET_SYSLINUX_EFI=y
BR2_PACKAGE_HOST_GENIMAGE=y
BR2_PACKAGE_MOONLIGHT_EMBEDDED=y
BR2_PACKAGE_RECALBOX_BOOTIA32=y
BR2_PACKAGE_RECALBOX_CONFIGGEN=y
BR2_PACKAGE_RECALBOX_INITRAMFS=y
BR2_PACKAGE_RECALBOX_MANAGER2=y
BR2_PACKAGE_RECALBOX_MPLAYER=y
BR2_TARGET_SYSLINUX=y
BR2_TARGET_SYSLINUX_MBR=y
BR2_PACKAGE_NVIDIA_DRIVER_390_RECALBOX=y
BR2_PACKAGE_NVIDIA_DRIVER_390_RECALBOX_CUDA=y
BR2_PACKAGE_NVIDIA_DRIVER_390_RECALBOX_MODULE=y
BR2_PACKAGE_NVIDIA_DRIVER_440_RECALBOX=y
BR2_PACKAGE_NVIDIA_DRIVER_440_RECALBOX_CUDA=y
BR2_PACKAGE_NVIDIA_DRIVER_440_RECALBOX_MODULE=y
BR2_PACKAGE_PYTHON_AUTOBREADCRUMBS=y
BR2_PACKAGE_RECALBOX_BOOTIA32=y
BR2_PACKAGE_RECALBOX_CONFIGGEN=y
BR2_PACKAGE_RECALBOX_INITRAMFS=y
BR2_PACKAGE_RECALBOX_MANAGER2=y
BR2_PACKAGE_RECALBOX_MPLAYER=y
BR2_PACKAGE_RECALBOX_SYSTEM=y
BR2_PACKAGE_RECALBOX_TARGET_X86_64=y
BR2_PACKAGE_RECALBOX_THEMES=y
BR2_PACKAGE_RECALBOX_X86_64_EFI=y
BR2_PACKAGE_RECALBOX_HARDWARE=y
BR2_PACKAGE_RECALBOX_SETTINGS=y
BR2_PACKAGE_RECALBOX_SYSLINUX_EFI=y
BR2_PACKAGE_PYTHON_ES_SCRAPER=y
BR2_PACKAGE_PYTHON_AUTOBREADCRUMBS=y
BR2_PACKAGE_RECALBOX_SYSLINUX_EFI=y
BR2_PACKAGE_RECALBOX_EMULATIONSTATION2=y
BR2_PACKAGE_QTSIXA_SHANWAN=y
BR2_PACKAGE_QTSIXA=y
......@@ -335,6 +346,7 @@ BR2_PACKAGE_RECALBOX_RETROGAME=y
BR2_PACKAGE_STEAMCONTROLLER=y
BR2_PACKAGE_VIRTUALGAMEPADS=y
BR2_PACKAGE_XARCADE2JSTICK=y
# BR2_PACKAGE_ADVANCEMAME is not set
BR2_PACKAGE_LINAPPLE_PIE=y
BR2_PACKAGE_SOLARUS_RECALBOX=y
BR2_PACKAGE_MUPEN64PLUS_AUDIO_SDL=y
......@@ -351,7 +363,6 @@ BR2_PACKAGE_DOLPHIN_EMU=y
BR2_PACKAGE_DOSBOX=y
BR2_PACKAGE_GSPLUS=y
BR2_PACKAGE_HYPSEUS=y
BR2_PACKAGE_OPENBOR=y
BR2_PACKAGE_REICAST_OLD=y
BR2_PACKAGE_RESIDUALVM=y
BR2_PACKAGE_RETROARCH=y
......@@ -360,6 +371,7 @@ BR2_PACKAGE_LIBRETRO_81=y
BR2_PACKAGE_LIBRETRO_2048=y
BR2_PACKAGE_LIBRETRO_ATARI800=y
BR2_PACKAGE_LIBRETRO_FREEINTV=y
BR2_PACKAGE_OPENBOR=y
BR2_PACKAGE_LIBRETRO_BEETLE_LYNX=y
BR2_PACKAGE_LIBRETRO_BEETLE_NGP=y
BR2_PACKAGE_LIBRETRO_BEETLE_PCE_FAST=y
......@@ -446,3 +458,8 @@ BR2_PACKAGE_JSTEST2=y
BR2_PACKAGE_KERNELFIRMWARES=y
BR2_PACKAGE_LIBRETRO_CHEATS=y
BR2_PACKAGE_MEGATOOLS=y
BR2_PACKAGE_UTIL_LINUX=y
BR2_PACKAGE_UTIL_LINUX_RFKILL=y
BR2_TARGET_ROOTFS_SQUASHFS=y
BR2_TARGET_ROOTFS_SQUASHFS4_LZO=y
BR2_PACKAGE_UTIL_LINUX_LOSETUP=y
......@@ -47,6 +47,7 @@ BR2_PACKAGE_KODI_EVENTCLIENTS=y
BR2_PACKAGE_KODI_LIBBLURAY=y
BR2_PACKAGE_KODI_LIBCEC=y
BR2_PACKAGE_KODI_LCMS2=y
BR2_PACKAGE_KODI_LIBMICROHTTPD=y
BR2_PACKAGE_KODI_LIBNFS=y
BR2_PACKAGE_KODI_MYSQL=y
BR2_PACKAGE_KODI_LIBSHAIRPLAY=y
......@@ -119,11 +120,27 @@ BR2_PACKAGE_MESA3D_VULKAN_DRIVER_INTEL=y
BR2_PACKAGE_MESA3D_OPENGL_GLX=y
BR2_PACKAGE_MESA3D_OPENGL_EGL=y
BR2_PACKAGE_SDL_X11=y
BR2_PACKAGE_MESA3D_OPENGL_ES=y
BR2_PACKAGE_MESA3D_OPENGL_TEXTURE_FLOAT=y
BR2_PACKAGE_NVIDIA_DRIVER_440_RECALBOX=y
BR2_PACKAGE_NVIDIA_DRIVER_440_RECALBOX_MODULE=y
BR2_PACKAGE_NVIDIA_DRIVER_440_RECALBOX_XORG=y
BR2_PACKAGE_NVIDIA_DRIVER_440_RECALBOX_CUDA=y
BR2_PACKAGE_NVIDIA_DRIVER_390_RECALBOX=y
BR2_PACKAGE_NVIDIA_DRIVER_390_RECALBOX_MODULE=y
BR2_PACKAGE_NVIDIA_DRIVER_390_RECALBOX_XORG=y
BR2_PACKAGE_NVIDIA_DRIVER_390_RECALBOX_CUDA=y
BR2_PACKAGE_SDL_IMAGE_XPM=y
BR2_PACKAGE_SDL_MIXER=y
BR2_PACKAGE_SDL_NET=y
BR2_PACKAGE_SDL2_KMSDRM=y
BR2_PACKAGE_SDL2_OPENGL=y
BR2_PACKAGE_SDL2_OPENGLES=y
BR2_PACKAGE_SDL2_MIXER=y
BR2_PACKAGE_QT5=y
BR2_PACKAGE_QT5BASE_GUI=y
BR2_PACKAGE_QT5BASE_WIDGETS=y
BR2_PACKAGE_QT5BASE_DEFAULT_QPA="xcb"
BR2_PACKAGE_XORG7=y
BR2_PACKAGE_XSERVER_XORG_SERVER=y
BR2_PACKAGE_XAPP_SETXKBMAP=y
......@@ -241,6 +258,9 @@ BR2_PACKAGE_PYTHON_PAHO_MQTT=y
BR2_PACKAGE_PYTHON_PYGAME=y
BR2_PACKAGE_PYTHON_PYGAME_IMAGE=y
BR2_PACKAGE_PYTHON_PYGAME_FONT=y
BR2_PACKAGE_PYTHON_PSUTIL=y
BR2_PACKAGE_LIBVPX=y
BR2_PACKAGE_LIBZIP=y
BR2_PACKAGE_SNAPPY=y
BR2_PACKAGE_CA_CERTIFICATES=y
BR2_PACKAGE_LIBSHA1=y
......@@ -252,7 +272,6 @@ BR2_PACKAGE_LIBGTK2=y
BR2_PACKAGE_LIBSVG_CAIRO=y
BR2_PACKAGE_LIBVA_INTEL_DRIVER=y
BR2_PACKAGE_TSLIB=y
BR2_PACKAGE_LIBVPX=y
BR2_PACKAGE_X264=y
BR2_PACKAGE_LIBCURL_CURL=y
BR2_PACKAGE_LIBCURL_GNUTLS=y
......@@ -283,6 +302,7 @@ BR2_PACKAGE_WPA_SUPPLICANT_DBUS_INTROSPECTION=y
BR2_PACKAGE_HTOP=y
BR2_PACKAGE_PROCPS_NG=y
BR2_PACKAGE_TAR=y
BR2_PACKAGE_UTIL_LINUX_RFKILL=y
BR2_PACKAGE_NANO=y
BR2_PACKAGE_VIM=y
# BR2_TARGET_ROOTFS_EXT2 is not set
......@@ -293,12 +313,8 @@ BR2_PACKAGE_VIM=y
# BR2_TARGET_ROOTFS_TAR_XZ is not set
BR2_TARGET_ROOTFS_TAR=n
BR2_TARGET_GRUB2=y
BR2_PACKAGE_RECALBOX_X86_64_EFI=y
BR2_PACKAGE_HOST_GENIMAGE=y
BR2_PACKAGE_MOONLIGHT_EMBEDDED=y
BR2_PACKAGE_NVIDIA_DRIVER_390_RECALBOX=y
BR2_PACKAGE_NVIDIA_DRIVER_390_RECALBOX_CUDA=y
BR2_PACKAGE_NVIDIA_DRIVER_390_RECALBOX_MODULE=y
BR2_PACKAGE_PYTHON_AUTOBREADCRUMBS=y
BR2_PACKAGE_RECALBOX_CONFIGGEN=y
BR2_PACKAGE_RECALBOX_MANAGER2=y
......@@ -306,7 +322,6 @@ BR2_PACKAGE_RECALBOX_MPLAYER=y
BR2_PACKAGE_RECALBOX_SYSTEM=y
BR2_PACKAGE_RECALBOX_TARGET_X86=y
BR2_PACKAGE_RECALBOX_THEMES=y
BR2_PACKAGE_RECALBOX_X86_64_EFI=y
BR2_PACKAGE_RECALBOX_HARDWARE=y
BR2_PACKAGE_RECALBOX_SETTINGS=y
BR2_PACKAGE_PYTHON_ES_SCRAPER=y
......@@ -317,7 +332,6 @@ BR2_PACKAGE_RECALBOX_RETROGAME=y
BR2_PACKAGE_STEAMCONTROLLER=y
BR2_PACKAGE_VIRTUALGAMEPADS=y
BR2_PACKAGE_XARCADE2JSTICK=y
BR2_PACKAGE_ADVANCEMAME=y
BR2_PACKAGE_LINAPPLE_PIE=y
BR2_PACKAGE_SOLARUS_RECALBOX=y
BR2_PACKAGE_MUPEN64PLUS_AUDIO_SDL=y
......@@ -380,6 +394,7 @@ BR2_PACKAGE_LIBRETRO_MAME2003_PLUS=y
BR2_PACKAGE_LIBRETRO_MAME2003=y
BR2_PACKAGE_LIBRETRO_MAME2010=y
BR2_PACKAGE_LIBRETRO_MAME2015=y
BR2_PACKAGE_ADVANCEMAME=y
BR2_PACKAGE_LIBRETRO_MELONDS=y
BR2_PACKAGE_LIBRETRO_METEOR=y
BR2_PACKAGE_LIBRETRO_MGBA=y
......
......@@ -4,6 +4,10 @@
# * a line of minus signs ('-') indicates a file that we remove from Buildroot external tree
# * a line of plus signs ('+') indicates a file that we add to the Buildroot external tree
++++++++++++++++++++++++++++++++ package/sdl2/0001-src-video-directfb-SDL_DirectFB_render.c-fix-build.patch
++++++++++++++++++++++++++++++++ package/sdl2/0002-src-video-kmsdrm-SDL_kmsdrmvideo.c-fix-build.patch
-------------------------------- package/sdl2/0001-src-core-linux-SDL_threadprio.c-fix-build-without-th.patch
-------------------------------- package/sdl2/0002-fix-busy-loop-in-dlopen.patch
bebf5922f3fcd58aa3d3316f053e556c boot/syslinux/syslinux.mk
92048d2d2185b48c1e2097b9685c92f8 package/binutils/binutils.mk
20cad3977b0ee4cc96821e8e7d2e6a7f package/bluez5_utils/bluez5_utils.mk
......@@ -31,8 +35,6 @@ f38548efeaeaaa6515c91bc6ab7d9d54 package/rpi-firmware/cmdline.txt
f01ea6ba5ccf7e7b094e83301984333d package/rpi-firmware/config.txt
635322bdc7c4e8d244105c762bd173d5 package/rpi-firmware/rpi-firmware.hash
5be9652e767c6fbff1a647c3abd5e14e package/rpi-firmware/rpi-firmware.mk
-------------------------------- package/sdl2/0001-src-core-linux-SDL_threadprio.c-fix-build-without-th.patch
-------------------------------- package/sdl2/0002-fix-busy-loop-in-dlopen.patch
4a6b23e7921b96113d2d455c98c5b801 package/sdl2/sdl2.hash
50dc2a2f96841baf8df5f6482323275f package/sdl2/sdl2.mk
92d54b262be45808e8892ccc6214bd25 package/sdl2_mixer/sdl2_mixer.mk
......@@ -42,5 +44,3 @@ f01ea6ba5ccf7e7b094e83301984333d package/rpi-firmware/config.txt
5fc4f4800b19ccbd3403b530e5496880 support/scripts/mkusers
2673dc3e7fbc4920c43ad91ad9214d3e system/device_table.txt
7c04e662b37e09a98c46141cf08fb247 system/skeleton/etc/passwd
++++++++++++++++++++++++++++++++ package/sdl2/0001-src-video-directfb-SDL_DirectFB_render.c-fix-build.patch
++++++++++++++++++++++++++++++++ package/sdl2/0002-src-video-kmsdrm-SDL_kmsdrmvideo.c-fix-build.patch
......@@ -35,6 +35,19 @@ config BR2_PACKAGE_KODI_PLATFORM_SUPPORTS_GBM_GLES
depends on BR2_PACKAGE_HAS_LIBGLES
depends on BR2_PACKAGE_HAS_UDEV
depends on !BR2_PACKAGE_RPI_USERLAND
depends on !BR2_cortex_a72
select BR2_PACKAGE_KODI_PLATFORM_SUPPORTS
config BR2_PACKAGE_KODI_PLATFORM_SUPPORTS_RBPI4
bool
default y
# List of valid CPUs can be found here:
# https://github.com/xbmc/xbmc/blob/Krypton/project/cmake/scripts/rbpi/ArchSetup.cmake#L12
depends on BR2_cortex_a72
depends on !BR2_PACKAGE_RPI_USERLAND
depends on BR2_PACKAGE_HAS_LIBGLES
depends on BR2_PACKAGE_HAS_UDEV # libinput
depends on BR2_PACKAGE_MESA3D_GBM
select BR2_PACKAGE_KODI_PLATFORM_SUPPORTS
config BR2_PACKAGE_KODI_PLATFORM_SUPPORTS_RBPI
......@@ -235,8 +248,14 @@ config BR2_PACKAGE_KODI_PLATFORM_GBM_GLES
select BR2_PACKAGE_LIBINPUT
select BR2_PACKAGE_LIBXKBCOMMON
config BR2_PACKAGE_KODI_PLATFORM_RBPI4
bool "Raspberry Pi4 only"
depends on BR2_PACKAGE_KODI_PLATFORM_SUPPORTS_RBPI4
select BR2_PACKAGE_LIBINPUT
select BR2_PACKAGE_LIBXKBCOMMON
config BR2_PACKAGE_KODI_PLATFORM_RBPI
bool "Raspberry Pi"
bool "Raspberry Pi (not 4)"
depends on BR2_PACKAGE_KODI_PLATFORM_SUPPORTS_RBPI
select BR2_PACKAGE_LIBINPUT
select BR2_PACKAGE_LIBXKBCOMMON
......
diff --git a/package/kodi/Config.in b/package/kodi/Config.in
index b9eea78d57..05c2ec621b 100644
index b9eea78d57..ce5729f7c3 100644
--- a/package/kodi/Config.in
+++ b/package/kodi/Config.in
@@ -17,6 +17,26 @@ comment "kodi needs python w/ .py modules, a uClibc or glibc toolchain w/ C++, t
@@ -17,6 +17,39 @@ comment "kodi needs python w/ .py modules, a uClibc or glibc toolchain w/ C++, t
config BR2_PACKAGE_KODI_PLATFORM_SUPPORTS
bool
......@@ -24,12 +24,25 @@ index b9eea78d57..05c2ec621b 100644
+ depends on BR2_PACKAGE_HAS_LIBGLES
+ depends on BR2_PACKAGE_HAS_UDEV
+ depends on !BR2_PACKAGE_RPI_USERLAND
+ depends on !BR2_cortex_a72
+ select BR2_PACKAGE_KODI_PLATFORM_SUPPORTS
+
+config BR2_PACKAGE_KODI_PLATFORM_SUPPORTS_RBPI4
+ bool
+ default y
+ # List of valid CPUs can be found here:
+ # https://github.com/xbmc/xbmc/blob/Krypton/project/cmake/scripts/rbpi/ArchSetup.cmake#L12
+ depends on BR2_cortex_a72
+ depends on !BR2_PACKAGE_RPI_USERLAND
+ depends on BR2_PACKAGE_HAS_LIBGLES
+ depends on BR2_PACKAGE_HAS_UDEV # libinput
+ depends on BR2_PACKAGE_MESA3D_GBM
+ select BR2_PACKAGE_KODI_PLATFORM_SUPPORTS
+
config BR2_PACKAGE_KODI_PLATFORM_SUPPORTS_RBPI
bool