summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorSergi Granell2018-08-09 10:20:35 +0200
committerSergi Granell2018-08-09 10:21:04 +0200
commit923d96120f3d37296259d7e8d19392019502ef97 (patch)
tree11d7627927dd9f7ffdb9579dad9fee8edd5fbdaf /include
parentUpdate paf.h (diff)
downloadvds-libraries-923d96120f3d37296259d7e8d19392019502ef97.tar.gz
Update UDCD
Diffstat (limited to 'include')
-rw-r--r--include/kernel/kernel/sysmem.h2
-rw-r--r--include/kernel/udcd.h32
2 files changed, 30 insertions, 4 deletions
diff --git a/include/kernel/kernel/sysmem.h b/include/kernel/kernel/sysmem.h
index 617538e..51e45e4 100644
--- a/include/kernel/kernel/sysmem.h
+++ b/include/kernel/kernel/sysmem.h
@@ -290,7 +290,7 @@ int sceKernelMapBlockUserVisible(SceUID uid);
int sceKernelMapUserBlock(const char *name, int permission, int type,
const void *user_buf, unsigned int size, void **kernel_page,
unsigned int *kernel_size, unsigned int *kernel_offset);
-int sceKernelMapUserBlockDefaultType(const char *name, int permission, void *user_buf,
+int sceKernelMapUserBlockDefaultType(const char *name, int permission, const void *user_buf,
unsigned int size, void **kernel_page,
unsigned int *kernel_size, unsigned int *kernel_offset);
int sceKernelMapUserBlockDefaultTypeForPid(int pid, const char *name, int permission,
diff --git a/include/kernel/udcd.h b/include/kernel/udcd.h
index 78fe6c6..e309899 100644
--- a/include/kernel/udcd.h
+++ b/include/kernel/udcd.h
@@ -194,6 +194,12 @@ typedef enum SceUdcdErrorCode {
SCE_UDCD_ERROR_USBDRIVER_INVALID_FUNCS = 0x80243202
} SceUdcdErrorCode;
+/** SceUdcdDeviceRequest Flags
+ */
+typedef enum SceUdcdDeviceRequestAttr {
+ SCE_UDCD_DEVICE_REQUEST_ATTR_PHYCONT = 0x00000001
+} SceUdcdDeviceRequestAttr;
+
/** USB string descriptor
*/
typedef struct SceUdcdStringDescriptor {
@@ -356,7 +362,7 @@ typedef struct SceUdcdDriver {
typedef struct SceUdcdDeviceRequest {
SceUdcdEndpoint *endpoint; //!< Pointer to the endpoint to queue request on
void *data; //!< Pointer to the data buffer to use in the request
- unsigned int unk; //!< Unknown data
+ unsigned int attributes; //!< Request attributes (See ::SceUdcdDeviceRequestAttr)
int size; //!< Size of the data buffer
int isControlRequest; //!< Is a control request?
void (*onComplete)(struct SceUdcdDeviceRequest *req); //!< Pointer to the function to call on completion
@@ -550,7 +556,7 @@ int sceUdcdReqCancelAll(SceUdcdEndpoint *endp);
int sceUdcdStall(SceUdcdEndpoint *endp);
/**
- * Queue a send request(IN from host pov)
+ * Queue a send request (IN from host pov)
*
* @param req - Pointer to a filled out ::SceUdcdDeviceRequest structure.
*
@@ -559,7 +565,17 @@ int sceUdcdStall(SceUdcdEndpoint *endp);
int sceUdcdReqSend(SceUdcdDeviceRequest *req);
/**
- * Queue a receive request(OUT from host pov)
+ * 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 sceUdcdReqSendInternal(SceUdcdDeviceRequest *req, int bus);
+
+/**
+ * Queue a receive request (OUT from host pov)
*
* @param req - Pointer to a filled out ::SceUdcdDeviceRequest structure
*
@@ -567,6 +583,16 @@ int sceUdcdReqSend(SceUdcdDeviceRequest *req);
*/
int sceUdcdReqRecv(SceUdcdDeviceRequest *req);
+/**
+ * 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 sceUdcdReqRecvInternal(SceUdcdDeviceRequest *req, int bus);
+
#ifdef __cplusplus
}
#endif