at91: ma5d4evk: Add FDT support
Sync DTS from Linux and add FDT support for AT91 ma5d4evk board. usb0, usb1, usb2 and hlcdc_pwm nodes removed, since there is no support it. Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
This commit is contained in:
		
							parent
							
								
									4d42f16b9f
								
							
						
					
					
						commit
						ca57bd6718
					
				|  | @ -480,6 +480,9 @@ dtb-$(CONFIG_TARGET_SAMA5D3XEK) += \ | ||||||
| dtb-$(CONFIG_TARGET_SAMA5D3_XPLAINED) += \
 | dtb-$(CONFIG_TARGET_SAMA5D3_XPLAINED) += \
 | ||||||
| 	at91-sama5d3_xplained.dtb | 	at91-sama5d3_xplained.dtb | ||||||
| 
 | 
 | ||||||
|  | dtb-$(CONFIG_TARGET_MA5D4EK) += \
 | ||||||
|  | 	at91-sama5d4_ma5d4evk.dts.dtb | ||||||
|  | 
 | ||||||
| dtb-$(CONFIG_TARGET_SAMA5D4EK) += \
 | dtb-$(CONFIG_TARGET_SAMA5D4EK) += \
 | ||||||
| 	at91-sama5d4ek.dtb | 	at91-sama5d4ek.dtb | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -0,0 +1,142 @@ | ||||||
|  | /* | ||||||
|  |  * Copyright (C) 2015 Marek Vasut <marex@denx.de> | ||||||
|  |  * | ||||||
|  |  * The code contained herein is licensed under the GNU General Public | ||||||
|  |  * License. You may obtain a copy of the GNU General Public License | ||||||
|  |  * Version 2 or later at the following locations: | ||||||
|  |  * | ||||||
|  |  * http://www.opensource.org/licenses/gpl-license.html | ||||||
|  |  * http://www.gnu.org/copyleft/gpl.html | ||||||
|  |  */ | ||||||
|  | 
 | ||||||
|  | #include "sama5d4.dtsi" | ||||||
|  | 
 | ||||||
