Re: [PATCH 0/6] Generic PWM API implementation

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Monday 23 November 2009, Grant Likely wrote: 
> *however* I do agree that it is the responsibility of platform code to
> set up chip-internal pin muxing and routing.

Fo over 95% of systems, I'd agree -- given that "platform" code
includes the arch/.../mach-X/board-Y.c files.  It's not realistic
to expect boot loaders to always handle that stuff.  If for no
other reason than the way they're produced:  get something that
will boot <OS> and call it done.  There will be nuances that need
to be corrected later.


> Actually, further than 
> that, I think it is actually firmware's responsibility to set up chip
> internal pin muxing because it leads to more common platform code in
> the kernel (less board specific fixups), but the kernel can fix it up
> in a pinch.

That something-less-than-5% remaining includes a lot of developer
boards, where there are multiple viable configurations.  The OS
needs to know which config it's going into at boot time.

And there's even a crazed subset of that 5% which wants to do
runtime reconfiguration.  Those folk do not accept static board
configs, whether done by a bootloader or anything else.

Some of that subset isn't entirely crazed.  I was reading a
chip errata document not long ago, which pointed out an issue
I've seen before:  suspend/resume cycles needed to reconfigure
things dynamically, to prevent leakage.  That's board-specific
and non-static.


>  But I'm not arguing about the pin (hardware) setup code.

That's good, since I don't think there's a Grand Scheme that
can be agreed to in that space, either for boot time setup
or runtime reconfiguration.  The hardware varies too much.

- Dave
--
To unsubscribe from this list: send the line "unsubscribe linux-embedded" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Gstreamer Embedded]     [Linux MMC Devel]     [U-Boot V2]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux ARM Kernel]     [Linux OMAP]     [Linux SCSI]

  Powered by Linux