<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: i.MX28 - driver for OTP eFuses in i.MX Processors</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/i-MX28-driver-for-OTP-eFuses/m-p/266838#M27936</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;took Christoph's last version and made a V3. This version is without write support because this would have a negative impact on the whole system:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://lists.infradead.org/pipermail/linux-arm-kernel/2014-October/295228.html"&gt;http://lists.infradead.org/pipermail/linux-arm-kernel/2014-October/295228.html&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please send me testing feedback for i.MX23 and i.MX28.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;BR Stefan&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Sat, 18 Oct 2014 11:33:49 GMT</pubDate>
    <dc:creator>lategoodbye</dc:creator>
    <dc:date>2014-10-18T11:33:49Z</dc:date>
    <item>
      <title>i.MX28 - driver for OTP eFuses</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/i-MX28-driver-for-OTP-eFuses/m-p/266824#M27922</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello Forum,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;using a vanilla 3.7 Linux kernel for the i.MX28 EVK I started porting some drivers from the Freescale SDK based on 2.6.35.&lt;/P&gt;&lt;P&gt;The OTP driver allows reading the OTP cells via the sysfs but fails to write. I tracked the problem to a call to clk_get(). The name of the required clock seems to have changed from "hclk" to "hbus", but fixing that didn't help. sysfs shows a clock named "hbus". So what else could go wrong?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Christoph&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 15 Apr 2013 12:48:10 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/i-MX28-driver-for-OTP-eFuses/m-p/266824#M27922</guid>
      <dc:creator>ChristophG_Baum</dc:creator>
      <dc:date>2013-04-15T12:48:10Z</dc:date>
    </item>
    <item>
      <title>Re: i.MX28 - driver for OTP eFuses</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/i-MX28-driver-for-OTP-eFuses/m-p/266825#M27923</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Christoph,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;It would help if you post your patch to the Linux ARM kernel mailing list, so that people could review what you did.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Fabio Estevam&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 15 Apr 2013 15:24:31 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/i-MX28-driver-for-OTP-eFuses/m-p/266825#M27923</guid>
      <dc:creator>fabio_estevam</dc:creator>
      <dc:date>2013-04-15T15:24:31Z</dc:date>
    </item>
    <item>
      <title>Re: i.MX28 - driver for OTP eFuses</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/i-MX28-driver-for-OTP-eFuses/m-p/266826#M27924</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Fabio,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;well, you may be right that the Linux ARM kernel mailing list is a better place for this question. But I didn't dare as the driver doesn't work so far.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Christoph&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 15 Apr 2013 19:45:36 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/i-MX28-driver-for-OTP-eFuses/m-p/266826#M27924</guid>
      <dc:creator>ChristophG_Baum</dc:creator>
      <dc:date>2013-04-15T19:45:36Z</dc:date>
    </item>
    <item>
      <title>Re: i.MX28 - driver for OTP eFuses</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/i-MX28-driver-for-OTP-eFuses/m-p/266827#M27925</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;SPAN&gt;My (still not entirely working) patch can be found at &lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="http://www.sgoc.de/Downloads/fsl-otp.patch"&gt;http://www.sgoc.de/Downloads/fsl-otp.patch&lt;/A&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Christoph&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 19 Apr 2013 11:17:09 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/i-MX28-driver-for-OTP-eFuses/m-p/266827#M27925</guid>
      <dc:creator>ChristophG_Baum</dc:creator>
      <dc:date>2013-04-19T11:17:09Z</dc:date>
    </item>
    <item>
      <title>Re: i.MX28 - driver for OTP eFuses</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/i-MX28-driver-for-OTP-eFuses/m-p/266828#M27926</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Christoph,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;What does "not entirely working" mean? What is missing?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I saw your post in the linux-arm-kernel list. It would be really nice if you could post it as patch (via git send-email, preferably) so that people could review it and possibly accept it to the kernel.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Let me know if you need help with the submission process.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Also, how did you test it?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Fabio Estevam&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 23 Apr 2013 17:15:33 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/i-MX28-driver-for-OTP-eFuses/m-p/266828#M27926</guid>
      <dc:creator>fabio_estevam</dc:creator>
      <dc:date>2013-04-23T17:15:33Z</dc:date>
    </item>
    <item>
      <title>Re: i.MX28 - driver for OTP eFuses</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/i-MX28-driver-for-OTP-eFuses/m-p/266829#M27927</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Fabio,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;BLOCKQUOTE&gt;
