Linux Kernel
3.7.1
|
#include <linux/types.h>
#include <linux/kernel.h>
#include <linux/delay.h>
#include <linux/init.h>
#include <linux/rio.h>
#include <linux/rio_drv.h>
#include <linux/rio_ids.h>
#include <linux/rio_regs.h>
#include <linux/module.h>
#include <linux/spinlock.h>
#include <linux/slab.h>
#include <linux/interrupt.h>
#include "rio.h"
Go to the source code of this file.
Data Structures | |
struct | rio_disc_work |
__setup | ( | ) |
device_initcall_sync | ( | rio_init_mports | ) |
EXPORT_SYMBOL_GPL | ( | rio_request_inb_pwrite | ) |
EXPORT_SYMBOL_GPL | ( | rio_release_inb_pwrite | ) |
EXPORT_SYMBOL_GPL | ( | rio_map_inb_region | ) |
EXPORT_SYMBOL_GPL | ( | rio_unmap_inb_region | ) |
EXPORT_SYMBOL_GPL | ( | rio_inb_pwrite_handler | ) |
EXPORT_SYMBOL_GPL | ( | rio_local_get_device_id | ) |
EXPORT_SYMBOL_GPL | ( | rio_get_device | ) |
EXPORT_SYMBOL_GPL | ( | rio_get_asm | ) |
EXPORT_SYMBOL_GPL | ( | rio_request_inb_dbell | ) |
EXPORT_SYMBOL_GPL | ( | rio_release_inb_dbell | ) |
EXPORT_SYMBOL_GPL | ( | rio_request_outb_dbell | ) |
EXPORT_SYMBOL_GPL | ( | rio_release_outb_dbell | ) |
EXPORT_SYMBOL_GPL | ( | rio_request_inb_mbox | ) |
EXPORT_SYMBOL_GPL | ( | rio_release_inb_mbox | ) |
EXPORT_SYMBOL_GPL | ( | rio_request_outb_mbox | ) |
EXPORT_SYMBOL_GPL | ( | rio_release_outb_mbox | ) |
|
read |
rio_get_asm - Begin or continue searching for a RIO device by vid/did/asm_vid/asm_did : RIO vid to match or RIO_ANY_ID to match all vids : RIO did to match or RIO_ANY_ID to match all dids : RIO asm_vid to match or RIO_ANY_ID to match all asm_vids : RIO asm_did to match or RIO_ANY_ID to match all asm_dids : Previous RIO device found in search, or NULL for new search
Iterates through the list of known RIO devices. If a RIO device is found with a matching , , , , the reference count to the device is incrememted and a pointer to its device structure is returned. Otherwise, NULL is returned. A new search is initiated by passing NULL to the argument. Otherwise, if is not NULL, searches continue from next device on the global list. The reference count for is always decremented if it is not NULL.
rio_get_comptag - Begin or continue searching for a RIO device by component tag : RIO component tag to match : Previous RIO device found in search, or NULL for new search
Iterates through the list of known RIO devices. If a RIO device is found with a matching , a pointer to its device structure is returned. Otherwise, NULL is returned. A new search is initiated by passing NULL to the argument. Otherwise, if is not NULL, searches continue from next device on the global list.
rio_get_device - Begin or continue searching for a RIO device by vid/did : RIO vid to match or RIO_ANY_ID to match all vids : RIO did to match or RIO_ANY_ID to match all dids : Previous RIO device found in search, or NULL for new search
Iterates through the list of known RIO devices. If a RIO device is found with a matching and , the reference count to the device is incrememted and a pointer to its device structure is returned. Otherwise, NULL is returned. A new search is initiated by passing NULL to the argument. Otherwise, if is not NULL, searches continue from next device on the global list. The reference count for is always decremented if it is not NULL.
int rio_inb_pwrite_handler | ( | union rio_pw_msg * | pw_msg | ) |
int rio_map_inb_region | ( | struct rio_mport * | mport, |
dma_addr_t | local, | ||
u64 | rbase, | ||
u32 | size, | ||
u32 | rflags | ||
) |
rio_mport_get_efb - get pointer to next extended features block : Master port to issue transaction : Indicate a local master port or remote device access : Destination ID of the device : Number of switch hops to the device : Offset of current Extended Feature block header (if 0 starts from ExtFeaturePtr)
rio_mport_get_feature - query for devices' extended features : Master port to issue transaction : Indicate a local master port or remote device access : Destination ID of the device : Number of switch hops to the device : Extended feature code
Tell if a device supports a given RapidIO capability. Returns the offset of the requested extended feature block within the device's RIO configuration space or 0 in case the device does not support it. Possible values for :
RIO_EFB_PAR_EP_ID LP/LVDS EP Devices
RIO_EFB_PAR_EP_REC_ID LP/LVDS EP Recovery Devices
RIO_EFB_PAR_EP_FREE_ID LP/LVDS EP Free Devices
RIO_EFB_SER_EP_ID LP/Serial EP Devices
RIO_EFB_SER_EP_REC_ID LP/Serial EP Recovery Devices
RIO_EFB_SER_EP_FREE_ID LP/Serial EP Free Devices
rio_release_inb_dbell - release inbound doorbell message service : RIO master port from which to release the doorbell resource : Doorbell info range start : Doorbell info range end
Releases ownership of an inbound doorbell resource and removes callback from the doorbell event list. Returns 0 if the request has been satisfied.
int rio_request_inb_dbell | ( | struct rio_mport * | mport, |
void * | dev_id, | ||
u16 | start, | ||
u16 | end, | ||
void(*)(struct rio_mport *mport, void *dev_id, u16 src, u16 dst, u16 info) | dinb | ||
) |
rio_request_inb_dbell - request inbound doorbell message service : RIO master port from which to allocate the doorbell resource : Device specific pointer to pass on event : Doorbell info range start : Doorbell info range end : Callback to execute when doorbell is received
Requests ownership of an inbound doorbell resource and binds a callback function to the resource. Returns 0 if the request has been satisfied.
int rio_request_inb_mbox | ( | struct rio_mport * | mport, |
void * | dev_id, | ||
int | mbox, | ||
int | entries, | ||
void(*)(struct rio_mport *mport, void *dev_id, int mbox, int slot) | minb | ||
) |
rio_request_inb_mbox - request inbound mailbox service : RIO master port from which to allocate the mailbox resource : Device specific pointer to pass on event : Mailbox number to claim : Number of entries in inbound mailbox queue : Callback to execute when inbound message is received
Requests ownership of an inbound mailbox resource and binds a callback function to the resource. Returns %0 on success.
int rio_request_inb_pwrite | ( | struct rio_dev * | rdev, |
int(*)(struct rio_dev *rdev, union rio_pw_msg *msg, int step) | pwcback | ||
) |
rio_request_outb_dbell - request outbound doorbell message range : RIO device from which to allocate the doorbell resource : Doorbell message range start : Doorbell message range end
Requests ownership of a doorbell message range. Returns a resource if the request has been satisfied or NULL on failure.
int rio_request_outb_mbox | ( | struct rio_mport * | mport, |
void * | dev_id, | ||
int | mbox, | ||
int | entries, | ||
void(*)(struct rio_mport *mport, void *dev_id, int mbox, int slot) | moutb | ||
) |
rio_request_outb_mbox - request outbound mailbox service : RIO master port from which to allocate the mailbox resource : Device specific pointer to pass on event : Mailbox number to claim : Number of entries in outbound mailbox queue : Callback to execute when outbound message is sent
Requests ownership of an outbound mailbox resource and binds a callback function to the resource. Returns 0 on success.
int rio_std_route_add_entry | ( | struct rio_mport * | mport, |
u16 | destid, | ||
u8 | hopcount, | ||
u16 | table, | ||
u16 | route_destid, | ||
u8 | route_port | ||
) |
rio_std_route_add_entry - Add switch route table entry using standard registers defined in RIO specification rev.1.3 : Master port to issue transaction : Destination ID of the device : Number of switch hops to the device : routing table ID (global or port-specific) : destID entry in the RT : destination port for specified destID
int rio_std_route_get_entry | ( | struct rio_mport * | mport, |
u16 | destid, | ||
u8 | hopcount, | ||
u16 | table, | ||
u16 | route_destid, | ||
u8 * | route_port | ||
) |
rio_std_route_get_entry - Read switch route table entry (port number) associated with specified destID using standard registers defined in RIO specification rev.1.3 : Master port to issue transaction : Destination ID of the device : Number of switch hops to the device : routing table ID (global or port-specific) : destID entry in the RT : returned destination port for specified destID