mirror of
https://github.com/Fishwaldo/linux-bl808.git
synced 2025-06-17 20:25:19 +00:00
rapidio: add enumeration/discovery start from user space
Add RapidIO enumeration/discovery start from user space. User space start allows to defer RapidIO fabric scan until the moment when all participating endpoints are initialized avoiding mandatory synchronized start of all endpoints (which may be challenging in systems with large number of RapidIO endpoints). Signed-off-by: Alexandre Bounine <alexandre.bounine@idt.com> Cc: Matt Porter <mporter@kernel.crashing.org> Cc: Li Yang <leoli@freescale.com> Cc: Kumar Gala <galak@kernel.crashing.org> Cc: Andre van Herk <andre.van.herk@Prodrive.nl> Cc: Micha Nelissen <micha.nelissen@Prodrive.nl> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
a11650e110
commit
bc8fcfea18
6 changed files with 102 additions and 7 deletions
|
@ -265,6 +265,11 @@ struct rio_mport {
|
|||
struct rio_scan *nscan;
|
||||
};
|
||||
|
||||
/*
|
||||
* Enumeration/discovery control flags
|
||||
*/
|
||||
#define RIO_SCAN_ENUM_NO_WAIT 0x00000001 /* Do not wait for enum completed */
|
||||
|
||||
struct rio_id_table {
|
||||
u16 start; /* logical minimal id */
|
||||
u32 max; /* max number of IDs in table */
|
||||
|
@ -467,8 +472,8 @@ static inline struct rio_mport *dma_to_mport(struct dma_device *ddev)
|
|||
* @discover: Callback to perform RapidIO fabric discovery.
|
||||
*/
|
||||
struct rio_scan {
|
||||
int (*enumerate)(struct rio_mport *mport);
|
||||
int (*discover)(struct rio_mport *mport);
|
||||
int (*enumerate)(struct rio_mport *mport, u32 flags);
|
||||
int (*discover)(struct rio_mport *mport, u32 flags);
|
||||
};
|
||||
|
||||
/* Architecture and hardware-specific functions */
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue