mirror of
https://github.com/RGBCube/serenity
synced 2025-07-25 19:37:35 +00:00
Kernel/USB: Add UKBuffer variants of certain BulkPipe/Transfer functions
These will be useful for directly accessing the source/destination buffers, without going through a third buffer first.
This commit is contained in:
parent
8335803045
commit
4b327bdc95
4 changed files with 43 additions and 0 deletions
|
@ -94,6 +94,7 @@ public:
|
|||
static ErrorOr<NonnullOwnPtr<BulkInPipe>> create(USBController const& controller, u8 endpoint_address, u16 max_packet_size, i8 device_address, size_t buffer_size = PAGE_SIZE);
|
||||
|
||||
ErrorOr<size_t> submit_bulk_in_transfer(size_t length, void* data);
|
||||
ErrorOr<size_t> submit_bulk_in_transfer(size_t length, UserOrKernelBuffer data);
|
||||
|
||||
private:
|
||||
BulkInPipe(USBController const& controller, u8 endpoint_address, u16 max_packet_size, i8 device_address, NonnullOwnPtr<Memory::Region> dma_buffer);
|
||||
|
@ -104,6 +105,7 @@ public:
|
|||
static ErrorOr<NonnullOwnPtr<BulkOutPipe>> create(USBController const& controller, u8 endpoint_address, u16 max_packet_size, i8 device_address, size_t buffer_size = PAGE_SIZE);
|
||||
|
||||
ErrorOr<size_t> submit_bulk_out_transfer(size_t length, void* data);
|
||||
ErrorOr<size_t> submit_bulk_out_transfer(size_t length, UserOrKernelBuffer data);
|
||||
|
||||
private:
|
||||
BulkOutPipe(USBController const& controller, u8 endpoint_address, u16 max_packet_size, i8 device_address, NonnullOwnPtr<Memory::Region> dma_buffer);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue