GithubHelp home page GithubHelp logo

pcie_uio's Introduction

pcie_uio

Support library for uio_pci_generic device drivers.

Usage

Setup for new repository.

  • Create your own repository.
  • Add Makefile with following recipe: (example from liva/xhci_uio)
    • TARGET_KEYWORD is used to look up a target device from lspci -v outputs.
    • TARGET_DEFAULT_DRIVER is used by make restore command to give control of a device to default kernel driver.
    • ARGS is passed to a.out when make run.
OBJS= main.o keyboard.o xhci.o usb.o hub.o
TARGET_PCI_BUS_ID=              # Leave blank unless you want to specify device manually.
TARGET_KEYWORD=XHCI             # This will be overrided by TARGET_PCI_BUS_ID if specified.
TARGET_DEFAULT_DRIVER=xhci_hcd
ARGS=

-include pcie_uio/common.mk
  • Run following command to add this repo as a submodule.
git submodule add https://github.com/PFLab-OS/pcie_uio.git

Run

  • make check to ensure the device is there.
  • make load to give a device control to uio_pci_generic.
  • After that, make run to start and test your driver.
  • make restore may be able to restore the control to TARGET_DEFAULT_DRIVER, or it may cause a kernel panic.

common.mk parameters

  • Specify TARGET_PCI_BUS_ID when TARGET_KEYWORD is not worked or ambiguous (e.g. multiple devices). example: 02:00.0

Examples

There are some examples using this library:

pcie_uio's People

Contributors

liva avatar hikalium avatar cookie-s avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.