ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

ar_busno.c
Go to the documentation of this file.
00001 /*
00002  * PROJECT:         ReactOS PCI Bus Driver
00003  * LICENSE:         BSD - See COPYING.ARM in the top level directory
00004  * FILE:            drivers/bus/pci/arb/ar_busno.c
00005  * PURPOSE:         Bus Number Arbitration
00006  * PROGRAMMERS:     ReactOS Portable Systems Group
00007  */
00008 
00009 /* INCLUDES *******************************************************************/
00010 
00011 #include <pci.h>
00012 #define NDEBUG
00013 #include <debug.h>
00014 
00015 /* GLOBALS ********************************************************************/
00016 
00017 PCI_INTERFACE ArbiterInterfaceBusNumber =
00018 {
00019     &GUID_ARBITER_INTERFACE_STANDARD,
00020     sizeof(ARBITER_INTERFACE),
00021     0,
00022     0,
00023     PCI_INTERFACE_FDO,
00024     0,
00025     PciArb_BusNumber,
00026     arbusno_Constructor,
00027     arbusno_Initializer
00028 };
00029 
00030 /* FUNCTIONS ******************************************************************/
00031 
00032 NTSTATUS
00033 NTAPI
00034 arbusno_Initializer(IN PVOID Instance)
00035 {
00036     /* Not yet implemented */
00037     UNIMPLEMENTED;
00038     //while (TRUE);
00039     return STATUS_SUCCESS;
00040 }
00041 
00042 NTSTATUS
00043 NTAPI
00044 arbusno_Constructor(IN PVOID DeviceExtension,
00045                     IN PVOID PciInterface,
00046                     IN PVOID InterfaceData,
00047                     IN USHORT Version,
00048                     IN USHORT Size,
00049                     IN PINTERFACE Interface)
00050 {
00051     PPCI_FDO_EXTENSION FdoExtension = (PPCI_FDO_EXTENSION)DeviceExtension;
00052     NTSTATUS Status;
00053     PAGED_CODE();
00054 
00055     /* Make sure it's the expected interface */
00056     if ((ULONG)InterfaceData != CmResourceTypeBusNumber)
00057     {
00058         /* Arbiter support must have been initialized first */
00059         if (FdoExtension->ArbitersInitialized)
00060         {
00061             /* Not yet implemented */
00062             UNIMPLEMENTED;
00063             while (TRUE);
00064         }
00065         else
00066         {
00067             /* No arbiters for this FDO */
00068             Status = STATUS_NOT_SUPPORTED;
00069         }
00070     }
00071     else
00072     {
00073         /* Not the right interface */
00074         Status = STATUS_INVALID_PARAMETER_5;
00075     }
00076 
00077     /* Return the status */
00078     return Status;
00079 }
00080 
00081 /* EOF */

Generated on Sun May 27 2012 04:27:29 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.