EmbeddedRelated.com
Forums

newbie to embedded linux on arm

Started by tama December 16, 2009
Hi Guys,

I am new to linux/embedded linux. I have a strong understanding of embedded
hardware and C programming. I want to learn linux/ embedded linux. 
Recently got a board from boradcon EM2400II + 5.6 TFT LCd touch screen.  

Can some one please suggest what is the best point to start with. how to
set the tool chain, linux os, boot loader, compiler. How to develop a small
application just a led blink will do to test the setup.  

In windows there are various tools + compiler which help you develop an
application and then program into the flash. 

Can someone please point to some tutorial about how to start with from
scratch? 


Thanks in advance
tama

	   
					
---------------------------------------		
This message was sent using the comp.arch.embedded web interface on
http://www.EmbeddedRelated.com

tama wrote:


> I want to learn linux/ embedded linux.
Book: P. Raghavan, A. Lad, S. Neelakandan "Embedded Linux System Design and Development" Vladimir Vassilevsky DSP and Mixed Signal Design Consultant http://www.abvolt.com
On 2009-12-16, Vladimir Vassilevsky <nospam@nowhere.com> wrote:
> > > tama wrote: > > >> I want to learn linux/ embedded linux. > > Book: > > P. Raghavan, A. Lad, S. Neelakandan > "Embedded Linux System Design and Development"
The O'Reilly book is also good: Yaghmour, Masters, Ben-Yossef, and Gerum "Building Embedded Linux Systems" -- Grant Edwards grante Yow! I just heard the at SEVENTIES were over!! And visi.com I was just getting in touch with my LEISURE SUIT!!

Grant Edwards wrote:

> On 2009-12-16, Vladimir Vassilevsky <nospam@nowhere.com> wrote: > >> >>tama wrote: >> >> >> >>>I want to learn linux/ embedded linux. >> >>Book: >> >>P. Raghavan, A. Lad, S. Neelakandan >>"Embedded Linux System Design and Development" > > > The O'Reilly book is also good: > > Yaghmour, Masters, Ben-Yossef, and Gerum > "Building Embedded Linux Systems"
Actually, having read the first book, I was very dissapointed about Linux and ended up rolling my own OS. VLV
Vladimir Vassilevsky wrote:

snip

> > Actually, having read the first book, I was very dissapointed about > Linux and ended up rolling my own OS. > > VLV
Tjaa, Linux is, afterall, only the kernel and the OS is called often GNU/Linux. So, what did you develop yourself ? Risto

Risto Sainio wrote:

