android_kernel_oneplus_msm8998/arch/arm/mach-omap2
Russell King d9c190a5ee ARM: avoid Cortex-A9 livelock on tight dmb loops
[ Upstream commit 5388a5b82199facacd3d7ac0d05aca6e8f902fed ]

machine_crash_nonpanic_core() does this:

	while (1)
		cpu_relax();

because the kernel has crashed, and we have no known safe way to deal
with the CPU.  So, we place the CPU into an infinite loop which we
expect it to never exit - at least not until the system as a whole is
reset by some method.

In the absence of erratum 754327, this code assembles to:

	b	.

In other words, an infinite loop.  When erratum 754327 is enabled,
this becomes:

1:	dmb
	b	1b

It has been observed that on some systems (eg, OMAP4) where, if a
crash is triggered, the system tries to kexec into the panic kernel,
but fails after taking the secondary CPU down - placing it into one
of these loops.  This causes the system to livelock, and the most
noticable effect is the system stops after issuing:

	Loading crashdump kernel...

to the system console.

The tested as working solution I came up with was to add wfe() to
these infinite loops thusly:

	while (1) {
		cpu_relax();
		wfe();
	}

which, without 754327 builds to:

1:	wfe
	b	1b

or with 754327 is enabled:

1:	dmb
	wfe
	b	1b

Adding "wfe" does two things depending on the environment we're running
under:
- where we're running on bare metal, and the processor implements
  "wfe", it stops us spinning endlessly in a loop where we're never
  going to do any useful work.
- if we're running in a VM, it allows the CPU to be given back to the
  hypervisor and rescheduled for other purposes (maybe a different VM)
  rather than wasting CPU cycles inside a crashed VM.

However, in light of erratum 794072, Will Deacon wanted to see 10 nops
as well - which is reasonable to cover the case where we have erratum
754327 enabled _and_ we have a processor that doesn't implement the
wfe hint.

So, we now end up with:

1:      wfe
        b       1b

when erratum 754327 is disabled, or:

1:      dmb
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        wfe
        b       1b

when erratum 754327 is enabled.  We also get the dmb + 10 nop
sequence elsewhere in the kernel, in terminating loops.

This is reasonable - it means we get the workaround for erratum
794072 when erratum 754327 is enabled, but still relinquish the dead
processor - either by placing it in a lower power mode when wfe is
implemented as such or by returning it to the hypervisior, or in the
case where wfe is a no-op, we use the workaround specified in erratum
794072 to avoid the problem.

These as two entirely orthogonal problems - the 10 nops addresses
erratum 794072, and the wfe is an optimisation that makes the system
more efficient when crashed either in terms of power consumption or
by allowing the host/other VMs to make use of the CPU.