&lt;P&gt;What does "not entirely working" mean? What is missing?&lt;/P&gt;
&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;reading works, but writing OTP cells fails because clk_get() fails to get the handle for the CLK associated with "hclk", "hbus" or whatever. As far as I understood the code in 3.7 the name of the clock is "hbus" and it seems to get registered. A clock of this name can also be seen via /sys/kernel/debug. But clk_get() still fails. Could it be that the clock has also to be named in the device tree?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;BLOCKQUOTE&gt;
&lt;P&gt;I saw your post in the linux-arm-kernel list. It would be really nice if you could post it as patch (via git send-email, preferably) so that people could review it and possibly accept it to the kernel.&lt;/P&gt;
&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Currently I'm waiting to see how the DCP patch is going.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Christoph&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 23 Apr 2013 21:47:47 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/i-MX28-driver-for-OTP-eFuses/m-p/266829#M27927</guid>
      <dc:creator>ChristophG_Baum</dc:creator>
      <dc:date>2013-04-23T21:47:47Z</dc:date>
    </item>
    <item>
      <title>Re: i.MX28 - driver for OTP eFuses</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/i-MX28-driver-for-OTP-eFuses/m-p/266830#M27928</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hey, i got it working. Both reading and writing.&lt;/P&gt;&lt;P&gt;I'm using the clk_get_sys("hbus", NULL) function to get the clock. It should work after registering it like you do (as i saw it in your patch - it helped me a lot!) in the clk-imx28.c file.&lt;/P&gt;&lt;P&gt;The other thing that has changed is some regulator's name (the name is already set in the device tree). You should change it in the board file mach-mxs.c to "vddio-sd0":&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE __default_attr="c++" __jive_macro_name="code" class="jive_text_macro jive_macro_code _jivemacro_uid_13668934613634914" jivemacro_uid="_13668934613634914" modifiedtitle="true"&gt;
&lt;P&gt;static struct fsl_otp_data otp_data = {&lt;/P&gt;
&lt;P&gt;&amp;nbsp; .fuse_name = (char **)bank_reg_desc,&lt;/P&gt;
&lt;P&gt;&amp;nbsp; .regulator_name = "vddio-sd0",&lt;/P&gt;
&lt;P&gt;&amp;nbsp; .fuse_num = BANKS * BANK_ITEMS,&lt;/P&gt;
&lt;P&gt;};&lt;/P&gt;
&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Now i get a warning &lt;SPAN style="font-size: 10pt; line-height: 1.5em;"&gt;when the driver creates the sysfs entries if the kernel is compiled with CONFIG_DEBUG_LOCK_ALLOC set. It seems to be a problem with the kernel itself because the sysfs driver is doing things to "make lockdep happy"... but anyway, the OTP driver works.&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 25 Apr 2013 12:34:51 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/i-MX28-driver-for-OTP-eFuses/m-p/266830#M27928</guid>
      <dc:creator>dimitarboevski</dc:creator>
      <dc:date>2013-04-25T12:34:51Z</dc:date>
    </item>
    <item>
      <title>Re: i.MX28 - driver for OTP eFuses</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/i-MX28-driver-for-OTP-eFuses/m-p/266831#M27929</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Yes, it works for me too!&lt;/P&gt;&lt;P&gt;Now I have some &lt;TT&gt;deadbeef&lt;/TT&gt; in my i.MX28 :-)&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 25 Apr 2013 14:21:05 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/i-MX28-driver-for-OTP-eFuses/m-p/266831#M27929</guid>
      <dc:creator>ChristophG_Baum</dc:creator>
      <dc:date>2013-04-25T14:21:05Z</dc:date>
    </item>
    <item>
      <title>Re: i.MX28 - driver for OTP eFuses</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/i-MX28-driver-for-OTP-eFuses/m-p/266832#M27930</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I uploaded a new patch that includes the fixes for clock and regulator. It now conforms to the checkpatch.pl script in the current mainline kernel (appart from the missing "signed off by").&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 30 Apr 2013 14:31:46 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/i-MX28-driver-for-OTP-eFuses/m-p/266832#M27930</guid>
      <dc:creator>ChristophG_Baum</dc:creator>
      <dc:date>2013-04-30T14:31:46Z</dc:date>
    </item>
    <item>
      <title>Re: i.MX28 - driver for OTP eFuses</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/i-MX28-driver-for-OTP-eFuses/m-p/266833#M27931</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Good work.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Do you get the following warning at kernel loading:&lt;/P&gt;&lt;P&gt;WARNING: at kernel/lockdep.c:2986 sysfs_add_file_mode+0x80/0xe8()&lt;/P&gt;&lt;P&gt;( stacktrace )&lt;/P&gt;&lt;P&gt;BUG: key c7620028 not in .data!&lt;/P&gt;&lt;P&gt;.....&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;It's only shown when the kernel is compiled with the &lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;CONFIG_DEBUG_LOCK_ALLOC&lt;/SPAN&gt; option. If you don't get the warning could you check if that option is turned off for you? I would rather not turn it off so i'm trying to get rid of those ugly 20 lines of "BUG".&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 07 May 2013 11:39:19 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/i-MX28-driver-for-OTP-eFuses/m-p/266833#M27931</guid>
      <dc:creator>dimitarboevski</dc:creator>
      <dc:date>2013-05-07T11:39:19Z</dc:date>
    </item>
    <item>
      <title>Re: i.MX28 - driver for OTP eFuses</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/i-MX28-driver-for-OTP-eFuses/m-p/266834#M27932</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Ahh, we just have to call sysfs_attr_init() to "make lockdep happy". here's a mini patch:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE __default_attr="plain" __jive_macro_name="code" class="jive_text_macro jive_macro_code _jivemacro_uid_13679288590185760" jivemacro_uid="_13679288590185760"&gt;