|  | / { | ||||||
|  | 	model = "Aries/DENX MA5D4"; | ||||||
|  | 	compatible = "aries,ma5d4", "denx,ma5d4", "atmel,sama5d4", "atmel,sama5"; | ||||||
|  | 
 | ||||||
|  | 	memory { | ||||||
|  | 		reg = <0x20000000 0x10000000>; | ||||||
|  | 	}; | ||||||
|  | 
 | ||||||
|  | 	clocks { | ||||||
|  | 		slow_xtal { | ||||||
|  | 			clock-frequency = <32768>; | ||||||
|  | 		}; | ||||||
|  | 
 | ||||||
|  | 		main_xtal { | ||||||
|  | 			clock-frequency = <12000000>; | ||||||
|  | 		}; | ||||||
|  | 
 | ||||||
|  | 		clk20m: clk20m { | ||||||
|  | 			compatible = "fixed-clock"; | ||||||
|  | 			#clock-cells = <0>; | ||||||
|  | 			clock-frequency = <20000000>; | ||||||
|  | 			clock-output-names = "clk20m"; | ||||||
|  | 		}; | ||||||
|  | 	}; | ||||||
|  | 
 | ||||||
|  | 	ahb { | ||||||
|  | 		apb { | ||||||
|  | 			mmc0: mmc@f8000000 { | ||||||
|  | 				pinctrl-names = "default"; | ||||||
|  | 				pinctrl-0 = <&pinctrl_mmc0_clk_cmd_dat0 &pinctrl_mmc0_dat1_3 &pinctrl_mmc0_dat4_7>; | ||||||
|  | 				vmmc-supply = <&vcc_mmc0_reg>; | ||||||
|  | 				vqmmc-supply = <&vcc_3v3_reg>; | ||||||
|  | 				status = "okay"; | ||||||
|  | 				slot@0 { | ||||||
|  | 					reg = <0>; | ||||||
|  | 					bus-width = <8>; | ||||||
|  | 					broken-cd; | ||||||
|  | 				}; | ||||||
|  | 			}; | ||||||
|  | 
 | ||||||
|  | 			spi0: spi@f8010000 { | ||||||
|  | 				cs-gpios = <&pioC 3 0>, <0>, <0>, <0>; | ||||||
|  | 				status = "okay"; | ||||||
|  | 
 | ||||||
|  | 				m25p80@0 { | ||||||
|  | 					compatible = "atmel,at25df321a"; | ||||||
|  | 					spi-max-frequency = <50000000>; | ||||||
|  | 					reg = <0>; | ||||||
|  | 				}; | ||||||
|  | 			}; | ||||||
|  | 
 | ||||||
|  | 			i2c0: i2c@f8014000 { | ||||||
|  | 				status = "okay"; | ||||||
|  | 			}; | ||||||
|  | 
 | ||||||
|  | 			spi1: spi@fc018000 { | ||||||
|  | 				cs-gpios = <&pioB 22 0>, <&pioB 23 0>, <0>, <0>; | ||||||
|  | 				status = "okay"; | ||||||
|  | 
 | ||||||
|  | 				can0: can@0 { | ||||||
|  | 					compatible = "microchip,mcp2515"; | ||||||
|  | 					reg = <0>; | ||||||
|  | 					clocks = <&clk20m>; | ||||||
|  | 					interrupt-parent = <&pioE>; | ||||||
|  | 					interrupts = <6 IRQ_TYPE_EDGE_RISING>; | ||||||
|  | 					spi-max-frequency = <10000000>; | ||||||
|  | 				}; | ||||||
|  | 
 | ||||||
|  | 				can1: can@1 { | ||||||
|  | 					compatible = "microchip,mcp2515"; | ||||||
|  | 					reg = <1>; | ||||||
|  | 					clocks = <&clk20m>; | ||||||
|  | 					interrupt-parent = <&pioE>; | ||||||
|  | 					interrupts = <7 IRQ_TYPE_EDGE_RISING>; | ||||||
|  | 					spi-max-frequency = <10000000>; | ||||||
|  | 				}; | ||||||
|  | 			}; | ||||||
|  | 
 | ||||||
|  | 			tcb2: timer@fc024000 { | ||||||
|  | 				timer@0 { | ||||||
|  | 					compatible = "atmel,tcb-timer"; | ||||||
|  | 					reg = <0>; | ||||||
|  | 				}; | ||||||
|  | 
 | ||||||
|  | 				timer@1 { | ||||||
|  | 					compatible = "atmel,tcb-timer"; | ||||||
|  | 					reg = <1>; | ||||||
|  | 				}; | ||||||
|  | 			}; | ||||||
|  | 
 | ||||||
|  | 			adc0: adc@fc034000 { | ||||||
|  | 				pinctrl-names = "default"; | ||||||
|  | 				pinctrl-0 = < | ||||||
|  | 					/* external trigger conflicts with USBA_VBUS */ | ||||||
|  | 					&pinctrl_adc0_ad0 | ||||||
|  | 					&pinctrl_adc0_ad1 | ||||||
|  | 					&pinctrl_adc0_ad2 | ||||||
|  | 					&pinctrl_adc0_ad3 | ||||||
|  | 					&pinctrl_adc0_ad4 | ||||||
|  | 					>; | ||||||
|  | 				atmel,adc-vref = <3300>; | ||||||
|  | 				status = "okay"; | ||||||
|  | 			}; | ||||||
|  | 
 | ||||||
|  | 			watchdog@fc068640 { | ||||||
|  | 				status = "okay"; | ||||||
|  | 			}; | ||||||
|  | 		}; | ||||||
|  | 	}; | ||||||
|  | 
 | ||||||
|  | 	vcc_3v3_reg: fixedregulator_3v3 { | ||||||
|  | 		compatible = "regulator-fixed"; | ||||||
|  | 		regulator-name = "VCC 3V3"; | ||||||
|  | 		regulator-min-microvolt = <3300000>; | ||||||
|  | 		regulator-max-microvolt = <3300000>; | ||||||
|  | 		regulator-boot-on; | ||||||
|  | 		regulator-always-on; | ||||||
|  | 	}; | ||||||
|  | 
 | ||||||
|  | 	vcc_mmc0_reg: fixedregulator_mmc0 { | ||||||
|  | 		compatible = "regulator-fixed"; | ||||||
|  | 		gpio = <&pioE 15 GPIO_ACTIVE_HIGH>; | ||||||
|  | 		regulator-name = "RST_n MCI0"; | ||||||
|  | 		regulator-min-microvolt = <3300000>; | ||||||
|  | 		regulator-max-microvolt = <3300000>; | ||||||
|  | 		vin-supply = <&vcc_3v3_reg>; | ||||||
|  | 		regulator-boot-on; | ||||||
|  | 	}; | ||||||
|  | }; | ||||||
|  | @ -0,0 +1,149 @@ | ||||||
|  | /* | ||||||
|  |  * Copyright (C) 2015 Marek Vasut <marex@denx.de> | ||||||
|  |  * | ||||||
|  |  * The code contained herein is licensed under the GNU General Public | ||||||
|  |  * License. You may obtain a copy of the GNU General Public License | ||||||
|  |  * Version 2 or later at the following locations: | ||||||
|  |  * | ||||||
|  |  * http://www.opensource.org/licenses/gpl-license.html | ||||||
|  |  * http://www.gnu.org/copyleft/gpl.html | ||||||
|  |  */ | ||||||
|  | 
 | ||||||
