comment "Atmel AT91 Specific Device Support"
	depends on BR2_arm

config BR2_TARGET_AT91
	bool "Board support for the Atmel AT91 range of microprocessors"
	depends on BR2_arm
	help
	  Atmel AT91 ARM based systems

comment	"Selection criteria"
	depends on BR2_TARGET_AT91

config	BR2_TARGET_ATMEL_ALL
	bool "Allow all ARM targets"
	depends on BR2_TARGET_AT91
	default y

config	BR2_TARGET_ATMEL_NET
	bool "With network controller"
	depends on BR2_TARGET_AT91
	depends on !BR2_TARGET_ATMEL_ALL
	default y

config	BR2_TARGET_ATMEL_LCD
	bool "With LCD controller"
	depends on BR2_TARGET_AT91
	depends on !BR2_TARGET_ATMEL_ALL

config	BR2_TARGET_ATMEL_FPDSP
	bool "With Floating Point DSP"
	depends on BR2_TARGET_AT91
	depends on !BR2_TARGET_ATMEL_ALL

config	BR2_TARGET_ATMEL_MPB
	bool "With customizable MP-Block"
	depends on BR2_TARGET_AT91
	depends on !BR2_TARGET_ATMEL_ALL

comment "Device Selection"
	depends on BR2_TARGET_AT91

choice
	prompt "AT91 device"
	depends on BR2_TARGET_AT91
	default BR2_TARGET_AT91SAM9260
	help
	  Select the specific AT91 chip you wish to use.

config BR2_TARGET_AT91RM9200
	bool "Atmel AT91RM9200 Microprocessor"
	depends on BR2_TARGET_AT91
	depends on !BR2_TARGET_ATMEL_LCD
	depends on !BR2_TARGET_ATMEL_FPDSP
	depends on !BR2_TARGET_ATMEL_MPB
	help
	  Atmel AT91RM9200 ARM based systems

config BR2_TARGET_AT91SAM9260
	bool "Atmel AT91SAM9260 Microprocessor"
	depends on BR2_TARGET_AT91
	depends on !BR2_TARGET_ATMEL_LCD
	depends on !BR2_TARGET_ATMEL_FPDSP
	depends on !BR2_TARGET_ATMEL_MPB
	help
	  Atmel AT91SAM9260 ARM based systems

config BR2_TARGET_AT91SAM9G20
	bool "Atmel AT91SAM9G20 Microprocessor"
	depends on BR2_TARGET_AT91
	depends on !BR2_TARGET_ATMEL_LCD
	depends on !BR2_TARGET_ATMEL_FPDSP
	depends on !BR2_TARGET_ATMEL_MPB
	help
	  Atmel AT91SAM9G20 ARM based systems

config BR2_TARGET_AT91SAM9261
	bool "Atmel AT91SAM9261 Microprocessor"
	depends on BR2_TARGET_AT91
	depends on !BR2_TARGET_ATMEL_NET
	depends on !BR2_TARGET_ATMEL_FPDSP
	depends on !BR2_TARGET_ATMEL_MPB
	help
	  Atmel AT91SAM9261 ARM based systems

config BR2_TARGET_AT91SAM9261S
	bool "Atmel AT91SAM9261S Microprocessor"
	depends on BR2_TARGET_AT91
	depends on !BR2_TARGET_ATMEL_NET
	depends on !BR2_TARGET_ATMEL_FPDSP
	depends on !BR2_TARGET_ATMEL_MPB
	depends on ! BR2_TARGET_AT91_ADVANCED_INFO
	help
	  Atmel AT91SAM9261 ARM based systems (Not Yet Implemented)

config BR2_TARGET_AT91SAM9RL64
	bool "Atmel AT91SAM9RL64 Microprocessor"
	depends on BR2_TARGET_AT91
	depends on !BR2_TARGET_ATMEL_NET
	depends on !BR2_TARGET_ATMEL_FPDSP
	depends on !BR2_TARGET_ATMEL_MPB
	depends on ! BR2_TARGET_AT91_ADVANCED_INFO
	help
	  Atmel AT91SAM9RL64 ARM based systems (Not Yet Implemented)

config BR2_TARGET_AT91SAM9263
	bool "Atmel AT91SAM9263 Microprocessor"
	depends on BR2_TARGET_AT91
	depends on !BR2_TARGET_ATMEL_FPDSP
	depends on !BR2_TARGET_ATMEL_MPB
	help
	  Atmel AT91SAM9263 ARM based systems

config BR2_TARGET_AT91SAM9G40
	bool "Atmel AT91SAM9G40 Microprocessor"
	depends on BR2_TARGET_AT91
	depends on !BR2_TARGET_ATMEL_FPDSP
	depends on !BR2_TARGET_ATMEL_MPB
	depends on ! BR2_TARGET_AT91_ADVANCED_INFO
	help
	  Atmel AT91SAM9G40 ARM based systems

