Thank you, I'll study it! Em 17 de out de 2016 10:25 AM, "Daniel." <danielhilst@gmail.com> escreveu:
If you're dealing with network drivers you will want to know about socket buffs: http://www.linuxjournal.com/article/1312 LDD3 has a chapter for network drivers too: http://www.makelinux.net/ldd3/chp-17
Regards :)
2016-10-17 10:22 GMT-02:00 Daniel. <danielhilst@gmail.com>:
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 <Kernelnewbies@kernelnewbies.org> https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies <https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies>
-- *>> "Do or do not. There is no try"* *>> ** Yoda Master*
-- *> "Do or do not. There is no try"* *> ** Yoda Master*