summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergi Granell2017-02-16 19:14:46 +0100
committerSergi Granell2017-02-16 19:14:46 +0100
commita559fcbd1bf25fcf53ccc0a8fae466abdee7a8c3 (patch)
treeb6753b0cabfe6f85db8e7d2d2024cf92fa1c03fd
parentUpdate psp2kern/usbd.h (diff)
downloadvds-libraries-a559fcbd1bf25fcf53ccc0a8fae466abdee7a8c3.tar.gz
Add ksceUsbdGetDescriptor
-rw-r--r--include/kernel/usbd.h23
-rw-r--r--nids/360/SceUsbd.yml1
2 files changed, 18 insertions, 6 deletions
diff --git a/include/kernel/usbd.h b/include/kernel/usbd.h
index fad90be..8e19375 100644
--- a/include/kernel/usbd.h
+++ b/include/kernel/usbd.h
@@ -21,11 +21,22 @@ extern "C" {
#define SCE_USBD_ERROR_PIPE 0x80240009
#define SCE_USBD_ERROR_TIMEOUT 0x80240007
-typedef struct SceUsbdDeviceInfo {
- unsigned int unk0;
- unsigned int unk1;
- unsigned int unk2;
-} SceUsbdDeviceInfo; /* size = 0xC */
+typedef struct SceUsbdDeviceDescriptor {
+ unsigned char bLength;
+ unsigned char bDescriptorType;
+ unsigned short bcdUSB;
+ unsigned char bDeviceClass;
+ unsigned char bDeviceSubClass;
+ unsigned char bDeviceProtocol;
+ unsigned char bMaxPacketSize0;
+ unsigned short idVendor;
+ unsigned short idProduct;
+ unsigned short bcdDevice;
+ unsigned char iManufacturer;
+ unsigned char iProduct;
+ unsigned char iSerialNumber;
+ unsigned char bNumConfigurations;
+} SceUsbdDeviceDescriptor; /* size = 20 */
typedef struct SceUsbdDeviceAddress {
unsigned int unk0;
@@ -43,7 +54,7 @@ typedef struct SceUsbdDriver {
int sceUsbdRegisterDriver(const SceUsbdDriver *driver);
int sceUsbdRegisterCompositeLdd(const SceUsbdDriver *driver);
int sceUsbdUnregisterDriver(const SceUsbdDriver *driver);
-
+void *sceUsbdGetDescriptor(int device_id, int index, unsigned char bDescriptorType);
#ifdef __cplusplus
}
diff --git a/nids/360/SceUsbd.yml b/nids/360/SceUsbd.yml
index ec1d856..50f6a4a 100644
--- a/nids/360/SceUsbd.yml
+++ b/nids/360/SceUsbd.yml
@@ -5,6 +5,7 @@ modules:
SceUsbdForDriver:
nid: 0xA0EBCA41
functions:
+ sceUsbdGetDescriptor: 0xBC3EF82B
sceUsbdRegisterCompositeLdd: 0x6E53D7F4
sceUsbdRegisterDriver: 0x1EC94F18
sceUsbdSuspendPhase2: 0xD7AA730D