<div dir="ltr"><div>Also It is depends on Kernel Version you are trying to add support for New Board.If your Kernel version doesn&#39;t support device tree blob then adding some Board files would be sufficient enough and you can also take reference from the other Board which is similar to your Board.<br>
<br></div>Regards<br>Sanjeev Sharma<br></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Sat, Jun 14, 2014 at 9:29 PM, Thomas Petazzoni <span dir="ltr">&lt;<a href="mailto:thomas.petazzoni@free-electrons.com" target="_blank">thomas.petazzoni@free-electrons.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hello,<br>
<br>
On Sat, 7 Jun 2014 12:57:34 +0530, AYAN KUMAR HALDER wrote:<br>
<br>
&gt; 1. Create a config file under arch/arm/configs/ for your board. You<br>
&gt; may refer to any of the standard configuration which closely resembles<br>
&gt; your board&#39;s configuration. To start with enable the basic<br>
&gt; configurations such as processor, timer, uart, etc and disable SMP<br>
&gt; which are the bare minimum requirements for the board to boot.<br>
&gt; 2. Add a folder under arch/arm/&lt;mach-yourplatformname&gt;.  Add board.c<br>
&gt; where your can register your platform devices such as pcie, nand, usb,<br>
&gt; uart, gpio, rtc etc<br>
&gt; 3, Under the same folder above, add timer.c to initialize your<br>
&gt; timers.Add clock.c to enable/disable clocks and change clock rate of<br>
&gt; various Functional Blocks. Add &lt;yourplatformname.c&gt; to initialize your<br>
&gt; processor specific details such as global timers, arm pmu, interrupts,<br>
&gt; cache, global dma, ACP, SCU and inter-processor interrupt( if later<br>
&gt; you decide to enable SMP)<br>
&gt; 4. It is advisable to refer to a standard platform (like versatile -<br>
&gt; express ) to understand the board specific configurations in Linux.<br>
<br>
Sorry to say so, but those recommendations are quite wrong when the<br>
goal is to add the support for a new _board_ in the kernel. What you&#39;re<br>
describing here are roughly the steps to add the support for a new SoC<br>
or family of SoC.<br>
<br>
If what&#39;s needed is adding support for a new board that uses an ARM SoC<br>
already supported by the kernel, then all what&#39;s needed is either<br>
writing a Device Tree file (if the ARM SoC in question is supported<br>
through the Device Tree) or writing a board file in an existing<br>
mach-&lt;foo&gt; folder.<br>
<br>
Best regards,<br>
<br>
Thomas<br>
<span class="HOEnZb"><font color="#888888">--<br>
Thomas Petazzoni, CTO, Free Electrons<br>
Embedded Linux, Kernel and Android engineering<br>
<a href="http://free-electrons.com" target="_blank">http://free-electrons.com</a><br>
<br>
_______________________________________________<br>
Kernelnewbies mailing list<br>
<a href="mailto:Kernelnewbies@kernelnewbies.org">Kernelnewbies@kernelnewbies.org</a><br>
<a href="http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies" target="_blank">http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies</a><br>
</font></span></blockquote></div><br></div>