config BR2_TARGET_AT91SAM9G45
	bool "Atmel AT91SAM9G45 Microprocessor"
	depends on BR2_TARGET_AT91
	depends on !BR2_TARGET_ATMEL_FPDSP
	depends on !BR2_TARGET_ATMEL_MPB
	help
	  Atmel AT91SAM9G45 ARM based systems

config BR2_TARGET_AT91SAM9M10
	bool "Atmel AT91SAM9M10 Microprocessor"
	depends on BR2_TARGET_AT91
	depends on !BR2_TARGET_ATMEL_FPDSP
	depends on !BR2_TARGET_ATMEL_MPB
	depends on ! BR2_TARGET_AT91_ADVANCED_INFO
	help
	  Atmel AT91SAM9M10 ARM based systems

config BR2_TARGET_AT91SAM9M11
	bool "Atmel AT91SAM9M11 Microprocessor"
	depends on BR2_TARGET_AT91
	depends on !BR2_TARGET_ATMEL_FPDSP
	depends on !BR2_TARGET_ATMEL_MPB
	depends on ! BR2_TARGET_AT91_ADVANCED_INFO
	help
	  Atmel AT91SAM9M11 ARM based systems

config BR2_TARGET_AT91SAM9XE
	bool "Atmel AT91SAM9XE Microprocessors"
	depends on BR2_TARGET_AT91
	depends on !BR2_TARGET_ATMEL_LCD
	depends on !BR2_TARGET_ATMEL_FPDSP
	depends on !BR2_TARGET_ATMEL_MPB
	depends on ! BR2_TARGET_AT91_ADVANCED_INFO
	help
	  Atmel AT91SAM9263 ARM based systems (Not Yet Implemented)

config BR2_TARGET_AT572D940HF
	bool "Atmel AT572D940HF Microprocessor"
	depends on BR2_TARGET_AT91
	depends on !BR2_TARGET_ATMEL_LCD
	depends on !BR2_TARGET_ATMEL_MPB
	depends on ! BR2_TARGET_AT91_ADVANCED_INFO
	help
	  Atmel AT572D940 ARM based systems

config BR2_TARGET_AT91CAP9
	bool "Atmel AT91CAP9 Microprocessor"
	depends on BR2_TARGET_AT91
	depends on !BR2_TARGET_ATMEL_FPDSP
	depends on ! BR2_TARGET_AT91_ADVANCED_INFO
	help
	  Atmel AT91CAP9 ARM based systems

endchoice

comment "Development Board Selection"
	depends on BR2_TARGET_AT91

choice
	prompt "Development Board support"
	depends on BR2_TARGET_AT91
	default BR2_TARGET_AT91SAM9260DFC
	help
	  Select the specific AT91 development board you wish to use.

config BR2_TARGET_AT91RM9200DF
	bool "Atmel AT91RM9200 Generic Dataflash(Card) Board Support"
	depends on BR2_TARGET_AT91RM9200
	select BR2_BOOTSOURCE_DATAFLASHCARD
	help
	  The Atmel AT91RM9200EK Development Board using Dataflashcard

config BR2_TARGET_AT91RM9200EK
	bool "Atmel AT91RM9200EK Development Board Support"
	depends on BR2_TARGET_AT91RM9200
	select BR2_BOOTSOURCE_DATAFLASHCARD
	select BR2_BOOTSOURCE_FLASH
	help
	  The Atmel AT91RM9200EK Development Board

config BR2_TARGET_AT91RM9200DK
	bool "Atmel AT91RM9200DK Development Board Support"
	depends on BR2_TARGET_AT91RM9200
	select BR2_BOOTSOURCE_DATAFLASH
	select BR2_BOOTSOURCE_FLASH
	help
	  The Atmel AT91RM9200DK Development Board

config BR2_TARGET_AT91SAM9260DFC
	bool "Atmel AT91SAM9260DFC"
	depends on BR2_TARGET_AT91SAM9260 || BR2_TARGET_AT91SAM9XE
	select BR2_BOOTSOURCE_DATAFLASHCARD
	select BR2_BOOTSOURCE_DATAFLASH
	help
	  The Atmel AT91SAM9260 Development Board booting from Dataflashcard

config BR2_TARGET_AT91SAM9260EK
	bool "Atmel AT91SAM9260EK"
	depends on BR2_TARGET_AT91SAM9260 || BR2_TARGET_AT91SAM9XE
	select BR2_BOOTSOURCE_DATAFLASHCARD
	select BR2_BOOTSOURCE_DATAFLASH
	select BR2_BOOTSOURCE_NANDFLASH
	help
	  The Atmel AT91SAM9260 Development Board booting from dataflash

