From: Marc Kleine-Budde <mkl-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
To: Wolfgang Grandegger <wg-5Yr1BZd7O62+XT7JhA+gdA@public.gmane.org>
Cc: socketcan-core-0fE9KPoRgkgATYTw5x5z8w@public.gmane.org,
netdev-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
U Bhaskar-B22300 <B22300-KZfg59tc24xl57MIdRCFDg@public.gmane.org>
Subject: Re: [RFC 5/5] [powerpc] Implement a p1010rdb clock source.
Date: Mon, 08 Aug 2011 15:44:36 +0200 [thread overview]
Message-ID: <4E3FE844.6090005@pengutronix.de> (raw)
In-Reply-To: <4E3FDFC9.7080508-5Yr1BZd7O62+XT7JhA+gdA@public.gmane.org>
[-- Attachment #1.1: Type: text/plain, Size: 3890 bytes --]
On 08/08/2011 03:08 PM, Wolfgang Grandegger wrote:
> On 08/08/2011 01:31 PM, Robin Holt wrote:
>> On Mon, Aug 08, 2011 at 10:37:58AM +0200, Wolfgang Grandegger wrote:
>>> On 08/06/2011 04:34 PM, Robin Holt wrote:
>>>> flexcan driver needs the clk_get, clk_get_rate, etc functions
>>>> to work. This patch provides the minimum functionality.
>>>
>>> This needs some more general thoughts... apart from the question where
>>> the code should go.
>>>
>>> Like for the MSCAN on the MPC5200, the user should be *able* to select
>>> an appropriate clock source and divider via DTS node properties.
>>> Currently it seems, that the DTS properties must match some
>>> pre-configured values, most likely set by the boot loader. Please
>>> correct me if I'm wrong. For me this is generic and should go into the
>>> Flexcan driver. From there, a platform specific function, e.g.
>>> flexcan_set_clock() might be called.
>>
>> OK. Dug a bit more. The p1010 built-in clocksource seems to be the
>> periphereal clock frequency which is system bus frequency divided
>> by 2. The clock source can not be changed, but the clock divider can
>> by freezing the interface and setting the CTRL register. This appears
>> to only be done by the boot loader. I do not see why we can not leave
>
> And likely Freescale's bootloader does also fixup the DTS Flexcan node.
> Ah, oh, there's already someting in the mainline U-BOOT:
>
> commit 65bb8b060a873fa4f5188f2951081f6011259614
> Author: Bhaskar Upadhaya <Bhaskar.Upadhaya-KZfg59tc24xl57MIdRCFDg@public.gmane.org>
> Date: Fri Mar 4 20:27:58 2011 +0530
>
> powerpc/85xx: Fix up clock_freq property in CAN node of dts
>
> Fix up the device tree property associated with the Flexcan clock
> frequency. This property is used to calculate the bit timing parameters
> for Flexcan.
>
> Signed-off-by: Bhaskar Upadhaya <Bhaskar.Upadhaya-KZfg59tc24xl57MIdRCFDg@public.gmane.org>
> Signed-off-by: Kumar Gala <galak-XVmvHMARGAS8U2dJNN8I7kB+6BGkLq7r@public.gmane.org>
>
>
>> that functionality in the boot loader and then go back to a variation
>> on my earlier flexcan_clk_* patch. Is that close to the direction you
>> think we should go or have I completely misunderstood your wishes?
>
> The boot loader might not chose the optimum clock source and frequency,
> which might even be application dependent. Therefore it would be nice to
> allow the user to change it if necessary. Some CAN interfaces do even
> allow to use an external clock source. The main question is where we add
> that functionality. As more as I think of it, the clock interface would
> not be that bad, especially if it's available.
>
> Furthermore, if the bootloader sets the clock source and divider, we do
> not need device tree properties for it. A simply register lookup would
> reveal what values are used. We may just need the input clock source.
If the bootloader touches the divider _in_ the flexcan core, that would
make absolutely no sense. The clock divider in the flexcan core (in the
CTRL register) is the bitrate pre-scaler calculated by the bit-timing
algorithm.
What we need in the device tree is, from my point of view.
a) the used clock source (bus clock or xtal clock)
b) the frequency of that clock
These problems are solved on arm via:
a) bus clock is hard coded [1]
b) get that clock frequency via clk_get_rate().
Marc
[1] I just talked to Sascha (the i.mx maintainer), there's no support
for the xtal clock, which is the OSC_AUDIO on mx35, in the i.mx clock
framework so far.
--
Pengutronix e.K. | Marc Kleine-Budde |
Industrial Linux Solutions | Phone: +49-231-2826-924 |
Vertretung West/Dortmund | Fax: +49-5121-206917-5555 |
Amtsgericht Hildesheim, HRA 2686 | http://www.pengutronix.de |
[-- Attachment #1.2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 262 bytes --]
[-- Attachment #2: Type: text/plain, Size: 188 bytes --]
_______________________________________________
Socketcan-core mailing list
Socketcan-core-0fE9KPoRgkgATYTw5x5z8w@public.gmane.org
https://lists.berlios.de/mailman/listinfo/socketcan-core
next prev parent reply other threads:[~2011-08-08 13:44 UTC|newest]
Thread overview: 66+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-08-06 14:34 [RFC 0/4] [flexcan] Add support for powerpc (freescale p1010) -V6 Robin Holt
2011-08-06 14:34 ` [RFC 2/5] [flexcan] Abstract off read/write for big/little endian Robin Holt
2011-08-06 14:34 ` [RFC 3/5] [flexcan] Add of_match to platform_device definition Robin Holt
[not found] ` <1312641270-6018-1-git-send-email-holt-sJ/iWh9BUns@public.gmane.org>
2011-08-06 14:34 ` [RFC 1/5] [flexcan] Replace mach/clock.h with linux/clkdev.h Robin Holt
2011-08-06 14:34 ` [RFC 4/5] [flexcan] Add support for FLEXCAN_DEBUG Robin Holt
2011-08-06 14:34 ` [RFC 5/5] [powerpc] Implement a p1010rdb clock source Robin Holt
[not found] ` <1312641270-6018-6-git-send-email-holt-sJ/iWh9BUns@public.gmane.org>
2011-08-08 8:37 ` Wolfgang Grandegger
[not found] ` <4E3FA066.3020301-5Yr1BZd7O62+XT7JhA+gdA@public.gmane.org>
2011-08-08 9:15 ` Robin Holt
2011-08-08 11:31 ` Robin Holt
2011-08-08 13:05 ` Marc Kleine-Budde
[not found] ` <20110808113136.GS4926-sJ/iWh9BUns@public.gmane.org>
2011-08-08 12:07 ` Marc Kleine-Budde
[not found] ` <4E3FD184.1070706-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
2011-08-08 12:48 ` Robin Holt
[not found] ` <20110808124842.GT4926-sJ/iWh9BUns@public.gmane.org>
2011-08-08 13:00 ` Marc Kleine-Budde
[not found] ` <4E3FDDD6.1020802-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
2011-08-08 13:16 ` Wolfgang Grandegger
2011-08-08 13:08 ` Wolfgang Grandegger
[not found] ` <4E3FDFC9.7080508-5Yr1BZd7O62+XT7JhA+gdA@public.gmane.org>
2011-08-08 13:44 ` Marc Kleine-Budde [this message]
[not found] ` <4E3FE844.6090005-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
2011-08-08 14:03 ` Robin Holt
[not found] ` <20110808140340.GV4926-sJ/iWh9BUns@public.gmane.org>
2011-08-08 14:19 ` Marc Kleine-Budde
[not found] ` <4E3FF068.6070905-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
2011-08-08 14:29 ` Robin Holt
2011-08-08 14:19 ` Wolfgang Grandegger
2011-08-08 13:56 ` Robin Holt
[not found] ` <20110808135630.GU4926-sJ/iWh9BUns@public.gmane.org>
2011-08-08 14:16 ` Wolfgang Grandegger
[not found] ` <4E3FEFBB.9050103-5Yr1BZd7O62+XT7JhA+gdA@public.gmane.org>
2011-08-08 14:21 ` Robin Holt
[not found] ` <20110808142153.GW4926-sJ/iWh9BUns@public.gmane.org>
2011-08-08 14:37 ` Wolfgang Grandegger
[not found] ` <4E3FF4B8.2010603-5Yr1BZd7O62+XT7JhA+gdA@public.gmane.org>
2011-08-08 14:44 ` Robin Holt
[not found] ` <20110808144424.GY4926-sJ/iWh9BUns@public.gmane.org>
2011-08-08 14:59 ` Wolfgang Grandegger
[not found] ` <4E3FF9EA.6030601-5Yr1BZd7O62+XT7JhA+gdA@public.gmane.org>
2011-08-08 15:09 ` Robin Holt
[not found] ` <20110808150925.GA4926-sJ/iWh9BUns@public.gmane.org>
2011-08-08 15:18 ` Wolfgang Grandegger
[not found] ` <4E3FFE61.4090109-5Yr1BZd7O62+XT7JhA+gdA@public.gmane.org>
2011-08-08 15:22 ` Wolfgang Grandegger
[not found] ` <4E3FFF41.7030401-5Yr1BZd7O62+XT7JhA+gdA@public.gmane.org>
2011-08-08 15:38 ` Robin Holt
[not found] ` <20110808153835.GC4926-sJ/iWh9BUns@public.gmane.org>
2011-08-08 15:50 ` Wolfgang Grandegger
2011-08-08 15:23 ` Marc Kleine-Budde
2011-08-08 15:25 ` Robin Holt
[not found] ` <20110808152549.GB4926-sJ/iWh9BUns@public.gmane.org>
2011-08-08 15:27 ` Wolfgang Grandegger
2011-08-08 15:14 ` Marc Kleine-Budde
[not found] ` <4E3FFD5B.7080000-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
2011-08-08 15:33 ` Wolfgang Grandegger
[not found] ` <4E4001E1.3030508-5Yr1BZd7O62+XT7JhA+gdA@public.gmane.org>
2011-08-08 15:55 ` Robin Holt
[not found] ` <20110808155540.GD4926-sJ/iWh9BUns@public.gmane.org>
2011-08-08 15:59 ` Robin Holt
2011-08-08 16:03 ` Wolfgang Grandegger
[not found] ` <4E4008BA.6030303-5Yr1BZd7O62+XT7JhA+gdA@public.gmane.org>
2011-08-08 16:08 ` Robin Holt
[not found] ` <20110808160810.GF4926-sJ/iWh9BUns@public.gmane.org>
2011-08-08 18:37 ` Wolfgang Grandegger
[not found] ` <4E402CF1.1040300-5Yr1BZd7O62+XT7JhA+gdA@public.gmane.org>
2011-08-08 19:14 ` Robin Holt
2011-08-08 20:27 ` Robin Holt
2011-08-08 18:53 ` Marc Kleine-Budde
2011-08-09 7:57 ` U Bhaskar-B22300
[not found] ` <9C64B7751C3BCA41B64A68E23005A7BE1B9D6C-TcFNo7jSaXPiTqIcKZ1S2K4g8xLGJsHaLnY5E4hWTkheoWH0uzbU5w@public.gmane.org>
2011-08-09 8:13 ` Marc Kleine-Budde
2011-08-09 9:34 ` U Bhaskar-B22300
[not found] ` <9C64B7751C3BCA41B64A68E23005A7BE1BEFCE-TcFNo7jSaXM0vywKSws3iq4g8xLGJsHaLnY5E4hWTkheoWH0uzbU5w@public.gmane.org>
2011-08-09 10:41 ` Wolfgang Grandegger
2011-08-09 8:32 ` Wolfgang Grandegger
2011-08-09 9:27 ` U Bhaskar-B22300
2011-08-09 10:48 ` Wolfgang Grandegger
[not found] ` <4E41108F.1090104-5Yr1BZd7O62+XT7JhA+gdA@public.gmane.org>
2011-08-09 12:41 ` U Bhaskar-B22300
[not found] ` <9C64B7751C3BCA41B64A68E23005A7BE1C3552-TcFNo7jSaXPiTqIcKZ1S2K4g8xLGJsHaLnY5E4hWTkheoWH0uzbU5w@public.gmane.org>
2011-08-09 12:49 ` Robin Holt
[not found] ` <20110809124919.GS4926-sJ/iWh9BUns@public.gmane.org>
2011-08-09 13:03 ` Wolfgang Grandegger
2011-08-09 13:17 ` Robin Holt
[not found] ` <4E413036.5080207-5Yr1BZd7O62+XT7JhA+gdA@public.gmane.org>
2011-08-09 13:35 ` Robin Holt
[not found] ` <20110809133531.GV4926-sJ/iWh9BUns@public.gmane.org>
2011-08-09 13:44 ` U Bhaskar-B22300
[not found] ` <9C64B7751C3BCA41B64A68E23005A7BE1C4746-TcFNo7jSaXPiTqIcKZ1S2K4g8xLGJsHaLnY5E4hWTkheoWH0uzbU5w@public.gmane.org>
2011-08-09 13:50 ` Robin Holt
2011-08-09 14:03 ` Wolfgang Grandegger
2011-08-09 14:09 ` Robin Holt
[not found] ` <20110809140901.GX4926-sJ/iWh9BUns@public.gmane.org>
2011-08-09 14:14 ` Wolfgang Grandegger
2011-08-09 12:50 ` Marc Kleine-Budde
[not found] ` <4E412D26.9020608-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
2011-08-09 12:54 ` U Bhaskar-B22300
2011-08-09 13:19 ` Wolfgang Grandegger
2011-08-08 14:48 ` Robin Holt
[not found] ` <20110808144808.GZ4926-sJ/iWh9BUns@public.gmane.org>
2011-08-08 15:16 ` Wolfgang Grandegger
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4E3FE844.6090005@pengutronix.de \
--to=mkl-bicnvbalz9megne8c9+irq@public.gmane.org \
--cc=B22300-KZfg59tc24xl57MIdRCFDg@public.gmane.org \
--cc=netdev-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=socketcan-core-0fE9KPoRgkgATYTw5x5z8w@public.gmane.org \
--cc=wg-5Yr1BZd7O62+XT7JhA+gdA@public.gmane.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).