RTEMS
5.0.0
|
Non-volatile Disk Block Device Implementation. More...
Go to the source code of this file.
Data Structures | |
struct | rtems_nvdisk_monitor_data |
struct | rtems_nvdisk_driver_handlers |
struct | rtems_nvdisk_device_desc |
struct | rtems_nvdisk_config |
Macros | |
#define | RTEMS_NVDISK_DEVICE_BASE_NAME "/dev/nvd" |
#define | RTEMS_NVDISK_IOCTL_ERASE_DISK _IO('B', 128) |
#define | RTEMS_NVDISK_IOCTL_MONITORING _IO('B', 129) |
#define | RTEMS_NVDISK_IOCTL_INFO_LEVEL _IO('B', 130) |
#define | RTEMS_NVDISK_IOCTL_PRINT_STATUS _IO('B', 131) |
#define | RTEMS_NVDISK_KBYTES(_k) ((_k) * 1024) |
#define | RTEMS_NVDISK_CHECK_PAGES (1 << 0) |
Typedefs | |
typedef struct rtems_nvdisk_monitor_data | rtems_nvdisk_monitor_data |
typedef struct rtems_nvdisk_driver_handlers | rtems_nvdisk_driver_handlers |
typedef struct rtems_nvdisk_device_desc | rtems_nvdisk_device_desc |
typedef struct rtems_nvdisk_config | rtems_nvdisk_config |
Functions | |
rtems_device_driver | rtems_nvdisk_initialize (rtems_device_major_number major, rtems_device_minor_number minor, void *arg) |
Variables | |
const rtems_nvdisk_config | rtems_nvdisk_configuration [] |
uint32_t | rtems_nvdisk_configuration_size |
Non-volatile Disk Block Device Implementation.
#define RTEMS_NVDISK_CHECK_PAGES (1 << 0) |
Check the pages during initialisation to see which pages are valid and which are not. This could slow down initialising the disk driver.
#define RTEMS_NVDISK_DEVICE_BASE_NAME "/dev/nvd" |
The Non-volatile disk provides a simple directly mapped disk driver with checksums for each. It is designed to provied a disk that can survive a restart. Examples are EEPROM devices which have byte writeable locations, or a battery backed up RAM disk.
The low level driver provides the physical access to the hardware. The base name of the nv disks.
#define RTEMS_NVDISK_IOCTL_ERASE_DISK _IO('B', 128) |
NV disk specific ioctl request types. To use open the device and issue the ioctl call.
#define RTEMS_NVDISK_KBYTES | ( | _k | ) | ((_k) * 1024) |
Return the number of kilo-bytes.
typedef struct rtems_nvdisk_config rtems_nvdisk_config |
RTEMS Non-Volatile Disk configuration table used to initialise the driver.
typedef struct rtems_nvdisk_device_desc rtems_nvdisk_device_desc |
NV Device Descriptor holds the description of a device that is part of the NV disk.
Typically this structure is part of a table of the device which is referenced in the nvdisk configuration table. The reference is kept in the driver and used all the time to manage the nv device, therefore it must always exist.
typedef struct rtems_nvdisk_driver_handlers rtems_nvdisk_driver_handlers |
NV Low Level driver handlers.
Typically this structure is part of a table of handlers in the device which is referenced in the nvdisk configuration table. The reference is kept in the driver and used all the time to manage the nv device, therefore it must always exist.
typedef struct rtems_nvdisk_monitor_data rtems_nvdisk_monitor_data |
NV Disk Monitoring Data allows a user to obtain the current status of the disk.
rtems_device_driver rtems_nvdisk_initialize | ( | rtems_device_major_number | major, |
rtems_device_minor_number | minor, | ||
void * | arg | ||
) |
Non-volatile disk device driver initialization. Place in a table as the initialisation entry and remainder of the entries are the RTEMS block device generic handlers.
major | NV disk major device number. |
minor | Minor device number, not applicable. |
arg | Initialization argument, not applicable. |
const rtems_nvdisk_config rtems_nvdisk_configuration[] |
External reference to the configuration. Please supply. Support is present in confdefs.h for providing this variable.
uint32_t rtems_nvdisk_configuration_size |
External reference to the number of configurations. Please supply. Support is present in confdefs.h for providing this variable.