rapidio: add architecture specific callbacks
This set of patches eliminates RapidIO dependency on PowerPC architecture and makes it available to other architectures (x86 and MIPS). It also enables support of new platform independent RapidIO controllers such as PCI-to-SRIO and PCI Express-to-SRIO. This patch: Extend number of mport callback functions to eliminate direct linking of architecture specific mport operations. Signed-off-by: Alexandre Bounine <alexandre.bounine@idt.com> Cc: Kumar Gala <galak@kernel.crashing.org> Cc: Matt Porter <mporter@kernel.crashing.org> Cc: Li Yang <leoli@freescale.com> Cc: Thomas Moll <thomas.moll@sysgo.com> Cc: Micha Nelissen <micha@neli.hopto.org> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:

committed by
Linus Torvalds

parent
e15b4d687f
commit
f8f0626989
@@ -317,7 +317,8 @@ static inline int rio_add_outb_message(struct rio_mport *mport,
|
||||
struct rio_dev *rdev, int mbox,
|
||||
void *buffer, size_t len)
|
||||
{
|
||||
return rio_hw_add_outb_message(mport, rdev, mbox, buffer, len);
|
||||
return mport->ops->add_outb_message(mport, rdev, mbox,
|
||||
buffer, len);
|
||||
}
|
||||
|
||||
extern int rio_request_inb_mbox(struct rio_mport *, void *, int, int,
|
||||
@@ -336,7 +337,7 @@ extern int rio_release_inb_mbox(struct rio_mport *, int);
|
||||
static inline int rio_add_inb_buffer(struct rio_mport *mport, int mbox,
|
||||
void *buffer)
|
||||
{
|
||||
return rio_hw_add_inb_buffer(mport, mbox, buffer);
|
||||
return mport->ops->add_inb_buffer(mport, mbox, buffer);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -348,7 +349,7 @@ static inline int rio_add_inb_buffer(struct rio_mport *mport, int mbox,
|
||||
*/
|
||||
static inline void *rio_get_inb_message(struct rio_mport *mport, int mbox)
|
||||
{
|
||||
return rio_hw_get_inb_message(mport, mbox);
|
||||
return mport->ops->get_inb_message(mport, mbox);
|
||||
}
|
||||
|
||||
/* Doorbell management */
|
||||
|
Reference in New Issue
Block a user