STRUCT DVB_USB_DEVICE_PROPERTIES(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– NAME πŸ’–

struct dvb_usb_device_properties β€” properties of a dvb-usb-device. Bestie, welcome to the Kernel API Manual page for struct dvb_u...e_properties(9) β€” yes, the header truncates it like that, and honestly? Iconic.


✨ SYNOPSIS ✨

okay so here is the whole struct, no cap:

       struct dvb_usb_device_properties {
         #define MAX_NO_OF_ADAPTER_PER_DEVICE 2;
         #define DVB_USB_IS_AN_I2C_ADAPTER            0x01;
           int caps;
         #define DEVICE_SPECIFIC 0;
         #define CYPRESS_AN2135  1;
         #define CYPRESS_AN2235  2;
         #define CYPRESS_FX2     3;
           int usb_ctrl;
           int (*download_firmware) (struct usb_device *, const struct firmware
       *);
           const char *firmware;
           int no_reconnect;
           int size_of_priv;
           int (*priv_init)(struct dvb_usb_device *);
           void (*priv_destroy)(struct dvb_usb_device *);
           int num_adapters;
           struct dvb_usb_adapter_properties
       adapter[MAX_NO_OF_ADAPTER_PER_DEVICE];
           int (*power_ctrl)       (struct dvb_usb_device *, int);
           int (*read_mac_address) (struct dvb_usb_device *, u8 []);
           int (*identify_state)(struct usb_device *udev, const struct
       dvb_usb_device_properties *props, const struct
       dvb_usb_device_description **desc, int *cold);
           struct {
             enum dvb_usb_mode mode;
             struct dvb_rc_legacy legacy;
             struct dvb_rc core;
           } rc;
           const struct i2c_algorithm *i2c_algo;
           int generic_bulk_ctrl_endpoint;
           int generic_bulk_ctrl_endpoint_response;
           int num_device_descs;
           struct dvb_usb_device_description devices[12];
        };

πŸŽ€ Members πŸŽ€

  • caps β€” capabilities. cute little capability field, slay.
  • usb_ctrl β€” which USB device-side controller is in use. It’s needed for firmware download, periodt.
  • download_firmware β€” called to download the firmware when the usb_ctrl is DEVICE_SPECIFIC.
  • firmware β€” name of the firmware file.
  • no_reconnect β€” device doesn't do a reconnect after downloading the firmware, so do the warm initialization right after it.
  • size_of_priv β€” how many bytes shall be allocated for the private field of struct dvb_usb_device.
  • priv_init β€” optional callback to initialize the variable that private field of struct dvb_usb_device has pointer to just after it had been allocated and zeroed.
  • priv_destroy β€” just like priv_init, only called before deallocating the memory pointed by private field of struct dvb_usb_device.
  • num_adapters β€” the number of adapters in adapters.
  • adapter β€” the adapters.
  • power_ctrl β€” called to enable/disable power of the device.
  • read_mac_address β€” called to read the MAC address of the device.
  • identify_state β€” called to determine the state (cold or warm), when it is not distinguishable by the USB IDs.
  • rc β€” remote controller properties.
  • i2c_algo β€” i2c_algorithm if the device has I2CoverUSB.
  • generic_bulk_ctrl_endpoint β€” most of the DVB USB devices have a generic endpoint which received control messages with bulk transfers. When this is non-zero, one can use dvb_usb_generic_rw and dvb_usb_generic_write- helper functions.
  • generic_bulk_ctrl_endpoint_response β€” some DVB USB devices use a separate endpoint for responses to control messages sent with bulk transfers via the generic_bulk_ctrl_endpoint. When this is non-zero, this will be used instead of the generic_bulk_ctrl_endpoint when reading usb responses in the dvb_usb_generic_rw helper function.
  • num_device_descs β€” number of struct dvb_usb_device_description in devices.
  • devices β€” array of struct dvb_usb_device_description compatibles with these properties.

πŸ‘‘ SEE ALSO πŸ‘‘

Kernel file ./drivers/media/usb/dvb-usb/dvb-usb.h is the source-file main character. The SEE ALSO crew, in order:

  • struct dvb_usb_device_description(9)
  • struct dvb_usb_adapter_fe_properties(9)
  • struct dvb_rc_legacy(9)
  • struct dvb_rc(9)
  • enum dvb_usb_mode(9)
  • struct usb_data_stream(9)
  • struct dvb_usb_fe_adapter(9)
  • struct dvb_usb_adapter(9)
  • struct dvb_usb_device(9)

Catch u later, bestie 🫢 β€” this page’s source is ./drivers/media/usb/dvb-usb, its date stamp is October 2026, and the footer title is struct dvb_u...e_properties(9). πŸ’…βœ¨

πŸ“¦ where this page comes from