device.h
ubixos/types.h
src/sys/devfs/devfs.c
src/sys/include/sys/buf.h
src/sys/include/ubixfs/ubixfs.h
src/sys/include/ufs/ffs.h
src/sys/include/ufs/ufs.h
src/sys/isa/fdc.c
src/sys/pci/hd.c
src/sys/sys/device.c
src/sys/vfs/mount.c
ubixos/types.h
sys/_types.h
src/sys/include/sys/device.h
src/sys/ufs/ffs.c
src/sys/include/ufs/ufs.h
src/sys/pci/hd.c
src/sys/include/ufs/ffs.h
src/sys/ubixfs/directory.c
src/sys/ufs/ufs.c
src/sys/ubixfs/block.c
src/sys/ubixfs/dirCache.c
src/sys/ubixfs/ubixfs.c
src/sys/init/main.c
src/sys/include/ubixfs/ubixfs.h
src/sys/sys/device.c
src/sys/kernel/syscall.c
src/sys/include/pci/hd.h
src/sys/ubixfs/thread.c
src/sys/include/ubixos/init.h
src/sys/vfs/mount.c
src/sys/devfs/devfs.c
src/sys/include/sys/buf.h
src/sys/isa/fdc.c
src/sys/include/sys/device.h
device_interface
device_node
device_resource
int int device_add (int, char, struct device_interface *) device_add int char struct device_interface * devices deviceSpinLock device_node::devInfo device_interface::init device_interface::initialized kmalloc kprintf device_node::minor device_node::next NULL device_node::prev spinLock spinUnlock device_node::type fdc_init initHardDisk
device_node * struct device_node* device_find (int major, int minor) device_find int major int minor devices deviceSpinLock device_node::devInfo device_interface::major device_node::minor device_node::next spinLock spinUnlock devfs_open devfs_read devfs_write vfs_mount
int int device_remove (struct device_node *) device_remove struct device_node * devices deviceSpinLock kfree device_node::next NULL spinLock spinUnlock

    /*****************************************************************************************
    Copyright(c)2002-2004TheUbixOSProject
    Allrightsreserved.

    Redistributionanduseinsourceandbinaryforms,withorwithoutmodification,are
    permittedprovidedthatthefollowingconditionsaremet:

    Redistributionsofsourcecodemustretaintheabovecopyrightnotice,thislistof
    conditions,thefollowingdisclaimerandthelistofauthors.Redistributionsinbinary
    formmustreproducetheabovecopyrightnotice,thislistofconditions,thefollowing
    disclaimerandthelistofauthorsinthedocumentationand/orothermaterialsprovided
    withthedistribution.NeitherthenameoftheUbixOSProjectnorthenamesofits
    contributorsmaybeusedtoendorseorpromoteproductsderivedfromthissoftware
    withoutspecificpriorwrittenpermission.

    THISSOFTWAREISPROVIDEDBYTHECOPYRIGHTHOLDERSANDCONTRIBUTORS"ASIS"ANDANY
    EXPRESSORIMPLIEDWARRANTIES,INCLUDING,BUTNOTLIMITEDTO,THEIMPLIEDWARRANTIESOF
    MERCHANTABILITYANDFITNESSFORAPARTICULARPURPOSEAREDISCLAIMED.INNOEVENTSHALL
    THECOPYRIGHTOWNERORCONTRIBUTORSBELIABLEFORANYDIRECT,INDIRECT,INCIDENTAL,
    SPECIAL,EXEMPLARY,ORCONSEQUENTIALDAMAGES(INCLUDING,BUTNOTLIMITEDTO,PROCUREMENT
    OFSUBSTITUTEGOODSORSERVICES;LOSSOFUSE,DATA,ORPROFITS;ORBUSINESSINTERRUPTION)
    HOWEVERCAUSEDANDONANYTHEORYOFLIABILITY,WHETHERINCONTRACT,STRICTLIABILITY,OR
    TORT(INCLUDINGNEGLIGENCEOROTHERWISE)ARISINGINANYWAYOUTOFTHEUSEOFTHIS
    SOFTWARE,EVENIFADVISEDOFTHEPOSSIBILITYOFSUCHDAMAGE.

    $Id: include_2sys_2device_8h.xml 88 2016-01-12 00:11:29Z reddawg $

    *****************************************************************************************/

    #ifndef_DEVICE_H
    #define_DEVICE_H

    #include<ubixos/types.h>

    structdevice_node{
    structdevice_node*prev;
    structdevice_node*next;
    structdevice_interface*devInfo;
    structdevice_resource*devRec;
    chartype;
    intminor;
    };

    structdevice_resource{
    uInt8irq;
    };

    structdevice_interface{
    uInt8initialized;
    uInt32size;
    intmajor;
    void*info;
    void(*read)(void*,void*,uInt32,uInt32);
    void(*write)(void*,void*,uInt32,uInt32);
    void(*reset)(void*);
    int(*init)(void*);
    void(*ioctl)(void*);
    void(*stop)(void*);
    void(*start)(void*);
    void(*standby)(void*);
    };

    intdevice_add(int,char,structdevice_interface*);
    structdevice_node*device_find(intmajor,intminor);
    intdevice_remove(structdevice_node*);
    #endif

    /***
    $Log: include_2sys_2device_8h.xml,v $
    Revision 1.4  2006/12/12 14:09:13  reddawg
    Changes

    Revision1.1.1.12006/06/0112:46:15reddawg
    ubix2

    Revision1.22005/10/1200:13:37reddawg
    Removed

    Revision1.1.1.12005/09/2617:23:51reddawg
    nomessage

    Revision1.142004/08/1500:33:02reddawg
    Wowtheidedriverworksagain

    Revision1.132004/08/1421:56:44reddawg
    Addedinitializedbytetothedevicesystemtomakeiteasytoaddchilddeviceswhichuseparenthardware.

    Revision1.122004/07/2110:02:09reddawg
    devfs:renamedfunctions
    devicesystem:renamedfunctions
    fdc:fixedafewpotentialbugsandcleanedupsomeunusedvariables
    strol:fixeddefinition
    endtask:madeitprintoutfreepagedebuginfo
    kmalloc:fixedahugememoryleakwehadsomeunhandleddescriptorinsertionsosomedescriptorswerelost
    ld:fixedapointerconversion
    file:cleanedupafewunusedvariables
    sched:broketaskdeletion
    kprintf:fixedogPrintfdefinition

    Revision1.112004/05/2202:40:04ionix

    fixedtypoindevice.handinitializedpreviousindevice.c:)

    Revision1.102004/05/2202:34:03ionix

    Addedproto

    Revision1.92004/05/2115:12:17reddawg
    Cleanedup

    END
    ***/