Dave,
> From: David Brownell <[email protected]>
>
> Generalize the psc_mux() stuff to stop assuming there are only
> DM6446 chips, and specifically to handle things the DM355 EVM
> will need: SPI0, MMC0, MMC1, ASP1.
>
> Note that I think the clock framework (PSC) and pinmux framework
> really ought to be properly separated. The pinmux stuff seems
> like it should fit well into devices-dmXXX.c logic, with boards
> declaring what device they use and how they're configured. That
> works cleanly on other platforms.
>
> Likewise with muxing IRQ and EDMA channels. Do it all as part
> of device setup. (And maybe let it be reconfigured at runtime
> for oddball systems.)
>
> Signed-off-by: David Brownell <[email protected]>
> ---
> arch/arm/mach-davinci/psc.c | 80
> +++++++++++++++++++++++++++++++++++++++++-
> 1 file changed, 79 insertions(+), 1 deletion(-)
<snip>
> /* Enable or disable a PSC domain */
> void davinci_psc_config(unsigned int domain, unsigned int id, char enable)
> {
> @@ -127,6 +196,15 @@ void davinci_psc_config(unsigned int dom
>
> void __init davinci_psc_init(void)
> {
> + if (cpu_is_davinci_dm644x()) {
> + davinci_psc_mux = dm6446_psc_mux;
> + } else if (cpu_is_davinci_dm355()) {
> + davinci_psc_mux = dm355_psc_mux;
> + } else {
> + pr_err("PSC: no PSC mux hooks for this CPU\n");
> + davinci_psc_mux = nop_psc_mux;
> + }
> +
davinci_psc_init is not being called for DM646x EVM, hence davinci_psc_mux is
not defined for DM646x. This is resulting in DM646x board not booting up. I'll
submit a patch to fix this.
> davinci_psc_config(DAVINCI_GPSC_ARMDOMAIN, DAVINCI_LPSC_VPSSMSTR, 1);
> davinci_psc_config(DAVINCI_GPSC_ARMDOMAIN, DAVINCI_LPSC_VPSSSLV, 1);
> davinci_psc_config(DAVINCI_GPSC_ARMDOMAIN, DAVINCI_LPSC_TPCC, 1);
The above configurations will hold good only for DM644x and DM355. So they need
to be guarded by cpu_is_davinci_*** macros.
Regards, Sudhakar_______________________________________________
Davinci-linux-open-source mailing list
[email protected]
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source