Subject: [PATCH 3/4] arm: add basic support for Mediatek MT6589 boards

From: [email-masked] (Maxime Ripard)
Date: Fri, 11 Apr 2014 11:53:03 +0200

On Fri, Apr 11, 2014 at 10:43:30AM +0100, Marc Zyngier wrote:
> On 11/04/14 10:11, Matthias Brugger wrote:
> > 2014-04-10 11:01 GMT+02:00 Marc Zyngier <[email-masked]>:
> >> A couple of things on top of Rob's comments:
> >>
> >> On Wed, Apr 09 2014 at 10:50:33 pm BST, Rob Herring <[email-masked]> wrote:
> >>> On Wed, Apr 9, 2014 at 2:45 PM, Matthias Brugger <[email-masked]> wrote:
> >>>> This adds a generic devicetree board file and a dtsi for boards
> >>>> based on the MT6589 SoCs from Mediatek.
> >>>>
> >>>> Apart from the generic parts (gic, clocks) the only component
> >>>> currently supported are the timers.
> >>>>
> >>>> Signed-off-by: Matthias Brugger <[email-masked]>
> >>
> >> [...]
> >>
> >>>> diff --git a/arch/arm/mach-mediatek/Kconfig b/arch/arm/mach-mediatek/Kconfig
> >>>> new file mode 100644
> >>>> index 0000000..c0139ca
> >>>> --- /dev/null
> >>>> +++ b/arch/arm/mach-mediatek/Kconfig
> >>>> @@ -0,0 +1,14 @@
> >>>> +config ARCH_MEDIATEK
> >>>> +       bool "Mediatek MT6589 SoC" if ARCH_MULTI_V7
> >>>> +       select ARCH_REQUIRE_GPIOLIB
> >>>
> >>> Then where is your GPIO driver?
> >>>
> >>>> +       select ARM_GIC
> >>>> +       select CACHE_L2X0
> >>>> +       select HAVE_ARM_TWD if LOCAL_TIMERS
> >>
> >> Hell no! ;-) ARM_ARCH_TIMER is the way (please also add the missing
> >> node).
> > 
> > I considered this, but the timer wasn't able to get it's clock frequency:
> > "Architected timer frequency not available
> > Division by zero in kernel."
> 
> This is because your bootloader/firmware is utterly broken, and doesn't
> set CNTFRQ (it must be set on all CPUs, from secure mode). As a
> *workaround*, you can set the timer frequency in the timer node, but
> that's just a hack, and will prevent virtual machines from running on
> such hardware.

Is it?

>>From what I understood from ARM's ARM, CNTFRQ must be set during the
system boot, but even though the arch timer driver can fetch the
frequency from clock-frequency, I don't see anywhere that it actually
writes to CNTFRQ whatever it retrieved.

But I'm probably missing something here...

Maxime

-- 
Maxime Ripard, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20140411/b636ad7c/attachment.sig>