From mboxrd@z Thu Jan 1 00:00:00 1970 Message-ID: <506D7DFF.6040403@wanadoo.fr> Date: Thu, 04 Oct 2012 14:15:59 +0200 From: Thierry Bultel MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Subject: [Xenomai] Modified rtcan_virt driver List-Id: Discussions about the Xenomai project List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: xenomai@xenomai.org Hi, The existing rtcan_virt driver simulates a single CAN bus, on which are N devices. Sending to one dispatches the frame to all the others but the not to the sender. This has several disadvantages: - First, to run an application that uses 2 or more physical buses, it does not fit, because both devices would be linked together. - Second, having N instantiated virtual devices is in some cases not necessary, because an application can open the same device several times, and simulate many CAN nodes, on that single device. Thus I have written another rtcan_virt driver, based on the original one. Its behavior is as follows: - It instantiates N rtcan devices, that are independent (no frame from one to another) - Each virtual rtcan (rtcan0, rtcan1 ...) device has a matching peer (rtcan0s, rtcan1s ...) ('s' like 'slave' but I am opened to any other naming) another to communicate with. That 'slave' device isautomatically created. I say 'slave' in quotes because the word hides the symmetrical aspect, so it is likely unappropriate.. It is today fully tested, my question was if it could be of interest for the Xenomai mainline. If Yes: - some questions come, to my mind the most important one is if is a new driver, or a patch for the existing one, to modify its behavior depending on a parameter. If it is a new one, what would be the appropriate name ? - I would be happy to make it as a patch (not ready for that yet, and until the first questions are answered) If No, I just apologize for the noise. Cheers Thierry