AquilaOS documentation
How it works, and its code
Loading...
Searching...
No Matches
dev Struct Reference

A device driver: its operations, any of which may be NULL. More...

#include <dev.h>

Data Fields

char * name
int(*) probe (void)
ssize_t(*) read (struct devid *dev, off_t offset, struct iobuf *io)
ssize_t(*) write (struct devid *dev, off_t offset, struct iobuf *io)
ssize_t(*) bread (struct devid *dev, off_t lba, size_t count, void *buf)
ssize_t(*) bwrite (struct devid *dev, off_t lba, size_t count, void *buf)
int(*) ioctl (struct devid *dev, int request, void *argp)
int(*) map (struct devid *dev, struct vm_space *vm_space, struct vm_entry *vm_entry)
struct fops fops
struct dev *(*) mux (struct devid *dev)
size_t(*) getbs (struct devid *dev)
int(*) sync (void)

Detailed Description

A device driver: its operations, any of which may be NULL.

Definition at line 28 of file dev.h.

Field Documentation

◆ bread

ssize_t(*) dev::bread(struct devid *dev, off_t lba, size_t count, void *buf)

Definition at line 39 of file dev.h.

Referenced by kdev_bread(), kdev_bwrite(), and kdev_read().

◆ bwrite

ssize_t(*) dev::bwrite(struct devid *dev, off_t lba, size_t count, void *buf)

Definition at line 40 of file dev.h.

Referenced by kdev_bwrite(), and kdev_write().

◆ fops

◆ getbs

size_t(*) dev::getbs(struct devid *dev)

Definition at line 48 of file dev.h.

Referenced by kdev_bread(), and kdev_bwrite().

◆ ioctl

int(*) dev::ioctl(struct devid *dev, int request, void *argp)

Definition at line 42 of file dev.h.

Referenced by kdev_ioctl().

◆ map

int(*) dev::map(struct devid *dev, struct vm_space *vm_space, struct vm_entry *vm_entry)

Definition at line 43 of file dev.h.

Referenced by kdev_map().

◆ mux

struct dev *(*) dev::mux(struct devid *dev)

Definition at line 45 of file dev.h.

Referenced by kdev_get().

◆ name

char* dev::name

Definition at line 29 of file dev.h.

Referenced by kdev_blkdev_register(), kdev_chrdev_register(), and procfs_devices().

◆ probe

int(*) dev::probe(void)

Definition at line 31 of file dev.h.

◆ read

ssize_t(*) dev::read(struct devid *dev, off_t offset, struct iobuf *io)

Definition at line 34 of file dev.h.

Referenced by kdev_read().

◆ sync

int(*) dev::sync(void)

Definition at line 49 of file dev.h.

Referenced by kdev_sync().

◆ write

ssize_t(*) dev::write(struct devid *dev, off_t offset, struct iobuf *io)

Definition at line 35 of file dev.h.

Referenced by kdev_blk_io(), and kdev_write().


The documentation for this struct was generated from the following file:
  • kernel/include/dev/dev.h