<?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 i.MX28EVK: using NAND in i.MX Processors</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/i-MX28EVK-using-NAND/m-p/205191#M11713</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi&lt;/P&gt;&lt;P&gt;I have a working i.MX28EVK, booting from SDCARD. My image has mtd-utils and the kernel is compiled to support NAND, JFFS and UBIFS.&lt;/P&gt;&lt;P&gt;I added a NAND chip using the available socket and this memory is recognized when booting (full log attached as &lt;A _jive_internal="true" href="https://community.nxp.com/discussions/389-lognand.txt" target="_self"&gt;lognand.txt&lt;/A&gt;)&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;P&gt;NAND device: Manufacturer ID: 0x20, Chip ID: 0xda (ST Micro NAND 256MiB 3,3V 8-bit)&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The default partitions are created (mtd0 and mtd1) as well. However, I can not write to these partitions. For instance, if I try to use the nandtest utility, I receive many "Input/output" errors:&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;P&gt;root@host ~$ nandtest /dev/mtd0&lt;BR /&gt;ECC corrections: 0&lt;BR /&gt;ECC failures&amp;nbsp;&amp;nbsp; : 0&lt;BR /&gt;Bad blocks&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : 0&lt;BR /&gt;BBT blocks&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : 0&lt;BR /&gt;00000000: erasing... MEMERASE: Input/output error&lt;BR /&gt;00020000: erasing... MEMERASE: Input/output error&lt;BR /&gt;...&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The same error if I try uibformat:&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;P&gt;root@host ~$ ubiformat /dev/mtd1&lt;BR /&gt;ubiformat: mtd1 (nand), size 247463936 bytes (236.0 MiB), 1888 eraseblocks of 131072 bytes (128.0 KiB), min. I/O size 2048 bytes&lt;BR /&gt;libscan: scanning eraseblock 1887 -- 100 % complete &amp;nbsp;&lt;BR /&gt;ubiformat: 1888 eraseblocks are supposedly empty&lt;BR /&gt;ubiformat: formatting eraseblock 0 --&amp;nbsp; 0 % complete &amp;nbsp;&lt;BR /&gt;ubiformat: error!: failed to erase eraseblock 0&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; error 5 (Input/output error)&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;It seems that some write protection is enabled or I am missing something.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Any tips ?&lt;/P&gt;&lt;P&gt;Thanks in advance&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PS: I checked the board layout and it is possible to see the write protection pin connected to GPIO0_28. Searching, I discovered that it is necessary to add&amp;nbsp; /sys/class/gpio option to kernel image in order to read/write any GPIO pin. I did it by I am not sure how to map GPIO0_28 into /sys/class/gpio/gpio[n]. Worst, I am not sure if the problem is related to this pin or not.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 24 Jan 2012 11:36:31 GMT</pubDate>
    <dc:creator>MarceloBarros</dc:creator>
    <dc:date>2012-01-24T11:36:31Z</dc:date>
    <item>
      <title>i.MX28EVK: using NAND</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/i-MX28EVK-using-NAND/m-p/205191#M11713</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi&lt;/P&gt;&lt;P&gt;I have a working i.MX28EVK, booting from SDCARD. My image has mtd-utils and the kernel is compiled to support NAND, JFFS and UBIFS.&lt;/P&gt;&lt;P&gt;I added a NAND chip using the available socket and this memory is recognized when booting (full log attached as &lt;A _jive_internal="true" href="https://community.nxp.com/discussions/389-lognand.txt" target="_self"&gt;lognand.txt&lt;/A&gt;)&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;P&gt;NAND device: Manufacturer ID: 0x20, Chip ID: 0xda (ST Micro NAND 256MiB 3,3V 8-bit)&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The default partitions are created (mtd0 and mtd1) as well. However, I can not write to these partitions. For instance, if I try to use the nandtest utility, I receive many "Input/output" errors:&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;P&gt;root@host ~$ nandtest /dev/mtd0&lt;BR /&gt;ECC corrections: 0&lt;BR /&gt;ECC failures&amp;nbsp;&amp;nbsp; : 0&lt;BR /&gt;Bad blocks&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : 0&lt;BR /&gt;BBT blocks&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : 0&lt;BR /&gt;00000000: erasing... MEMERASE: Input/output error&lt;BR /&gt;00020000: erasing... MEMERASE: Input/output error&lt;BR /&gt;...&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The same error if I try uibformat:&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;P&gt;root@host ~$ ubiformat /dev/mtd1&lt;BR /&gt;ubiformat: mtd1 (nand), size 247463936 bytes (236.0 MiB), 1888 eraseblocks of 131072 bytes (128.0 KiB), min. I/O size 2048 bytes&lt;BR /&gt;libscan: scanning eraseblock 1887 -- 100 % complete &amp;nbsp;&lt;BR /&gt;ubiformat: 1888 eraseblocks are supposedly empty&lt;BR /&gt;ubiformat: formatting eraseblock 0 --&amp;nbsp; 0 % complete &amp;nbsp;&lt;BR /&gt;ubiformat: error!: failed to erase eraseblock 0&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; error 5 (Input/output error)&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;It seems that some write protection is enabled or I am missing something.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Any tips ?&lt;/P&gt;&lt;P&gt;Thanks in advance&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PS: I checked the board layout and it is possible to see the write protection pin connected to GPIO0_28. Searching, I discovered that it is necessary to add&amp;nbsp; /sys/class/gpio option to kernel image in order to read/write any GPIO pin. I did it by I am not sure how to map GPIO0_28 into /sys/class/gpio/gpio[n]. Worst, I am not sure if the problem is related to this pin or not.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 24 Jan 2012 11:36:31 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/i-MX28EVK-using-NAND/m-p/205191#M11713</guid>
      <dc:creator>MarceloBarros</dc:creator>
      <dc:date>2012-01-24T11:36:31Z</dc:date>
    </item>
    <item>
      <title>Re: i.MX28EVK: using NAND</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/i-MX28EVK-using-NAND/m-p/205192#M11714</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I managed to solve this problem by myself. It was necessary to change the pin assignment of GMPI_RESETN/GPIO0_28 inside kernel sources. I will describe the process here.&lt;BR /&gt;&lt;BR /&gt;1) Inside your ltib directory, unpack the kernel sources:&lt;BR /&gt;&lt;BR /&gt;./ltib -m prep -p kernel&lt;BR /&gt;&lt;BR /&gt;2) open the file mx28evk_pins.c&lt;BR /&gt;&lt;BR /&gt;vi rpm/BUILD/linux-2.6.35.3/arch/arm/mach-mx28/mx28evk_pins.c &lt;BR /&gt;&lt;BR /&gt;3) Look for the following code inside this file:&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; .name&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = "GPMI RST-",&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; .id&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = PINID_GPMI_RESETN,&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; .fun&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = PIN_FUN1,&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; .strength = PAD_12MA,&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; .voltage&amp;nbsp; = PAD_3_3V,&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; .pullup&amp;nbsp;&amp;nbsp; = 0,&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; .drive&amp;nbsp;&amp;nbsp;&amp;nbsp; = !0&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;Change the pin function:&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; .fun&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = PIN_GPIO,&lt;BR /&gt;&lt;BR /&gt;4) Create a patch:&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;./ltib -m patchmerge -p kernel&lt;BR /&gt;&lt;BR /&gt;Now your next kernel build will include this patch.&lt;/P&gt;&lt;P&gt;It is useful to add mtd-utils to your package selection if you want to test your nand flash chip in a running system.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 30 Jan 2012 19:07:35 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/i-MX28EVK-using-NAND/m-p/205192#M11714</guid>
      <dc:creator>MarceloBarros</dc:creator>
      <dc:date>2012-01-30T19:07:35Z</dc:date>
    </item>
  </channel>
</rss>

