Your SlideShare is downloading. ×
0
Embedding Linux On The Encore Simputer
Embedding Linux On The Encore Simputer
Embedding Linux On The Encore Simputer
Embedding Linux On The Encore Simputer
Embedding Linux On The Encore Simputer
Embedding Linux On The Encore Simputer
Embedding Linux On The Encore Simputer
Embedding Linux On The Encore Simputer
Embedding Linux On The Encore Simputer
Embedding Linux On The Encore Simputer
Embedding Linux On The Encore Simputer
Embedding Linux On The Encore Simputer
Embedding Linux On The Encore Simputer
Embedding Linux On The Encore Simputer
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Embedding Linux On The Encore Simputer

1,530

Published on

Porting linux on Arm

Porting linux on Arm

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,530
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
73
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Embedding Linux on the Encore Simputer Samyeer Metrani Encore Software Limited
  • 2. Agenda <ul><li>The Encore Simputer </li></ul><ul><li>Building an ARM Linux Kernel </li></ul><ul><li>Porting to the Encore Simputer </li></ul><ul><li>Porting the 2.6-test9 kernel </li></ul>
  • 3. The Encore-Simputer
  • 4. The Encore Simputer <ul><li>206Mhz StrongARM Processor </li></ul><ul><li>32-64 MB DRAM – 16-32MB Flash </li></ul><ul><li>LCD Panel Color/Mono Display </li></ul><ul><li>TouchPanel Input </li></ul><ul><li>Internal Mic & Speaker </li></ul><ul><li>USB Slave and Serial Port PC Connectivity </li></ul><ul><li>Smartcard Interface </li></ul><ul><li>V.90 Internal Modem </li></ul><ul><li>USB Master </li></ul><ul><li>Compact Flash (CF II) </li></ul>
  • 5. What is on the Simputer? <ul><li>Stock Linux ARM Kernel </li></ul><ul><li>glibc 2.2.4 </li></ul><ul><li>XWindows 4.2 and Related X Libraries </li></ul><ul><li>GTK 1.2 Libraries </li></ul><ul><li>Networking Tools </li></ul><ul><ul><li>PPP, ftp, telnet, … </li></ul></ul><ul><li>Utilities and Feature Demo’s </li></ul>
  • 6. Tools Needed <ul><li>The ARM Toolchain </li></ul><ul><li>Using the skiff toolchain </li></ul><ul><li>Other pre-built toolchains </li></ul><ul><ul><li>ftp://ftp.arm.linux.org.uk/pub/armlinux/toolchain/ </li></ul></ul><ul><li>Building a toolchain. </li></ul>
  • 7. Building an ARM-Linux Kernel <ul><li>Selecting a Platform </li></ul><ul><ul><li>The Assabet Platform </li></ul></ul><ul><li>The Linux Kernel </li></ul><ul><ul><li>www.kernel.org </li></ul></ul><ul><li>Russel King’s Patches </li></ul><ul><ul><li>www.arm.linux.org.uk </li></ul></ul><ul><li>Building the first kernel </li></ul><ul><ul><li>Cross Compilation Support </li></ul></ul><ul><ul><li>Makefile Modifications. </li></ul></ul>
  • 8. Running the Kernel <ul><li>The Bootloader </li></ul><ul><ul><li>BLOB – www.lart.tudelft.nl </li></ul></ul><ul><ul><li>bootldr - http://www.handhelds.org/projects/cvsproj.html?project= bootldr </li></ul></ul><ul><li>What does the bootloader do </li></ul><ul><ul><li>Processor and Memory initialisation </li></ul></ul><ul><ul><li>Setup a serial console </li></ul></ul><ul><ul><li>Load kernel (and ramdisk) </li></ul></ul><ul><li>Bootloader support for the kernel. </li></ul>
  • 9. Adding a new architecture <ul><li>Registering a Machine Type </li></ul><ul><ul><li>www.arm.linux.org.uk/developer/machines/ </li></ul></ul><ul><ul><li>arch/arm/tools/mach-types </li></ul></ul><ul><li>Modifying the configuration menu </li></ul><ul><li>Creating a default configuration </li></ul><ul><li>Booting the First Kernel </li></ul><ul><li>Turning on Kernel Debug. </li></ul>
  • 10. Getting the Kernel Booting <ul><li>Bootloader specific initialisation </li></ul><ul><li>Kernel Notes </li></ul><ul><ul><li>http://www.arm.linux.org.uk/developer/kernelnotes.shtml </li></ul></ul><ul><li>Modifying Configure.help </li></ul><ul><li>Building a kernel patch. </li></ul>
  • 11. Machine Specific Initialisations <ul><li>Architecture specific initialisation </li></ul><ul><ul><li>esl_simputer.c, esl_simputer.h </li></ul></ul><ul><ul><li>Makefile Modifications </li></ul></ul><ul><li>Board specific Initialisations </li></ul><ul><ul><li>DRAM Support </li></ul></ul><ul><ul><li>Flash MAPS </li></ul></ul><ul><li>Bringing up the display </li></ul><ul><li>Building a new patch. </li></ul>
  • 12. What next… <ul><li>Hardware Interfaces </li></ul><ul><li>Peripheral Support </li></ul><ul><ul><li>Touchpanel </li></ul></ul><ul><ul><li>Audio Support </li></ul></ul><ul><ul><li>Keypad Support </li></ul></ul><ul><ul><li>RTC Support </li></ul></ul><ul><ul><li>USB, Compact Flash </li></ul></ul><ul><li>Kernel 2.6… </li></ul>
  • 13. Porting the 2.6-test9 kernel <ul><li>Why 2.6 kernel? </li></ul><ul><li>Toolchain Differences </li></ul><ul><ul><li>2.95.3, 3,3,1 … </li></ul></ul><ul><li>Bootloader Support </li></ul><ul><li>Configuration Files. </li></ul>
  • 14. Thank You Samyeer Metrani

×