SceUdcd: Difference between revisions
Jump to navigation
Jump to search
CelesteBlue (talk | contribs) |
CelesteBlue (talk | contribs) No edit summary |
||
Line 197: | Line 197: | ||
== SceUdcdForDriver == | == SceUdcdForDriver == | ||
=== sceUdcdStartForDriver === | |||
{| class="wikitable" | |||
|- | |||
! Version !! NID | |||
|- | |||
| 3.60 || 0x9FD733EA | |||
|} | |||
<source lang="c"> | |||
/** | |||
* Start a USB driver. | |||
* | |||
* @param driverName - Name of the USB driver to start | |||
* @param size - Size of arguments to pass to USB driver start | |||
* @param args - Arguments to pass to USB driver start | |||
* | |||
* @return 0 on success, < 0 on error. | |||
*/ | |||
int sceUdcdStartForDriver(const char *driverName, int size, void *args); | |||
</source> | |||
=== sceUdcdStopForDriver === | === sceUdcdStopForDriver === | ||
Line 210: | Line 231: | ||
// sceUdcdStopForDriver("USBSerDriver", 0, 0); | // sceUdcdStopForDriver("USBSerDriver", 0, 0); | ||
// sceUdcdStopForDriver("USBDeviceControllerDriver", 0, 0); | // sceUdcdStopForDriver("USBDeviceControllerDriver", 0, 0); | ||
// sceUdcdStopForDriver("USB_MTP_Driver", | // sceUdcdStopForDriver("USB_MTP_Driver", 0, 0); | ||
/** | /** | ||
Line 222: | Line 243: | ||
*/ | */ | ||
int sceUdcdStopForDriver(const char *driverName, int size, void *args); | int sceUdcdStopForDriver(const char *driverName, int size, void *args); | ||
</source> | |||
=== sceUdcdStartToBusForDriver === | |||
{| class="wikitable" | |||
|- | |||
! Version !! NID | |||
|- | |||
| 3.60 || unk | |||
|} | |||
<source lang="c"> | |||
/** | |||
* Start a USB driver. | |||
* | |||
* @param driverName - Name of the USB driver to start | |||
* @param size - Size of arguments to pass to USB driver start | |||
* @param args - Arguments to pass to USB driver start | |||
* @param bus - USB BUS | |||
* | |||
* @return 0 on success, < 0 on error. | |||
*/ | |||
int sceUdcdStartToBusForDriver(const char *driverName, int size, void *args, int bus); | |||
</source> | </source> | ||
Line 234: | Line 277: | ||
<source lang="c"> | <source lang="c"> | ||
// ex from SceUsbDevSerial: | // ex from SceUsbDevSerial: | ||
// | // sceUdcdStopToBusForDriver("USBDeviceControllerDriver", 0, 0, 2); | ||
/** | /** | ||
Line 526: | Line 569: | ||
*/ | */ | ||
int sceUdcdClearFIFOForDriver(SceUdcdEndpoint *endp); | int sceUdcdClearFIFOForDriver(SceUdcdEndpoint *endp); | ||
</source> | </source> | ||
Revision as of 14:24, 12 August 2018
Module
Known NIDs
Version | Name | World | Privilege | NID |
---|---|---|---|---|
1.69 | SceUdcd | Non-secure | Kernel | 0x3EC14982 |
3.60 | SceUdcd | Non-secure | Kernel | 0x8E26B2A3 |
Libraries
Known NIDs
Version | Name | World | Visibility | NID |
---|---|---|---|---|
1.69 | SceUdcd | Non-secure | User | 0xA84BDE8A |
3.60 | SceUdcd | Non-secure | User | 0xA84BDE8A |
1.69 | SceUdcdForDriver | Non-secure | Kernel | 0xBC05A8FB |
3.60 | SceUdcdForDriver | Non-secure | Kernel | 0xBC05A8FB |
SceUdcd
sceUdcdGetDeviceState
Version | NID |
---|---|
3.60 | 0xFCD31220 |
typedef struct {
int unk_00;
int state;
int cable;
int connection;
int use_usb_charging;
int unk_14;
} SceUdcdDeviceState;
/**
* Get device state
*
* @param[out] state - Device state
*
* @return 0 on success, < 0 on error.
*/
int sceUdcdGetDeviceState(SceUdcdDeviceState *state);
sceUdcdGetDeviceInfo
Version | NID |
---|---|
3.60 | 0x701C87CF |
typedef struct {
uint8_t info[64];
} SceUdcdDeviceInfo;
/**
* Get device information
*
* @param[out] devInfo - Device information
*
* @return 0 on success, < 0 on error.
*/
int sceUdcdGetDeviceInfo(SceUdcdDeviceInfo *devInfo);
sceUdcdGetDrvState
Version | NID |
---|---|
3.60 | 0x99B3DA5D |
/**
* Get state of a specific USB driver
*
* @param driverName - name of USB driver to get status from
*
* @return SCE_UDCD_STATUS_DRIVER_STARTED if the driver has been started, SCE_UDCD_STATUS_DRIVER_REGISTERED if it is stopped
*/
int sceUdcdGetDrvState(const char *driverName);
sceUdcdRegisterCallback
Version | NID |
---|---|
3.60 | 0xA7070093 |
/**
* Register callback
*
* @param[in] cbid - Callback UID
* @param[in] state - State
*
* @return 0 on success, < 0 on error.
*/
int sceUdcdRegisterCallback(SceUID cbid, int state);
sceUdcdUnregisterCallback
Version | NID |
---|---|
3.60 | 0xC3FBA889 |
/**
* Unregister callback
*
* @param[in] cbid - Callback UID
*
* @return 0 on success, < 0 on error.
*/
int sceUdcdUnregisterCallback(SceUID cbid);
sceUdcdWaitState
Version | NID |
---|---|
3.60 | 0x59EFFAF1 |
typedef struct {
int unk_00;
int unk_04;
int unk_08;
int unk_0C;
int unk_10;
const char *driverName;
} SceUdcdWaitParam;
/**
* Wait for state
*
* @param[in] waitParam - Wait parameter
* @param[in] timeout - Timeout
*
* @return 0 on success, < 0 on error.
*/
int sceUdcdWaitState(SceUdcdWaitParam *waitParam, unsigned int timeout);
SceUdcd_F1A3690B
Version | NID |
---|---|
3.60 | 0xF1A3690B |
if (sceSblACMgrIsShellForDriver() || sceSblACMgrIsMiniSettingsForQAForDriver() || sceSblACMgrIsAllowedUsbSerialForDriver())
-> calls SceUdcdForDriver_EBB1E86B();.
int SceUdcd_F1A3690B(void);
SceUdcd_FCD876FB
Version | NID |
---|---|
3.60 | 0xFCD876FB |
if (sceSblACMgrIsShellForDriver() || sceSblACMgrIsMiniSettingsForQAForDriver() || sceSblACMgrIsAllowedUsbSerialForDriver())
-> calls SceUdcdForDriver_EBB1E86B();.
int SceUdcdForDriver_E054B5E4(void);
SceUdcdForDriver
sceUdcdStartForDriver
Version | NID |
---|---|
3.60 | 0x9FD733EA |
/**
* Start a USB driver.
*
* @param driverName - Name of the USB driver to start
* @param size - Size of arguments to pass to USB driver start
* @param args - Arguments to pass to USB driver start
*
* @return 0 on success, < 0 on error.
*/
int sceUdcdStartForDriver(const char *driverName, int size, void *args);
sceUdcdStopForDriver
Version | NID |
---|---|
3.60 | 0x1494293B |
// ex from SceUsbSerial:
// sceUdcdStopForDriver("USBSerDriver", 0, 0);
// sceUdcdStopForDriver("USBDeviceControllerDriver", 0, 0);
// sceUdcdStopForDriver("USB_MTP_Driver", 0, 0);
/**
* Stop a USB driver.
*
* @param driverName - Name of the USB driver to stop
* @param size - Size of arguments to pass to USB driver start
* @param args - Arguments to pass to USB driver start
*
* @return 0 on success, < 0 on error.
*/
int sceUdcdStopForDriver(const char *driverName, int size, void *args);
sceUdcdStartToBusForDriver
Version | NID |
---|---|
3.60 | unk |
/**
* Start a USB driver.
*
* @param driverName - Name of the USB driver to start
* @param size - Size of arguments to pass to USB driver start
* @param args - Arguments to pass to USB driver start
* @param bus - USB BUS
*
* @return 0 on success, < 0 on error.
*/
int sceUdcdStartToBusForDriver(const char *driverName, int size, void *args, int bus);
sceUdcdStopToBusForDriver
Version | NID |
---|---|
3.60 | unk |
// ex from SceUsbDevSerial:
// sceUdcdStopToBusForDriver("USBDeviceControllerDriver", 0, 0, 2);
/**
* Stop a USB driver by BUS.
*
* @param driverName - Name of the USB driver to stop
* @param size - Size of arguments to pass to USB driver start
* @param args - Arguments to pass to USB driver start
* @param bus - USB bus
*
* @return 0 on success, < 0 on error.
*/
int sceUdcdStopToBusForDriver(const char *driverName, int size, void *args, int bus);
sceUdcdWaitBusInitializedForDriver
Version | NID |
---|---|
3.60 | 0x1C684884 |
/**
* Waits until an UDCD bus is initialized
*
* @param[in] timeout - Timeout
* @param[in] bus - UDCD bus (default is 2)
*
* @return 0 on success, < 0 on error.
*/
int sceUdcdWaitBusInitializedForDriver(unsigned int timeout, int bus);
sceUdcdReqSendForDriver
Version | NID |
---|---|
3.60 | 0x1ED0E89E |
/**
* Queue a send request (IN from host pov)
*
* @param req - Pointer to a filled out ::SceUdcdDeviceRequest structure.
*
* @return 0 on success, < 0 on error
*/
int sceUdcdReqSendForDriver(SceUdcdDeviceRequest *req);
sceUdcdReqSendInternalForDriver
Version | NID |
---|---|
3.60 | 0x2E3E622A |
/**
* Queue a send request (IN from host pov) for an UDCD bus
*
* @param req - Pointer to a filled out ::SceUdcdDeviceRequest structure.
* @param[in] bus - UDCD bus (default is 2)
*
* @return 0 on success, < 0 on error
*/
int sceUdcdReqSendInternalForDriver(SceUdcdDeviceRequest *req, int bus);
sceUdcdStallForDriver
Version | NID |
---|---|
3.60 | 0x34079250 |
/**
* Stall an endpoint
*
* @param endp - The endpoint to stall
*
* @return 0 on success, < 0 on error
*/
int sceUdcdStallForDriver(SceUdcdEndpoint *endp);
sceUdcdReqCancelAllForDriver
Version | NID |
---|---|
3.60 | 0x38787672 |
/**
* Cancel any pending requests on an endpoint.
*
* @param endp - The endpoint to cancel
*
* @return 0 on success, < 0 on error
*/
int sceUdcdReqCancelAllForDriver(SceUdcdEndpoint *endp);
sceUdcdRegisterForDriver
Version | NID |
---|---|
3.60 | 0x4E55244D |
Called by SceUsbSerial module_start().
/**
* Register a USB driver.
*
* @param drv - Pointer to a filled out USB driver
*
* @return 0 on success, < 0 on error
*/
int sceUdcdRegisterForDriver(SceUdcdDriver *drv);
sceUdcdUnregisterForDriver
Version | NID |
---|---|
3.60 | 0x0DECE532 |
Called by SceUsbSerial module_stop().
/**
* Unregister a USB driver
*
* @param drv - Pointer to a filled out USB driver
*
* @return 0 on success, < 0 on error
*/
int sceUdcdUnregisterForDriver(SceUdcdDriver *drv);
sceUdcdRegisterToBusForDriver
Version | NID |
---|---|
3.60 | 0x64675918 |
Called by SceUsbDevSerial module_start().
/**
* Register a USB driver to a specific USB bus.
*
* @param drv - Pointer to a filled out USB driver
* @param bus - The USB bus index (usually 2)
*
* @return 0 on success, < 0 on error
*/
int sceUdcdRegisterToBusForDriver(SceUdcdDriver *drv, int bus);
sceUdcdUnregisterToBusForDriver
Version | NID |
---|---|
3.60 | 0x6CCD152E |
Called by SceUsbDevSerial module_stop().
/**
* Unregister a USB driver to a specific USB bus.
*
* @param drv - Pointer to a filled out USB driver
* @param bus - The USB bus index (usually 2)
*
* @return 0 on success, < 0 on error
*/
int sceUdcdUnregisterToBusForDriver(SceUdcdDriver *drv, int bus);
sceUdcdActivateForDriver
Version | NID |
---|---|
3.60 | 0x4FDEA423 |
/**
* Activate a USB driver.
*
* @param pid - Product ID for the default USB Driver
*
* @return 0 on success, < 0 on error.
*/
int sceUdcdActivateForDriver(unsigned int productId);
sceUdcdGetDrvStateInternalForDriver
Version | NID |
---|---|
3.60 | 0x512F77BC |
/**
* Get state of a specific USB driver for an UDCD bus
*
* @param driverName - name of USB driver to get status from
* @param[in] bus - UDCD bus (default is 2)
*
* @return SCE_UDCD_STATUS_DRIVER_STARTED if the driver has been started, SCE_UDCD_STATUS_DRIVER_REGISTERED if it is stopped
*/
int sceUdcdGetDrvStateInternalForDriver(const char *driverName, int bus);
sceUdcdWaitStateInternalForDriver
Version | NID |
---|---|
3.60 | 0x7AD0C8D1 |
/**
* Wait for state for an UDCD bus
*
* @param[in] waitParam - Wait parameter
* @param[in] timeout - Timeout
* @param[in] bus - UDCD bus (default is 2)
*
* @return 0 on success, < 0 on error.
*/
int sceUdcdWaitStateInternalForDriver(SceUdcdWaitParam *waitParam, unsigned int timeout, int bus);
sceUdcdDeactivateForDriver
Version | NID |
---|---|
3.60 | 0x8AE87657 |
/**
* Deactivate USB driver.
*
* @return 0 on success, < 0 on error.
*/
int sceUdcdDeactivateForDriver(void);
sceUdcdClearFIFOForDriver
Version | NID |
---|---|
3.60 | 0x9F53D64D |
/**
* Clear the FIFO on an endpoint
*
* @param endp - The endpoint to clear
*
* @return 0 on success, < 0 on error
*/
int sceUdcdClearFIFOForDriver(SceUdcdEndpoint *endp);
sceUdcdGetDrvStateForDriver
Version | NID |
---|---|
3.60 | 0xC0CA5DDB |
/**
* Get state of a specific USB driver
*
* @param driverName - name of USB driver to get status from
*
* @return SCE_UDCD_STATUS_DRIVER_STARTED if the driver has been started, SCE_UDCD_STATUS_DRIVER_REGISTERED if it is stopped
*/
int sceUdcdGetDrvStateForDriver(const char *driverName);
sceUdcdReqRecvForDriver
Version | NID |
---|---|
3.60 | 0xC60A74B2 |
/**
* Queue a receive request (OUT from host pov)
*
* @param req - Pointer to a filled out ::SceUdcdDeviceRequest structure
*
* @return 0 on success, < 0 on error
*/
int sceUdcdReqRecvForDriver(SceUdcdDeviceRequest *req);
sceUdcdReqRecvInternalForDriver
Version | NID |
---|---|
3.60 | 0x175E6179 |
/**
* Queue a receive request (OUT from host pov) for an UDCD bus
*
* @param req - Pointer to a filled out ::SceUdcdDeviceRequest structure
* @param[in] bus - UDCD bus (default is 2)
*
* @return 0 on success, < 0 on error
*/
int sceUdcdReqRecvInternalForDriver(SceUdcdDeviceRequest *req, int bus);
sceUdcdWaitStateForDriver
Version | NID |
---|---|
3.60 | 0xD03017C0 |
/**
* Wait for state
*
* @param[in] waitParam - Wait parameter
* @param[in] timeout - Timeout
*
* @return 0 on success, < 0 on error.
*/
int sceUdcdWaitStateForDriver(SceUdcdWaitParam *waitParam, unsigned int timeout);
sceUdcdGetDeviceStateForDriver
Version | NID |
---|---|
3.60 | 0xE054B5E4 |
/**
* Get USB state
*
* @return One or more ::SceUdcdStatus.
*/
int sceUdcdGetDeviceStateForDriver(void);
sceUdcdGetDeviceInfoForDriver
Version | NID |
---|---|
3.60 | 0xFBEA3703 |
/**
* Get device information
*
* @param[out] devInfo - Device information
*
* @return 0 on success, < 0 on error.
*/
int sceUdcdGetDeviceInfoForDriver(SceUdcdDeviceInfo *devInfo);
SceUdcdForDriver_2D91F8C3_enable_usb_charging
Version | NID |
---|---|
3.60 | 0x18DD8043 |
int SceUdcdForDriver_2D91F8C3_enable_usb_charging(int enable);
Enables/disables USB charging?