<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'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"><<a href="mailto:thomas.petazzoni@free-electrons.com" target="_blank">thomas.petazzoni@free-electrons.com</a>></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>
> 1. Create a config file under arch/arm/configs/ for your board. You<br>
> may refer to any of the standard configuration which closely resembles<br>
> your board's configuration. To start with enable the basic<br>
> configurations such as processor, timer, uart, etc and disable SMP<br>
> which are the bare minimum requirements for the board to boot.<br>
> 2. Add a folder under arch/arm/<mach-yourplatformname>. Add board.c<br>
> where your can register your platform devices such as pcie, nand, usb,<br>
> uart, gpio, rtc etc<br>
> 3, Under the same folder above, add timer.c to initialize your<br>
> timers.Add clock.c to enable/disable clocks and change clock rate of<br>
> various Functional Blocks. Add <yourplatformname.c> to initialize your<br>
> processor specific details such as global timers, arm pmu, interrupts,<br>
> cache, global dma, ACP, SCU and inter-processor interrupt( if later<br>
> you decide to enable SMP)<br>
> 4. It is advisable to refer to a standard platform (like versatile -<br>
> 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'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's needed is adding support for a new board that uses an ARM SoC<br>
already supported by the kernel, then all what'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-<foo> 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>