# SPDX-License-Identifier: GPL-2.0-only
menuconfig ARCH_OMAP1
	bool "TI OMAP1"
	depends on ARCH_MULTI_V4T || ARCH_MULTI_V5
	depends on CPU_LITTLE_ENDIAN
	depends on ATAGS
	select ARCH_HAS_HOLES_MEMORYMODEL
	select ARCH_OMAP
	select CLKSRC_MMIO
	select FORCE_PCI if PCCARD
	select GENERIC_IRQ_CHIP
	select GPIOLIB
	help
	  Support for older TI OMAP1 (omap7xx, omap15xx or omap16xx)

if ARCH_OMAP1

menu "TI OMAP1 specific features"

comment "OMAP Core Type"

config ARCH_OMAP15XX
	depends on ARCH_MULTI_V4T
	default y
	bool "OMAP15xx Based System"
	select CPU_ARM925T
	select OMAP_MPU_TIMER

config ARCH_OMAP16XX
	depends on ARCH_MULTI_V5
	bool "OMAP16xx Based System"
	select ARCH_OMAP_OTG
	select CPU_ARM926T
	select OMAP_DM_TIMER

config ARCH_OMAP
	bool

comment "OMAP Feature Selections"

config OMAP_MUX
	bool "OMAP multiplexing support"
	default y
	help
	  Pin multiplexing support for OMAP boards. If your bootloader
	  sets the multiplexing correctly, say N. Otherwise, or if unsure,
	  say Y.

config OMAP_MUX_DEBUG
	bool "Multiplexing debug output"
	depends on OMAP_MUX
	help
	  Makes the multiplexing functions print out a lot of debug info.
	  This is useful if you want to find out the correct values of the
	  multiplexing registers.

config OMAP_MUX_WARNINGS
	bool "Warn about pins the bootloader didn't set up"
	depends on OMAP_MUX
	default y
	help
	  Choose Y here to warn whenever driver initialization logic needs
	  to change the pin multiplexing setup.	 When there are no warnings
	  printed, it's safe to deselect OMAP_MUX for your product.

config OMAP_32K_TIMER
	bool "Use 32KHz timer"
	depends on ARCH_OMAP16XX
	default ARCH_OMAP16XX
	help
	  Select this option if you want to enable the OMAP 32KHz timer.
	  This timer saves power compared to the OMAP_MPU_TIMER, and has
	  support for no tick during idle. The 32KHz timer provides less
	  intra-tick resolution than OMAP_MPU_TIMER. The 32KHz timer is
	  currently only available for OMAP16XX, 24XX, 34XX, OMAP4/5 and DRA7XX.

	  On OMAP2PLUS this value is only used for CONFIG_HZ and
	  CLOCK_TICK_RATE compile time calculation.
	  The actual timer selection is done in the board file
	  through the (DT_)MACHINE_START structure.

config OMAP_MPU_TIMER
	bool "Use mpu timer"
	depends on ARCH_OMAP1
	help
	  Select this option if you want to use the OMAP mpu timer. This
	  timer provides more intra-tick resolution than the 32KHz timer,
	  but consumes more power.

config OMAP_SERIAL_WAKE
	bool "Enable wake-up events for serial ports"
	depends on ARCH_OMAP1 && OMAP_MUX
	default y
	help
	  Select this option if you want to have your system wake up
	  to data on the serial RX line. This allows you to wake the
	  system from serial console.

config OMAP_RESET_CLOCKS
	bool "Reset unused clocks during boot"
	depends on ARCH_OMAP
	help
	  Say Y if you want to reset unused clocks during boot.
	  This option saves power, but assumes all drivers are
	  using the clock framework. Broken drivers that do not
	  yet use clock framework may not work with this option.
	  If you are booting from another operating system, you
	  probably do not want this option enabled until your
	  device drivers work properly.

config ARCH_OMAP_OTG
	bool

comment "OMAP Board Type"

config MACH_OMAP_OSK
	bool "TI OSK Support"
	depends on ARCH_OMAP16XX
	help
	  TI OMAP 5912 OSK (OMAP Starter Kit) board support. Say Y here
	  if you have such a board.

config MACH_OMAP_PALMTE
	bool "Palm Tungsten E"
	depends on ARCH_OMAP15XX
	help
	  Support for the Palm Tungsten E PDA.  To boot the kernel, you'll
	  need a PalmOS compatible bootloader; check out
	  http://palmtelinux.sourceforge.net/ for more information.
	  Say Y here if you have this PDA model, say N otherwise.

config MACH_SX1
	bool "Siemens SX1"
	depends on ARCH_OMAP15XX
	select I2C
	help
	  Support for the Siemens SX1 phone. To boot the kernel,
	  you'll need a SX1 compatible bootloader; check out
	  http://forum.oslik.ru and
	  https://www.handhelds.org/moin/moin.cgi/SiemensSX1
	  for more information.
	  Say Y here if you have such a phone, say NO otherwise.

config MACH_NOKIA770
	bool "Nokia 770"
	depends on ARCH_OMAP16XX
	help
	  Support for the Nokia 770 Internet Tablet. Say Y here if you
	  have such a device.

config MACH_AMS_DELTA
	bool "Amstrad E3 (Delta)"
	depends on ARCH_OMAP15XX
	select FIQ
	select GPIO_GENERIC_PLATFORM
	select LEDS_GPIO_REGISTER
	select REGULATOR
	select REGULATOR_FIXED_VOLTAGE
	help
	  Support for the Amstrad E3 (codename Delta) videophone. Say Y here
	  if you have such a device.

endmenu

endif
