17 Sep, 2014
5 commits
-
no functional changes, just making sure comment
follows Coding Style.Acked-by: Jason Cooper
Signed-off-by: Felipe Balbi
Signed-off-by: Tony Lindgren -
We already hold the number of Pending registers
in omap_nr_pending. Let's use that instead.Acked-by: Jason Cooper
Signed-off-by: Felipe Balbi
Signed-off-by: Tony Lindgren -
Just move the code over as it has no dependencies
on arch/arm/ anymore.Signed-off-by: Felipe Balbi
Signed-off-by: Tony Lindgren -
OMAP INTC irqchip driver will be moved under
drivers/irqchip/ soon but we still have a dependency
with mach-omap2 when it comes to idle functions.In order to make it easy to share those function
prototypes with OMAP PM code, we introduce this new
header.To avoid modifying several board-files and some of
the PM-related code, we just include the new header
from common.h which was already included by all
users of IRQ-related PM code.Signed-off-by: Felipe Balbi
Signed-off-by: Tony Lindgren -
By moving i2c devices to DT we can clean up
i2c_board_info and fix a problem with moving
INTC to irq domain where IRQs can be renumbered
on each boot.Cc: Aaro Koskinen
Signed-off-by: Felipe Balbi
Signed-off-by: Tony Lindgren
12 Sep, 2014
32 commits
-
now that we don't need to support legacy board-files,
we can completely switch over to a linear irq domain
and make use of irq_alloc_domain_generic_chips() to
allocate all generic irq chips for us.Signed-off-by: Felipe Balbi
Signed-off-by: Tony Lindgren -
we don't need the ifdef if we have omap_nr_pending
telling us how many pending registers we have
on current platform. This solves a possible
problem where we could try to handle bogus
interrupts on OMAP2 and OMAP3 if using single
zImage kernel, because we would end up reading
the following pending FIQ register.Signed-off-by: Felipe Balbi
Signed-off-by: Tony Lindgren -
that variable will tell us how many INTC_PENDING_IRQn
registers we have. It'll be used on a following patch
to cleanup omap_intc_handle_irq() a bit.Signed-off-by: Felipe Balbi
Signed-off-by: Tony Lindgren -
we can set our global omap_nr_irqs early on
and drop the extra argument to omap_init_irq().Signed-off-by: Felipe Balbi
Signed-off-by: Tony Lindgren -
There's no need for that header to be included.
Signed-off-by: Felipe Balbi
Signed-off-by: Tony Lindgren -
that was just a no-op wrapper around omap_intc_handle_irq
anyway.Signed-off-by: Felipe Balbi
Signed-off-by: Tony Lindgren -
now that we're calling set_handle_irq() from
init_irq(), we can safely drop all callers to
omap3_intc_handle_irq() and its definition.Signed-off-by: Felipe Balbi
Signed-off-by: Tony Lindgren -
the idea is that board-files won't need to set
.handle_irq on their machine_descs, which lets
us drop a little more pointless code.Signed-off-by: Felipe Balbi
Signed-off-by: Tony Lindgren -
We want .init_irq to call set_irq_handle() for
legacy platforms. Note that this code will also
be dropped once omap2/3 devices are completely
moved to DT.Signed-off-by: Felipe Balbi
Signed-off-by: Tony Lindgren -
we are now infering number of IRQ lines based
on correct compatible flag, which renders this
binding completely useless.Signed-off-by: Felipe Balbi
Signed-off-by: Tony Lindgren -
we don't need that anymore since specific
devices are passing correct compatible flags.Signed-off-by: Felipe Balbi
Signed-off-by: Tony Lindgren -
that way, our intc driver can figure out how
many IRQ lines INTC has.Signed-off-by: Felipe Balbi
Signed-off-by: Tony Lindgren -
so far, only am33xx has 128 lines, all other devices
have only 96.Signed-off-by: Felipe Balbi
Signed-off-by: Tony Lindgren -
with this, we can use a compatible flag to figure
out how many irq lines are wired up, no need for
our TI-specific ti,intc-size binding.Signed-off-by: Felipe Balbi
Signed-off-by: Tony Lindgren -
now we can safely drop those fields from our machine_desc.
While at that, also drop the now unused omap_intc_of_init()
definition.Signed-off-by: Felipe Balbi
Signed-off-by: Tony Lindgren -
IRQCHIP_DECLARE macro is used to declare the same
of_device_id structure for irqchips, it's just
a helper. No functional changes.Note that we're temporarily including irqchip.h
with its full path, until we move this driver
to drivers/irqchip/.Signed-off-by: Felipe Balbi
Signed-off-by: Tony Lindgren -
this will let us drop .handle_irq and .init_irq fields
from our generic machine_descs.Signed-off-by: Felipe Balbi
Signed-off-by: Tony Lindgren -
nobody uses that function outside of this file,
so we don't need to expose it.Signed-off-by: Felipe Balbi
Signed-off-by: Tony Lindgren -
no functional changes, just moving code around.
Signed-off-by: Felipe Balbi
Signed-off-by: Tony Lindgren -
remove ifdef around omap3 INTC support. This
will make it easier to reuse code for PM.Signed-off-by: Felipe Balbi
Signed-off-by: Tony Lindgren -
just to make it clearer that it can
be used on all omaps.Signed-off-by: Felipe Balbi
Signed-off-by: Tony Lindgren -
omap_intc_handle_irq now had an unnecessary
base_addr argument. Let's remove it and fix
all callers.Signed-off-by: Felipe Balbi
Signed-off-by: Tony Lindgren -
an almost blind conversion from readl_relaxed
to our newly introduced intc_readl().While at that, also remove some hardcoded
register addresses.Signed-off-by: Felipe Balbi
Signed-off-by: Tony Lindgren -
no functional changes.
Signed-off-by: Felipe Balbi
Signed-off-by: Tony Lindgren -
now we can finally remove the pointless irq_banks
array.Signed-off-by: Felipe Balbi
Signed-off-by: Tony Lindgren -
this will cache number of irqs. Also in preparation
for removal of irq_banks array.Signed-off-by: Felipe Balbi
Signed-off-by: Tony Lindgren -
We have a single bank in that array, this patch
is in preparation to remove that array. It just
shifts everything to a new set of functions
for register IO while also removing old ones.Signed-off-by: Felipe Balbi
Signed-off-by: Tony Lindgren -
this is currently used as a hardcoded 0x100
offset.Signed-off-by: Felipe Balbi
Signed-off-by: Tony Lindgren -
This is in preparation for removing the pointless
irq_banks array.Signed-off-by: Felipe Balbi
Signed-off-by: Tony Lindgren -
of_device_ids (i.e. compatible strings and the respective data) are not
supposed to change at runtime. All functions working with of_device_ids
provided by work with const of_device_ids. So mark the
non-const function parameters and structs for OMAP2+ as const, too.Signed-off-by: Uwe Kleine-König
Signed-off-by: Tony Lindgren -
The definition
static const char *omap3_boards_compat[] __initconst = {
defines a changable array of constant strings. That is you must not do:
*omap3_boards_compat[0] = 'f';
but
omap3_boards_compat[0] = "another string";
is fine. So the annotation __initconst is wrong and yields a compiler
error when other really const variables are added with __initconst.As the struct machine_desc member dt_compat is declared as
const char *const *dt_compat;
making the arrays const is the better alternative over changing all
annotations to __initdata.Signed-off-by: Uwe Kleine-König
Signed-off-by: Tony Lindgren
09 Sep, 2014
3 commits
-
Provide OMAP3, 4 and OMAP5 with interrupt number for PRM
And for DRA7, provide crossbar number for prm interrupt.
Signed-off-by: Nishanth Menon
Signed-off-by: Tony Lindgren -
OPP is now a normal kernel library selected by its users rather than a
feature that architectures need to enable so ARCH_HAS_OPP serves no
function any more - remove the selects.Signed-off-by: Mark Brown
Acked-by: Nishanth Menon
Signed-off-by: Tony Lindgren -
With consolidated code, now we can add the required hooks for
DRA7 to enable power management.Signed-off-by: Rajendra Nayak
[nm@ti.com: minor modifications]
Signed-off-by: Nishanth Menon
Reviewed-by: Kevin Hilman
Tested-by: Kevin Hilman
Signed-off-by: Tony Lindgren