CAN drivers can be found here; http://lxr.free-electrons.com/source/drivers/net/can/ The device driver interface is at dev.c AFAIK the only other files referencing to can outside of drivers/ folder is http://lxr.free-electrons.com/source/include/uapi/linux/if_ether.h#L120 You may want to look at docs too: https://www.kernel.org/doc/Documentation/networking/can.txt Regards, 2016-10-17 9:05 GMT-02:00 Augusto Fraga Giachero <augustofg96@gmail.com>:
I've been reading the source code for the ECI driver and discovered that it only applies to PCI devices, the IXXAT CAN-to-USB Compact (V1.0) is accessed through libusb, so please, ignore the ECI Kernel module that I've attached in the last email.
Thanks!
On 17-10-2016 08:43, Augusto Fraga Giachero wrote:
Hello!
I recently started a project that uses the CAN serial protocol using microcontrollers. I've got an IXXAT CAN-to-USB Compact (V1.0) adapter to help debugging the CAN bus. The manufacturer of this adapter provides the kernel driver and and userspace libraries for Linux, but it uses a custom API (ECI) instead of SocketCAN (and I really need to use SocketCAN). The manufacturer also provides a SocketCAN driver but only for the CAN-to-USB Compact (V2.0), so it doesn't with what I have.
I'm thinking in modifying the the SocketCAN driver to support the V1.0 adapter, but I don't have any experience in kernel driver development. I've a solid C knowledge and a lot of experience in firmware development for microcontrollers. Can someone show me where to find relevant information regarding SocketCAN, USB drivers development? I don't know if this challenge is above my skills.
I've attached both drivers and a patch for the usb-to-can_v2_socketcan that substitutes the "netdev->trans_start =" deference to "netif_trans_update(netdev);", so you can compile for kernels newer than 4.4.
Thanks!
_______________________________________________ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
-- *"Do or do not. There is no try"* *Yoda Master*