ARM Machine SoC I/O setup and PAD initialization code

Russell King - ARM Linux linux at arm.linux.org.uk
Thu Jul 22 04:46:49 EDT 2010


On Thu, Jul 22, 2010 at 04:29:48PM +0900, Simon Horman wrote:
> On Thu, Jul 22, 2010 at 08:20:34AM +0100, Russell King - ARM Linux wrote:
> > On Thu, Jul 22, 2010 at 11:32:53AM +0900, Simon Horman wrote:
> > > Would it be feasible to  use Linux + kexec as the boot loader as
> > > a long term solution to fixing boot loaders by eliminating them?
> > 
> > So what you're proposing is that a broken boot loader should boot a
> > version of Linux to fix the pin MUX, which then kexecs a kernel which
> > doesn't have that code?
> > 
> > What's the point of that - when the first kernel will be able to run
> > the system?
> 
> Ok, point taken, its impossible to remove the boot loaders.

No, my point was that if you're going to put pin mux code into the
kernel, there's no point building the pin mux code out of the kernel
which you're going to use to run your device.

So, what we tend to do as a general rule on ARM is to put the pin mux
code into the kernel so that we're less reliant on any boot loader to
get it right.  And as I've already said, we have some cases where we
need to change the pin muxing at runtime, and at least one case where
it needs to be changed by the device driver operating on the pins.



More information about the linux-arm-kernel mailing list