|
| CDev (const char *name, const char *devname) |
| Constructor. More...
|
|
virtual int | init () |
|
virtual int | ioctl (file_t *filep, int cmd, unsigned long arg) |
| Perform an ioctl operation on the device. More...
|
|
virtual | ~Device ()=default |
| Destructor. More...
|
|
virtual int | read (unsigned address, void *data, unsigned count) |
| Read directly from the device. More...
|
|
virtual int | write (unsigned address, void *data, unsigned count) |
| Write directly to the device. More...
|
|
virtual int | ioctl (unsigned operation, unsigned &arg) |
| Perform a device-specific operation. More...
|
|
uint8_t | get_device_bus () const |
| Return the bus ID the device is connected to. More...
|
|
uint32_t | get_device_id () const |
|
DeviceBusType | get_device_bus_type () const |
| Return the bus type the device is connected to. More...
|
|
uint8_t | get_device_address () const |
| Return the bus address of the device. More...
|
|
void | set_device_address (int address) |
|
void | set_device_type (uint8_t devtype) |
| Set the device type. More...
|
|
virtual bool | external () |
|
| CDev (const char *devname) |
| Constructor. More...
|
|
virtual int | open (file_t *filep) |
| Handle an open of the device. More...
|
|
virtual int | close (file_t *filep) |
| Handle a close of the device. More...
|
|
virtual ssize_t | read (file_t *filep, char *buffer, size_t buflen) |
| Perform a read from the device. More...
|
|
virtual ssize_t | write (file_t *filep, const char *buffer, size_t buflen) |
| Perform a write to the device. More...
|
|
virtual off_t | seek (file_t *filep, off_t offset, int whence) |
| Perform a logical seek operation on the device. More...
|
|
virtual int | poll (file_t *filep, px4_pollfd_struct_t *fds, bool setup) |
| Perform a poll setup/teardown operation. More...
|
|
const char * | get_devname () const |
| Get the device name. More...
|
|
|
enum | DeviceBusType { DeviceBusType_UNKNOWN = 0,
DeviceBusType_I2C = 1,
DeviceBusType_SPI = 2,
DeviceBusType_UAVCAN = 3
} |
| Device bus types for DEVID.
|
|
static const char * | get_device_bus_string (DeviceBusType bus) |
|
static int | device_id_print_buffer (char *buffer, int length, uint32_t id) |
| Print decoded device id string to a buffer. More...
|
|
| Device (const char *name) |
|
| Device (DeviceBusType bus_type, uint8_t bus, uint8_t address, uint8_t devtype=0) |
|
| Device (const Device &)=delete |
|
Device & | operator= (const Device &)=delete |
|
| Device (Device &&)=delete |
|
Device & | operator= (Device &&)=delete |
|
virtual pollevent_t | poll_state (file_t *filep) |
| Check the current state of the device for poll events from the perspective of the file. More...
|
|
virtual void | poll_notify (pollevent_t events) |
| Report new poll events. More...
|
|
virtual void | poll_notify_one (px4_pollfd_struct_t *fds, pollevent_t events) |
| Internal implementation of poll_notify. More...
|
|
virtual int | open_first (file_t *filep) |
| Notification of the first open. More...
|
|
virtual int | close_last (file_t *filep) |
| Notification of the last close. More...
|
|
virtual int | register_class_devname (const char *class_devname) |
| Register a class device name, automatically adding device class instance suffix if need be. More...
|
|
virtual int | unregister_class_devname (const char *class_devname, unsigned class_instance) |
| Register a class device name, automatically adding device class instance suffix if need be. More...
|
|
void | lock () |
| Take the driver lock. More...
|
|
void | unlock () |
| Release the driver lock.
|
|
static const px4_file_operations_t | fops = {} |
| Pointer to the default cdev file operations table; useful for registering clone devices etc.
|
|
Abstract class for any character device.