07 Oct, 2015
1 commit
-
With future SoCs of keystone2 family, the generic compatible match
may not be sufficient to handle SoC specific handling. So introduce
matches based on SoC compatiblity.Signed-off-by: Nishanth Menon
Signed-off-by: Santosh Shilimkar
21 Jul, 2015
1 commit
-
This file doesn't use the clk provider APIs. Remove the include.
Cc: Nishanth Menon
Cc: Sekhar Nori
Acked-by: Santosh Shilimkar
Signed-off-by: Stephen Boyd
27 Jun, 2015
1 commit
-
Pull ARM updates from Russell King:
"Bigger items included in this update are:- A series of updates from Arnd for ARM randconfig build failures
- Updates from Dmitry for StrongARM SA-1100 to move IRQ handling to
drivers/irqchip/
- Move ARMs SP804 timer to drivers/clocksource/
- Perf updates from Mark Rutland in preparation to move the ARM perf
code into drivers/ so it can be shared with ARM64.
- MCPM updates from Nicolas
- Add support for taking platform serial number from DT
- Re-implement Keystone2 physical address space switch to conform to
architecture requirements
- Clean up ARMv7 LPAE code, which goes in hand with the Keystone2
changes.
- L2C cleanups to avoid unlocking caches if we're prevented by the
secure support to unlock.
- Avoid cleaning a potentially dirty cache containing stale data on
CPU initialisation
- Add ARM-only entry point for secondary startup (for machines that
can only call into a Thumb kernel in ARM mode). Same thing is also
done for the resume entry point.
- Provide arch_irqs_disabled via asm-generic
- Enlarge ARMv7M vector table
- Always use BFD linker for VDSO, as gold doesn't accept some of the
options we need.
- Fix an incorrect BSYM (for Thumb symbols) usage, and convert all
BSYM compiler macros to a "badr" (for branch address).
- Shut up compiler warnings provoked by our cmpxchg() implementation.
- Ensure bad xchg sizes fail to link"* 'for-linus' of git://ftp.arm.linux.org.uk/~rmk/linux-arm: (75 commits)
ARM: Fix build if CLKDEV_LOOKUP is not configured
ARM: fix new BSYM() usage introduced via for-arm-soc branch
ARM: 8383/1: nommu: avoid deprecated source register on mov
ARM: 8391/1: l2c: add options to overwrite prefetching behavior
ARM: 8390/1: irqflags: Get arch_irqs_disabled from asm-generic
ARM: 8387/1: arm/mm/dma-mapping.c: Add arm_coherent_dma_mmap
ARM: 8388/1: tcm: Don't crash when TCM banks are protected by TrustZone
ARM: 8384/1: VDSO: force use of BFD linker
ARM: 8385/1: VDSO: group link options
ARM: cmpxchg: avoid warnings from macro-ized cmpxchg() implementations
ARM: remove __bad_xchg definition
ARM: 8369/1: ARMv7M: define size of vector table for Vybrid
ARM: 8382/1: clocksource: make ARM_TIMER_SP804 depend on GENERIC_SCHED_CLOCK
ARM: 8366/1: move Dual-Timer SP804 driver to drivers/clocksource
ARM: 8365/1: introduce sp804_timer_disable and remove arm_timer.h inclusion
ARM: 8364/1: fix BE32 module loading
ARM: 8360/1: add secondary_startup_arm prototype in header file
ARM: 8359/1: correct secondary_startup_arm mode
ARM: proc-v7: sanitise and document registers around errata
ARM: proc-v7: clean up MIDR access
...
02 Jun, 2015
5 commits
-
Re-engineer the LPAE TTBR setup code. Rather than passing some shifted
address in order to fit in a CPU register, pass either a full physical
address (in the case of r4, r5 for TTBR0) or a PFN (for TTBR1).This removes the ARCH_PGD_SHIFT hack, and the last dangerous user of
cpu_set_ttbr() in the secondary CPU startup code path (which was there
to re-set TTBR1 to the appropriate high physical address space on
Keystone2.)Tested-by: Murali Karicheri
Signed-off-by: Russell King -
The init_meminfo() method is not about initialising meminfo - it's about
fixing up the physical to virtual translation so that we use a different
physical address space, possibly above the 4GB physical address space.
Therefore, the name "init_meminfo()" is confusing.Rename it to pv_fixup() instead.
Acked-by: Santosh Shilimkar
Tested-by: Murali Karicheri
Signed-off-by: Russell King -
There is no point platform code doing this, let's move it into the
generic code so it doesn't get duplicated.Acked-by: Santosh Shilimkar
Tested-by: Murali Karicheri
Signed-off-by: Russell King -
Make the init_meminfo function return the offset to be applied to the
phys-to-virt translation constants. This allows us to move the update
into generic code, along with the requirements for this update.This avoids platforms having to know the details of the phys-to-virt
translation support.Acked-by: Santosh Shilimkar
Tested-by: Murali Karicheri
Signed-off-by: Russell King -
We ideally want the init_meminfo function to do nothing but return the
delta to be applied to PHYS_OFFSET - it should do nothing else. As we
can detect in platform init code whether we are running in the high
physical address space, move the platform notifier initialisation
entirely into the platform init code.Acked-by: Santosh Shilimkar
Tested-by: Murali Karicheri
Signed-off-by: Russell King
13 May, 2015
1 commit
-
USE_PM_CLK_RUNTIME_OPS is introduced so we don't repeat the same code
to do runtime_suspend and runtime_resume across users of PM clocks.
Use it to remove the boilerplate code.Signed-off-by: Rajendra Nayak
Reviewed-by: Kevin Hilman
Acked-by: Santosh Shilimkar
Acked-by: Geert Uytterhoeven
Signed-off-by: Rafael J. Wysocki
19 Feb, 2015
2 commits
-
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 structs in arch/arm as const, too.While at it also add some __initconst annotations.
Acked-by: Jason Cooper
Signed-off-by: Uwe Kleine-König
Signed-off-by: Arnd Bergmann -
The definition
static const char *axxia_dt_match[] __initconst = {
...defines a changable array of constant strings. That is you must not do:
*axxia_dt_match[0] = 'k';
but
axxia_dt_match[0] = "different 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: Arnd Bergmann
13 Dec, 2014
1 commit
-
After commit b2b49ccbdd54 (PM: Kconfig: Set PM_RUNTIME if PM_SLEEP is
selected) PM_RUNTIME is always set if PM is set, so #ifdef blocks
depending on CONFIG_PM_RUNTIME may now be changed to depend on
CONFIG_PM.Replace CONFIG_PM_RUNTIME with CONFIG_PM everywhere in the code under
arch/arm/ (the defconfig files will be modified later).Signed-off-by: Rafael J. Wysocki
Acked-by: Nishanth Menon
Acked-by: Sekhar Nori
Acked-by: Santosh Shilimkar
05 Nov, 2014
1 commit
-
Now that Keystone PCI controller is merged, add pcie related options
by default for keystone architecture so that driver can be enabled in
the build.Signed-off-by: Murali Karicheri
Signed-off-by: Santosh Shilimkar
17 Jun, 2014
1 commit
-
The dynamic relocation that the keystone platform performs
only works if we can pick the phys offset at boot time. It's
possible that there is another solution for this, but this
is the easiest workaround. Kernels with ARM_PATCH_PHYS_VIRT
are not portable across platforms, and I see no reason why
anyone would run a kernel without ARM_PATCH_PHYS_VIRT on
keystone.Signed-off-by: Arnd Bergmann
Acked-by: Santosh Shilimkar
06 Jun, 2014
1 commit
-
Laura's series removed the meminfo structure and its no longer available.
Update keystone code to remove the usage of it.Reported-by: Russell King - ARM Linux
Signed-off-by: Santosh Shilimkar
Signed-off-by: Arnd Bergmann
27 May, 2014
1 commit
-
Remove reset stuff in flavour of using keystone reset driver:
driver/power/reset/keystone-reset.cReviewed-by: Arnd Bergmann
Signed-off-by: Ivan Khoronzhuk
Signed-off-by: Santosh Shilimkar
09 May, 2014
2 commits
-
Tested-by: Grygorii Strashko
Signed-off-by: Santosh Shilimkar -
With late code patching updates for LPAE machines has merged now and
memblock conversion from bootmem is on its way, Keystone can switch to
the coherent memory address space which starts beyond 4GB boundary.
The idmap alias needs are managed via virt_to_idmap() for boot purpose.Tested-by: Grygorii Strashko
Signed-off-by: Santosh Shilimkar
06 Apr, 2014
1 commit
-
Pull ARM SoC device tree changes from Arnd Bergmann:
"A large part of the arm-soc patches are nowadays DT changes, adding
support for new SoCs, boards and devices without changing kernel
source. The plan is still to move the devicetree files out of the
kernel tree and reduce the amount of churn going on here, but we keep
finding reasons to delay doing that.Changes are really all over the place, with little sticking out
particularly. We have contributions from a total of 116 people in
this branch.Unfortunately, the size of this branch also causes a significant
number of conflicts at the moment, typically when subsystem
maintainers merge patches that change the driver at the same time as
the dts files. In most cases this could be avoided because the dts
changes are supposed to be compatible in both ways, and we are asking
everyone to send ARM dts changes through our tree only"* tag 'dt-3.15' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (541 commits)
dts: stmmac: Document the clocks property in the stmmac base document
dts: socfpga: Add DTS entry for adding the stmmac glue layer for stmmac.
ARM: STi: stih41x: Add support for the FSM Serial Flash Controller
ARM: STi: stih416: Add support for the FSM Serial Flash Controller
ARM: tegra: fix Dalmore pinctrl configuration
ARM: dts: keystone: use common "ti,keystone" compatible instead of -evm
ARM: dts: k2hk-evm: set ubifs partition size for 512M NAND
ARM: dts: Build all keystone dt blobs
ARM: dts: keystone: Fix control register range for clktsip
ARM: dts: keystone: Fix domain register range for clkfftc1
ARM: dts: bcm28155-ap: leave camldo1 on to fix reboot
ARM: dts: add bcm590xx pmu support and enable for bcm28155-ap
ARM: dts: bcm21664: Add device tree files.
ARM: DT: bcm21664: Device tree bindings
ARM: efm32: properly namespace i2c location property
ARM: efm32: fix unit address part in USART2 device nodes' names
ARM: mvebu: Enable NAND controller in Armada 385-DB
ARM: mvebu: Add support for NAND controller in Armada 38x SoC
ARM: mvebu: Add the Core Divider clock to Armada 38x SoCs
ARM: mvebu: Add a 2 GHz fixed-clock on Armada 38x SoCs
...
21 Mar, 2014
1 commit
-
As suggested by Olof Johansson at
http://www.spinics.net/lists/arm-kernel/msg314009.html.
It be better just keeping a "ti,keystone" top-level compatible and
just using that to probe. If so we don't have to touch the file
for new boards in the future.So use common "ti,keystone" compatible in keystone.c for all boards.
Cc: Santosh Shilimkar
Cc: Olof JohanssonSigned-off-by: Ivan Khoronzhuk
Signed-off-by: Santosh Shilimkar
26 Feb, 2014
1 commit
-
This patch add compatibility strings for k2hk, k2l and k2e EVMs
Cc: Olof Johansson
Cc: Arnd Bergmann
Cc: Rob Herring
Cc: Kumar Gala
Cc: Mark Rutland
Signed-off-by: Murali Karicheri
Signed-off-by: Santosh Shilimkar
20 Feb, 2014
2 commits
-
All V7 platforms can run SMP kernels, so make CONFIG_SMP visible for V7
multi-platform builds.Signed-off-by: Rob Herring
Acked-by: Stephen Warren
Acked-by: Arnd Bergmann -
Multi-platform requires various kconfig options to be selected, so
platforms don't need to select them individually.Signed-off-by: Rob Herring
Acked-by: Linus Walleij
Cc: Russell King
Acked-by: Stephen Warren
Tested-by: Stephen Warren
Acked-by: Arnd Bergmann
01 Feb, 2014
1 commit
-
Drop automatic selection of TI_EDMA from Keystone Kconfig file,
as it produces build warning in case if CONFIG_DMADEVICES is not set:warning: (ARCH_KEYSTONE) selects TI_EDMA which has unmet direct dependencies (DMADEVICES && (ARCH_DAVINCI || ARCH_OMAP || ARCH_KEYSTONE))
Instead enable TI EDMA support from defconfig.
Reported-by: Russell King
Signed-off-by: Grygorii Strashko
Signed-off-by: Santosh Shilimkar
Signed-off-by: Olof Johansson
17 Dec, 2013
4 commits
-
With commit 4178bac4f {ARM: call of_clk_init from default time_init
handler}, of_clk_init() is always called on machines using default
time_init handler.So drop the of_clk_init() from keystone code to avoid below
boot errors because of double call._of_pll_clk_init: error initializing pll mainpllclk
_of_pll_clk_init: error initializing pll papllclk
_of_pll_clk_init: error initializing pll ddr3apllclk
_of_pll_clk_init: error initializing pll ddr3bpllclk
_of_pll_clk_init: error initializing pll armpllclkReported-by: Grygorii Strashko
Signed-off-by: Santosh Shilimkar -
Keystone PM bus makes use of generic PM clock core backend. Since
generic PM clock core uses platform bus notifiers to track events like
ADD_DEVICE/DEL_DEVICE and to fill clock lists per each device, we need
to initialise Keystone PM domains before the platform devices have been
created.Hence, fix it by moving keystone_pm_runtime_init() before platform
devices have been populated.Reported-by: Grygorii Strashko
Signed-off-by: Santosh Shilimkar -
Keystone II peripheral devices support 32-bit DMA and hence can access only
first 2GB of the memory address space. So set the platform dma_zone_size
to handle that case.Signed-off-by: Santosh Shilimkar
-
Keystone code is big endian compatible,
so mark it as one that supports big endian.Note this patch just allows to select Big endian build
for ARCH_KEYSTONE, but it does not enable BE by default.Signed-off-by: Taras Kondratiuk
Signed-off-by: Santosh Shilimkar
12 Nov, 2013
1 commit
-
Pull devicetree updates from Rob Herring:
"DeviceTree updates for 3.13. This is a bit larger pull request than
usual for this cycle with lots of clean-up.- Cross arch clean-up and consolidation of early DT scanning code.
- Clean-up and removal of arch prom.h headers. Makes arch specific
prom.h optional on all but Sparc.
- Addition of interrupts-extended property for devices connected to
multiple interrupt controllers.
- Refactoring of DT interrupt parsing code in preparation for
deferred probe of interrupts.
- ARM cpu and cpu topology bindings documentation.
- Various DT vendor binding documentation updates"* tag 'devicetree-for-3.13' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux: (82 commits)
powerpc: add missing explicit OF includes for ppc
dt/irq: add empty of_irq_count for !OF_IRQ
dt: disable self-tests for !OF_IRQ
of: irq: Fix interrupt-map entry matching
MIPS: Netlogic: replace early_init_devtree() call
of: Add Panasonic Corporation vendor prefix
of: Add Chunghwa Picture Tubes Ltd. vendor prefix
of: Add AU Optronics Corporation vendor prefix
of/irq: Fix potential buffer overflow
of/irq: Fix bug in interrupt parsing refactor.
of: set dma_mask to point to coherent_dma_mask
of: add vendor prefix for PHYTEC Messtechnik GmbH
DT: sort vendor-prefixes.txt
of: Add vendor prefix for Cadence
of: Add empty for_each_available_child_of_node() macro definition
arm/versatile: Fix versatile irq specifications.
of/irq: create interrupts-extended property
microblaze/pci: Drop PowerPC-ism from irq parsing
of/irq: Create of_irq_parse_and_map_pci() to consolidate arch code.
of/irq: Use irq_of_parse_and_map()
...
15 Oct, 2013
1 commit
-
initcalls need to have platform specific checks so they are not run in
multi-platform builds.Acked-by: Santosh Shilimkar
Signed-off-by: Kevin Hilman
11 Oct, 2013
2 commits
-
Select the TI EDMA to be able to enable SPI driver on Keystone
SOCs. Keystone SOCs share the EDMA IP with other TI SOCs.Note that EDMA support hasn't been added and tested yet for
Keystone SOC data(device tree), but building it, is harmless since
driver like SPI already takes care of supporting non-dma mode
in the absence of such data.Signed-off-by: Santosh Shilimkar
-
Add runtime PM core support to Keystone SOCs by using the pm_clk
infrastructure of the PM core. Patch is based on Kevin's pm_domain
work on DaVinci SOCs.Keystone SOC doesn't have depedency to enable clocks in early
in the boot and hence the clock and PM domain initialisation is done
at subsys_init() level.Cc: Kevin Hilman
Signed-off-by: Santosh Shilimkar
10 Oct, 2013
1 commit
-
Remove unnecessary prom.h include in preparation to make prom.h optional.
Signed-off-by: Rob Herring
Acked-by: Grant Likely
Cc: Santosh Shilimkar
09 Oct, 2013
1 commit
-
Enable common clock drivers on Keystone 2 based SOCs.
Signed-off-by: Santosh Shilimkar
30 Aug, 2013
1 commit
-
…/scm/linux/kernel/git/tmlind/linux-omap into next/fixes-non-critical
From Tony Lindgren:
Omap fixes for the merge window that are not urgent enough
for the -rc series.* tag 'omap-for-v3.12/fixes-non-critical-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
ARM: OMAP2: use 'int' instead of 'unsigned' for variable 'gpmc_irq_start'
ARM: OMAP2: remove useless variable 'ret'
ARM: OMAP: dma: fix error return code in omap_system_dma_probe()
ARM: OMAP2+: fix wrong address when loading PRM_FRAC_INCREMENTOR_DENUMERATOR_RELOAD
ARM: OMAP2+: am33xx-restart: trigger warm reset on omap2+ boards
ARM: OMAP2: Use a consistent AM33XX SoC option description
ARM: OMAP2+: Remove legacy device creation for McPDM and DMIC
+ Linux 3.11-rc6
06 Aug, 2013
4 commits
-
This was added because of some legacy reasons from OMAP SOCs but
after testing and verifying with the keystone hardware folks, the
dsb in keystone_cpu_smc() is not necessary.So drop it.
Reported-by: Dave Martin
Signed-off-by: Santosh Shilimkar -
Register r12 is caller-save, so no need preserve it keystone_cpu_smc().
Reported-by: Dave Martin
Signed-off-by: Santosh Shilimkar -
arm_dt_init_cpu_maps is called before smp_init_cpus. It makes the
platform/SoC definition of smp_init_cpus unnecessary.Signed-off-by: Sudeep KarkadaNagesha
Signed-off-by: Santosh Shilimkar -
The Kconfig symbol HAVE_SCHED_CLOCK got removed in v3.4,
with commit 6905a65879b5 ("ARM: Make the sched_clock
framework mandatory"). But a select statement for it popped up again
through commit 828989ad87af ("ARM: keystone: Add minimal TI Keystone
platform support"). Drop that statement, as it is useless.Signed-off-by: Paul Bolle
[santosh.shilimkar@ti.com: Minor edit in the subject]
Signed-off-by: Santosh Shilimkar
24 Jul, 2013
1 commit
-
Fix the following compilation warning:
arch/arm/mach-keystone/keystone.c:74:2: warning: initialization from incompatible pointer type [enabled by default]
arch/arm/mach-keystone/keystone.c:74:2: warning: (near initialization for ‘__mach_desc_KEYSTONE.restart’) [enabled by default]Signed-off-by: Vincent Stehlé
Cc: Robin Holt
Cc: Russell King
Cc: trivial@kernel.org
Signed-off-by: Olof Johansson