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