config BR2_TARGET_AT91SAM9G20DFC
	bool "Atmel AT91SAM9G20DFC"
	depends on BR2_TARGET_AT91SAM9G20
	select BR2_BOOTSOURCE_DATAFLASHCARD
	help
	  The Atmel AT91SAM9G20 Development Board booting from Dataflashcard

config BR2_TARGET_AT91SAM9G20EK
	bool "Atmel AT91SAM9G20EK"
	depends on BR2_TARGET_AT91SAM9G20
	select BR2_BOOTSOURCE_DATAFLASHCARD
	select BR2_BOOTSOURCE_DATAFLASH
	select BR2_BOOTSOURCE_NANDFLASH
	help
	  The Atmel AT91SAM9G20 Development Board booting from dataflash

config BR2_TARGET_AT91SAM9XEEK
	bool "Atmel AT91SAM9XE-EK"
	depends on BR2_TARGET_AT91SAM9260 || BR2_TARGET_AT91SAM9XE
	select BR2_BOOTSOURCE_DATAFLASHCARD
	select BR2_BOOTSOURCE_DATAFLASH
	select BR2_BOOTSOURCE_NANDFLASH
	help
	  The Atmel AT91SAM9xe Development Board (Not Yet Implemented)

config BR2_TARGET_AT91SAM9261EK
	bool "Atmel AT91SAM9261EK"
	depends on BR2_TARGET_AT91SAM9261 || BR2_TARGET_AT91SAM9261S
	select BR2_BOOTSOURCE_DATAFLASH
	select BR2_BOOTSOURCE_NANDFLASH
	help
	  The Atmel AT91SAM9261 Development Board

config BR2_TARGET_AT91SAM9RL64EK
	bool "Atmel AT91SAM9RL64EK"
	depends on BR2_TARGET_AT91SAM9RL64
	select BR2_BOOTSOURCE_DATAFLASHCARD
	select BR2_BOOTSOURCE_DATAFLASH
	select BR2_BOOTSOURCE_NANDFLASH
	select BR2_BOOTSOURCE_SDCARD
	help
	  The Atmel AT91SAM9RL64 Development Board

config BR2_TARGET_AT91SAM9263EK
	bool "Atmel AT91SAM9263EK"
	depends on BR2_TARGET_AT91SAM9263
	select BR2_BOOTSOURCE_DATAFLASHCARD
	select BR2_BOOTSOURCE_NANDFLASH
	help
	  The Atmel AT91SAM9263 Development Board

config BR2_TARGET_AT91SAM9G45EKES
	bool "Atmel AT91SAM9G45EKES"
	depends on BR2_TARGET_AT91SAM9G45
	select BR2_BOOTSOURCE_DATAFLASHCARD
	select BR2_BOOTSOURCE_NANDFLASH
	help
	  The Atmel AT91SAM9G45 Development Board

config BR2_TARGET_AT572D940DCM
	bool "Atmel AT572D940 Diopsis Computer Module"
	depends on BR2_TARGET_AT572D940HF
	select BR2_BOOTSOURCE_FLASH
	select BR2_BOOTSOURCE_SDCARD
	help
	  The Atmel Diopsis CPU Module (Not Yet Implemented)

config BR2_TARGET_AT91CAP9DK
	bool "Atmel AT91CAP9DK"
	depends on BR2_TARGET_AT91CAP9
	select BR2_BOOTSOURCE_DATAFLASHCARD
	select BR2_BOOTSOURCE_DATAFLASH
	select BR2_BOOTSOURCE_NANDFLASH
	help
	  The Atmel AT91CAP9 Development Kit (Not Yet Implemented)

config BR2_TARGET_AT91CAP9ADK
	bool "Atmel AT91CAP9ADK"
	depends on BR2_TARGET_AT91CAP9
	select BR2_BOOTSOURCE_DATAFLASHCARD
	select BR2_BOOTSOURCE_DATAFLASH
	select BR2_BOOTSOURCE_NANDFLASH
	help
	  The Atmel AT91CAP9 Starter Kit (Not Yet Implemented)

endchoice

choice
	prompt "SPI Mode"
	depends on BR2_TARGET_AT91SAM9261EK
	default BR2_TARGET_AT91SAM9261EK_SPIMODE0
	help
	  Select SPI Mode 0 or 3

config BR2_TARGET_AT91SAM9261EK_SPIMODE0
	bool "SPI Mode 0"
	depends on BR2_TARGET_AT91SAM9261EK
	help
	  Use SPI Mode 0, Required for AT45DB642D chips

config BR2_TARGET_AT91SAM9261EK_SPIMODE3
	bool "SPI Mode 3"
	depends on BR2_TARGET_AT91SAM9261EK
	help
	  Use SPI Mode 3

endchoice


