Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/drv/pciintel/pci.c

    rfb78ae72 rffa2c8ef  
    4949#include <ipc/devman.h>
    5050#include <ipc/dev_iface.h>
    51 #include <ipc/irc.h>
    52 #include <ipc/ns.h>
    53 #include <ipc/services.h>
    54 #include <sysinfo.h>
    5551#include <ops/hw_res.h>
    5652#include <device/hw_res.h>
     
    7672static bool pciintel_enable_child_interrupt(device_t *dev)
    7773{
    78         /* This is an old ugly way, copied from ne2000 driver */
    79         assert(dev);
    80         pci_dev_data_t *dev_data = (pci_dev_data_t *) dev->driver_data;
    81 
    82   sysarg_t apic;
    83   sysarg_t i8259;
    84         int irc_phone = -1;
    85         int irc_service = 0;
    86 
    87   if ((sysinfo_get_value("apic", &apic) == EOK) && (apic)) {
    88     irc_service = SERVICE_APIC;
    89         } else if ((sysinfo_get_value("i8259", &i8259) == EOK) && (i8259)) {
    90     irc_service = SERVICE_I8259;
    91         }
    92 
    93   if (irc_service) {
    94     while (irc_phone < 0)
    95       irc_phone = service_connect_blocking(irc_service, 0, 0);
    96   } else {
    97                 return false;
    98         }
    99 
    100         size_t i;
    101   for (i = 0; i < dev_data->hw_resources.count; i++) {
    102                 if (dev_data->hw_resources.resources[i].type == INTERRUPT) {
    103                         int irq = dev_data->hw_resources.resources[i].res.interrupt.irq;
    104                         async_msg_1(irc_phone, IRC_ENABLE_INTERRUPT, irq);
    105                 }
    106         }
    107 
    108         async_hangup(irc_phone);
    109         return true;
     74        /* TODO */
     75       
     76        return false;
    11077}
    11178
Note: See TracChangeset for help on using the changeset viewer.