diff options
| author | 2022-09-20 00:53:10 -0400 | |
|---|---|---|
| committer | 2022-09-20 00:58:16 -0400 | |
| commit | 48b2af0507fa99bad3b771325b232ad89e60de0a (patch) | |
| tree | d87f8679fc40e6448430e9a4c913821bc9aa9f39 /src/eventloop.c | |
| parent | configure.ac, Changelog, NEWS: update to version 2.1.2 (diff) | |
Implement virtual memory for ARM manager
Instead of allocating memory for address range mappings (ARM) and handling all
reads and writes to said memory, the new ARM manager calls a function for each
received request with the data, transaction code, and allocation information.
The ARM tag manager now must handle validation of memory accesses and
retreive/write the data. This allows implementations to use network resources
or generated data as memory.
The ARM manager no longer automatically sends response packets. It is the
responsibility of the user to send response packets using
raw1394_send_rw_response().
The interface is not implemented for raw1394 and will probably never be
implemented for raw1394. It is for firewire-cdev (modern Linux) only.
Diffstat (limited to 'src/eventloop.c')
| -rw-r--r-- | src/eventloop.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/eventloop.c b/src/eventloop.c index 81bb881..d6d3bd2 100644 --- a/src/eventloop.c +++ b/src/eventloop.c @@ -65,12 +65,15 @@ int ieee1394_loop_iterate(struct raw1394_handle *handle) break; case RAW1394_REQ_ARM: + /* FIXME: implement new ARM for raw1394 */ +#if 0 if (ihandle->arm_tag_handler) { retval = ihandle->arm_tag_handler(handle, req.tag, (req.misc & (0xFF)), ((req.misc >> 16) & (0xFFFF)), int2ptr(req.recvb)); - } + } +#endif break; case RAW1394_REQ_ECHO: |
