Hi All,
I would like to ask about how to burn eFuse of i.MX53.
My customer needs to know how to program i.MX53 eFuse in his mass manufacturing process of his board.
MAC addresses must be programmed to eFuse for each of his board separately.
He believes that using uboot to program eFuse is not useful in the viewpoint of mass manufacturing process.
Could you show me how one should program eFuse in the mass manufacturing process?
BR,
Miyamoto
Solved! Go to Solution.
Dear Miyamoto,
There is several possibility but at some point you will need to download a utility in the RAM to program the fuses.
* Either you use the manufacturing tool to program the fuses. This means downloading over the USB a mini OS enabling the mxc_mii device:
Sense: dd if=/dev/mxc_iim of=output bs=1 skip=<fuse address> count=1
Blown: echo "<fuse_address> <fuse_value>" > /dev/mxc_iim
The following example shows how to create mxc_iim node. Then blown 0xff to fuse
address "0xc30" (MAC_ADDR[23:16]). And sense back fuse value.
-->
<!--
<CMD type="push" body="$ cat /sys/class/misc/mxc_iim/dev"/>
<CMD type="push" body="$ mknod /dev/mxc_iim c 10 63"/>
<CMD type="push" body="$ echo \"0xc30 0xff\" > /dev/mxc_iim "/>
<CMD type="push" body="$ dd if=/dev/mxc_iim of=/dev/temp.txt bs=1 skip=3120 count=1"/>
-->
* Or you download it via JTAG into the iRAM and let a utility program the fuses, again by using a driver similar to the mxc_iim
I do not know any other method.
br,
Rodrigue
Dear Miyamoto,
There is several possibility but at some point you will need to download a utility in the RAM to program the fuses.
* Either you use the manufacturing tool to program the fuses. This means downloading over the USB a mini OS enabling the mxc_mii device:
Sense: dd if=/dev/mxc_iim of=output bs=1 skip=<fuse address> count=1
Blown: echo "<fuse_address> <fuse_value>" > /dev/mxc_iim
The following example shows how to create mxc_iim node. Then blown 0xff to fuse
address "0xc30" (MAC_ADDR[23:16]). And sense back fuse value.
-->
<!--
<CMD type="push" body="$ cat /sys/class/misc/mxc_iim/dev"/>
<CMD type="push" body="$ mknod /dev/mxc_iim c 10 63"/>
<CMD type="push" body="$ echo \"0xc30 0xff\" > /dev/mxc_iim "/>
<CMD type="push" body="$ dd if=/dev/mxc_iim of=/dev/temp.txt bs=1 skip=3120 count=1"/>
-->
* Or you download it via JTAG into the iRAM and let a utility program the fuses, again by using a driver similar to the mxc_iim
I do not know any other method.
br,
Rodrigue