[PATCH v3 2/8] ARM: S5PV310: Add new CPU initialization support
Kukjin Kim
kgene.kim at samsung.com
Wed Jul 21 08:55:51 EDT 2010
Kyungmin Park wrote:
>
> On Tue, Jul 20, 2010 at 9:11 PM, Kukjin Kim <kgene.kim at samsung.com> wrote:
> > From: Changhwan Youn <chaos.youn at samsung.com>
> >
> > This patch adds Samsung S5PV310/S5PC210 CPU support.
> > The S5PV310/S5PC210 integrates a ARM Cortex A9 multi-core.
> >
> > Signed-off-by: Changhwan Youn <chaos.youn at samsung.com>
> > Signed-off-by: Jongpill Lee <boyko.lee at samsung.com>
> > Signed-off-by: Jiseong Oh <jiseong.oh at samsung.com>
> > Signed-off-by: Kukjin Kim <kgene.kim at samsung.com>
> > ---
> > Changes since v2:
> > - Re-model platsmp.c on the Versatile Express as per Russell King's
suggestion.
> > And tested on the board.
> >
> > - Compared Versatile Express SMP code with Realview SMP code and
modified
> as needed.
> >
Hi,
(snip)
> > +static void arch_detect_cpu(void)
> > +{
> > + /* we do not need to do any cpu detection here at the moment. */
> > +
> > + fifo_mask = S5PV210_UFSTAT_TXMASK;
> > + fifo_max = 63 << S5PV210_UFSTAT_TXSHIFT;
>
> It's only valid when use the UART1. others 255 for UART0, 15 for others.
Ok..will fix it.
(snip)
> > +#define VMALLOC_END (0xE0000000)
>
> Increase to 0xF000'0000. but it will be removed from Eric's patch.
>
Right now, the 0xE0000000 is no problem as default.
But I will check this is appropriate again.
And according to his '[PATCH 08/13] [ARM] Make VMALLOC_END into a global
variable if not defined',
it doesn't mean absolutely remove it. why did you say like that.
+#ifndef VMALLOC_END
+extern unsigned long vmalloc_end;
+#define VMALLOC_END (vmalloc_end)
+#endif
+
And if required modify it for some machine, you can do it later with
mach_desc after applying Eric's patch.
Or as Russell said, there is the way to do it is to specify a vmalloc=
parameter to the kernel.
(snip)
> > + /*
> > + * Write the address of secondary startup into the
> > + * system-wide flags register. The boot monitor waits
> > + * until it receives a soft interrupt, and then the
> > + * secondary CPU branches to this address.
> > + */
> > + __raw_writel(BSYM(virt_to_phys(s5pv310_secondary_startup)),
> S5P_INFORM0);
>
> Do you really use the INFORM0? historically it's used for sleep &
> wakeup. new SoC has several INFORM register. So I recommend to use
> others.
>
It doesn't mean we should use INFORM0 for sleep & wakeup even though
historically used.
...I mean it doesn't matter and as you know, just need to sync with
boot-loader for it.
(snip)
> > +void s3c_i2c0_cfg_gpio(struct platform_device *dev)
> > +{
> > +/* will be implemented later */
> > +}
>
> Remove it and send separate patch. e.g.,I2C support on s5pc210.
>
I think i2c0 is un-conditionally compiled. So need to add i2c0 support in
here.
(snip)
> > +#define S5P_VA_COREPERI_BASE S3C_ADDR(0x00800000)
> > +#define S5P_VA_COREPERI(x) (S5P_VA_COREPERI_BASE + (x))
> > +#define S5P_VA_SCU S5P_VA_COREPERI(0x0)
> > +#define S5P_VA_GIC_CPU S5P_VA_COREPERI(0x100)
> > +#define S5P_VA_TWD S5P_VA_COREPERI(0x600)
> > +#define S5P_VA_GIC_DIST S5P_VA_COREPERI(0x1000)
> > +
> > +#define S5P_VA_L2CC S3C_ADDR(0x00900000)
>
> I'm not sure it's proper prefix.
>
It's no problem.
(snip)
Thanks.
Best regards,
Kgene.
--
Kukjin Kim <kgene.kim at samsung.com>, Senior Engineer,
SW Solution Development Team, Samsung Electronics Co., Ltd.
More information about the linux-arm-kernel
mailing list