hos/kernel/fs/devices.h

28 lines
675 B
C

// devices.h
// Author: Josh Holtrop
// Date: 08/02/04
// Modified: 08/03/04
#ifndef __HOS_DEVICES_H__
#define __HOS_DEVICES_H__ __HOS_DEVICES_H__
#include "hos_defines.h"
#define MAJOR_CONSOLE 4
typedef unsigned char major_t;
typedef unsigned char minor_t;
typedef struct {
int (*block_read)(minor_t minor, u32_t blockStart, u32_t blocks, void *buffer);
int (*block_write)(minor_t minor, u32_t blockStart, u32_t blocks, void *buffer);
int (*char_read)(minor_t minor, u64_t position);
int (*char_write)(minor_t minor, u64_t position, int value);
} dev_driver_t;
void devices_init();
int devices_register_major(char type, major_t major, dev_driver_t *dev);
#endif