# NXP LPC55S69 CPU1 platform configuration options

# Copyright (c) 2019, NXP
# SPDX-License-Identifier: Apache-2.0

if SOC_LPC55S69_CPU1

config SOC
	default "lpc55S69_cpu1"

if PINMUX

config PINMUX_MCUX_LPC
	default n

endif # PINMUX

config GPIO
	default n

if GPIO

config GPIO_MCUX_LPC
	default n

endif # GPIO

if SERIAL

config USART_MCUX_LPC
	default n

endif # SERIAL

endif # SOC_LPC55S69_CPU1
