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