&lt;P&gt;diff --git a/drivers/char/fsl_otp.c b/drivers/char/fsl_otp.c&lt;/P&gt;
&lt;P&gt;index ce99bf8e..c3cc1c6 100644&lt;/P&gt;
&lt;P&gt;--- a/drivers/char/fsl_otp.c&lt;/P&gt;
&lt;P&gt;+++ b/drivers/char/fsl_otp.c&lt;/P&gt;
&lt;P&gt;@@ -158,6 +158,8 @@ static int alloc_otp_attr(void)&lt;/P&gt;
&lt;P&gt;&amp;nbsp; kattr[i].store = otp_store;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; attrs[i] = &amp;amp;kattr[i].attr;&lt;/P&gt;
&lt;P&gt;+ sysfs_attr_init( attrs[i] );&lt;/P&gt;
&lt;P&gt;+&lt;/P&gt;
&lt;P&gt;&amp;nbsp; }&lt;/P&gt;
&lt;P&gt;&amp;nbsp; memset(&amp;amp;attr_group, 0, sizeof(attr_group));&lt;/P&gt;
&lt;P&gt;&amp;nbsp; attr_group.attrs = attrs;&lt;/P&gt;

&lt;SPAN class="mce_paste_marker"&gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 07 May 2013 12:15:11 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/i-MX28-driver-for-OTP-eFuses/m-p/266834#M27932</guid>
      <dc:creator>dimitarboevski</dc:creator>
      <dc:date>2013-05-07T12:15:11Z</dc:date>
    </item>
    <item>
      <title>Re: i.MX28 - driver for OTP eFuses</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/i-MX28-driver-for-OTP-eFuses/m-p/266835#M27933</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Yes, I see warnings like this. I will try your patch below.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 10 May 2013 06:37:47 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/i-MX28-driver-for-OTP-eFuses/m-p/266835#M27933</guid>
      <dc:creator>ChristophG_Baum</dc:creator>
      <dc:date>2013-05-10T06:37:47Z</dc:date>
    </item>
    <item>
      <title>Re: i.MX28 - driver for OTP eFuses</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/i-MX28-driver-for-OTP-eFuses/m-p/266836#M27934</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Do you guys plan to send this patch upstream?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 23 May 2013 00:44:17 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/i-MX28-driver-for-OTP-eFuses/m-p/266836#M27934</guid>
      <dc:creator>fabio_estevam</dc:creator>
      <dc:date>2013-05-23T00:44:17Z</dc:date>
    </item>
    <item>
      <title>Re: i.MX28 - driver for OTP eFuses</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/i-MX28-driver-for-OTP-eFuses/m-p/266837#M27935</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I would like to, but currently I haven't got the time. And as I'm a nobody on LAKML it is likely to be ignored, as was the DCP patch.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 23 May 2013 08:39:25 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/i-MX28-driver-for-OTP-eFuses/m-p/266837#M27935</guid>
      <dc:creator>ChristophG_Baum</dc:creator>
      <dc:date>2013-05-23T08:39:25Z</dc:date>
    </item>
    <item>
      <title>Re: i.MX28 - driver for OTP eFuses</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/i-MX28-driver-for-OTP-eFuses/m-p/266838#M27936</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;took Christoph's last version and made a V3. This version is without write support because this would have a negative impact on the whole system:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://lists.infradead.org/pipermail/linux-arm-kernel/2014-October/295228.html"&gt;http://lists.infradead.org/pipermail/linux-arm-kernel/2014-October/295228.html&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please send me testing feedback for i.MX23 and i.MX28.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;BR Stefan&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 18 Oct 2014 11:33:49 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/i-MX28-driver-for-OTP-eFuses/m-p/266838#M27936</guid>
      <dc:creator>lategoodbye</dc:creator>
      <dc:date>2014-10-18T11:33:49Z</dc:date>
    </item>
  </channel>
</rss>