> Vladimir Vassilevsky wrote: > > snip > > >>Actually, having read the first book, I was very dissapointed about >>Linux and ended up rolling my own OS. >>
I also looked into Mucos-II, didn't like it either. Toy OS, lots of low level work that you have to do by hand, strange limitations.
> > Tjaa, Linux is, afterall, only the kernel and the OS is called often > GNU/Linux. So, what did you develop yourself ?
The RTOS kernel is static C++ library, with friendly abstractions for messaging, semaphores and other OS services. I also tried to do my best about sensible concept for hardware abstraction; avoiding monstrosity and primitivism. Nested interrupts use their own stack, separate from application stacks. There are basic debug aids. Most of the code is in C++, with very little of assembler. The OS was build for BlackFin, which, quite unfortunately, doesn't have MMU. The filesystem and TCP/IP stack are there; the USB host is in development. Memory footprint: ~64k code ~16k data is minimal practical configuration with terminal I/O and IP stack. Vladimir Vassilevsky DSP and Mixed Signal Design Consultant http://www.abvolt.com
tama skrev 2009-12-16 15:18:
> Hi Guys, > > I am new to linux/embedded linux. I have a strong understanding of embedded > hardware and C programming. I want to learn linux/ embedded linux. > Recently got a board from boradcon EM2400II + 5.6 TFT LCd touch screen. > > Can some one please suggest what is the best point to start with. how to > set the tool chain, linux os, boot loader, compiler. How to develop a small > application just a led blink will do to test the setup. >
One of the easiest ways to get a complete Linux thing together is to download "Buildroot" from www.buildroot.org You need a Linux machine and git. (or download a tarball) make at91sam9263ek_defconfig make Wait a few hours and then you have * Cross Compiler * First level Bootloader (at91bootstrap) * Second level bootloader (U-Boot) * Linux Kernel * Root file system * Scripts for U-boot environment The Samsung chips are not supported. By building for another ARM chip, you can use the root fs, but you have to build the bootloader and kernel manually. Alternatively, you can switch to a chip which IS supported well by Buildroot (Read AT91s) Note that the vanilla Buildroot is lagging for AT91. I have an experimental version based on the Buildroot 2009.08 release which uses the latest 2.6.32 kernel. It is located in the private git area of the Buildroot project. Less tested than the vanilla stuff, but if you want to try the latest... This also allows building the newer SAM9G45 & G10, which the vanilla version does not. There are limitations to Buildroot, and I have started to use OpenEmbedded www.openembedded.org. When I tried building a full system with X and Gnome on the top, it took 42 hours on my 2 GHz Pentium M laptop. I built myself a 2.66GHz Core i7 machine this spring, and on this machine (8 virtual cores) it takes about 2 hours to complete the same job. It builds a cross compiler in about 10 minutes :-)
> In windows there are various tools + compiler which help you develop an > application and then program into the flash. > > Can someone please point to some tutorial about how to start with from > scratch? > > > Thanks in advance > tama > > > > --------------------------------------- > This message was sent using the comp.arch.embedded web interface on > http://www.EmbeddedRelated.com >
-- Best Regards Ulf Samuelsson These are my own personal opinions, which may or may not be shared by my employer Atmel Nordic AB
>On 2009-12-16, Vladimir Vassilevsky <nospam@nowhere.com> wrote: >> >> >> tama wrote: >> >> >>> I want to learn linux/ embedded linux. >> >> Book: >> >> P. Raghavan, A. Lad, S. Neelakandan >> "Embedded Linux System Design and Development" > >The O'Reilly book is also good: > > Yaghmour, Masters, Ben-Yossef, and Gerum > "Building Embedded Linux Systems" > >-- >Grant Edwards grante Yow! I just heard the > at SEVENTIES were over!!
And
> visi.com I was just getting in
touch
> with my LEISURE SUIT!! >
Thanks for your reply. I have got this book plus understanding linux kernel and writting device drivers. I am going through these books. At this stage i am trying to understand what all thing are involved in project like this. How to setup the thing. --------------------------------------- This message was sent using the comp.arch.embedded web interface on http://www.EmbeddedRelated.com
>tama skrev 2009-12-16 15:18: >> Hi Guys, >> >> I am new to linux/embedded linux. I have a strong understanding of
embedded
>> hardware and C programming. I want to learn linux/ embedded linux. >> Recently got a board from boradcon EM2400II + 5.6 TFT LCd touch screen. >> >> Can some one please suggest what is the best point to start with. how
to
>> set the tool chain, linux os, boot loader, compiler. How to develop a
small
>> application just a led blink will do to test the setup. >> > >One of the easiest ways to get a complete Linux thing together is to >download >"Buildroot" from www.buildroot.org > >You need a Linux machine and git. (or download a tarball) > >make at91sam9263ek_defconfig >make > >Wait a few hours and then you have > >* Cross Compiler >* First level Bootloader (at91bootstrap) >* Second level bootloader (U-Boot) >* Linux Kernel >* Root file system >* Scripts for U-boot environment > >The Samsung chips are not supported. >By building for another ARM chip, you can use the root fs, >but you have to build the bootloader and kernel manually. > >Alternatively, you can switch to a chip which IS supported well by >Buildroot (Read AT91s) >Note that the vanilla Buildroot is lagging for AT91. >I have an experimental version based on the Buildroot 2009.08 release
which
>uses the latest 2.6.32 kernel. It is located in the private git area of >the Buildroot project. >Less tested than the vanilla stuff, but if you want to try the latest... >This also allows building the newer SAM9G45 & G10, which the vanilla >version does not. > >There are limitations to Buildroot, and I have started to use >OpenEmbedded www.openembedded.org. >When I tried building a full system with X and Gnome on the top, >it took 42 hours on my 2 GHz Pentium M laptop. > >I built myself a 2.66GHz Core i7 machine this spring, and on this
machine
>(8 virtual cores) it takes about 2 hours to complete the same job. >It builds a cross compiler in about 10 minutes :-) > > >> In windows there are various tools + compiler which help you develop an >> application and then program into the flash. >> >> Can someone please point to some tutorial about how to start with from >> scratch? >> >> >> Thanks in advance >> tama >> >> >> >> --------------------------------------- >> This message was sent using the comp.arch.embedded web interface on >> http://www.EmbeddedRelated.com >> > > >-- >Best Regards >Ulf Samuelsson >These are my own personal opinions, which may >or may not be shared by my employer Atmel Nordic AB > >
Thanks for your explanation. Its very helpfull. At present at my workplace we have a board which uses Cirrus logic EP9307 + touch screen. This board uses buildroot. The documentation is not helpfull hence I am trying to understand/learn the setup and bits involved in it. Eventually I want to develope an application which uses the touch panel and controls some device attached to the processor using CAN bus. EP2400II uses S3C2440A processor in it and the development kit is cheap. When you say I would have to build the bootloader and kernel manually. Can you please give some pointers to learn/understand this. Thanks Tama --------------------------------------- This message was sent using the comp.arch.embedded web interface on http://www.EmbeddedRelated.com
> >One of the easiest ways to get a complete Linux thing together is to >download >"Buildroot" from www.buildroot.org > >You need a Linux machine and git. (or download a tarball) > >make at91sam9263ek_defconfig >make > >Wait a few hours and then you have > >* Cross Compiler >* First level Bootloader (at91bootstrap) >* Second level bootloader (U-Boot) >* Linux Kernel >* Root file system >* Scripts for U-boot environment > >The Samsung chips are not supported. >By building for another ARM chip, you can use the root fs, >but you have to build the bootloader and kernel manually. > >Alternatively, you can switch to a chip which IS supported well by >Buildroot (Read AT91s) >Note that the vanilla Buildroot is lagging for AT91. >I have an experimental version based on the Buildroot 2009.08 release
which
>uses the latest 2.6.32 kernel. It is located in the private git area of >the Buildroot project. >Less tested than the vanilla stuff, but if you want to try the latest... >This also allows building the newer SAM9G45 & G10, which the vanilla >version does not. > >There are limitations to Buildroot, and I have started to use >OpenEmbedded www.openembedded.org. >When I tried building a full system with X and Gnome on the top, >it took 42 hours on my 2 GHz Pentium M laptop. > >I built myself a 2.66GHz Core i7 machine this spring, and on this
machine
>(8 virtual cores) it takes about 2 hours to complete the same job. >It builds a cross compiler in about 10 minutes :-)
Thanks for your replies and info on the books. Ulf Thanks for explaining the steps in volved in this kind of project. At my work place we have a board which uses Cirrus Logic EP9307 chip + 5.6" touch screen. I have been asked to work on this project. I want to develop a touch screen based application which will control some peripheral device over CAN bus. http://www.ibm.com/developerworks/library/l-embdev.html This link has a good explanation also. If I am not wrong buildroot is a gui based con-fig file generation utility When you say to manually compile the kernel and bootloader. Can you please give pointer to understand how it is done. cheers tama --------------------------------------- This message was sent using the comp.arch.embedded web interface on http://www.EmbeddedRelated.com