Sergei Shtylyov-2 wrote: > > Hello. > > On 01-02-2011 17:47, Subhasish Ghosh wrote: > >> This patch adds the pruss CAN pin mux and registers the device >> with the pruss mfd driver. > >> Signed-off-by: Subhasish Ghosh<[email protected]> > [...] > >> diff --git a/arch/arm/mach-davinci/board-da850-evm.c >> b/arch/arm/mach-davinci/board-da850-evm.c >> index 7938c6d..285545f 100644 >> --- a/arch/arm/mach-davinci/board-da850-evm.c >> +++ b/arch/arm/mach-davinci/board-da850-evm.c >> @@ -1053,8 +1053,46 @@ static __init int da850_evm_init_cpufreq(void) >> static __init int da850_evm_init_cpufreq(void) { return 0; } >> #endif >> >> +const short da850_pruss_can_pins[] = { > > Only da850_evm_pruss_can_pins[]. > > [SG] -- Will Change this. > >> + DA850_PRUSS_PRU0_R31_0, DA850_PRUSS_PRU1_R30_15, >> + DA850_PRUSS_PRU1_R31_18, >> + -1 >> +}; >> + >> +static int __init da850_evm_setup_pruss_can(void) >> +{ >> + int ret, val = 0; >> + void __iomem *cfg_chip3_base; > > CFGCHIP3 is a signle register, so it doesn't make sense to talk about > its > base... > > [SG] -- ok, will rename to cfg_chip3_reg > >> + if (!machine_is_davinci_da850_evm()) >> + return 0; > > This check doesn't make sense as this function is not declared as > *_initcall(). It will only be called on this machine anyway. > > [SG] -- ok, will remove. > >> + ret = davinci_cfg_reg_list(da850_pruss_can_pins); >> + if (ret) >> + pr_warning("%s: da850_pruss_can_pins mux setup " >> + "failed:%d\n", __func__, ret); >> + cfg_chip3_base = DA8XX_SYSCFG0_VIRT(DA8XX_CFGCHIP3_REG); >> + val = __raw_readl(cfg_chip3_base); >> + val |= BIT(3); >> + __raw_writel(val, cfg_chip3_base); >> + >> + return ret; >> +} >> + >> +static struct da8xx_pruss_can_data can_data = { >> + .version = 1, >> +}; >> + >> static struct da8xx_pruss_devices pruss_devices[] = { >> - {.dev_name = NULL,}, >> + { >> + .dev_name = "da8xx_pruss_can", >> + .pdata = &can_data, >> + .pdata_size = sizeof(can_data), >> + .setup = da850_evm_setup_pruss_can, >> + }, >> + { >> + .dev_name = NULL, >> + }, > > Why you need a dummy lst element in this array? > > [SG] -- I am using this as a delimiter. In the MFD driver, I use this to > figure out the number of devices. > At that point I don't have the ARRAY_SIZE. > > WBR, Sergei > _______________________________________________ > Davinci-linux-open-source mailing list > [email protected] > http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source > >
-- View this message in context: http://davinci-linux-open-source.1494791.n2.nabble.com/Re-PATCH-v1-5-9-da850-pruss-CAN-board-specific-additions-tp5984507p5984717.html Sent from the davinci-linux-open-source mailing list archive at Nabble.com. _______________________________________________ Davinci-linux-open-source mailing list [email protected] http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source
