Scroll to navigation

SUPERHYWAY_ADD_DEVIC(9) Busses SUPERHYWAY_ADD_DEVIC(9)

NAME

superhyway_add_device - Add a SuperHyway module

SYNOPSIS

int superhyway_add_device(unsigned long base, struct superhyway_device * sdev, struct superhyway_bus * bus);

ARGUMENTS

unsigned long base

Physical address where module is mapped.

struct superhyway_device * sdev

SuperHyway device to add, or NULL to allocate a new one.

struct superhyway_bus * bus

Bus where SuperHyway module resides.

DESCRIPTION

This is responsible for adding a new SuperHyway module. This sets up a new struct superhyway_device for the module being added if sdev == NULL.

Devices are initially added in the order that they are scanned (from the top-down of the memory map), and are assigned an ID based on the order that they are added. Any manual addition of a module will thus get the ID after the devices already discovered regardless of where it resides in memory.

Further work can and should be done in superhyway_scan_bus, to be sure that any new modules are properly discovered and subsequently registered.

AUTHOR

Paul Mundt <lethal@linux-sh.org>

Author.

COPYRIGHT

July 2017 Kernel Hackers Manual 4.12