User: Password:
Subscribe / Log in / New account

ARM wrestling

ARM wrestling

Posted Apr 8, 2011 13:14 UTC (Fri) by tdwebste (guest, #18154)
In reply to: ARM wrestling by arnd
Parent article: ARM wrestling

"a single subarchitecture for all modern SoCs"

Perhaps I don't see how this all fits together. I am interested.

Each SoC differs in varying degrees. And is integrated into boards which differ in varying degrees. Which connects to a variety subcomponents.

Just about anybody who uses a board ends up being a kernel developer, writing SPI driver code if nothing else. There is a huge variation in skill. I don't see how a single subarchitecture can ever keep up with the growth in variations.

I would be happy if each variation was a branch, with branch maintainers.

(Log in to post comments)

ARM wrestling

Posted Apr 8, 2011 15:23 UTC (Fri) by arnd (subscriber, #8866) [Link]

There are multiple things currently in per-subarchitecture trees:

* Board specific code:
Should not really be needed as much, and does not hurt cross-subarchitecture integration.

* Device drivers (irq, timer, iommu, gpio):
Are well abstracted, have any number of them. These are most significant hardware differences, but they don't need to be hardcoded at all.

* Duplicated infrastructure files:
This is what we want to get rid of really. E.g. all the mach/*.h header files keep us from building a single kernel for all SoCs, so we should remove them.

ARM wrestling

Posted Apr 8, 2011 18:28 UTC (Fri) by dlang (subscriber, #313) [Link]

the discussion on linux-kernel has shown that a lot of the drivers are not well abstracted, that has been identified as a significant part of the problem

ARM wrestling

Posted Apr 8, 2011 21:37 UTC (Fri) by arnd (subscriber, #8866) [Link]

I think what the discussion has shown is that a number of drivers are not well written and could be made more generic rather than duplicated. They are however reasonably well abstracted in the way that it's possible to exchange e.g. one interrupt controller for another one and have everything else still work.

There are still areas that need a lot of improvement here, but it's not standing in the way of generalizing the subarchitectures.

Copyright © 2017, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds