# Copyright (c) 2022 Cypress Semiconductor Corporation (an Infineon company) or
# an affiliate of Cypress Semiconductor Corporation
# SPDX-License-Identifier: Apache-2.0

# Infineon PSoC6_04 series MCUs

config SOC_CY8C6244AZI_S4D92
	bool "CY8C6244AZI_S4D92"
	select SOC_DIE_PSOC6_04
	select SOC_PACKAGE_PSOC6_04_64_TQFP
	depends on SOC_SERIES_PSOC_62

config SOC_CY8C6244LQI_S4D92
	bool "CY8C6244LQI_S4D92"
	select SOC_DIE_PSOC6_04
	select SOC_PACKAGE_PSOC6_04_68_QFN
	depends on SOC_SERIES_PSOC_62

config SOC_CY8C6244AZI_S4D93
	bool "CY8C6244AZI_S4D93"
	select SOC_DIE_PSOC6_04
	select SOC_PACKAGE_PSOC6_04_80_TQFP
	depends on SOC_SERIES_PSOC_62

config SOC_CY8C6244AZI_S4D82
	bool "CY8C6244AZI_S4D82"
	select SOC_DIE_PSOC6_04
	select SOC_PACKAGE_PSOC6_04_64_TQFP
	depends on SOC_SERIES_PSOC_62

config SOC_CY8C6244LQI_S4D82
	bool "CY8C6244LQI_S4D82"
	select SOC_DIE_PSOC6_04
	select SOC_PACKAGE_PSOC6_04_68_QFN
	depends on SOC_SERIES_PSOC_62

config SOC_CY8C6244AZI_S4D83
	bool "CY8C6244AZI_S4D83"
	select SOC_DIE_PSOC6_04
	select SOC_PACKAGE_PSOC6_04_80_TQFP
	depends on SOC_SERIES_PSOC_62

config SOC_CY8C6244AZI_S4D62
	bool "CY8C6244AZI_S4D62"
	select SOC_DIE_PSOC6_04
	select SOC_PACKAGE_PSOC6_04_64_TQFP
	depends on SOC_SERIES_PSOC_62

config SOC_CY8C6244LQI_S4D62
	bool "CY8C6244LQI_S4D62"
	select SOC_DIE_PSOC6_04
	select SOC_PACKAGE_PSOC6_04_68_QFN
	depends on SOC_SERIES_PSOC_62

config SOC_CY8C6244AZI_S4D12
	bool "CY8C6244AZI_S4D12"
	select SOC_DIE_PSOC6_04
	select SOC_PACKAGE_PSOC6_04_64_TQFP
	depends on SOC_SERIES_PSOC_62

config SOC_CY8C6244LQI_S4D12
	bool "CY8C6244LQI_S4D12"
	select SOC_DIE_PSOC6_04
	select SOC_PACKAGE_PSOC6_04_68_QFN
	depends on SOC_SERIES_PSOC_62

config SOC_CY8C6144AZI_S4F92
	bool "CY8C6144AZI_S4F92"
	select SOC_DIE_PSOC6_04
	select SOC_PACKAGE_PSOC6_04_64_TQFP
	depends on SOC_SERIES_PSOC_61

config SOC_CY8C6144LQI_S4F92
	bool "CY8C6144LQI_S4F92"
	select SOC_DIE_PSOC6_04
	select SOC_PACKAGE_PSOC6_04_68_QFN
	depends on SOC_SERIES_PSOC_61

config SOC_CY8C6144AZI_S4F93
	bool "CY8C6144AZI_S4F93"
	select SOC_DIE_PSOC6_04
	select SOC_PACKAGE_PSOC6_04_80_TQFP
	depends on SOC_SERIES_PSOC_61

config SOC_CY8C6144AZI_S4F82
	bool "CY8C6144AZI_S4F82"
	select SOC_DIE_PSOC6_04
	select SOC_PACKAGE_PSOC6_04_64_TQFP
	depends on SOC_SERIES_PSOC_61

config SOC_CY8C6144LQI_S4F82
	bool "CY8C6144LQI_S4F82"
	select SOC_DIE_PSOC6_04
	select SOC_PACKAGE_PSOC6_04_68_QFN
	depends on SOC_SERIES_PSOC_61

config SOC_CY8C6144AZI_S4F83
	bool "CY8C6144AZI_S4F83"
	select SOC_DIE_PSOC6_04
	select SOC_PACKAGE_PSOC6_04_80_TQFP
	depends on SOC_SERIES_PSOC_61

config SOC_CY8C6144AZI_S4F62
	bool "CY8C6144AZI_S4F62"
	select SOC_DIE_PSOC6_04
	select SOC_PACKAGE_PSOC6_04_64_TQFP
	depends on SOC_SERIES_PSOC_61

config SOC_CY8C6144LQI_S4F62
	bool "CY8C6144LQI_S4F62"
	select SOC_DIE_PSOC6_04
	select SOC_PACKAGE_PSOC6_04_68_QFN
	depends on SOC_SERIES_PSOC_61

config SOC_CY8C6144AZI_S4F12
	bool "CY8C6144AZI_S4F12"
	select SOC_DIE_PSOC6_04
	select SOC_PACKAGE_PSOC6_04_64_TQFP
	depends on SOC_SERIES_PSOC_61

config SOC_CY8C6144LQI_S4F12
	bool "CY8C6144LQI_S4F12"
	select SOC_DIE_PSOC6_04
	select SOC_PACKAGE_PSOC6_04_68_QFN
	depends on SOC_SERIES_PSOC_61
