GeneralThis forum is for non-technical general discussion which can include both Linux and non-Linux topics. Have fun!
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
Do ny1 have a list of the files needed 2 b changed 2 port linux 2 an entirely new platform+architectute...if yes, plz drop a mail at nitinbansal85@gmail.com...
Thanks for ur reply. The architecture is ARM (more specifically ARM9), but I was expecting for an entirely new architecture. Reason is that if Im able to port Linux to an entirely new architecture, to which it has still not been ported, I would be able to add something to Linux community, as well as it will benefit me also. So, if u know the files needed to be changed, that will be a great help. Im not expecting the code or something similar, but just the compete list of files.
My guess is that if you are smart enough to port the kernel to a new arch, you'd be smart enough to discover which files needed to be changed or created. If you can find an old patchset which adds support for a previously-unsupported arch, then that patcheste would provide the best solid clues. Which arch are you thinking about? I mean which arch is not yet supported - the Sunbeam 51-Super Toaster?
In fact I have successfully ported , linux on ARM9 a year back...
1 > u have to have gcc cross compiled for arm (arm-linux-gcc)...
2> compiled linux kernel with that cc="arm-linux-gcc"
3> create rootfilesystem
........
transfer to board...depend on what u r using ...for me it was internel flash. with redboot as boot loader..
Your's patchset idea is really what I was looking for. Thanks
And about that new architecture to which linux is still not ported to is actually a custom designed microprocessor.
Me and my friend, who is working in Intel, are working on an idea of designing an over-simplified architecture for embedded world. Our main concern during designing phase is to keep it as simple as possible, yet design it in a way to support operating systems, eg. linux. Initially we are looking at ARM and Cray-1 architectures. So now u know why I required that list of files :-)
Hi bluepenguine,
As gnashley correctly pointed out, u have just cross-compiled it. It's just one aspect of porting, usually the final one. What would you do of the interrupts (almost every architecture handles them differently, so, have u written code for it to be handled), of the exceptions(specially the trap-like, or SWI's, which are used to make operating system calls to the kernel), of the initialization code for RAM's(DRAM, SDRAM, ...), for Flash(NOR, NAND, etc.?), for i/o controllers??? There is a lot of similar stuff to be dealt with at ASSEMBLY language level. That is what u can find in those files which I was looking for.
Gnashley, bit a more of ur advice...
Surely GCC will be required to be modified to support this new architecture.
...How do I do it. I expect it to also follow the same patch approach, but plz plz plz, could u tell me the patch no.. I searched the net, nowhere found the starting patch that actually introduced ARM to linux kernel. I want to start with ARM architecture related patch cause that is what I know in 32 bit architectures
yeah , I was thinking of just porting for existing one.......
Now for ur post concern, I had sbc board with arm9 processor...and that was developed by one small company ..
for specific purpose. They patched some of the files , I dont remember ..but since for building system from scratch , they used buildroot...
the modified files is mentioned in patch which they have provided...
I will try to provide u with the patched if u require.
I surely need those files, since a custom SBC is almost as if a new platform. But as u mentioned, the board is using arm9 processor(that is, this is already supported by linux), it means the company must have not provided you with the patched files for vector initialization, stack set-up, etc., since these have already been supported by linux kernel. The companty must have just remapped memory according to their own board's spec..
But, no doubt we can get a lot of insight into how they are doing this cause this is also one major part of porting procedure.
Saying in one line of my intentions of these posts:
"Why not have a "step-by-step" guide of porting linux to ""ANY"" architecture :-), no matter how simple or complex it is, which will describe all the routines, code, files, modules, etc. that needs modification in the porting process, rather than WAIT for the support for new architecture to ArRiVe or DePeNd on BSP from board manufacturers?"
Just think...u have a board (a custom build...by some company), that u purchased 2 years back and has become obsolete now. U added a new hardware, or upgraded existing one (may be used cortex processor in place of arm9), and alas!!...the board's not booting up now. What then?
Will u pay the comany thhose heavy amounts which they charge :-( ? No?...Therefore, having this step-by-step guide will enable anyone 2 make appropriate and accurate changes required to support new hardware, as well as completely new architectures.
Hope this project can be made big...since it would benefit Linux hugely...just think of linux...running everywhere...comp's, mobiles, watches, pda's, DVD players, just any electronic device...why?...just because everyone knows how to port linux to their favourite device:-))
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.