2 ** Copyright 2002, Thomas Kurschel. All rights reserved.
3 ** Distributed under the terms of the NewOS License.
6 // this is not to be taken seriously - it's just a simple module
11 #define ISA_MODULE_NAME "bus_managers/isa/v1"
14 uint8 (*read_io_8
) (int mapped_io_addr
);
15 void (*write_io_8
) (int mapped_io_addr
, uint8 value
);
16 uint16 (*read_io_16
) (int mapped_io_addr
);
17 void (*write_io_16
) (int mapped_io_addr
, uint16 value
);
18 uint32 (*read_io_32
) (int mapped_io_addr
);
19 void (*write_io_32
) (int mapped_io_addr
, uint32 value
);
21 int (*allocate_iomem
) ( addr_t base
, size_t len
);
22 int (*release_iomem
) ( addr_t base
, size_t len
);
24 int (*allocate_ioports
) ( uint16 ioport_base
, size_t len
);
25 int (*release_ioports
) ( uint16 ioport_base
, size_t len
);
27 int (*get_dma_buffer
) ( void **vaddr
, void **paddr
);
28 int (*start_floppy_dma
) ( void *paddr
, size_t size
, bool write
); // XXX make this more generic