mirror of
https://github.com/edk2-porting/linux-next.git
synced 2024-12-27 06:34:11 +08:00
e5d9875ecd
This series improves the ti-sysc interconnect target module driver to the point where a most of SoC can be booted with interconnect target module data configured in device tree instead of legacy platform data. The related device tree changes need some more work though, and can wait for v4.19. Also some drivers using nested interconnects like DSS need more work. We can now remove the unused pm-noop code that is not doing anything any longer. And we can now initialize things for PM and display pdata later to prepare things for using ti-sysc driver. We also need to add some more quirk handling so we can boot both with platform data and dts data. -----BEGIN PGP SIGNATURE----- iQJFBAABCAAvFiEEkgNvrZJU/QSQYIcQG9Q+yVyrpXMFAlrsg9QRHHRvbnlAYXRv bWlkZS5jb20ACgkQG9Q+yVyrpXNmwxAAzPt1GpHQSw/XhhtK8+DLlqo9fdPQ9C65 Iw+PyvQYy2bTj0y64VkZ4Msmi3SOhfr5zKhIrwBHEG59/LW81oXqnb9JZHPP+YC+ /A6ZufXIt8X+Nd1L6id2OD9ItJoLXk7llBvDckwb/zUgcVib9cA79GvWgexfRWBE w/bjZfUibddYdhKoCGmvWcZBapDKHMfv8MdN8h0QUyofTIefZZeykRvb1Pmn7Ntl vz3QfPUq3oyRfG9PMRI7mjHrW7jxEKgjvWANbUg64UQJN7s1tfa8ICpzycc4/X/a pdetH7G+BPaRdeqDCmGrcGHfO4b5HyD7nkTD3R6yzV+Dw8nWl+aWGJHAsPYRUJkd o/BroflhqK2ICfEkeK6AWebbicOSlF5P+EEFwp6pHSd/9JiEqR1IkhcCvTdV8CB1 qyUQxD+iKof+rY5f1EicaGq8HXhkV+9aIOoqBH6C0qObEJDUWvVoGIzDdN2vwVAu C2w9WqdQII3R4g2ZX1SmdEqFO/f6PkAoKiyNt+WGBGBUfYo1sfwpkFAEeGU50moJ 5m9TtLcAbbvgMwy2ttfWcHPn5z3p4Ocf7aN93TZ6RPk6A6R57PzCcYqJ2bXsumeV 5yaP9w4pbFj+FQuu8jA8s/cSwhIP8SwqwFWKCi2JcU3ugEdJfwF555y5bm0R9MDz 7W82aAicw+M= =jYZ6 -----END PGP SIGNATURE----- Merge tag 'omap-for-v4.18/ti-sysc-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/soc ti-sysc driver related changes for omap variants This series improves the ti-sysc interconnect target module driver to the point where a most of SoC can be booted with interconnect target module data configured in device tree instead of legacy platform data. The related device tree changes need some more work though, and can wait for v4.19. Also some drivers using nested interconnects like DSS need more work. We can now remove the unused pm-noop code that is not doing anything any longer. And we can now initialize things for PM and display pdata later to prepare things for using ti-sysc driver. We also need to add some more quirk handling so we can boot both with platform data and dts data. * tag 'omap-for-v4.18/ti-sysc-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap: bus: ti-sysc: Show module information for suspend if DEBUG is enabled bus: ti-sysc: Tag sdio and wdt with legacy mode for suspend bus: ti-sysc: Detect UARTs for SYSC_QUIRK_LEGACY_IDLE quirk on omap4 bus: ti-sysc: Detect omap4 type timers for quirk bus: ti-sysc: Add initial support for external resets bus: ti-sysc: Improve suspend and resume handling bus: ti-sysc: Tag some modules resource providers for noirq suspend bus: ti-sysc: Add handling for clkctrl opt clocks bus: ti-sysc: Make child clock alias handling more generic bus: ti-sysc: Handle simple-bus for nested children ARM: OMAP2+: Make display related init into device_initcall ARM: OMAP2+: Initialize SoC PM later ARM: OMAP2+: Only probe SDMA via ti-sysc if configured in dts ARM: OMAP2+: Use signed value for sysc register offsets ARM: OMAP2+: Allow using ti-sysc for system timers ARM: OMAP2+: Drop unused pm-noop Signed-off-by: Olof Johansson <olof@lixom.net>
246 lines
9.7 KiB
Makefile
246 lines
9.7 KiB
Makefile
# SPDX-License-Identifier: GPL-2.0
|
|
#
|
|
# Makefile for the linux kernel.
|
|
#
|
|
|
|
ccflags-y := -I$(srctree)/$(src)/include \
|
|
-I$(srctree)/arch/arm/plat-omap/include
|
|
|
|
# Common support
|
|
obj-y := id.o io.o control.o devices.o fb.o timer.o pm.o \
|
|
common.o dma.o wd_timer.o display.o i2c.o hdq1w.o omap_hwmod.o \
|
|
omap_device.o omap-headsmp.o sram.o
|
|
|
|
hwmod-common = omap_hwmod.o omap_hwmod_reset.o \
|
|
omap_hwmod_common_data.o
|
|
clock-common = clock.o
|
|
secure-common = omap-smc.o omap-secure.o
|
|
|
|
obj-$(CONFIG_ARCH_OMAP2) += $(omap-2-3-common) $(hwmod-common)
|
|
obj-$(CONFIG_ARCH_OMAP3) += $(omap-2-3-common) $(hwmod-common) $(secure-common)
|
|
obj-$(CONFIG_ARCH_OMAP4) += $(hwmod-common) $(secure-common)
|
|
obj-$(CONFIG_SOC_AM33XX) += $(hwmod-common)
|
|
obj-$(CONFIG_SOC_OMAP5) += $(hwmod-common) $(secure-common)
|
|
obj-$(CONFIG_SOC_AM43XX) += $(hwmod-common) $(secure-common)
|
|
obj-$(CONFIG_SOC_DRA7XX) += $(hwmod-common) $(secure-common)
|
|
|
|
ifneq ($(CONFIG_SND_OMAP_SOC_MCBSP),)
|
|
obj-y += mcbsp.o
|
|
endif
|
|
|
|
obj-$(CONFIG_TWL4030_CORE) += omap_twl.o
|
|
obj-$(CONFIG_SOC_HAS_OMAP2_SDRC) += sdrc.o
|
|
|
|
# SMP support ONLY available for OMAP4
|
|
|
|
smp-$(CONFIG_SMP) += omap-smp.o
|
|
smp-$(CONFIG_HOTPLUG_CPU) += omap-hotplug.o
|
|
omap-4-5-common = omap4-common.o omap-wakeupgen.o
|
|
obj-$(CONFIG_ARCH_OMAP4) += $(omap-4-5-common) $(smp-y) sleep44xx.o
|
|
obj-$(CONFIG_SOC_OMAP5) += $(omap-4-5-common) $(smp-y) sleep44xx.o
|
|
obj-$(CONFIG_SOC_AM43XX) += $(omap-4-5-common)
|
|
obj-$(CONFIG_SOC_DRA7XX) += $(omap-4-5-common) $(smp-y) sleep44xx.o
|
|
|
|
plus_sec := $(call as-instr,.arch_extension sec,+sec)
|
|
AFLAGS_omap-headsmp.o :=-Wa,-march=armv7-a$(plus_sec)
|
|
AFLAGS_omap-smc.o :=-Wa,-march=armv7-a$(plus_sec)
|
|
AFLAGS_sleep44xx.o :=-Wa,-march=armv7-a$(plus_sec)
|
|
|
|
# Functions loaded to SRAM
|
|
obj-$(CONFIG_SOC_OMAP2420) += sram242x.o
|
|
obj-$(CONFIG_SOC_OMAP2430) += sram243x.o
|
|
|
|
AFLAGS_sram242x.o :=-Wa,-march=armv6
|
|
AFLAGS_sram243x.o :=-Wa,-march=armv6
|
|
|
|
# Restart code (OMAP4/5 currently in omap4-common.c)
|
|
obj-$(CONFIG_SOC_OMAP2420) += omap2-restart.o
|
|
obj-$(CONFIG_SOC_OMAP2430) += omap2-restart.o
|
|
obj-$(CONFIG_SOC_TI81XX) += ti81xx-restart.o
|
|
obj-$(CONFIG_SOC_AM33XX) += am33xx-restart.o
|
|
obj-$(CONFIG_SOC_AM43XX) += omap4-restart.o
|
|
obj-$(CONFIG_ARCH_OMAP3) += omap3-restart.o
|
|
obj-$(CONFIG_ARCH_OMAP4) += omap4-restart.o
|
|
obj-$(CONFIG_SOC_OMAP5) += omap4-restart.o
|
|
obj-$(CONFIG_SOC_DRA7XX) += omap4-restart.o
|
|
|
|
# SMS/SDRC
|
|
obj-$(CONFIG_ARCH_OMAP2) += sdrc2xxx.o
|
|
# obj-$(CONFIG_ARCH_OMAP3) += sdrc3xxx.o
|
|
|
|
# OPP table initialization
|
|
ifeq ($(CONFIG_PM_OPP),y)
|
|
obj-$(CONFIG_ARCH_OMAP3) += opp3xxx_data.o
|
|
obj-$(CONFIG_ARCH_OMAP4) += opp4xxx_data.o
|
|
endif
|
|
|
|
# Power Management
|
|
omap-4-5-pm-common = omap-mpuss-lowpower.o
|
|
obj-$(CONFIG_ARCH_OMAP4) += $(omap-4-5-pm-common)
|
|
obj-$(CONFIG_SOC_OMAP5) += $(omap-4-5-pm-common)
|
|
|
|
ifeq ($(CONFIG_PM),y)
|
|
obj-$(CONFIG_ARCH_OMAP2) += pm24xx.o
|
|
obj-$(CONFIG_ARCH_OMAP2) += sleep24xx.o
|
|
obj-$(CONFIG_ARCH_OMAP3) += pm34xx.o sleep34xx.o
|
|
omap-4-5-pm-common += pm44xx.o
|
|
obj-$(CONFIG_ARCH_OMAP4) += $(omap-4-5-pm-common)
|
|
obj-$(CONFIG_SOC_OMAP5) += $(omap-4-5-pm-common)
|
|
obj-$(CONFIG_SOC_DRA7XX) += $(omap-4-5-pm-common)
|
|
obj-$(CONFIG_SOC_AM33XX) += pm33xx-core.o sleep33xx.o
|
|
obj-$(CONFIG_SOC_AM43XX) += pm33xx-core.o sleep43xx.o
|
|
obj-$(CONFIG_PM_DEBUG) += pm-debug.o
|
|
|
|
obj-$(CONFIG_POWER_AVS_OMAP) += sr_device.o
|
|
obj-$(CONFIG_POWER_AVS_OMAP_CLASS3) += smartreflex-class3.o
|
|
|
|
AFLAGS_sleep24xx.o :=-Wa,-march=armv6
|
|
AFLAGS_sleep34xx.o :=-Wa,-march=armv7-a$(plus_sec)
|
|
AFLAGS_sleep33xx.o :=-Wa,-march=armv7-a$(plus_sec)
|
|
AFLAGS_sleep43xx.o :=-Wa,-march=armv7-a$(plus_sec)
|
|
|
|
endif
|
|
|
|
ifeq ($(CONFIG_CPU_IDLE),y)
|
|
obj-$(CONFIG_ARCH_OMAP3) += cpuidle34xx.o
|
|
omap-4-5-idle-common = cpuidle44xx.o
|
|
obj-$(CONFIG_ARCH_OMAP4) += $(omap-4-5-idle-common)
|
|
obj-$(CONFIG_SOC_OMAP5) += $(omap-4-5-idle-common)
|
|
obj-$(CONFIG_SOC_DRA7XX) += $(omap-4-5-idle-common)
|
|
endif
|
|
|
|
# PRCM
|
|
obj-y += prm_common.o cm_common.o
|
|
obj-$(CONFIG_ARCH_OMAP2) += prm2xxx_3xxx.o prm2xxx.o cm2xxx.o
|
|
obj-$(CONFIG_ARCH_OMAP3) += prm2xxx_3xxx.o prm3xxx.o cm3xxx.o
|
|
obj-$(CONFIG_ARCH_OMAP3) += vc3xxx_data.o vp3xxx_data.o
|
|
omap-prcm-4-5-common = cminst44xx.o prm44xx.o \
|
|
prcm_mpu44xx.o prminst44xx.o \
|
|
vc44xx_data.o vp44xx_data.o
|
|
obj-$(CONFIG_ARCH_OMAP4) += $(omap-prcm-4-5-common)
|
|
obj-$(CONFIG_SOC_OMAP5) += $(omap-prcm-4-5-common)
|
|
obj-$(CONFIG_SOC_DRA7XX) += $(omap-prcm-4-5-common)
|
|
am33xx-43xx-prcm-common += prm33xx.o cm33xx.o
|
|
obj-$(CONFIG_SOC_TI81XX) += $(am33xx-43xx-prcm-common)
|
|
obj-$(CONFIG_SOC_AM33XX) += $(am33xx-43xx-prcm-common)
|
|
obj-$(CONFIG_SOC_AM43XX) += $(omap-prcm-4-5-common) \
|
|
$(am33xx-43xx-prcm-common)
|
|
|
|
# OMAP voltage domains
|
|
voltagedomain-common := voltage.o vc.o vp.o
|
|
obj-$(CONFIG_ARCH_OMAP2) += $(voltagedomain-common)
|
|
obj-$(CONFIG_ARCH_OMAP2) += voltagedomains2xxx_data.o
|
|
obj-$(CONFIG_ARCH_OMAP3) += $(voltagedomain-common)
|
|
obj-$(CONFIG_ARCH_OMAP3) += voltagedomains3xxx_data.o
|
|
obj-$(CONFIG_ARCH_OMAP4) += $(voltagedomain-common)
|
|
obj-$(CONFIG_ARCH_OMAP4) += voltagedomains44xx_data.o
|
|
obj-$(CONFIG_SOC_AM33XX) += $(voltagedomain-common)
|
|
obj-$(CONFIG_SOC_AM43XX) += $(voltagedomain-common)
|
|
obj-$(CONFIG_SOC_OMAP5) += $(voltagedomain-common)
|
|
obj-$(CONFIG_SOC_OMAP5) += voltagedomains54xx_data.o
|
|
obj-$(CONFIG_SOC_DRA7XX) += $(voltagedomain-common)
|
|
|
|
# OMAP powerdomain framework
|
|
powerdomain-common += powerdomain.o powerdomain-common.o
|
|
obj-$(CONFIG_ARCH_OMAP2) += $(powerdomain-common)
|
|
obj-$(CONFIG_ARCH_OMAP2) += powerdomains2xxx_data.o
|
|
obj-$(CONFIG_ARCH_OMAP2) += powerdomains2xxx_3xxx_data.o
|
|
obj-$(CONFIG_ARCH_OMAP3) += $(powerdomain-common)
|
|
obj-$(CONFIG_ARCH_OMAP3) += powerdomains3xxx_data.o
|
|
obj-$(CONFIG_ARCH_OMAP3) += powerdomains2xxx_3xxx_data.o
|
|
obj-$(CONFIG_ARCH_OMAP4) += $(powerdomain-common)
|
|
obj-$(CONFIG_ARCH_OMAP4) += powerdomains44xx_data.o
|
|
obj-$(CONFIG_SOC_AM33XX) += $(powerdomain-common)
|
|
obj-$(CONFIG_SOC_AM33XX) += powerdomains33xx_data.o
|
|
obj-$(CONFIG_SOC_AM43XX) += $(powerdomain-common)
|
|
obj-$(CONFIG_SOC_AM43XX) += powerdomains43xx_data.o
|
|
obj-$(CONFIG_SOC_OMAP5) += $(powerdomain-common)
|
|
obj-$(CONFIG_SOC_OMAP5) += powerdomains54xx_data.o
|
|
obj-$(CONFIG_SOC_DRA7XX) += $(powerdomain-common)
|
|
obj-$(CONFIG_SOC_DRA7XX) += powerdomains7xx_data.o
|
|
|
|
# PRCM clockdomain control
|
|
clockdomain-common += clockdomain.o
|
|
obj-$(CONFIG_ARCH_OMAP2) += $(clockdomain-common)
|
|
obj-$(CONFIG_ARCH_OMAP2) += clockdomains2xxx_3xxx_data.o
|
|
obj-$(CONFIG_SOC_OMAP2420) += clockdomains2420_data.o
|
|
obj-$(CONFIG_SOC_OMAP2430) += clockdomains2430_data.o
|
|
obj-$(CONFIG_ARCH_OMAP3) += $(clockdomain-common)
|
|
obj-$(CONFIG_ARCH_OMAP3) += clockdomains2xxx_3xxx_data.o
|
|
obj-$(CONFIG_ARCH_OMAP3) += clockdomains3xxx_data.o
|
|
obj-$(CONFIG_ARCH_OMAP4) += $(clockdomain-common)
|
|
obj-$(CONFIG_ARCH_OMAP4) += clockdomains44xx_data.o
|
|
obj-$(CONFIG_SOC_AM33XX) += $(clockdomain-common)
|
|
obj-$(CONFIG_SOC_AM33XX) += clockdomains33xx_data.o
|
|
obj-$(CONFIG_SOC_TI81XX) += $(clockdomain-common)
|
|
obj-$(CONFIG_SOC_TI81XX) += clockdomains81xx_data.o
|
|
obj-$(CONFIG_SOC_AM43XX) += $(clockdomain-common)
|
|
obj-$(CONFIG_SOC_AM43XX) += clockdomains43xx_data.o
|
|
obj-$(CONFIG_SOC_OMAP5) += $(clockdomain-common)
|
|
obj-$(CONFIG_SOC_OMAP5) += clockdomains54xx_data.o
|
|
obj-$(CONFIG_SOC_DRA7XX) += $(clockdomain-common)
|
|
obj-$(CONFIG_SOC_DRA7XX) += clockdomains7xx_data.o
|
|
|
|
# Clock framework
|
|
obj-$(CONFIG_ARCH_OMAP2) += $(clock-common)
|
|
obj-$(CONFIG_ARCH_OMAP2) += clkt2xxx_dpllcore.o
|
|
obj-$(CONFIG_ARCH_OMAP2) += clkt2xxx_virt_prcm_set.o
|
|
obj-$(CONFIG_ARCH_OMAP2) += clkt2xxx_dpll.o
|
|
obj-$(CONFIG_ARCH_OMAP3) += $(clock-common)
|
|
obj-$(CONFIG_ARCH_OMAP4) += $(clock-common)
|
|
obj-$(CONFIG_SOC_AM33XX) += $(clock-common)
|
|
obj-$(CONFIG_SOC_OMAP5) += $(clock-common)
|
|
obj-$(CONFIG_SOC_DRA7XX) += $(clock-common)
|
|
obj-$(CONFIG_SOC_AM43XX) += $(clock-common)
|
|
|
|
# OMAP2 clock rate set data (old "OPP" data)
|
|
obj-$(CONFIG_SOC_OMAP2420) += opp2420_data.o
|
|
obj-$(CONFIG_SOC_OMAP2430) += opp2430_data.o
|
|
|
|
# hwmod data
|
|
obj-y += omap_hwmod_common_ipblock_data.o
|
|
obj-$(CONFIG_SOC_OMAP2420) += omap_hwmod_2xxx_ipblock_data.o
|
|
obj-$(CONFIG_SOC_OMAP2420) += omap_hwmod_2xxx_3xxx_ipblock_data.o
|
|
obj-$(CONFIG_SOC_OMAP2420) += omap_hwmod_2xxx_interconnect_data.o
|
|
obj-$(CONFIG_SOC_OMAP2420) += omap_hwmod_2420_data.o
|
|
obj-$(CONFIG_SOC_OMAP2430) += omap_hwmod_2xxx_ipblock_data.o
|
|
obj-$(CONFIG_SOC_OMAP2430) += omap_hwmod_2xxx_3xxx_ipblock_data.o
|
|
obj-$(CONFIG_SOC_OMAP2430) += omap_hwmod_2xxx_interconnect_data.o
|
|
obj-$(CONFIG_SOC_OMAP2430) += omap_hwmod_2430_data.o
|
|
obj-$(CONFIG_ARCH_OMAP3) += omap_hwmod_2xxx_3xxx_ipblock_data.o
|
|
obj-$(CONFIG_ARCH_OMAP3) += omap_hwmod_3xxx_data.o
|
|
obj-$(CONFIG_SOC_AM33XX) += omap_hwmod_33xx_data.o
|
|
obj-$(CONFIG_SOC_AM33XX) += omap_hwmod_33xx_43xx_interconnect_data.o
|
|
obj-$(CONFIG_SOC_AM33XX) += omap_hwmod_33xx_43xx_ipblock_data.o
|
|
obj-$(CONFIG_SOC_AM43XX) += omap_hwmod_43xx_data.o
|
|
obj-$(CONFIG_SOC_AM43XX) += omap_hwmod_33xx_43xx_interconnect_data.o
|
|
obj-$(CONFIG_SOC_AM43XX) += omap_hwmod_33xx_43xx_ipblock_data.o
|
|
obj-$(CONFIG_SOC_TI81XX) += omap_hwmod_81xx_data.o
|
|
obj-$(CONFIG_ARCH_OMAP4) += omap_hwmod_44xx_data.o
|
|
obj-$(CONFIG_SOC_OMAP5) += omap_hwmod_54xx_data.o
|
|
obj-$(CONFIG_SOC_DRA7XX) += omap_hwmod_7xx_data.o
|
|
|
|
# OMAP2420 MSDI controller integration support ("MMC")
|
|
obj-$(CONFIG_SOC_OMAP2420) += msdi.o
|
|
|
|
# Specific board support
|
|
obj-$(CONFIG_MACH_OMAP_GENERIC) += board-generic.o pdata-quirks.o
|
|
obj-$(CONFIG_MACH_NOKIA_N8X0) += board-n8x0.o
|
|
|
|
# Platform specific device init code
|
|
|
|
omap-hsmmc-$(CONFIG_MMC_OMAP_HS) := hsmmc.o
|
|
obj-y += $(omap-hsmmc-m) $(omap-hsmmc-y)
|
|
|
|
obj-y += omap_phy_internal.o
|
|
|
|
obj-$(CONFIG_MACH_OMAP2_TUSB6010) += usb-tusb6010.o
|
|
|
|
arch/arm/mach-omap2/pm-asm-offsets.s: arch/arm/mach-omap2/pm-asm-offsets.c
|
|
$(call if_changed_dep,cc_s_c)
|
|
|
|
include/generated/ti-pm-asm-offsets.h: arch/arm/mach-omap2/pm-asm-offsets.s FORCE
|
|
$(call filechk,offsets,__TI_PM_ASM_OFFSETS_H__)
|
|
|
|
$(obj)/sleep33xx.o $(obj)/sleep43xx.o: include/generated/ti-pm-asm-offsets.h
|