xref: /OK3568_Linux_fs/kernel/drivers/soc/ti/Kconfig (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun# SPDX-License-Identifier: GPL-2.0-only
2*4882a593Smuzhiyun# 64-bit ARM SoCs from TI
3*4882a593Smuzhiyunif ARM64
4*4882a593Smuzhiyun
5*4882a593Smuzhiyunif ARCH_K3
6*4882a593Smuzhiyun
7*4882a593Smuzhiyunconfig ARCH_K3_AM6_SOC
8*4882a593Smuzhiyun	bool "K3 AM6 SoC"
9*4882a593Smuzhiyun	help
10*4882a593Smuzhiyun	  Enable support for TI's AM6 SoC Family support
11*4882a593Smuzhiyun
12*4882a593Smuzhiyunconfig ARCH_K3_J721E_SOC
13*4882a593Smuzhiyun	bool "K3 J721E SoC"
14*4882a593Smuzhiyun	help
15*4882a593Smuzhiyun	  Enable support for TI's J721E SoC Family support
16*4882a593Smuzhiyun
17*4882a593Smuzhiyunendif
18*4882a593Smuzhiyun
19*4882a593Smuzhiyunendif
20*4882a593Smuzhiyun
21*4882a593Smuzhiyun#
22*4882a593Smuzhiyun# TI SOC drivers
23*4882a593Smuzhiyun#
24*4882a593Smuzhiyunmenuconfig SOC_TI
25*4882a593Smuzhiyun	bool "TI SOC drivers support"
26*4882a593Smuzhiyun
27*4882a593Smuzhiyunif SOC_TI
28*4882a593Smuzhiyun
29*4882a593Smuzhiyunconfig KEYSTONE_NAVIGATOR_QMSS
30*4882a593Smuzhiyun	tristate "Keystone Queue Manager Sub System"
31*4882a593Smuzhiyun	depends on ARCH_KEYSTONE
32*4882a593Smuzhiyun	help
33*4882a593Smuzhiyun	  Say y here to support the Keystone multicore Navigator Queue
34*4882a593Smuzhiyun	  Manager support. The Queue Manager is a hardware module that
35*4882a593Smuzhiyun	  is responsible for accelerating management of the packet queues.
36*4882a593Smuzhiyun	  Packets are queued/de-queued by writing/reading descriptor address
37*4882a593Smuzhiyun	  to a particular memory mapped location in the Queue Manager module.
38*4882a593Smuzhiyun
39*4882a593Smuzhiyun	  If unsure, say N.
40*4882a593Smuzhiyun
41*4882a593Smuzhiyunconfig KEYSTONE_NAVIGATOR_DMA
42*4882a593Smuzhiyun	tristate "TI Keystone Navigator Packet DMA support"
43*4882a593Smuzhiyun	depends on ARCH_KEYSTONE
44*4882a593Smuzhiyun	help
45*4882a593Smuzhiyun	  Say y tp enable support for the Keystone Navigator Packet DMA on
46*4882a593Smuzhiyun	  on Keystone family of devices. It sets up the dma channels for the
47*4882a593Smuzhiyun	  Queue Manager Sub System.
48*4882a593Smuzhiyun
49*4882a593Smuzhiyun	  If unsure, say N.
50*4882a593Smuzhiyun
51*4882a593Smuzhiyunconfig AMX3_PM
52*4882a593Smuzhiyun	tristate "AMx3 Power Management"
53*4882a593Smuzhiyun	depends on SOC_AM33XX || SOC_AM43XX
54*4882a593Smuzhiyun	depends on WKUP_M3_IPC && TI_EMIF_SRAM && SRAM && RTC_DRV_OMAP
55*4882a593Smuzhiyun	help
56*4882a593Smuzhiyun	  Enable power management on AM335x and AM437x. Required for suspend to mem
57*4882a593Smuzhiyun	  and standby states on both AM335x and AM437x platforms and for deeper cpuidle
58*4882a593Smuzhiyun	  c-states on AM335x. Also required for rtc and ddr in self-refresh low
59*4882a593Smuzhiyun	  power mode on AM437x platforms.
60*4882a593Smuzhiyun
61*4882a593Smuzhiyunconfig WKUP_M3_IPC
62*4882a593Smuzhiyun	tristate "TI AMx3 Wkup-M3 IPC Driver"
63*4882a593Smuzhiyun	depends on WKUP_M3_RPROC
64*4882a593Smuzhiyun	depends on OMAP2PLUS_MBOX
65*4882a593Smuzhiyun	help
66*4882a593Smuzhiyun	  TI AM33XX and AM43XX have a Cortex M3, the Wakeup M3, to handle
67*4882a593Smuzhiyun	  low power transitions. This IPC driver provides the necessary API
68*4882a593Smuzhiyun	  to communicate and use the Wakeup M3 for PM features like suspend
69*4882a593Smuzhiyun	  resume and boots it using wkup_m3_rproc driver.
70*4882a593Smuzhiyun
71*4882a593Smuzhiyunconfig TI_SCI_PM_DOMAINS
72*4882a593Smuzhiyun	tristate "TI SCI PM Domains Driver"
73*4882a593Smuzhiyun	depends on TI_SCI_PROTOCOL
74*4882a593Smuzhiyun	depends on PM_GENERIC_DOMAINS
75*4882a593Smuzhiyun	help
76*4882a593Smuzhiyun	  Generic power domain implementation for TI device implementing
77*4882a593Smuzhiyun	  the TI SCI protocol.
78*4882a593Smuzhiyun
79*4882a593Smuzhiyun	  To compile this as a module, choose M here. The module will be
80*4882a593Smuzhiyun	  called ti_sci_pm_domains. Note this is needed early in boot before
81*4882a593Smuzhiyun	  rootfs may be available.
82*4882a593Smuzhiyun
83*4882a593Smuzhiyunconfig TI_K3_RINGACC
84*4882a593Smuzhiyun	bool "K3 Ring accelerator Sub System"
85*4882a593Smuzhiyun	depends on ARCH_K3 || COMPILE_TEST
86*4882a593Smuzhiyun	depends on TI_SCI_INTA_IRQCHIP
87*4882a593Smuzhiyun	help
88*4882a593Smuzhiyun	  Say y here to support the K3 Ring accelerator module.
89*4882a593Smuzhiyun	  The Ring Accelerator (RINGACC or RA)  provides hardware acceleration
90*4882a593Smuzhiyun	  to enable straightforward passing of work between a producer
91*4882a593Smuzhiyun	  and a consumer. There is one RINGACC module per NAVSS on TI AM65x SoCs
92*4882a593Smuzhiyun	  If unsure, say N.
93*4882a593Smuzhiyun
94*4882a593Smuzhiyunconfig TI_K3_SOCINFO
95*4882a593Smuzhiyun	bool
96*4882a593Smuzhiyun	depends on ARCH_K3 || COMPILE_TEST
97*4882a593Smuzhiyun	select SOC_BUS
98*4882a593Smuzhiyun	select MFD_SYSCON
99*4882a593Smuzhiyun	help
100*4882a593Smuzhiyun	  Include support for the SoC bus socinfo for the TI K3 Multicore SoC
101*4882a593Smuzhiyun	  platforms to provide information about the SoC family and
102*4882a593Smuzhiyun	  variant to user space.
103*4882a593Smuzhiyun
104*4882a593Smuzhiyunconfig TI_PRUSS
105*4882a593Smuzhiyun	tristate "TI PRU-ICSS Subsystem Platform drivers"
106*4882a593Smuzhiyun	depends on SOC_AM33XX || SOC_AM43XX || SOC_DRA7XX || ARCH_KEYSTONE || ARCH_K3
107*4882a593Smuzhiyun	select MFD_SYSCON
108*4882a593Smuzhiyun	help
109*4882a593Smuzhiyun	  TI PRU-ICSS Subsystem platform specific support.
110*4882a593Smuzhiyun
111*4882a593Smuzhiyun	  Say Y or M here to support the Programmable Realtime Unit (PRU)
112*4882a593Smuzhiyun	  processors on various TI SoCs. It's safe to say N here if you're
113*4882a593Smuzhiyun	  not interested in the PRU or if you are unsure.
114*4882a593Smuzhiyun
115*4882a593Smuzhiyunendif # SOC_TI
116*4882a593Smuzhiyun
117*4882a593Smuzhiyunconfig TI_SCI_INTA_MSI_DOMAIN
118*4882a593Smuzhiyun	bool
119*4882a593Smuzhiyun	select GENERIC_MSI_IRQ_DOMAIN
120*4882a593Smuzhiyun	help
121*4882a593Smuzhiyun	  Driver to enable Interrupt Aggregator specific MSI Domain.
122