From: tony@atomide.com (Tony Lindgren)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v5 1/8] clocksource: dmtimer: Remove all the exports
Date: Tue, 12 Dec 2017 10:21:50 -0800 [thread overview]
Message-ID: <20171212182150.GF14441@atomide.com> (raw)
In-Reply-To: <20171212180317.GB10337@lenoch>
* Ladislav Michl <ladis@linux-mips.org> [171212 18:06]:
> On Tue, Dec 12, 2017 at 09:00:54AM -0800, Tony Lindgren wrote:
> > Hmm what do you mean? We don't want to export tons of custom functions from
> > the timers in and then be in trouble when at some point we have a Linux
> > generic hw timer framework. We already had to deal with these custom
> > exports earlier with conversion to multiarch and then again with
> > device tree.
> >
> > For now, it's best to pass the timer information to the pwm driver in
> > platform data. In the long run that will be much easier to deal with than
> > fixing random drivers tinkering with the timer registers directly.
>
> All that register access would happen only in drivers/clocksource/timer-dm.c?
> So platform data will hold all function pointers needed for event capture
> and the pwm driver will do only interface to pwm framework.
Yes please.
> > Ideally the pwm driver would just do a request_irq from the dmtimer code
> > where dmtimer code would implement an interrupt controller. That would
> > be already most fo the Linux generic hardware timer framework right there :)
>
> I do not follow. Each general-purpose timer module has its own interrupt line,
> so claiming that irq directly using request_irq seems enough. Could you
> explain interrupt controller idea a bit more?
Well let's assume we have drivers/clocksource/timer-dm.c implement
an irq controller. Then the pwm driver would just do:
pwm9: dmtimer-pwm {
compatible = "ti,omap-dmtimer-pwm";
#pwm-cells = <3>;
ti,timers = <&timer9>;
ti,clock-source = <0x00>; /* timer_sys_ck */
interrupts-extended = <&timer9 IRQ_TYPE_SOMETHING>;
};
Then you can do whatever you need to in the pwm driver with
enable_irq/disable_irq + a handler?
If reading the line status is needed.. Then maybe the GPIO framework
needs to have hardware timer support instead?
Anyways, just thinking out loud how we could have a Linux generic
hardware timer framework that drivers like pwm could then use.
Regards,
Tony
next prev parent reply other threads:[~2017-12-12 18:21 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-12-12 6:12 [PATCH v5 0/8] omap: dmtimer: Move driver out of plat-omap Keerthy
2017-12-12 6:12 ` [PATCH v5 1/8] clocksource: dmtimer: Remove all the exports Keerthy
2017-12-12 7:16 ` Ladislav Michl
2017-12-12 7:31 ` Keerthy
2017-12-12 8:01 ` Ladislav Michl
2017-12-12 8:08 ` Keerthy
2017-12-12 8:19 ` Ladislav Michl
2017-12-12 8:22 ` Keerthy
2017-12-12 17:00 ` Tony Lindgren
2017-12-12 18:03 ` Ladislav Michl
2017-12-12 18:21 ` Tony Lindgren [this message]
2017-12-13 9:15 ` Ladislav Michl
2017-12-13 16:51 ` Tony Lindgren
2017-12-12 6:12 ` [PATCH v5 2/8] arm: omap: timer: Wrap the inline functions under OMAP2PLUS define Keerthy
2017-12-12 6:12 ` [PATCH v5 3/8] arm: omap: Move dmtimer.h out of plat-omap Keerthy
2017-12-12 6:12 ` [PATCH v5 4/8] arm: OMAP: Move dmtimer driver out of plat-omap to drivers under clocksource Keerthy
2017-12-12 6:12 ` [PATCH v5 5/8] dmtimer: Add timer ops to the platform data structure Keerthy
2017-12-12 6:12 ` [PATCH v5 6/8] clocksource: dmtimer: Populate the timer ops to the pdata Keerthy
2017-12-12 6:12 ` [PATCH v5 7/8] pwm: pwm-omap-dmtimer: Adapt driver to utilize dmtimer pdata ops Keerthy
2017-12-18 9:31 ` Ladislav Michl
2017-12-18 12:55 ` Keerthy
2017-12-19 4:58 ` Keerthy
2017-12-19 8:25 ` Keerthy
2017-12-19 15:21 ` Ladislav Michl
2017-12-20 4:42 ` Keerthy
2017-12-12 6:12 ` [PATCH v5 8/8] arm: omap: pdata-quirks: Remove unused timer pdata Keerthy
2017-12-18 11:16 ` [PATCH v5 0/8] omap: dmtimer: Move driver out of plat-omap Ladislav Michl
2017-12-18 11:30 ` [PATCH 1/2] clocksource: timer-dm: Make unexported functions static Ladislav Michl
2017-12-19 8:33 ` Keerthy
2017-12-18 11:31 ` [PATCH 2/2] clocksource: timer-dm: Check prescaler value Ladislav Michl
2017-12-19 8:30 ` Keerthy
2017-12-18 12:54 ` [PATCH v5 0/8] omap: dmtimer: Move driver out of plat-omap Keerthy
2017-12-18 13:14 ` Ladislav Michl
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=20171212182150.GF14441@atomide.com \
--to=tony@atomide.com \
--cc=linux-arm-kernel@lists.infradead.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).