|  | /dts-v1/; | ||||||
|  | #include "at91-sama5d4_ma5d4.dtsi" | ||||||
|  | 
 | ||||||
|  | / { | ||||||
|  | 	model = "Aries/DENX MA5D4EVK"; | ||||||
|  | 	compatible = "aries,ma5d4evk", "denx,ma5d4evk", "atmel,sama5d4", "atmel,sama5"; | ||||||
|  | 
 | ||||||
|  | 	chosen { | ||||||
|  | 		stdout-path = "serial3:115200n8"; | ||||||
|  | 	}; | ||||||
|  | 
 | ||||||
|  | 	ahb { | ||||||
|  | 		apb { | ||||||
|  | 			hlcdc: hlcdc@f0000000 { | ||||||
|  | 				status = "okay"; | ||||||
|  | 
 | ||||||
|  | 				hlcdc-display-controller { | ||||||
|  | 					pinctrl-names = "default"; | ||||||
|  | 					pinctrl-0 = <&pinctrl_lcd_base &pinctrl_lcd_rgb888>; | ||||||
|  | 
 | ||||||
|  | 					port@0 { | ||||||
|  | 						hlcdc_panel_output: endpoint@0 { | ||||||
|  | 							reg = <0>; | ||||||
|  | 							remote-endpoint = <&panel_input>; | ||||||
|  | 						}; | ||||||
|  | 					}; | ||||||
|  | 				}; | ||||||
|  | 
 | ||||||
|  | 			}; | ||||||
|  | 
 | ||||||
|  | 			macb0: ethernet@f8020000 { | ||||||
|  | 				phy-mode = "rmii"; | ||||||
|  | 				status = "okay"; | ||||||
|  | 
 | ||||||
|  | 				phy0: ethernet-phy@0 { | ||||||
|  | 					reg = <0>; | ||||||
|  | 				}; | ||||||
|  | 			}; | ||||||
|  | 
 | ||||||
|  | 			usart0: serial@f802c000 { | ||||||
|  | 				status = "okay"; | ||||||
|  | 			}; | ||||||
|  | 
 | ||||||
|  | 			usart1: serial@f8030000 { | ||||||
|  | 				status = "okay"; | ||||||
|  | 			}; | ||||||
|  | 
 | ||||||
|  | 			mmc1: mmc@fc000000 { | ||||||
|  | 				pinctrl-names = "default"; | ||||||
|  | 				pinctrl-0 = <&pinctrl_mmc1_clk_cmd_dat0 &pinctrl_mmc1_dat1_3 &pinctrl_mmc1_cd>; | ||||||
|  | 				vmmc-supply = <&vcc_mmc1_reg>; | ||||||
|  | 				vqmmc-supply = <&vcc_3v3_reg>; | ||||||
|  | 				status = "okay"; | ||||||
|  | 				slot@0 { | ||||||
|  | 					reg = <0>; | ||||||
|  | 					bus-width = <4>; | ||||||
|  | 					cd-gpios = <&pioE 5 0>; | ||||||
|  | 				}; | ||||||
|  | 			}; | ||||||
|  | 
 | ||||||
|  | 			adc0: adc@fc034000 { | ||||||
|  | 				atmel,adc-ts-wires = <4>; | ||||||
|  | 				atmel,adc-ts-pressure-threshold = <10000>; | ||||||
|  | 			}; | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | 			pinctrl@fc06a000 { | ||||||
|  | 				board { | ||||||
|  | 					pinctrl_mmc1_cd: mmc1_cd { | ||||||
|  | 						atmel,pins = <AT91_PIOE 5 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>; | ||||||
|  | 					}; | ||||||
|  | 					pinctrl_usba_vbus: usba_vbus { | ||||||
|  | 						atmel,pins = | ||||||
|  | 							<AT91_PIOE 31 AT91_PERIPH_GPIO AT91_PINCTRL_DEGLITCH>; | ||||||
|  | 					}; | ||||||
|  | 				}; | ||||||
|  | 			}; | ||||||
|  | 		}; | ||||||
|  | 	}; | ||||||
|  | 
 | ||||||
|  | 	backlight: backlight { | ||||||
|  | 		compatible = "pwm-backlight"; | ||||||
|  | 		brightness-levels = <0 4 8 16 32 64 128 255>; | ||||||
|  | 		default-brightness-level = <6>; | ||||||
|  | 		status = "okay"; | ||||||
|  | 	}; | ||||||
|  | 
 | ||||||
|  | 	leds { | ||||||
|  | 		compatible = "gpio-leds"; | ||||||
|  | 		status = "okay"; | ||||||
|  | 
 | ||||||
|  | 		user1 { | ||||||
|  | 			label = "user1"; | ||||||
|  | 			gpios = <&pioD 28 GPIO_ACTIVE_HIGH>; | ||||||
|  | 			linux,default-trigger = "heartbeat"; | ||||||
|  | 		}; | ||||||
|  | 
 | ||||||
|  | 		user2 { | ||||||
|  | 			label = "user2"; | ||||||
|  | 			gpios = <&pioD 29 GPIO_ACTIVE_HIGH>; | ||||||
|  | 			linux,default-trigger = "heartbeat"; | ||||||
|  | 		}; | ||||||
|  | 
 | ||||||
|  | 		user3 { | ||||||
|  | 			label = "user3"; | ||||||
|  | 			gpios = <&pioD 30 GPIO_ACTIVE_HIGH>; | ||||||
|  | 			linux,default-trigger = "heartbeat"; | ||||||
|  | 		}; | ||||||
|  | 	}; | ||||||
|  | 
 | ||||||
|  | 	panel: panel { | ||||||
|  | 		/* Actually Ampire 800480R2 */ | ||||||
|  | 		compatible = "foxlink,fl500wvr00-a0t", "simple-panel"; | ||||||
|  | 		backlight = <&backlight>; | ||||||
|  | 		#address-cells = <1>; | ||||||
|  | 		#size-cells = <0>; | ||||||
|  | 		status = "okay"; | ||||||
|  | 
 | ||||||
|  | 		port@0 { | ||||||
|  | 			#address-cells = <1>; | ||||||
|  | 			#size-cells = <0>; | ||||||
|  | 
 | ||||||
|  | 			panel_input: endpoint@0 { | ||||||
|  | 				reg = <0>; | ||||||
|  | 				remote-endpoint = <&hlcdc_panel_output>; | ||||||
|  | 			}; | ||||||
|  | 		}; | ||||||
|  | 	}; | ||||||
|  | 
 | ||||||
|  | 	vcc_mmc1_reg: fixedregulator_mmc1 { | ||||||
|  | 		compatible = "regulator-fixed"; | ||||||
|  | 		gpio = <&pioE 17 GPIO_ACTIVE_LOW>; | ||||||
|  | 		regulator-name = "VDD MCI1"; | ||||||
|  | 		regulator-min-microvolt = <3300000>; | ||||||
|  | 		regulator-max-microvolt = <3300000>; | ||||||
|  | 		vin-supply = <&vcc_3v3_reg>; | ||||||
|  | 	}; | ||||||
|  | }; | ||||||
|  | @ -2,6 +2,7 @@ CONFIG_ARM=y | ||||||
| CONFIG_ARCH_AT91=y | CONFIG_ARCH_AT91=y | ||||||
| CONFIG_SYS_TEXT_BASE=0x26f00000 | CONFIG_SYS_TEXT_BASE=0x26f00000 | ||||||
| CONFIG_TARGET_MA5D4EVK=y | CONFIG_TARGET_MA5D4EVK=y | ||||||
|  | CONFIG_DEFAULT_DEVICE_TREE="at91-sama5d4_ma5d4evk" | ||||||
| CONFIG_SPL_GPIO_SUPPORT=y | CONFIG_SPL_GPIO_SUPPORT=y | ||||||
| CONFIG_SPL_LIBCOMMON_SUPPORT=y | CONFIG_SPL_LIBCOMMON_SUPPORT=y | ||||||
| CONFIG_SPL_LIBGENERIC_SUPPORT=y | CONFIG_SPL_LIBGENERIC_SUPPORT=y | ||||||
|  | @ -36,6 +37,7 @@ CONFIG_CMD_CACHE=y | ||||||
| CONFIG_CMD_EXT4=y | CONFIG_CMD_EXT4=y | ||||||
| CONFIG_CMD_EXT4_WRITE=y | CONFIG_CMD_EXT4_WRITE=y | ||||||
| CONFIG_CMD_FAT=y | CONFIG_CMD_FAT=y | ||||||
|  | CONFIG_OF_CONTROL=y | ||||||
| CONFIG_CMD_FS_GENERIC=y | CONFIG_CMD_FS_GENERIC=y | ||||||
| CONFIG_ENV_IS_IN_MMC=y | CONFIG_ENV_IS_IN_MMC=y | ||||||
| CONFIG_NET_RANDOM_ETHADDR=y | CONFIG_NET_RANDOM_ETHADDR=y | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue