#include <ipc/services.h>
#include <ipc/irc.h>
#include <ipc/ns.h>
#include <sysinfo.h>
#include <as.h>
#include <ddi.h>
#include <align.h>
#include <bool.h>
#include <errno.h>
#include <async.h>
#include <stdio.h>
#include <ipc/devmap.h>
Go to the source code of this file.
Defines | |
#define | INO_MASK 0x1f |
#define | NAME "obio" |
#define | OBIO_CIR(ino) (OBIO_CIR_BASE + ((ino) & INO_MASK)) |
#define | OBIO_CIR_BASE 0x300 |
#define | OBIO_IMR(ino) (OBIO_IMR_BASE + ((ino) & INO_MASK)) |
#define | OBIO_IMR_BASE 0x200 |
#define | OBIO_SIZE 0x1898 |
Functions | |
int | main (int argc, char **argv) |
static void | obio_connection (ipc_callid_t iid, ipc_call_t *icall) |
Handle one connection to obio. | |
static bool | obio_init (void) |
Initialize the OBIO driver. | |
Variables | |
static void * | base_phys |
static volatile uint64_t * | base_virt |
OBIO is a short for on-board I/O. On UltraSPARC IIi and systems with U2P, there is a piece of the root PCI bus controller address space, which contains interrupt mapping and clear registers for all on-board devices. Although UltraSPARC IIi and U2P are different in general, these registers can be found at the same addresses.
Definition in file obio.c.