Hi, With current way of device reporting in RapidIO subsystem you will need to have at least one SRIO device (switch or EP) attached to your mport to be able to find a reference to that mport device object. Like in the code fragment below:
static int rioport_init_module(void) { int ret, i; dev_t dev = 0; struct rio_mport *mport; struct rio_net *net; struct rio_dev *rdev = NULL; struct rio_mport *port; ... skip ... rdev = rio_get_device(RIO_ANY_ID, RIO_ANY_ID, rdev); if (NULL == rdev) return -ENODEV; mport = rdev->net->hport; net = rdev->net; ... skip ... } I would like to mention that 2.6.34 kernel is quite behind on rapidio support updates. There are multiple changes/updates added added since 2.6.34. You may consider backporting these updates to your kernel version if you are unable to use one of the latest kernel versions. Alex. From: Saravanan S [mailto:sarans1...@gmail.com] Sent: Saturday, July 14, 2012 2:25 AM To: Bounine, Alexandre Cc: linuxppc-dev@lists.ozlabs.org Subject: Re: Standalone SRIO Driver for Linux Hi , Thanks for the reply . i will try to share some of my code later . Looking forward to ur ideas. Regards, S.Saravanan On Fri, Jul 13, 2012 at 6:18 PM, Bounine, Alexandre <alexandre.boun...@idt.com> wrote: This should work. We use similar approach to test our mport HW drivers. Alex. From: Linuxppc-dev [mailto:linuxppc-dev-bounces+alexandre.bounine=idt....@lists.ozlabs.org] On Behalf Of Saravanan S Sent: Friday, July 13, 2012 2:16 AM To: linuxppc-dev@lists.ozlabs.org Subject: Standalone SRIO Driver for Linux Hi , Iam currently working on the GE make DSP230 board consisting of Quad PowerPC8640 nodes interconnected by SRIO with Linux 2.6.34 . However the only way to access the SRIO is through rionet facility . Our requirement is to use the SRIO interconnect without the Ethernet overheads. This would definitely enable higher speeds (though I cant find any throughput figures for SRIO in Linux on the net ??? ). My query is that whether any attempt has been made to develop a standalone driver and API to access the messaging and doorbell services of SRIO . If no then request you to please provide inputs on the same. From my study I have the following thoughts for the driver : a) Have a character device interface for user . b) Basically use the rio support functions provided in rio.c like rio_add_inb_buffer , rio_add_outb_message to transfer and receive messages and add buffers . c) Maintain a dedicated ring of buffers in the driver and transfer data to and from the buffer to user space . Is this the right direction . Would really appreciate any inputs . thanks in advance. Regards, S.Saravanan _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev