Lines Matching +full:usb +full:- +full:attach
1 /* SPDX-License-Identifier: GPL-2.0 */
2 /* dvb-usb.h is part of the DVB USB library.
4 * Copyright (C) 2004-6 Patrick Boettcher (patrick.boettcher@posteo.de)
5 * see dvb-usb-init.c for copyright information.
7 * the headerfile, all dvb-usb-drivers have to include.
9 * TODO: clean-up the structures for unused fields and update the comments
15 #include <linux/usb.h>
18 #include <media/rc-core.h>
25 #include "dvb-pll.h"
27 #include <media/dvb-usb-ids.h>
49 /* generic log methods - taken from usb.h */
51 #define DVB_USB_LOG_PREFIX "dvb-usb (please define a log prefix)"
62 * struct dvb_usb_device_description - name and its according USB IDs
63 * @name: real name of the box, regardless which DVB USB device class is in use
65 * pre-firmware state
67 * post-firmware state
69 * Each DVB USB device class can have one or more actual devices, this struct
82 return (key->scancode >> 8) & 0xff; in rc5_custom()
87 return key->scancode & 0xff; in rc5_data()
92 return key->scancode & 0xffff; in rc5_scan()
100 * Properties of USB streaming - TODO this structure should be somewhere else
101 * describes the kind of USB transfer used for data-streaming.
124 * struct dvb_usb_adapter_fe_properties - properties of a dvb-usb-adapter.
125 * A DVB-USB-Adapter is basically a dvb_adapter which is present on a USB-device.
126 * @caps: capabilities of the DVB USB device.
128 * PID-filter.
129 * @streaming_ctrl: called to start and stop the MPEG2-TS streaming of the
131 * This callback will be called without data URBs being active - data URBs
136 * @frontend_attach: called to attach the possible frontends (fill fe-field
138 * @tuner_attach: called to attach the correct tuner and to fill pll_addr,
140 * @stream: configuration of the USB streaming
175 * struct dvb_rc_legacy - old properties of remote controller
176 * @rc_map_table: a hard-wired array of struct rc_map_table (NULL to disable
194 * struct dvb_rc - properties of remote controller, using rc-core
220 * enum dvb_usb_mode - Specifies if it is using a legacy driver or a new one
221 * based on rc-core
222 * This is initialized/used only inside dvb-usb-remote.c.
226 * @DVB_RC_CORE: rc-core driver
234 * struct dvb_usb_device_properties - properties of a dvb-usb-device
236 * @usb_ctrl: which USB device-side controller is in use. Needed for firmware
257 * is not distinguishable by the USB IDs.
263 * @generic_bulk_ctrl_endpoint: most of the DVB USB devices have a generic
265 * is non-zero, one can use dvb_usb_generic_rw and dvb_usb_generic_write-
268 * @generic_bulk_ctrl_endpoint_response: some DVB USB devices use a separate
270 * the generic_bulk_ctrl_endpoint. When this is non-zero, this will be used
271 * instead of the generic_bulk_ctrl_endpoint when reading usb responses in
322 * struct usb_data_stream - generic object of an USB stream
323 * @udev: the USB device
361 * struct dvb_usb_fe_adapter - a DVB adapter on a USB device
363 * @fe_init: rerouted frontend-init (wakeup) function.
364 * @fe_sleep: rerouted frontend-sleep function.
365 * @stream: the usb data stream.
386 * struct dvb_usb_adapter - a DVB adapter on a USB device
387 * @dev: DVB USB device pointer
392 * @feedcount: number of requested feeds (used for streaming-activation)
430 * struct dvb_usb_device - object of a DVB USB device
440 * @usb_mutex: mutex of USB control messages (reading needs two messages).
444 * @i2c_mutex: mutex for i2c-transfers
451 * @rc_dev: rc device for the remote control (rc-core mode)
458 * @priv: private data of the actual driver (allocate by dvb-usb, size defined