diff options
| author | 2008-04-30 14:37:28 -0700 | |
|---|---|---|
| committer | 2008-04-30 14:37:28 -0700 | |
| commit | f9681ff59da0acca543ad5d15213c6253114f0ce (patch) | |
| tree | ea1da14c7a5fba1c6c6f1fceff1fb76c25ef8551 /juju/juju.h | |
| parent | libraw1394.sgml, raw1394.h: remove information about deprecated isochronous (diff) | |
Move the source code files in the juju directory into the src directory and
give them 'fw' names instead of 'juju.'
Diffstat (limited to 'juju/juju.h')
| -rw-r--r-- | juju/juju.h | 257 |
1 files changed, 0 insertions, 257 deletions
diff --git a/juju/juju.h b/juju/juju.h deleted file mode 100644 index fc0eba1..0000000 --- a/juju/juju.h +++ /dev/null @@ -1,257 +0,0 @@ -/* -*- c-basic-offset: 8 -*- - * - * juju.h -- Internal header file for raw1394 emulation - * - * Copyright (C) 2007 Kristian Hoegsberg <krh@bitplanet.net> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. - */ - -#ifndef __juju_h -#define __juju_h - -#include <stdlib.h> -#include <byteswap.h> -#include <linux/firewire-cdev.h> -#include "../src/raw1394.h" -#include "../src/csr.h" -#include "config.h" - -#define ptr_to_u64(p) ((__u64)(unsigned long)(p)) -#define u64_to_ptr(p) ((void *)(unsigned long)(p)) - -static inline __u32 -be32_to_cpu(__u32 q) -{ - union { char c[4]; __u32 q; } u = { { 1, 0, 0, 0 } }; - - return u.q == 1 ? bswap_32(q) : q; -} - -static inline __u32 -cpu_to_be32(__u32 q) -{ - return be32_to_cpu(q); -} - -#define ARRAY_LENGTH(a) (sizeof (a) / sizeof (a)[0]) - -#define BUFFER_SIZE (16 * 1024) - -#define MAX_PORTS 16 - -struct fw_handle; - -struct epoll_closure { - int (*func)(raw1394handle_t handle, - struct epoll_closure *closure, __uint32_t events); -}; - -struct port { - char device_file[32]; - char *name; - int node_count; - int card; -}; - -#define MAX_DEVICES 63 -#define FILENAME_SIZE 16 - -struct device { - struct epoll_closure closure; - int fd; - int node_id; - int generation; - char filename[FILENAME_SIZE]; -}; - -struct request_closure { - void *data; - size_t length; - unsigned long tag; - struct raw1394_reqhandle reqhandle; -}; - -struct allocation; - -struct fw_handle { - struct port ports[MAX_PORTS]; - int port_count; - int err; - int generation; - void *userdata; - int notify_bus_reset; - - bus_reset_handler_t bus_reset_handler; - tag_handler_t tag_handler; - arm_tag_handler_t arm_tag_handler; - fcp_handler_t fcp_handler; - __u32 fcp_allocation_handle; - struct allocation *allocations; - - int epoll_fd; - int inotify_fd; - int inotify_watch; - int pipe_fds[2]; - - struct epoll_closure pipe_closure; - struct epoll_closure inotify_closure; - - struct device devices[MAX_DEVICES]; - int nodes[MAX_DEVICES]; - int local_fd; - char local_filename[FILENAME_SIZE]; - - struct fw_cdev_event_bus_reset reset; - - struct { - struct epoll_closure closure; - int fd; - int type; - int irq_interval; - int packet_phase; - int packet_count; - int packet_index; - int buf_packets; - int max_packet_size; - int prebuffer; - int start_on_cycle; - enum raw1394_iso_dma_recv_mode recv_mode; - raw1394_iso_xmit_handler_t xmit_handler; - raw1394_iso_recv_handler_t recv_handler; - unsigned char *buffer, *buffer_end, *head; - unsigned char *tail, *first_payload; - - struct fw_cdev_iso_packet *packets; - } iso; - - char buffer[BUFFER_SIZE]; -}; -typedef struct fw_handle *fw_handle_t; - -int fw_loop_iterate(raw1394handle_t handle); -fw_handle_t fw_new_handle(void); -void fw_destroy_handle(fw_handle_t handle); -fw_handle_t fw_new_handle_on_port(int port); -int fw_busreset_notify (fw_handle_t handle, int off_on_switch); -int fw_get_fd(fw_handle_t handle); -nodeid_t fw_get_local_id(fw_handle_t handle); -nodeid_t fw_get_irm_id(fw_handle_t handle); -int fw_get_nodecount(fw_handle_t handle); -int fw_get_port_info(fw_handle_t handle, struct raw1394_portinfo *pinf, - int maxports); -int fw_set_port(fw_handle_t handle, int port); -int fw_reset_bus_new(fw_handle_t handle, int type); -int fw_arm_register(fw_handle_t handle, nodeaddr_t start, - size_t length, byte_t *initial_value, - octlet_t arm_tag, arm_options_t access_rights, - arm_options_t notification_options, - arm_options_t client_transactions); -int fw_arm_unregister(fw_handle_t handle, nodeaddr_t start); -int fw_arm_set_buf(fw_handle_t handle, nodeaddr_t start, - size_t length, void *buf); -int fw_arm_get_buf(fw_handle_t handle, nodeaddr_t start, - size_t length, void *buf); -int fw_echo_request(fw_handle_t handle, quadlet_t data); -int fw_wake_up(fw_handle_t handle); -int fw_phy_packet_write (fw_handle_t handle, quadlet_t data); -int fw_start_phy_packet_write(fw_handle_t handle, - quadlet_t data, unsigned long tag); -int fw_start_read(fw_handle_t handle, nodeid_t node, nodeaddr_t addr, - size_t length, quadlet_t *buffer, unsigned long tag); -int fw_start_write(fw_handle_t handle, nodeid_t node, nodeaddr_t addr, - size_t length, quadlet_t *data, unsigned long tag); -int fw_start_lock(fw_handle_t handle, nodeid_t node, nodeaddr_t addr, - unsigned int extcode, quadlet_t data, quadlet_t arg, - quadlet_t *result, unsigned long tag); -int fw_start_lock64(fw_handle_t handle, nodeid_t node, nodeaddr_t addr, - unsigned int extcode, octlet_t data, octlet_t arg, - octlet_t *result, unsigned long tag); -int fw_start_async_stream(fw_handle_t handle, unsigned int channel, - unsigned int tag, unsigned int sy, - unsigned int speed, size_t length, quadlet_t *data, - unsigned long rawtag); -int fw_start_async_send(fw_handle_t handle, - size_t length, size_t header_length, - unsigned int expect_response, - quadlet_t *data, unsigned long rawtag); -int fw_read(raw1394handle_t handle, nodeid_t node, nodeaddr_t addr, - size_t length, quadlet_t *buffer); -int fw_write(raw1394handle_t handle, nodeid_t node, nodeaddr_t addr, - size_t length, quadlet_t *data); -int fw_lock(raw1394handle_t handle, nodeid_t node, nodeaddr_t addr, - unsigned int extcode, quadlet_t data, quadlet_t arg, - quadlet_t *result); -int fw_lock64(raw1394handle_t handle, nodeid_t node, nodeaddr_t addr, - unsigned int extcode, octlet_t data, octlet_t arg, - octlet_t *result); -int fw_async_stream(fw_handle_t handle, unsigned int channel, - unsigned int tag, unsigned int sy, unsigned int speed, - size_t length, quadlet_t *data); -int fw_async_send(fw_handle_t handle, - size_t length, size_t header_length, - unsigned int expect_response, - quadlet_t *data); -int fw_start_fcp_listen(fw_handle_t handle); -int fw_stop_fcp_listen(fw_handle_t handle); -int fw_update_config_rom(fw_handle_t handle, const quadlet_t *new_rom, - size_t size, unsigned char rom_version); -int fw_get_config_rom(fw_handle_t handle, quadlet_t *buffer, - size_t buffersize, size_t *rom_size, - unsigned char *rom_version); -int fw_bandwidth_modify (raw1394handle_t handle, - unsigned int bandwidth, - enum raw1394_modify_mode mode); -int fw_channel_modify (raw1394handle_t handle, - unsigned int channel, - enum raw1394_modify_mode mode); - -int fw_iso_xmit_start(raw1394handle_t handle, int start_on_cycle, - int prebuffer_packets); -int fw_iso_recv_start(fw_handle_t handle, int start_on_cycle, - int tag_mask, int sync); -int fw_iso_xmit_write(raw1394handle_t handle, unsigned char *data, - unsigned int len, unsigned char tag, - unsigned char sy); -int fw_iso_xmit_sync(raw1394handle_t handle); -int fw_iso_recv_flush(fw_handle_t handle); -int fw_iso_xmit_init(fw_handle_t handle, - raw1394_iso_xmit_handler_t handler, - unsigned int buf_packets, - unsigned int max_packet_size, - unsigned char channel, - enum raw1394_iso_speed speed, - int irq_interval); -int fw_iso_recv_init(fw_handle_t handle, - raw1394_iso_recv_handler_t handler, - unsigned int buf_packets, - unsigned int max_packet_size, - unsigned char channel, - enum raw1394_iso_dma_recv_mode mode, - int irq_interval); -int fw_iso_multichannel_recv_init(fw_handle_t handle, - raw1394_iso_recv_handler_t handler, - unsigned int buf_packets, - unsigned int max_packet_size, - int irq_interval); -int fw_iso_recv_listen_channel(fw_handle_t handle, - unsigned char channel); -int fw_iso_recv_unlisten_channel(fw_handle_t handle, - unsigned char channel); -int fw_iso_recv_set_channel_mask(fw_handle_t handle, u_int64_t mask); -void fw_iso_stop(fw_handle_t handle); -void fw_iso_shutdown(fw_handle_t handle); - -#endif |
