Back to home page

OSCL-LXR

 
 

    


0001 // SPDX-License-Identifier: GPL-2.0-or-later OR MIT
0002 /*
0003  * Copyright (c) 2021 Oleksij Rempel <kernel@pengutronix.de>, Pengutronix
0004  */
0005 /dts-v1/;
0006 #include "sama5d36.dtsi"
0007 
0008 / {
0009         model = "EVB-KSZ9477";
0010         compatible = "microchip,sama5d3-ksz9477-evb", "atmel,sama5d36",
0011                      "atmel,sama5d3", "atmel,sama5";
0012 
0013         chosen {
0014                 stdout-path = &dbgu;
0015         };
0016 
0017         reg_3v3: regulator-3v3 {
0018                 compatible = "regulator-fixed";
0019                 regulator-name = "3v3";
0020                 regulator-min-microvolt = <3300000>;
0021                 regulator-max-microvolt = <3300000>;
0022         };
0023 
0024         reg_vcc_mmc0: regulator-mmc0 {
0025                 compatible = "regulator-fixed";
0026                 pinctrl-names = "default";
0027                 pinctrl-0 = <&pinctrl_mcc0_vcc>;
0028                 regulator-name = "mmc0-vcc";
0029                 regulator-max-microvolt = <3300000>;
0030                 regulator-min-microvolt = <3300000>;
0031                 gpio = <&pioE 2 GPIO_ACTIVE_LOW>;
0032         };
0033 };
0034 
0035 &dbgu {
0036         status = "okay";
0037 };
0038 
0039 &ebi {
0040         pinctrl-0 = <&pinctrl_ebi_nand_addr>;
0041         pinctrl-names = "default";
0042         status = "okay";
0043 };
0044 
0045 &i2c0 {
0046         pinctrl-0 = <&pinctrl_i2c0_pu>;
0047         status = "okay";
0048 };
0049 
0050 &macb0 {
0051         phy-mode = "rgmii";
0052         status = "okay";
0053 
0054         fixed-link {
0055                 speed = <1000>;
0056                 full-duplex;
0057         };
0058 };
0059 
0060 &main_xtal {
0061         clock-frequency = <12000000>;
0062 };
0063 
0064 &mmc0 {
0065         pinctrl-0 = <&pinctrl_mmc0_clk_cmd_dat0 &pinctrl_mmc0_dat1_3
0066                      &pinctrl_mmc0_dat4_7 &pinctrl_mmc0_cd>;
0067         status = "okay";
0068 
0069         slot@0 {
0070                 reg = <0>;
0071                 bus-width = <8>;
0072                 cd-gpios = <&pioE 0 GPIO_ACTIVE_LOW>;
0073                 disable-wp;
0074                 vmmc-supply = <&reg_vcc_mmc0>;
0075                 vqmmc-supply = <&reg_3v3>;
0076         };
0077 };
0078 
0079 &nand_controller {
0080         status = "okay";
0081 
0082         nand@3 {
0083                 reg = <0x3 0x0 0x2>;
0084                 atmel,rb = <0>;
0085                 nand-bus-width = <8>;
0086                 nand-ecc-mode = "hw";
0087                 nand-ecc-strength = <4>;
0088                 nand-ecc-step-size = <512>;
0089                 nand-on-flash-bbt;
0090                 label = "atmel_nand";
0091         };
0092 };
0093 
0094 &slow_xtal {
0095         clock-frequency = <32768>;
0096 };
0097 
0098 &spi0 {
0099         cs-gpios = <&pioD 13 GPIO_ACTIVE_LOW>, <0>, <0>,
0100                    <&pioD 16 GPIO_ACTIVE_LOW>;
0101         status = "okay";
0102 };
0103 
0104 &spi1 {
0105         pinctrl-0 = <&pinctrl_spi_ksz>;
0106         cs-gpios = <&pioC 25 GPIO_ACTIVE_LOW>;
0107         status = "okay";
0108 
0109         switch@0 {
0110                 compatible = "microchip,ksz9477";
0111                 reg = <0>;
0112                 spi-max-frequency = <1000000>;
0113                 spi-cpha;
0114                 spi-cpol;
0115 
0116                 ports {
0117                         #address-cells = <1>;
0118                         #size-cells = <0>;
0119 
0120                         port@0 {
0121                                 reg = <0>;
0122                                 label = "lan1";
0123                                 phy-mode = "internal";
0124                         };
0125 
0126                         port@1 {
0127                                 reg = <1>;
0128                                 label = "lan2";
0129                                 phy-mode = "internal";
0130                         };
0131 
0132                         port@2 {
0133                                 reg = <2>;
0134                                 label = "lan3";
0135                                 phy-mode = "internal";
0136                         };
0137 
0138                         port@3 {
0139                                 reg = <3>;
0140                                 label = "lan4";
0141                                 phy-mode = "internal";
0142                         };
0143 
0144                         port@4 {
0145                                 reg = <4>;
0146                                 label = "lan5";
0147                                 phy-mode = "internal";
0148                         };
0149 
0150                         port@5 {
0151                                 reg = <5>;
0152                                 label = "cpu";
0153                                 ethernet = <&macb0>;
0154                                 phy-mode = "rgmii-txid";
0155 
0156                                 fixed-link {
0157                                         speed = <1000>;
0158                                         full-duplex;
0159                                 };
0160                         };
0161                 };
0162         };
0163 };
0164 
0165 &usb0 {
0166         pinctrl-names = "default";
0167         pinctrl-0 = <&pinctrl_usba_vbus>;
0168         atmel,vbus-gpio = <&pioE 9 GPIO_ACTIVE_HIGH>;
0169         status = "okay";
0170 };
0171 
0172 &pinctrl {
0173         board {
0174                 pinctrl_i2c0_pu: i2c0-pu {
0175                         atmel,pins =
0176                                 <AT91_PIOA 30 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>,
0177                                 <AT91_PIOA 31 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>;
0178                 };
0179 
0180                 pinctrl_mmc0_cd: mmc0-cd {
0181                         atmel,pins = <AT91_PIOE 0 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>;
0182                 };
0183 
0184                 pinctrl_mcc0_vcc: mmc0-vcc {
0185                         atmel,pins = <AT91_PIOE 2 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>;
0186                 };
0187 
0188                 pinctrl_spi_ksz: spi-ksz {
0189                         atmel,pins =
0190                                 <
0191                                 /* SPI1_MISO */
0192                                 AT91_PIOC 22 AT91_PERIPH_A AT91_PINCTRL_PULL_UP
0193                                 /* SPI1_MOSI */
0194                                 AT91_PIOC 23 AT91_PERIPH_A AT91_PINCTRL_NONE
0195                                 /* SPI1_SPCK */
0196                                 AT91_PIOC 24 AT91_PERIPH_A AT91_PINCTRL_NONE
0197 
0198                                 /* SPI CS */
0199                                 AT91_PIOC 25 AT91_PERIPH_GPIO AT91_PINCTRL_NONE
0200                                 /* switch IRQ */
0201                                 AT91_PIOB 28 AT91_PERIPH_GPIO AT91_PINCTRL_DEGLITCH
0202                                 /* switch PME_N, SoC IN */
0203                                 AT91_PIOC 30 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP
0204                                 /* switch RST */
0205                                 AT91_PIOC 31 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH
0206                                 >;
0207                 };
0208 
0209                 pinctrl_usba_vbus: usba-vbus {
0210                         atmel,pins =
0211                                 <AT91_PIOE 9 AT91_PERIPH_GPIO AT91_PINCTRL_DEGLITCH>;
0212                 };
0213         };
0214 };