Thread (29 messages) 29 messages, 4 authors, 2013-01-09

[PATCH v2 05/11] ARM: dt: tegra30: Add device node for APB MISC

From: pgaikwad@nvidia.com (Prashant Gaikwad)
Date: 2013-01-04 05:32:32
Also in: linux-tegra, lkml

On Friday 04 January 2013 10:51 AM, Stephen Warren wrote:
On 01/03/2013 09:26 PM, Prashant Gaikwad wrote:
quoted
On Friday 04 January 2013 09:30 AM, Stephen Warren wrote:
quoted
On 01/03/2013 08:23 PM, Prashant Gaikwad wrote:
quoted
On Friday 04 January 2013 08:35 AM, Stephen Warren wrote:
quoted
On 01/03/2013 06:48 PM, Prashant Gaikwad wrote:
quoted
On Thursday 03 January 2013 09:41 PM, Stephen Warren wrote:
...
quoted
quoted
quoted
quoted
OK. It sounds like we need a true APB MISC driver then, to
abstract the
differences; the clock driver really shouldn't be touching the APB
MISC
registers in all likelihood, unless a subset of the sections you
mention
above are truly dedicated to clock functionality.
I don't think it is a good idea to create a driver for APB MISC, all
registers are used by different drivers.
Well, it's even worse to have a bunch of other drivers randomly trample
on a set of registers they don't own.
quoted
Only chip id revision registers are used in clock driver.
There are already global variables exposed by the Tegra fuse driver;
can
you just read those?
It is not about variables or some value, we have to read some apb
register to flush the write operation in apb bus before we disable
peripheral clock.
We are using chip id revision register for this purpose.
Ah. That's definitely not something the clock driver should be doing
directly. It's probably OK to add a custom Tegra-specific function to
some file in arch/arm/mach-tegra to implement this. Even better would be
a full bus driver for the APB bus, but that's probably too much bloat
for now.
tegra_init_fuse in arch/arm/mach-tegra/fuse.c is already reading chip id
revision register, so I can implement one function to read this register
in fuse.c, which will be used by clock driver and tegra_init_fuse.
But then we need to add it to some header file in include/mach or
include/linux, where? any suggestion?
Somewhere other than arch/arm/mach-tega/include/mach/ would be good, so
we don't have to move it later when we enable multi-platform zImage for
Tegra. Perhaps include/linux/tegra-soc.h? I guess we could move the
existing mach/powergate.h contents into that file later too.
include/linux/tegra-soc.h seems fine, I will send updated patch series.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help