pci

package
v0.2.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 21, 2021 License: MIT Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Init

func Init()

func Register

func Register(driver Driver)

Types

type Address

type Address struct {
	Bus, Device, Func uint8
}

func (Address) EnableBusMaster

func (a Address) EnableBusMaster()

func (Address) ReadBAR

func (a Address) ReadBAR(bar uint8) (addr, len uint32, prefetch, isMem bool)

func (Address) ReadCapOffset

func (a Address) ReadCapOffset() uint8

func (Address) ReadDeviceID

func (a Address) ReadDeviceID() uint16

func (Address) ReadIRQLine

func (a Address) ReadIRQLine() uint8

func (Address) ReadPCIClass

func (a Address) ReadPCIClass() uint16

func (Address) ReadPCIRegister

func (a Address) ReadPCIRegister(reg uint8) uint32

func (Address) ReadStatus

func (a Address) ReadStatus() uint16

func (Address) ReadVendorID

func (a Address) ReadVendorID() uint16

func (Address) WritePCIRegister

func (a Address) WritePCIRegister(reg uint8, val uint32)

type Device

type Device struct {
	Ident Identity
	Addr  Address

	Class, SubClass uint8

	IRQLine uint8
	IRQNO   uint8
}

func Scan

func Scan() []*Device

type Driver

type Driver interface {
	Name() string
	Init(dev *Device) error
	Idents() []Identity
	Intr()
}

type Identity

type Identity struct {
	Vendor uint16
	Device uint16
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL