Annotation of embedaddon/pciutils/lib/i386-io-beos.h, revision 1.1.1.1

1.1       misho       1: /*
                      2:  *     The PCI Library -- Access to i386 I/O ports on BeOS
                      3:  *
                      4:  *     Copyright (c) 2009 Francois Revol <revol@free.fr>
                      5:  *
                      6:  *     Can be freely distributed and used under the terms of the GNU GPL.
                      7:  */
                      8: 
                      9: /* those are private syscalls */
                     10: extern int read_isa_io(int pci_bus, void *addr, int size);
                     11: extern int write_isa_io(int pci_bus, void *addr, int size, u32 value);
                     12: 
                     13: static int
                     14: intel_setup_io(struct pci_access *a UNUSED)
                     15: {
                     16:   return 1;
                     17: }
                     18: 
                     19: static inline int
                     20: intel_cleanup_io(struct pci_access *a UNUSED)
                     21: {
                     22:   return 1;
                     23: }
                     24: 
                     25: static inline u8
                     26: inb (u16 port)
                     27: {
                     28:   return (u8)read_isa_io(0, (void *)(u32)port, sizeof(u8));
                     29: }
                     30: 
                     31: static inline u16
                     32: inw (u16 port)
                     33: {
                     34:   return (u16)read_isa_io(0, (void *)(u32)port, sizeof(u16));
                     35: }
                     36: 
                     37: static inline u32
                     38: inl (u16 port)
                     39: {
                     40:   return (u32)read_isa_io(0, (void *)(u32)port, sizeof(u32));
                     41: }
                     42: 
                     43: static inline void
                     44: outb (u8 value, u16 port)
                     45: {
                     46:   write_isa_io(0, (void *)(u32)port, sizeof(value), value);
                     47: }
                     48: 
                     49: static inline void
                     50: outw (u16 value, u16 port)
                     51: {
                     52:   write_isa_io(0, (void *)(u32)port, sizeof(value), value);
                     53: }
                     54: 
                     55: static inline void
                     56: outl (u32 value, u16 port)
                     57: {
                     58:   write_isa_io(0, (void *)(u32)port, sizeof(value), value);
                     59: }

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>