SDL: Merge commit '40f0744b73603630d78a50c3c0026aa0aed64069' into main

https://github.com/libsdl-org/SDL/commit/0475d65635894cab04e6705913730280c14c654f

From 40f0744b73603630d78a50c3c0026aa0aed64069 Mon Sep 17 00:00:00 2001
From: Francisco Javier Trujillo Mata <[EMAIL REDACTED]>
Date: Fri, 13 Jan 2023 16:30:20 +0100
Subject: [PATCH] Use filesystem drivers

---
 src/core/ps2/SDL_ps2.c | 28 +++-------------------------
 1 file changed, 3 insertions(+), 25 deletions(-)

diff --git a/src/core/ps2/SDL_ps2.c b/src/core/ps2/SDL_ps2.c
index 98741d69800e..b3d8c6cd6d99 100644
--- a/src/core/ps2/SDL_ps2.c
+++ b/src/core/ps2/SDL_ps2.c
@@ -34,9 +34,7 @@
 #include <sifrpc.h>
 #include <iopcontrol.h>
 #include <sbv_patches.h>
-#include <ps2_fileXio_driver.h>
-#include <ps2_memcard_driver.h>
-#include <ps2_usb_driver.h>
+#include <ps2_filesystem_driver.h>
 
 __attribute__((weak)) void reset_IOP()
 {
@@ -58,29 +56,12 @@ static void prepare_IOP()
 
 static void init_drivers()
 {
-    init_memcard_driver(true);
-    init_usb_driver(true);
+	init_ps2_filesystem_driver();
 }
 
 static void deinit_drivers()
 {
-    deinit_usb_driver(true);
-    deinit_memcard_driver(true);
-}
-
-static void waitUntilDeviceIsReady(char *path)
-{
-    struct stat buffer;
-    int ret = -1;
-    int retries = 50;
-
-    while (ret != 0 && retries > 0) {
-        ret = stat(path, &buffer);
-        /* Wait until the device is ready */
-        nopdelay();
-
-        retries--;
-    }
+	deinit_ps2_filesystem_driver();
 }
 
 DECLSPEC int
@@ -93,9 +74,6 @@ SDL_RunApp(int argc, char* argv[], SDL_main_func mainFunction, void * reserved)
     prepare_IOP();
     init_drivers();
 
-    getcwd(cwd, sizeof(cwd));
-    waitUntilDeviceIsReady(cwd);
-
     SDL_SetMainReady();
 
     res = mainFunction(argc, argv);