18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0
28c2ecf20Sopenharmony_ciconfig PPC_47x
38c2ecf20Sopenharmony_ci	bool "Support for 47x variant"
48c2ecf20Sopenharmony_ci	depends on 44x
58c2ecf20Sopenharmony_ci	select MPIC
68c2ecf20Sopenharmony_ci	help
78c2ecf20Sopenharmony_ci	  This option enables support for the 47x family of processors and is
88c2ecf20Sopenharmony_ci	  not currently compatible with other 44x or 46x varients
98c2ecf20Sopenharmony_ci
108c2ecf20Sopenharmony_ciconfig BAMBOO
118c2ecf20Sopenharmony_ci	bool "Bamboo"
128c2ecf20Sopenharmony_ci	depends on 44x
138c2ecf20Sopenharmony_ci	select PPC44x_SIMPLE
148c2ecf20Sopenharmony_ci	select 440EP
158c2ecf20Sopenharmony_ci	select FORCE_PCI
168c2ecf20Sopenharmony_ci	help
178c2ecf20Sopenharmony_ci	  This option enables support for the IBM PPC440EP evaluation board.
188c2ecf20Sopenharmony_ci
198c2ecf20Sopenharmony_ciconfig BLUESTONE
208c2ecf20Sopenharmony_ci	bool "Bluestone"
218c2ecf20Sopenharmony_ci	depends on 44x
228c2ecf20Sopenharmony_ci	select PPC44x_SIMPLE
238c2ecf20Sopenharmony_ci	select APM821xx
248c2ecf20Sopenharmony_ci	select FORCE_PCI
258c2ecf20Sopenharmony_ci	select PCI_MSI
268c2ecf20Sopenharmony_ci	select PPC4xx_MSI
278c2ecf20Sopenharmony_ci	select PPC4xx_PCI_EXPRESS
288c2ecf20Sopenharmony_ci	select IBM_EMAC_RGMII if IBM_EMAC
298c2ecf20Sopenharmony_ci	help
308c2ecf20Sopenharmony_ci	  This option enables support for the APM APM821xx Evaluation board.
318c2ecf20Sopenharmony_ci
328c2ecf20Sopenharmony_ciconfig EBONY
338c2ecf20Sopenharmony_ci	bool "Ebony"
348c2ecf20Sopenharmony_ci	depends on 44x
358c2ecf20Sopenharmony_ci	default y
368c2ecf20Sopenharmony_ci	select 440GP
378c2ecf20Sopenharmony_ci	select FORCE_PCI
388c2ecf20Sopenharmony_ci	select OF_RTC
398c2ecf20Sopenharmony_ci	help
408c2ecf20Sopenharmony_ci	  This option enables support for the IBM PPC440GP evaluation board.
418c2ecf20Sopenharmony_ci
428c2ecf20Sopenharmony_ciconfig SAM440EP
438c2ecf20Sopenharmony_ci	bool "Sam440ep"
448c2ecf20Sopenharmony_ci	depends on 44x
458c2ecf20Sopenharmony_ci	select 440EP
468c2ecf20Sopenharmony_ci	select FORCE_PCI
478c2ecf20Sopenharmony_ci	help
488c2ecf20Sopenharmony_ci	  This option enables support for the ACube Sam440ep board.
498c2ecf20Sopenharmony_ci
508c2ecf20Sopenharmony_ciconfig SEQUOIA
518c2ecf20Sopenharmony_ci	bool "Sequoia"
528c2ecf20Sopenharmony_ci	depends on 44x
538c2ecf20Sopenharmony_ci	select PPC44x_SIMPLE
548c2ecf20Sopenharmony_ci	select 440EPX
558c2ecf20Sopenharmony_ci	help
568c2ecf20Sopenharmony_ci	  This option enables support for the AMCC PPC440EPX evaluation board.
578c2ecf20Sopenharmony_ci
588c2ecf20Sopenharmony_ciconfig TAISHAN
598c2ecf20Sopenharmony_ci	bool "Taishan"
608c2ecf20Sopenharmony_ci	depends on 44x
618c2ecf20Sopenharmony_ci	select PPC44x_SIMPLE
628c2ecf20Sopenharmony_ci	select 440GX
638c2ecf20Sopenharmony_ci	select FORCE_PCI
648c2ecf20Sopenharmony_ci	help
658c2ecf20Sopenharmony_ci	  This option enables support for the AMCC PPC440GX "Taishan"
668c2ecf20Sopenharmony_ci	  evaluation board.
678c2ecf20Sopenharmony_ci
688c2ecf20Sopenharmony_ciconfig KATMAI
698c2ecf20Sopenharmony_ci	bool "Katmai"
708c2ecf20Sopenharmony_ci	depends on 44x
718c2ecf20Sopenharmony_ci	select PPC44x_SIMPLE
728c2ecf20Sopenharmony_ci	select 440SPe
738c2ecf20Sopenharmony_ci	select FORCE_PCI
748c2ecf20Sopenharmony_ci	select PPC4xx_PCI_EXPRESS
758c2ecf20Sopenharmony_ci	select PCI_MSI
768c2ecf20Sopenharmony_ci	select PPC4xx_MSI
778c2ecf20Sopenharmony_ci	help
788c2ecf20Sopenharmony_ci	  This option enables support for the AMCC PPC440SPe evaluation board.
798c2ecf20Sopenharmony_ci
808c2ecf20Sopenharmony_ciconfig RAINIER
818c2ecf20Sopenharmony_ci	bool "Rainier"
828c2ecf20Sopenharmony_ci	depends on 44x
838c2ecf20Sopenharmony_ci	select PPC44x_SIMPLE
848c2ecf20Sopenharmony_ci	select 440GRX
858c2ecf20Sopenharmony_ci	select FORCE_PCI
868c2ecf20Sopenharmony_ci	help
878c2ecf20Sopenharmony_ci	  This option enables support for the AMCC PPC440GRX evaluation board.
888c2ecf20Sopenharmony_ci
898c2ecf20Sopenharmony_ciconfig WARP
908c2ecf20Sopenharmony_ci	bool "PIKA Warp"
918c2ecf20Sopenharmony_ci	depends on 44x
928c2ecf20Sopenharmony_ci	select 440EP
938c2ecf20Sopenharmony_ci	help
948c2ecf20Sopenharmony_ci	  This option enables support for the PIKA Warp(tm) Appliance. The Warp
958c2ecf20Sopenharmony_ci	  is a small computer replacement with up to 9 ports of FXO/FXS plus VOIP
968c2ecf20Sopenharmony_ci	  stations and trunks.
978c2ecf20Sopenharmony_ci
988c2ecf20Sopenharmony_ci	  See http://www.pikatechnologies.com/ and follow the "PIKA for Computer
998c2ecf20Sopenharmony_ci	  Telephony Developers" link for more information.
1008c2ecf20Sopenharmony_ci
1018c2ecf20Sopenharmony_ciconfig ARCHES
1028c2ecf20Sopenharmony_ci	bool "Arches"
1038c2ecf20Sopenharmony_ci	depends on 44x
1048c2ecf20Sopenharmony_ci	select PPC44x_SIMPLE
1058c2ecf20Sopenharmony_ci	select 460EX # Odd since it uses 460GT but the effects are the same
1068c2ecf20Sopenharmony_ci	select FORCE_PCI
1078c2ecf20Sopenharmony_ci	select PPC4xx_PCI_EXPRESS
1088c2ecf20Sopenharmony_ci	help
1098c2ecf20Sopenharmony_ci	  This option enables support for the AMCC Dual PPC460GT evaluation board.
1108c2ecf20Sopenharmony_ci
1118c2ecf20Sopenharmony_ciconfig CANYONLANDS
1128c2ecf20Sopenharmony_ci	bool "Canyonlands"
1138c2ecf20Sopenharmony_ci	depends on 44x
1148c2ecf20Sopenharmony_ci	select 460EX
1158c2ecf20Sopenharmony_ci	select FORCE_PCI
1168c2ecf20Sopenharmony_ci	select PPC4xx_PCI_EXPRESS
1178c2ecf20Sopenharmony_ci	select PCI_MSI
1188c2ecf20Sopenharmony_ci	select PPC4xx_MSI
1198c2ecf20Sopenharmony_ci	select IBM_EMAC_RGMII if IBM_EMAC
1208c2ecf20Sopenharmony_ci	select IBM_EMAC_ZMII if IBM_EMAC
1218c2ecf20Sopenharmony_ci	help
1228c2ecf20Sopenharmony_ci	  This option enables support for the AMCC PPC460EX evaluation board.
1238c2ecf20Sopenharmony_ci
1248c2ecf20Sopenharmony_ciconfig GLACIER
1258c2ecf20Sopenharmony_ci	bool "Glacier"
1268c2ecf20Sopenharmony_ci	depends on 44x
1278c2ecf20Sopenharmony_ci	select PPC44x_SIMPLE
1288c2ecf20Sopenharmony_ci	select 460EX # Odd since it uses 460GT but the effects are the same
1298c2ecf20Sopenharmony_ci	select FORCE_PCI
1308c2ecf20Sopenharmony_ci	select PPC4xx_PCI_EXPRESS
1318c2ecf20Sopenharmony_ci	select IBM_EMAC_RGMII if IBM_EMAC
1328c2ecf20Sopenharmony_ci	select IBM_EMAC_ZMII if IBM_EMAC
1338c2ecf20Sopenharmony_ci	help
1348c2ecf20Sopenharmony_ci	  This option enables support for the AMCC PPC460GT evaluation board.
1358c2ecf20Sopenharmony_ci
1368c2ecf20Sopenharmony_ciconfig REDWOOD
1378c2ecf20Sopenharmony_ci	bool "Redwood"
1388c2ecf20Sopenharmony_ci	depends on 44x
1398c2ecf20Sopenharmony_ci	select PPC44x_SIMPLE
1408c2ecf20Sopenharmony_ci	select 460SX
1418c2ecf20Sopenharmony_ci	select FORCE_PCI
1428c2ecf20Sopenharmony_ci	select PPC4xx_PCI_EXPRESS
1438c2ecf20Sopenharmony_ci	select PCI_MSI
1448c2ecf20Sopenharmony_ci	select PPC4xx_MSI
1458c2ecf20Sopenharmony_ci	help
1468c2ecf20Sopenharmony_ci	  This option enables support for the AMCC PPC460SX Redwood board.
1478c2ecf20Sopenharmony_ci
1488c2ecf20Sopenharmony_ciconfig EIGER
1498c2ecf20Sopenharmony_ci	bool "Eiger"
1508c2ecf20Sopenharmony_ci	depends on 44x
1518c2ecf20Sopenharmony_ci	select PPC44x_SIMPLE
1528c2ecf20Sopenharmony_ci	select 460SX
1538c2ecf20Sopenharmony_ci	select FORCE_PCI
1548c2ecf20Sopenharmony_ci	select PPC4xx_PCI_EXPRESS
1558c2ecf20Sopenharmony_ci	select IBM_EMAC_RGMII if IBM_EMAC
1568c2ecf20Sopenharmony_ci	help
1578c2ecf20Sopenharmony_ci	  This option enables support for the AMCC PPC460SX evaluation board.
1588c2ecf20Sopenharmony_ci
1598c2ecf20Sopenharmony_ciconfig YOSEMITE
1608c2ecf20Sopenharmony_ci	bool "Yosemite"
1618c2ecf20Sopenharmony_ci	depends on 44x
1628c2ecf20Sopenharmony_ci	select PPC44x_SIMPLE
1638c2ecf20Sopenharmony_ci	select 440EP
1648c2ecf20Sopenharmony_ci	select FORCE_PCI
1658c2ecf20Sopenharmony_ci	help
1668c2ecf20Sopenharmony_ci	  This option enables support for the AMCC PPC440EP evaluation board.
1678c2ecf20Sopenharmony_ci
1688c2ecf20Sopenharmony_ciconfig ISS4xx
1698c2ecf20Sopenharmony_ci	bool "ISS 4xx Simulator"
1708c2ecf20Sopenharmony_ci	depends on 44x
1718c2ecf20Sopenharmony_ci	select 440GP if 44x && !PPC_47x
1728c2ecf20Sopenharmony_ci	select PPC_FPU
1738c2ecf20Sopenharmony_ci	select OF_RTC
1748c2ecf20Sopenharmony_ci	help
1758c2ecf20Sopenharmony_ci	  This option enables support for the IBM ISS simulation environment
1768c2ecf20Sopenharmony_ci
1778c2ecf20Sopenharmony_ciconfig CURRITUCK
1788c2ecf20Sopenharmony_ci	bool "IBM Currituck (476fpe) Support"
1798c2ecf20Sopenharmony_ci	depends on PPC_47x
1808c2ecf20Sopenharmony_ci	select I2C
1818c2ecf20Sopenharmony_ci	select SWIOTLB
1828c2ecf20Sopenharmony_ci	select 476FPE
1838c2ecf20Sopenharmony_ci	select FORCE_PCI
1848c2ecf20Sopenharmony_ci	select PPC4xx_PCI_EXPRESS
1858c2ecf20Sopenharmony_ci	help
1868c2ecf20Sopenharmony_ci	  This option enables support for the IBM Currituck (476fpe) evaluation board
1878c2ecf20Sopenharmony_ci
1888c2ecf20Sopenharmony_ciconfig FSP2
1898c2ecf20Sopenharmony_ci	bool "IBM FSP2 (476fpe) Support"
1908c2ecf20Sopenharmony_ci	depends on PPC_47x
1918c2ecf20Sopenharmony_ci	select 476FPE
1928c2ecf20Sopenharmony_ci	select IBM_EMAC_EMAC4 if IBM_EMAC
1938c2ecf20Sopenharmony_ci	select IBM_EMAC_RGMII if IBM_EMAC
1948c2ecf20Sopenharmony_ci	select COMMON_CLK
1958c2ecf20Sopenharmony_ci	select DEFAULT_UIMAGE
1968c2ecf20Sopenharmony_ci	help
1978c2ecf20Sopenharmony_ci	  This option enables support for the IBM FSP2 (476fpe) board
1988c2ecf20Sopenharmony_ci
1998c2ecf20Sopenharmony_ciconfig AKEBONO
2008c2ecf20Sopenharmony_ci	bool "IBM Akebono (476gtr) Support"
2018c2ecf20Sopenharmony_ci	depends on PPC_47x
2028c2ecf20Sopenharmony_ci	select SWIOTLB
2038c2ecf20Sopenharmony_ci	select 476FPE
2048c2ecf20Sopenharmony_ci	select PPC4xx_PCI_EXPRESS
2058c2ecf20Sopenharmony_ci	select FORCE_PCI
2068c2ecf20Sopenharmony_ci	select PCI_MSI
2078c2ecf20Sopenharmony_ci	select PPC4xx_HSTA_MSI
2088c2ecf20Sopenharmony_ci	select I2C
2098c2ecf20Sopenharmony_ci	select I2C_IBM_IIC
2108c2ecf20Sopenharmony_ci	select NETDEVICES
2118c2ecf20Sopenharmony_ci	select ETHERNET
2128c2ecf20Sopenharmony_ci	select NET_VENDOR_IBM
2138c2ecf20Sopenharmony_ci	select IBM_EMAC_EMAC4 if IBM_EMAC
2148c2ecf20Sopenharmony_ci	select USB if USB_SUPPORT
2158c2ecf20Sopenharmony_ci	select USB_OHCI_HCD_PLATFORM if USB_OHCI_HCD
2168c2ecf20Sopenharmony_ci	select USB_EHCI_HCD_PLATFORM if USB_EHCI_HCD
2178c2ecf20Sopenharmony_ci	select MMC_SDHCI
2188c2ecf20Sopenharmony_ci	select MMC_SDHCI_PLTFM
2198c2ecf20Sopenharmony_ci	select ATA
2208c2ecf20Sopenharmony_ci	select SATA_AHCI_PLATFORM
2218c2ecf20Sopenharmony_ci	help
2228c2ecf20Sopenharmony_ci	  This option enables support for the IBM Akebono (476gtr) evaluation board
2238c2ecf20Sopenharmony_ci
2248c2ecf20Sopenharmony_ci
2258c2ecf20Sopenharmony_ciconfig ICON
2268c2ecf20Sopenharmony_ci	bool "Icon"
2278c2ecf20Sopenharmony_ci	depends on 44x
2288c2ecf20Sopenharmony_ci	select PPC44x_SIMPLE
2298c2ecf20Sopenharmony_ci	select 440SPe
2308c2ecf20Sopenharmony_ci	select FORCE_PCI
2318c2ecf20Sopenharmony_ci	select PPC4xx_PCI_EXPRESS
2328c2ecf20Sopenharmony_ci	help
2338c2ecf20Sopenharmony_ci	  This option enables support for the AMCC PPC440SPe evaluation board.
2348c2ecf20Sopenharmony_ci
2358c2ecf20Sopenharmony_ciconfig PPC44x_SIMPLE
2368c2ecf20Sopenharmony_ci	bool "Simple PowerPC 44x board support"
2378c2ecf20Sopenharmony_ci	depends on 44x
2388c2ecf20Sopenharmony_ci	help
2398c2ecf20Sopenharmony_ci	  This option enables the simple PowerPC 44x platform support.
2408c2ecf20Sopenharmony_ci
2418c2ecf20Sopenharmony_ciconfig PPC4xx_GPIO
2428c2ecf20Sopenharmony_ci	bool "PPC4xx GPIO support"
2438c2ecf20Sopenharmony_ci	depends on 44x
2448c2ecf20Sopenharmony_ci	select GPIOLIB
2458c2ecf20Sopenharmony_ci	help
2468c2ecf20Sopenharmony_ci	  Enable gpiolib support for ppc440 based boards
2478c2ecf20Sopenharmony_ci
2488c2ecf20Sopenharmony_ci# 44x specific CPU modules, selected based on the board above.
2498c2ecf20Sopenharmony_ciconfig 440EP
2508c2ecf20Sopenharmony_ci	bool
2518c2ecf20Sopenharmony_ci	select PPC_FPU
2528c2ecf20Sopenharmony_ci	select IBM440EP_ERR42
2538c2ecf20Sopenharmony_ci	select IBM_EMAC_ZMII if IBM_EMAC
2548c2ecf20Sopenharmony_ci
2558c2ecf20Sopenharmony_ciconfig 440EPX
2568c2ecf20Sopenharmony_ci	bool
2578c2ecf20Sopenharmony_ci	select PPC_FPU
2588c2ecf20Sopenharmony_ci	select IBM_EMAC_EMAC4 if IBM_EMAC
2598c2ecf20Sopenharmony_ci	select IBM_EMAC_RGMII if IBM_EMAC
2608c2ecf20Sopenharmony_ci	select IBM_EMAC_ZMII if IBM_EMAC
2618c2ecf20Sopenharmony_ci	select USB_EHCI_BIG_ENDIAN_MMIO
2628c2ecf20Sopenharmony_ci	select USB_EHCI_BIG_ENDIAN_DESC
2638c2ecf20Sopenharmony_ci
2648c2ecf20Sopenharmony_ciconfig 440GRX
2658c2ecf20Sopenharmony_ci	bool
2668c2ecf20Sopenharmony_ci	select IBM_EMAC_EMAC4 if IBM_EMAC
2678c2ecf20Sopenharmony_ci	select IBM_EMAC_RGMII if IBM_EMAC
2688c2ecf20Sopenharmony_ci	select IBM_EMAC_ZMII if IBM_EMAC
2698c2ecf20Sopenharmony_ci
2708c2ecf20Sopenharmony_ciconfig 440GP
2718c2ecf20Sopenharmony_ci	bool
2728c2ecf20Sopenharmony_ci	select IBM_EMAC_ZMII if IBM_EMAC
2738c2ecf20Sopenharmony_ci
2748c2ecf20Sopenharmony_ciconfig 440GX
2758c2ecf20Sopenharmony_ci	bool
2768c2ecf20Sopenharmony_ci	select IBM_EMAC_EMAC4 if IBM_EMAC
2778c2ecf20Sopenharmony_ci	select IBM_EMAC_RGMII if IBM_EMAC
2788c2ecf20Sopenharmony_ci	select IBM_EMAC_ZMII if IBM_EMAC #test only
2798c2ecf20Sopenharmony_ci	select IBM_EMAC_TAH if IBM_EMAC  #test only
2808c2ecf20Sopenharmony_ci
2818c2ecf20Sopenharmony_ciconfig 440SP
2828c2ecf20Sopenharmony_ci	bool
2838c2ecf20Sopenharmony_ci
2848c2ecf20Sopenharmony_ciconfig 440SPe
2858c2ecf20Sopenharmony_ci	bool
2868c2ecf20Sopenharmony_ci	select IBM_EMAC_EMAC4 if IBM_EMAC
2878c2ecf20Sopenharmony_ci
2888c2ecf20Sopenharmony_ciconfig 460EX
2898c2ecf20Sopenharmony_ci	bool
2908c2ecf20Sopenharmony_ci	select PPC_FPU
2918c2ecf20Sopenharmony_ci	select IBM_EMAC_EMAC4 if IBM_EMAC
2928c2ecf20Sopenharmony_ci	select IBM_EMAC_TAH if IBM_EMAC
2938c2ecf20Sopenharmony_ci
2948c2ecf20Sopenharmony_ciconfig 460SX
2958c2ecf20Sopenharmony_ci	bool
2968c2ecf20Sopenharmony_ci	select PPC_FPU
2978c2ecf20Sopenharmony_ci	select IBM_EMAC_EMAC4 if IBM_EMAC
2988c2ecf20Sopenharmony_ci	select IBM_EMAC_RGMII if IBM_EMAC
2998c2ecf20Sopenharmony_ci	select IBM_EMAC_ZMII if IBM_EMAC
3008c2ecf20Sopenharmony_ci	select IBM_EMAC_TAH if IBM_EMAC
3018c2ecf20Sopenharmony_ci
3028c2ecf20Sopenharmony_ciconfig 476FPE
3038c2ecf20Sopenharmony_ci	bool
3048c2ecf20Sopenharmony_ci	select PPC_FPU
3058c2ecf20Sopenharmony_ci
3068c2ecf20Sopenharmony_ciconfig APM821xx
3078c2ecf20Sopenharmony_ci	bool
3088c2ecf20Sopenharmony_ci	select PPC_FPU
3098c2ecf20Sopenharmony_ci	select IBM_EMAC_EMAC4 if IBM_EMAC
3108c2ecf20Sopenharmony_ci	select IBM_EMAC_TAH if IBM_EMAC
3118c2ecf20Sopenharmony_ci
3128c2ecf20Sopenharmony_ciconfig 476FPE_ERR46
3138c2ecf20Sopenharmony_ci	depends on 476FPE
3148c2ecf20Sopenharmony_ci	bool "Enable linker work around for PPC476FPE errata #46"
3158c2ecf20Sopenharmony_ci	help
3168c2ecf20Sopenharmony_ci	  This option enables a work around for an icache bug on 476
3178c2ecf20Sopenharmony_ci	  that can cause execution of stale instructions when falling
3188c2ecf20Sopenharmony_ci	  through pages (IBM errata #46). It requires a recent version
3198c2ecf20Sopenharmony_ci	  of binutils which supports the --ppc476-workaround option.
3208c2ecf20Sopenharmony_ci
3218c2ecf20Sopenharmony_ci	  The work around enables the appropriate linker options and
3228c2ecf20Sopenharmony_ci	  ensures that all module output sections are aligned to 4K
3238c2ecf20Sopenharmony_ci	  page boundaries. The work around is only required when
3248c2ecf20Sopenharmony_ci	  building modules.
3258c2ecf20Sopenharmony_ci
3268c2ecf20Sopenharmony_ci# 44x errata/workaround config symbols, selected by the CPU models above
3278c2ecf20Sopenharmony_ciconfig IBM440EP_ERR42
3288c2ecf20Sopenharmony_ci	bool
3298c2ecf20Sopenharmony_ci
330