Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

Learning Linux Programming - Custom Hardware

Status
Not open for further replies.

iceblu3710

Member level 3
Member level 3
Joined
Aug 10, 2009
Messages
61
Helped
1
Reputation
2
Reaction score
1
Trophy points
1,288
Activity points
1,955
I would like to learn how to compile and build distributions for hardware I create. For example when people port Android 2.2 to the Beagleboard I would not even know where to start.

Using something like the Beagleboard as a test bead is my idea and finding a good book on how to properly compile the kernel for your hardware, how to modify the kernel source so the available drivers use the right GPIO for example. Then build an entire distro.

I would then like to take it up to the next level and learn how to use the internal API's to allow the userspace to access my custom hardware. An example again is having a double wide line buffer on an FPGA that takes the LCD signals from the mcu and splits it across two screens. To satisfy timing and resolutions I would want a driver to form the lcd data properly.

Kind of vague I know but I think I got my goal across. Anybody recommend some books, tutorials or even online courses at schools is good.

Thanks!
 

I would like to learn how to compile and build distributions for hardware I create. For example when people port Android 2.2 to the Beagleboard I would not even know where to start.

Using something like the Beagleboard as a test bead is my idea and finding a good book on how to properly compile the kernel for your hardware, how to modify the kernel source so the available drivers use the right GPIO for example. Then build an entire distro.

I would then like to take it up to the next level and learn how to use the internal API's to allow the userspace to access my custom hardware. An example again is having a double wide line buffer on an FPGA that takes the LCD signals from the mcu and splits it across two screens. To satisfy timing and resolutions I would want a driver to form the lcd data properly.

Kind of vague I know but I think I got my goal across. Anybody recommend some books, tutorials or even online courses at schools is good.

Thanks!

If you want to learn Linux programming than you can use WRT54G router PCB board its support serial connection and its has JTAG header and CPU support MIPS and you can install OpenWRT linux on this router
 

I would like to learn how to compile and build distributions for hardware I create. For example when people port Android 2.2 to the Beagleboard I would not even know where to start.

Using something like the Beagleboard as a test bead is my idea and finding a good book on how to properly compile the kernel for your hardware, how to modify the kernel source so the available drivers use the right GPIO for example. Then build an entire distro.

I would then like to take it up to the next level and learn how to use the internal API's to allow the userspace to access my custom hardware. An example again is having a double wide line buffer on an FPGA that takes the LCD signals from the mcu and splits it across two screens. To satisfy timing and resolutions I would want a driver to form the lcd data properly.

Kind of vague I know but I think I got my goal across. Anybody recommend some books, tutorials or even online courses at schools is good.

Thanks!

Hi,
I guess you can start with Karim's Embedded linux system. read it properly.
Then you get a copy of buildroot which will help you to automate your build process.

Regarding GPIO several threads on this forum is available else you can see hawkboard
and beagleboard forums for assessing GPIO and even DSP.

Well one request if you succeed please don't forget to post what you learnt and how that happened.
 

@yura717: Awesome idea, I didn't even think of that and I'm currently running DD-WRT on my router too. Theirs one on Kijiji for $20 I will pick up right away. I also have a Segger J-Link so I don't need to worry about bricking anything either.

@bluehole: I checked out that book, Its one of the few ref books I can actually afford. Thanks.

I will Hopefully have some news in the coming weeks!
 

How much RAM/Flash should I have available for a small embedded Linux test machine?

I have a router 240MHz, 8Mb RAM, 2MB Flash but that is awfully tiny. I don't plan on doing anything with the device other than get a custom kernel working with serial comms. Maybe bit bang an interface with a few GPIO.

I think I can make it fit but I have no idea how large the usual embedded Linux is. On my desktop I have made a compact flash distro for test and using busybox and only needed drivers I was at 13Mb. DD-WRT runs on the 4MB devices but not the 2MB ones but they have a lot of extras I wont need so...
 

For Embedded linux systems you have to have which are the peripherals exist on the board. according to that you have to configure the kernel.
In that way you can save space. next as opposed to Desktop PC Routers don't require much functionality. they only serve a single purpose. So no other task is needed. Hence again space is saved.

So it might be possible to have a CUSTOM linux kernel to run on a 8MB RAM and 2MB FLASH. But I never did such a small kernel.

I guess the current embedded board have more RAM and flash. What I prefer is a system with 128MB RAM and 256MB flash.
BUT 64MB RAM and 256MB flash based boards are used in consumer products too.

So only it depends on the Application or purpose for which the system is designed.
 

Status
Not open for further replies.

Similar threads

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top