I don't see any reason not to use kexec() inside a VM - it has the
potential to provide automated recovery from a failure of the VMs
kernel with the opportunity for saving a crashdump of the failure.
A panic() with a reboot timeout won't do that, and reading the
libvirt documentation, setting on_reboot to "preserve" won't either
(the documentation states "The preserve action for an on_reboot event
is treated as a destroy".)  Surely it has to be a good thing to
avoiding having CPUs spinning inside a VM that is doing no useful
work.

Acked-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-04-27 09:33:52 +02:00
..
include/mach ARM: omap2: restore OMAP4 barrier behaviour 2015-07-25 15:28:16 +01:00
am33xx-restart.c ARM: OMAP2+: PRM: provide generic API for system reset 2014-10-27 08:39:26 -07:00
am33xx.h
board-flash.c ARM: OMAP2+: Prepare to move GPMC to drivers by platform data header 2014-11-20 12:11:25 -08:00
board-flash.h ARM: OMAP2+: Prepare to move GPMC to drivers by platform data header 2014-11-20 12:11:25 -08:00
board-generic.c ARM: SoC cleanups for v4.4 2015-11-10 14:48:36 -08:00
board-ldp.c arm: omap2: timer: rename omap_sync32k_timer_init() 2015-10-16 11:06:23 -05:00
board-n8x0.c ARM: SoC/OMAP GPMC driver cleanup and move for 3.19 2014-12-09 16:57:56 -08:00
board-rx51-peripherals.c media updates for v3.19-rc1 2014-12-11 11:49:23 -08:00
board-rx51-video.c ARM: OMAP2+: N900: remove omapdss init for DT boot 2014-04-18 16:37:43 -07:00
board-rx51.c arm: omap2: timer: rename omap_sync32k_timer_init() 2015-10-16 11:06:23 -05:00
board-rx51.h
clkt2xxx_dpll.c
clkt2xxx_dpllcore.c ARM: OMAP2+: raw read and write endian fix 2014-05-08 07:09:53 -07:00
clkt2xxx_virt_prcm_set.c ARM: omap2: use clkdev_create() 2015-05-06 11:58:58 +01:00
clock.c Merge branch 'cleanup-clk-h-includes' into clk-next 2015-07-28 11:59:09 -07:00
clock.h clk: ti: move low-level access and init code under clock driver 2015-06-02 12:31:46 +03:00
clock2xxx.h ARM: OMAP2: clock: remove unused apll code 2015-01-07 10:54:40 -08:00
clock3xxx.h CLK: TI: add omap3 clock init file 2014-01-17 12:35:48 -08:00
clockdomain.c
clockdomain.h ARM: OMAP2+: Add minimal clockdomains for dm814x 2015-07-16 02:09:33 -07:00
clockdomains2xxx_3xxx_data.c
clockdomains3xxx_data.c ARM: OMAP3: fix iva mmu programming issues 2014-03-12 09:48:26 -07:00
clockdomains7xx_data.c ARM: DRA7: clockdomain: Change the CLKTRCTRL of CM_PCIE_CLKSTCTRL to SW_WKUP 2018-03-24 10:58:45 +01:00
clockdomains33xx_data.c
clockdomains43xx_data.c ARM: OMAP2+: CM: AM43x clockdomain data 2013-10-13 22:48:36 -06:00
clockdomains44xx_data.c
clockdomains54xx_data.c
clockdomains81xx_data.c ARM: OMAP2+: Add minimal clockdomains for dm814x 2015-07-16 02:09:33 -07:00
clockdomains2420_data.c
clockdomains2430_data.c
cm-regbits-7xx.h ARM: OMAP: DRA7: CM: Add minimal regbit shifts 2013-08-23 04:28:36 -06:00
cm-regbits-24xx.h ARM: OMAP2: convert sys_ck and osc_ck to standard clock types 2014-07-02 14:26:06 +03:00
cm-regbits-33xx.h
cm-regbits-34xx.h ARM: OMAP3: PRM/CM: Add back macros used by TI DSP/Bridge driver 2014-07-06 15:51:23 -06:00
cm-regbits-44xx.h
cm-regbits-54xx.h
cm.h ARM: OMAP2+: CM: determine CM base address from device tree 2015-03-27 10:55:57 +02:00
cm1_7xx.h ARM: OMAP4+: CM: remove omap4_cm1/cm2_* functions 2014-10-27 08:39:25 -07:00
cm1_44xx.h ARM: OMAP4+: CM: remove omap4_cm1/cm2_* functions 2014-10-27 08:39:25 -07:00
cm1_54xx.h ARM: OMAP4+: CM: remove omap4_cm1/cm2_* functions 2014-10-27 08:39:25 -07:00
cm2_7xx.h ARM: OMAP4+: CM: remove omap4_cm1/cm2_* functions 2014-10-27 08:39:25 -07:00
cm2_44xx.h ARM: OMAP4+: CM: remove omap4_cm1/cm2_* functions 2014-10-27 08:39:25 -07:00
cm2_54xx.h ARM: OMAP4+: CM: remove omap4_cm1/cm2_* functions 2014-10-27 08:39:25 -07:00
cm2xxx.c ARM: OMAP2+: CM: move SoC specific init calls within a generic API 2015-03-31 21:26:50 +03:00
cm2xxx.h ARM: OMAP2+: CM: move SoC specific init calls within a generic API 2015-03-31 21:26:50 +03:00
cm2xxx_3xxx.h ARM: OMAP2+: raw read and write endian fix 2014-05-08 07:09:53 -07:00
cm3xxx.c ARM: OMAP2+: CM: move SoC specific init calls within a generic API 2015-03-31 21:26:50 +03:00
cm3xxx.h ARM: OMAP2+: CM: move SoC specific init calls within a generic API 2015-03-31 21:26:50 +03:00
cm33xx.c ARM: OMAP2+: CM: move SoC specific init calls within a generic API 2015-03-31 21:26:50 +03:00
cm33xx.h ARM: OMAP2+: CM: move SoC specific init calls within a generic API 2015-03-31 21:26:50 +03:00
cm44xx.h ARM: OMAP2+: CM: move SoC specific init calls within a generic API 2015-03-31 21:26:50 +03:00
cm81xx.h ARM: OMAP2+: Add clock domain support for dm816x 2015-01-26 09:26:32 -08:00
cm_common.c ARM: OMAP2+: clock: add low-level support for regmap 2015-03-31 21:26:55 +03:00
cminst44xx.c ARM: OMAP2+: CM: move SoC specific init calls within a generic API 2015-03-31 21:26:50 +03:00
common-board-devices.c
common-board-devices.h arm: omap2: n8x0: move i2c devices to DT 2014-09-16 14:43:11 -07:00
common.c Revert "ARM: OMAP4: remove dead kconfig option OMAP4_ERRATA_I688" 2015-07-25 15:28:14 +01:00
common.h arm: omap2: timer: rename omap_sync32k_timer_init() 2015-10-16 11:06:23 -05:00
control.c ARM: OMAP2+: Fix scm compatible for dm814x 2015-07-16 02:09:10 -07:00
control.h ARM: OMAP3: Add support for configuring MMC pins as GPIO pins 2015-05-20 09:23:43 -07:00
cpuidle34xx.c ARM: OMAP3: Add cpuidle parameters table for omap3430 2016-05-04 14:48:53 -07:00
cpuidle44xx.c Power management and ACPI updates for v4.1-rc1 2015-04-14 20:21:54 -07:00
ctrl_module_wkup_44xx.h
devices.c ARM: OMAP2+: Remove legacy OMAP3 ISP instantiation 2015-10-12 10:04:39 -07:00
display.c ARM: OMAP2+: Variable "reg" in function omap4_dsi_mux_pads() could be uninitialized 2019-03-23 08:44:33 +01:00
display.h ARM: OMAP2+: add omapdss_init_of() 2014-03-19 10:52:23 +02:00
dma.c ARM: OMAP2+: Remove unnessary return statement from the void function, omap2_show_dma_caps 2015-06-01 15:01:51 -07:00
drm.c ARM: OMAP2+: display: Create omapdrm device inside omap_display_init 2013-10-08 14:02:35 -07:00
dss-common.c ARM: OMAP2+: remove pdata quirks for displays 2014-04-04 09:55:18 +03:00
dss-common.h ARM: OMAP2+: pdata-quirks: add legacy display init for IGEPv2 board 2013-10-09 07:54:34 -07:00
fb.c ARM: OMAP2+: Remove calls to deprecacted marco,PTR_RET in the files,fb.c and pmu.c 2015-05-20 10:43:37 -07:00
gpio.c
gpmc-nand.c ARM OMAP2+ GPMC: calculate GPMCFCLKDIVIDER based on WAITMONITORINGTIME 2015-03-06 12:39:48 +02:00
gpmc-onenand.c ARM: OMAP2+: gpmc-onenand: propagate error on initialization failure 2017-12-16 10:33:51 +01:00
gpmc-smsc911x.c ARM: OMAP2+: smsc911x: fix return value check in gpmc_smsc911x_init() 2013-11-14 10:40:36 -08:00
gpmc-smsc911x.h
gpmc.h ARM: OMAP2+: Prepare to move GPMC to drivers by platform data header 2014-11-20 12:11:25 -08:00
hdq1w.c arm: mach-omap2: Convert pr_warning to pr_warn 2014-09-18 09:53:57 -07:00
hdq1w.h
hsmmc.c ARM: Show proper respect for Heinrich Hertz by using the correct unit for frequency 2015-05-14 16:22:05 +01:00
hsmmc.h mmc: omap_hsmmc: remove unused slot_id parameter 2014-11-26 14:30:56 +01:00
i2c.c arm: mach-omap2: Convert pr_warning to pr_warn 2014-09-18 09:53:57 -07:00
i2c.h
id.c ARM: OMAP: Change all cpu_is_* occurences to soc_is_* for id.c 2015-10-16 10:27:03 -07:00
id.h
io.c ARM: OMAP2: Fix up interconnect barrier initialization for DRA7 2016-05-04 14:48:40 -07:00
iomap.h ARM: DRA7: Provide proper IO map table 2015-07-16 00:06:05 -07:00
Kconfig ARM: OMAP2+: AM43xx: select ARM TWD timer 2015-12-17 10:54:13 -08:00
l3_2xxx.h
l3_3xxx.h
l4_2xxx.h
l4_3xxx.h
Makefile ARM: OMAP3: clock: remove un-used core dpll re-program code 2015-10-14 12:35:27 -07:00
Makefile.boot
mcbsp.c ARM: OMAP3: McBSP: do not access CM register directly 2013-10-19 10:11:51 -06:00
mmc.h ARM: OMAP2: MMC: include mmc-omap platform header directly 2014-11-26 14:30:53 +01:00
msdi.c arm: mach-omap2: Convert pr_warning to pr_warn 2014-09-18 09:53:57 -07:00
mux.c ARM: OMAP2+: remove superfluous NULL pointer check 2015-03-26 10:33:25 -07:00
mux.h ARM: OMAP2+: remove OMAP_PACKAGE_ZAC and OMAP_PACKAGE_ZAF 2014-02-28 15:36:34 -08:00
mux34xx.c ARM: OMAP2+: mux: fix trivial typo in name 2013-09-18 12:02:01 -07:00
mux34xx.h
omap-headsmp.S ARM: OMAP5 / DRA7: Fix HYP mode boot for thumb2 build 2017-05-14 13:32:55 +02:00
omap-hotplug.c ARM: Remove __ref on hotplug cpu die path 2015-10-22 09:55:03 -07:00
omap-iommu.c ARM: OMAP2+: Remove module references from IOMMU machine layer 2015-07-16 00:14:50 -07:00
omap-mpuss-lowpower.c ARM: OMAP4+: Fix bad fallthrough for cpuidle 2017-01-15 13:41:36 +01:00
omap-pm-noop.c ARM: OMAP2+: omap-pm-noop.c: Remove some unused functions 2015-01-07 09:53:51 -08:00
omap-pm.h ARM: OMAP2+: omap-pm-noop.c: Remove some unused functions 2015-01-07 09:53:51 -08:00
omap-secure.c ARM: omap2: hide omap3_save_secure_ram on non-OMAP3 builds 2018-03-18 11:17:51 +01:00
omap-secure.h ARM: OMAP2+: Fix SRAM virt to phys translation for save_secure_ram_context 2018-02-25 11:03:38 +01:00
omap-smc.S ARM: OMAP3: Add secure function omap_smc3() which calling instruction smc #1 2013-10-08 11:55:32 -07:00
omap-smp.c ARM: OMAP4+: SMP: use lockless clkdm/pwrdm api in omap4_boot_secondary 2015-11-25 11:03:20 -08:00
omap-wakeupgen.c ARM: SoC cleanups for v4.4 2015-11-10 14:48:36 -08:00
omap-wakeupgen.h ARM: omap: convert wakeupgen to stacked domains 2015-03-15 00:56:13 +00:00
omap2-restart.c ARM: OMAP2+: PRM: provide generic API for system reset 2014-10-27 08:39:26 -07:00
omap3-restart.c ARM: OMAP2+: sparse: add missing function declarations 2015-07-15 23:43:41 -06:00
omap4-common.c ARM: omap2: restore OMAP4 barrier behaviour 2015-07-25 15:28:16 +01:00
omap4-restart.c ARM: OMAP2+: sparse: add missing function declarations 2015-07-15 23:43:41 -06:00
omap4-sar-layout.h
omap24xx.h
omap34xx.h [media] omap3isp: Replace many MMIO regions by two 2015-04-02 16:45:07 -03:00
omap44xx.h
omap54xx.h ARM: DRA7: Provide proper IO map table 2015-07-16 00:06:05 -07:00
omap_device.c ARM: OMAP2+: omap-device: fix race deferred probe of omap_hsmmc vs omap_device_late_init 2015-09-01 13:59:24 -07:00
omap_device.h ARM: OMAP2+: omap_device: add fail hook for runtime_pm when bad data is detected 2013-12-10 09:39:52 -08:00
omap_hwmod.c ARM: OMAP2+: hwmod: Fix some section annotations 2019-02-20 10:13:05 +01:00
omap_hwmod.h ARM: OMAP2+: hwmod: Introduce ti,no-idle dt property 2016-03-16 08:42:57 -07:00
omap_hwmod_2xxx_3xxx_interconnect_data.c ARM: OMAP2: hwmod_data: Remove legacy mailbox data and addrs 2014-07-15 05:08:56 -07:00
omap_hwmod_2xxx_3xxx_ipblock_data.c ARM: AM43xx: hwmod: add DSS hwmod data 2014-07-05 17:44:57 -06:00
omap_hwmod_2xxx_interconnect_data.c ARM: OMAP2+: Remove legacy hwmod entries for omap2 2013-11-25 15:31:18 -08:00
omap_hwmod_2xxx_ipblock_data.c ARM: OMAP2+: sparse: add missing static declaration 2015-07-15 23:42:12 -06:00
omap_hwmod_3xxx_data.c ARM: OMAP2+: Release device node after it is no longer needed. 2017-12-16 10:33:51 +01:00
omap_hwmod_7xx_data.c ARM: OMAP: DRA7: hwmod: Add data for McASP3 2015-11-12 09:57:44 -08:00
omap_hwmod_33xx_43xx_common_data.h ARM: OMAP: AM43xx hwmod: Add data for am43xx emif hwmod 2015-06-01 19:22:11 -06:00
omap_hwmod_33xx_43xx_interconnect_data.c ARM: DRA7/AM335x/AM437x: hwmod: Remove gpmc address space from hwmod data 2015-10-23 13:01:24 -06:00
omap_hwmod_33xx_43xx_ipblock_data.c ARM: AM43XX: hwmod: Fix RSTST register offset for pruss 2016-09-24 10:07:39 +02:00
omap_hwmod_33xx_data.c ARM: OMAP: AM43xx hwmod: Add data for am43xx emif hwmod 2015-06-01 19:22:11 -06:00
omap_hwmod_43xx_data.c ARM: OMAP2+: sparse: add missing static declaration 2015-07-15 23:42:12 -06:00
omap_hwmod_44xx_data.c ARM: OMAP4: hwmod data: Remove spinlock hwmod addrs 2015-10-23 13:01:24 -06:00
omap_hwmod_54xx_data.c ARM: OMAP: Remove duplicated operand in OR operation 2015-10-20 01:29:40 -06:00
omap_hwmod_81xx_data.c arm: omap2+: add missing HWMOD_NO_IDLEST in 81xx hwmod data 2015-11-25 10:54:22 -08:00
omap_hwmod_2420_data.c ARM: OMAP2: hwmod_data: Remove legacy mailbox data and addrs 2014-07-15 05:08:56 -07:00
omap_hwmod_2430_data.c ARM: OMAP1/2+: MMC: separate platform data for mmc and mmc hs driver 2014-11-26 14:30:53 +01:00
omap_hwmod_common_data.c
omap_hwmod_common_data.h ARM: OMAP2: hwmod_data: Remove legacy mailbox data and addrs 2014-07-15 05:08:56 -07:00
omap_hwmod_common_ipblock_data.c ARM: AM43xx: hwmod: add DSS hwmod data 2014-07-05 17:44:57 -06:00
omap_hwmod_reset.c
omap_opp_data.h
omap_phy_internal.c ARM: OMAP2+: Remove unused ti81xx platform init code 2015-01-14 17:21:00 -08:00
omap_twl.c mfd: twl-core: Fix idle mode signaling for omaps when booted with device tree 2014-04-23 15:31:05 +01:00
opp.c ACPI and power management updates for 3.13-rc1 2013-11-14 13:41:48 +09:00
opp2xxx.h
opp3xxx_data.c
opp4xxx_data.c
opp2420_data.c
opp2430_data.c ARM: Show proper respect for Heinrich Hertz by using the correct unit for frequency 2015-05-14 16:22:05 +01:00
pdata-quirks.c ARM: OMAP2+: Fix init for multiple quirks for the same SoC 2017-11-21 09:21:19 +01:00
pm-debug.c
pm.c ARM: OMAP3: Fix prm wake interrupt for resume 2018-05-30 07:48:59 +02:00
pm.h ARM: OMAP2+: Fix SRAM virt to phys translation for save_secure_ram_context 2018-02-25 11:03:38 +01:00
pm24xx.c ARM: OMAP2+: Include clk.h 2015-07-20 10:52:36 -07:00
pm34xx.c ARM: OMAP2+: Fix SRAM virt to phys translation for save_secure_ram_context 2018-02-25 11:03:38 +01:00
pm44xx.c ARM: OMAP2+: Remove unneeded semicolons 2015-10-12 10:56:36 -07:00
pmu.c ARM: OMAP2+: Remove calls to deprecacted marco,PTR_RET in the files,fb.c and pmu.c 2015-05-20 10:43:37 -07:00
powerdomain-common.c ARM: OMAP4: PRCM: remove references to cm-regbits-44xx.h from PRCM core files 2014-05-15 22:35:10 -06:00
powerdomain.c ARM: OMAP2+: voltage: Remove some unused functions 2015-01-07 09:53:51 -08:00
powerdomain.h ARM: OMAP2+: powerdomain.c: Remove some unused functions 2015-01-07 09:53:51 -08:00
powerdomains2xxx_3xxx_data.c
powerdomains2xxx_3xxx_data.h
powerdomains2xxx_data.c
powerdomains3xxx_data.c ARM: OMAP2+: Remove unneeded semicolons 2015-10-12 10:56:36 -07:00
powerdomains7xx_data.c ARM: OMAP: DRA7: powerdomain data: fix powerdomain powerstate 2014-09-08 11:22:31 -05:00
powerdomains33xx_data.c
powerdomains43xx_data.c ARM: OMAP2+: PM: AM43x powerdomain data 2013-10-13 22:48:25 -06:00
powerdomains44xx_data.c
powerdomains54xx_data.c ARM: OMAP5: powerdomain data: fix powerdomain powerstate 2014-09-08 11:22:40 -05:00
prcm-common.h Merge branch 'dm814x-soc' into omap-for-v4.3/soc 2015-07-23 21:59:18 -07:00
prcm43xx.h ARM: AM43XX: hwmod: Fix RSTST register offset for pruss 2016-09-24 10:07:39 +02:00
prcm44xx.h ARM: OMAP: DRA7: PRCM: Add DRA7XX local MPU PRCM regsiters 2013-08-23 04:28:36 -06:00
prcm_mpu7xx.h ARM: OMAP: DRA7: PRCM: Add DRA7XX local MPU PRCM regsiters 2013-08-23 04:28:36 -06:00
prcm_mpu44xx.c ARM: OMAP2+: raw read and write endian fix 2014-05-08 07:09:53 -07:00
prcm_mpu44xx.h ARM: OMAP2+: PRCM: cleanup some header includes 2014-05-15 22:34:48 -06:00
prcm_mpu54xx.h
prcm_mpu_44xx_54xx.h
prm-regbits-24xx.h
prm-regbits-33xx.h ARM: OMAP2+: Add back the define for AM33XX_RST_GLOBAL_WARM_SW_MASK 2013-08-29 19:10:59 -07:00
prm-regbits-34xx.h ARM: OMAP2+: Fix omap off idle power consumption creeping up 2015-05-04 08:54:41 -07:00
prm-regbits-44xx.h ARM: OMAP2+: Fix omap off idle power consumption creeping up 2015-05-04 08:54:41 -07:00
prm.h ARM: OMAP4+: PRM: get rid of cpu_is_omap44xx calls from interrupt init 2015-03-31 21:26:53 +03:00
prm2xxx.c ARM: OMAP2+: PRM: move SoC specific init calls within a generic API 2015-03-31 21:26:36 +03:00
prm2xxx.h ARM: OMAP2+: PRM: move SoC specific init calls within a generic API 2015-03-31 21:26:36 +03:00
prm2xxx_3xxx.c ARM: OMAP2+: PRM: add generic API for checking hardreset status 2014-10-27 08:39:25 -07:00
prm2xxx_3xxx.h ARM: OMAP2+: PRM: add generic API for checking hardreset status 2014-10-27 08:39:25 -07:00
prm3xxx.c ARM: OMAP2+: PRM: move SoC specific init calls within a generic API 2015-03-31 21:26:36 +03:00
prm3xxx.h ARM: OMAP2+: PRM: move SoC specific init calls within a generic API 2015-03-31 21:26:36 +03:00
prm7xx.h ARM: OMAP2+: PRM: move SoC specific init calls within a generic API 2015-03-31 21:26:36 +03:00
prm33xx.c ARM: AM33xx: PRM: Remove am33xx_pwrdm_read_prev_pwrst function 2018-02-25 11:03:38 +01:00
prm33xx.h ARM: OMAP2+: PRM: move SoC specific init calls within a generic API 2015-03-31 21:26:36 +03:00
prm44xx.c ARM: OMAP2+: prm44xx: Fix section annotation on omap44xx_prm_enable_io_wakeup 2018-12-17 21:55:09 +01:00
prm44xx.h ARM: OMAP2+: PRM: move SoC specific init calls within a generic API 2015-03-31 21:26:36 +03:00
prm44xx_54xx.h ARM: OMAP2+: PRM: move SoC specific init calls within a generic API 2015-03-31 21:26:36 +03:00
prm54xx.h ARM: OMAP2+: PRM: move SoC specific init calls within a generic API 2015-03-31 21:26:36 +03:00
prm_common.c ARM: avoid Cortex-A9 livelock on tight dmb loops 2019-04-27 09:33:52 +02:00
prminst44xx.c ARM: OMAP4+: PRM: add support for passing status register/bit info to reset 2015-05-08 13:05:15 -06:00
prminst44xx.h ARM: OMAP4+: PRM: determine prm_device_inst based on DT compatibility 2015-03-31 21:26:44 +03:00
scrm44xx.h
scrm54xx.h
sdram-hynix-h8mbx00u0mer-0em.h
sdram-micron-mt46h32m32lf-6.h
sdram-nokia.c
sdram-nokia.h
sdram-numonyx-m65kxxxxam.h
sdram-qimonda-hyb18m512160af-6.h
sdrc.c
sdrc.h ARM: OMAP2+: raw read and write endian fix 2014-05-08 07:09:53 -07:00
sdrc2xxx.c ARM: Show proper respect for Heinrich Hertz by using the correct unit for frequency 2015-05-14 16:22:05 +01:00
serial.c ARM: OMAP2+: use symbolic defines for console loglevels instead of numbers 2015-05-20 10:13:26 -07:00
serial.h
sleep24xx.S
sleep34xx.S ARM: OMAP2+: Fix SRAM virt to phys translation for save_secure_ram_context 2018-02-25 11:03:38 +01:00
sleep44xx.S ARM: OMAP2+: Fix ppa_zero_params and ppa_por_params for rodata 2016-02-25 12:01:20 -08:00
smartreflex-class3.c arm: mach-omap2: Convert pr_warning to pr_warn 2014-09-18 09:53:57 -07:00
soc.h ARM: OMAP2+: Rename cpu_is macros to soc_is 2015-10-16 10:08:45 -07:00
sr_device.c arm: mach-omap2: Convert pr_warning to pr_warn 2014-09-18 09:53:57 -07:00
sram.c ARM: OMAP3: clock: remove un-used core dpll re-program code 2015-10-14 12:35:27 -07:00
sram.h ARM: OMAP3: clock: remove un-used core dpll re-program code 2015-10-14 12:35:27 -07:00
sram242x.S ARM: Show proper respect for Heinrich Hertz by using the correct unit for frequency 2015-05-14 16:22:05 +01:00
sram243x.S ARM: Show proper respect for Heinrich Hertz by using the correct unit for frequency 2015-05-14 16:22:05 +01:00
ti81xx-restart.c ARM: OMAP2+: Fix reboot for 81xx 2015-01-14 17:37:16 -08:00
ti81xx.h
timer.c ARM: OMAP2+: timer: fix a kmemleak caused in omap_get_timer_dt 2018-05-30 07:48:59 +02:00
twl-common.c ARM: OMAP: Work around hardcoded interrupts 2015-01-17 08:56:12 -08:00
twl-common.h
usb-host.c usb: phy: rename <linux/usb/usb_phy_gen_xceiv.h> to <linux/usb/usb_phy_generic.h> 2014-04-21 14:07:24 -05:00
usb-musb.c ARM: OMAP2+: Remove unused ti81xx platform init code 2015-01-14 17:21:00 -08:00
usb-tusb6010.c ARM OMAP2+ GPMC: calculate GPMCFCLKDIVIDER based on WAITMONITORINGTIME 2015-03-06 12:39:48 +02:00
usb.h ARM: OMAP2+: Remove unused ti81xx platform init code 2015-01-14 17:21:00 -08:00
vc.c ARM: remove duplicate 'const' annotations' 2017-10-08 10:14:20 +02:00
vc.h ARM: OMAP2+: Fix omap off idle power consumption creeping up 2015-05-04 08:54:41 -07:00
vc3xxx_data.c ARM: OMAP2+: Fix omap off idle power consumption creeping up 2015-05-04 08:54:41 -07:00
vc44xx_data.c ARM: OMAP2+: Fix omap off idle power consumption creeping up 2015-05-04 08:54:41 -07:00
voltage.c ARM: OMAP2+: voltage: Remove some unused functions 2015-01-07 09:53:51 -08:00
voltage.h ARM: OMAP2+: voltage: Remove some unused functions 2015-01-07 09:53:51 -08:00
voltagedomains2xxx_data.c
voltagedomains3xxx_data.c ARM: appropriate __init annotation for const data 2015-07-28 13:55:27 +02:00
voltagedomains44xx_data.c ARM: appropriate __init annotation for const data 2015-07-28 13:55:27 +02:00
voltagedomains54xx_data.c ARM: appropriate __init annotation for const data 2015-07-28 13:55:27 +02:00
vp.c
vp.h ARM: OMAP3+: PRM: add common APIs for prm_vp_check/clear_txdone 2015-03-25 11:03:39 +02:00
vp3xxx_data.c ARM: OMAP3+: PRM: add common APIs for prm_vp_check/clear_txdone 2015-03-25 11:03:39 +02:00
vp44xx_data.c ARM: OMAP3+: PRM: add common APIs for prm_vp_check/clear_txdone 2015-03-25 11:03:39 +02:00
wd_timer.c arm: mach-omap2: Convert pr_warning to pr_warn 2014-09-18 09:53:57 -07:00
wd_timer.h