iPXE
|
#include <stdint.h>
#include <string.h>
#include <stdlib.h>
#include <stdio.h>
#include <errno.h>
#include <ipxe/io.h>
#include <ipxe/mca.h>
Go to the source code of this file.
Functions | |
FILE_LICENCE (BSD2) | |
static void | mcabus_remove (struct root_device *rootdev) |
Remove MCA root bus. More... | |
static int | mca_probe (struct mca_device *mca) |
Probe an MCA device. More... | |
static void | mca_remove (struct mca_device *mca) |
Remove an MCA device. More... | |
static int | mcabus_probe (struct root_device *rootdev) |
Probe MCA root bus. More... | |
Variables | |
static struct root_driver | mca_root_driver |
MCA bus root device driver. More... | |
struct root_device mca_root_device | __root_device |
MCA bus root device. More... | |
FILE_LICENCE | ( | BSD2 | ) |
|
static |
Remove MCA root bus.
rootdev | MCA bus root device |
Definition at line 155 of file mca.c.
References device::children, mca_device::dev, root_device::dev, free, list_del, list_for_each_entry_safe, mca_remove(), device::siblings, and tmp.
Referenced by mcabus_probe().
|
static |
Probe an MCA device.
mca | MCA device |
rc | Return status code |
Searches for a driver for the MCA device. If a driver is found, its probe() routine is called.
Definition at line 29 of file mca.c.
References DBG, mca_device::dev, mca_device::driver, device::driver_name, ENOTTY, for_each_table_entry, id, mca_driver::id_count, mca_driver::ids, MCA_DRIVERS, MCA_ID, mca_device::pos, mca_driver::probe, rc, and mca_device::slot.
Referenced by mcabus_probe().
|
static |
Remove an MCA device.
mca | MCA device |
Definition at line 66 of file mca.c.
References DBG, mca_device::driver, mca_driver::remove, and mca_device::slot.
Referenced by mcabus_remove().
|
static |
Probe MCA root bus.
rootdev | MCA bus root device |
Scans the MCA bus for devices and registers all devices it can find.
Definition at line 79 of file mca.c.
References device_description::bus_type, BUS_TYPE_MCA, device::children, device::desc, mca_device::dev, root_device::dev, device_description::device, ENOMEM, free, GENERIC_MCA_VENDOR, inb_p, INIT_LIST_HEAD, list_add, list_del, malloc(), MCA_ADAPTER_SETUP_REG, MCA_ID, MCA_MAX_SLOT_NR, MCA_MOTHERBOARD_SETUP_REG, MCA_POS_REG, mca_probe(), mcabus_remove(), memset(), device::name, NULL, outb_p, device::parent, mca_device::pos, rc, device::siblings, slot, mca_device::slot, snprintf(), and device_description::vendor.
|
static |
MCA bus root device driver.
struct root_device mca_root_device __root_device |
MCA bus root device.