<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 12pt;
font-family:Calibri
}
--></style></head>
<body class='hmmessage'><div dir='ltr'>Eric,<br>thank you very much for the answer (I have compiled kernel 3.0.35_1.1.0 by the way, but the code hasn't changed since then).<br>I do have a question (in my limited kernel knowledge) :)<br>https://github.com/boundarydevices/linux-imx6/blob/boundary-imx_3.0.35_4.0.0/drivers/i2c/busses/i2c-imx.c#L63<br><br>this looks like a module, but as I see in my sabrelite's  /lib/modules/3.0.35-1.1.0+g2dc5560<br>modules.builtin:92:kernel/drivers/i2c/busses/i2c-imx.ko<br>it is built in the kernel.<br><br>What is the purpose of i2c-imx and how does it relate to imx* boards?<br><br>Thank you for your help!<br><br><div>> Date: Tue, 13 Aug 2013 11:30:00 -0700<br>> From: eric.nelson@boundarydevices.com<br>> To: djnass_18@hotmail.com<br>> CC: meta-freescale@yoctoproject.org<br>> Subject: Re: [meta-freescale] speed of /dev/i2c-2 in imx6q sabre-lite<br>> <br>> Hi Thanassis,<br>> <br>> On 08/13/2013 11:03 AM, Thanassis Silis wrote:<br>> > Hello everyone,<br>> > I am unaware as to who sets clock speed on the i2c bus and specifically<br>> > on the /dev/i2c-2 which is exposed on the board so as to drive external<br>> > equipment.<br>>  ><br>> > I am looking into the linux-boundary kernel files in yocto (dylan) build<br>> > dir, but I cannot figure out where that is set.<br>> > To be honest I don't even know if i'll find that info there, but it<br>> > seems like the right place to start (after googling about it of course).<br>> ><br>> > So who determined the speed (standard mode, fast mode, etc) for the<br>> > external i2c? if it is a driver , which one should I be looking for?<br>> ><br>> <br>> This structure defines the speed of the I2C bus:<br>>  https://github.com/boundarydevices/linux-imx6/blob/boundary-imx_3.0.35_4.0.0/arch/arm/mach-mx6/board-mx6_nitrogen6x.c#L434<br>> <br>> To change it for i2c-2 by itself, you'll need to make a copy of<br>> that, change the speed value and pass the copy to the routine<br>> imx6q_add_imx_i2c():<br>>    https://github.com/boundarydevices/linux-imx6/blob/boundary-imx_3.0.35_4.0.0/arch/arm/mach-mx6/board-mx6_nitrogen6x.c#L1320<br>> <br>> > The reason is I am trying to drive some TMC222 low-power stepper motor<br>> > control ICs, but they do not respond.<br>> > Note I have successfully connected a number of other i2c ICs (among<br>> > others the pca9505x).<br>> ><br>> > An answer is not necessary. Any pointers as to how to go about it , so I<br>> > can learn about this is more than welcome.<br>> > Thank you for your help.<br>> ><br>> <br>> This should be straightforward.<br>> <br>> Let me know if you have any trouble.<br>> <br>> Regards,<br>> <br>> <br>> Eric<br>> <br>> <br></div>                                       </div></body>
</html>