1 // SPDX-License-Identifier: GPL-2.0 << 2 /* 1 /* 3 * DTS file for AMD Seattle XGBE (RevB) 2 * DTS file for AMD Seattle XGBE (RevB) 4 * 3 * 5 * Copyright (C) 2015 Advanced Micro Devices, 4 * Copyright (C) 2015 Advanced Micro Devices, Inc. 6 */ 5 */ 7 6 8 xgmacclk0_dma_250mhz: clk250mhz_0 { 7 xgmacclk0_dma_250mhz: clk250mhz_0 { 9 compatible = "fixed-clock"; 8 compatible = "fixed-clock"; 10 #clock-cells = <0>; 9 #clock-cells = <0>; 11 clock-frequency = <250000000>; 10 clock-frequency = <250000000>; 12 clock-output-names = "xgmacclk 11 clock-output-names = "xgmacclk0_dma_250mhz"; 13 }; 12 }; 14 13 15 xgmacclk0_ptp_250mhz: clk250mhz_1 { 14 xgmacclk0_ptp_250mhz: clk250mhz_1 { 16 compatible = "fixed-clock"; 15 compatible = "fixed-clock"; 17 #clock-cells = <0>; 16 #clock-cells = <0>; 18 clock-frequency = <250000000>; 17 clock-frequency = <250000000>; 19 clock-output-names = "xgmacclk 18 clock-output-names = "xgmacclk0_ptp_250mhz"; 20 }; 19 }; 21 20 22 xgmacclk1_dma_250mhz: clk250mhz_2 { 21 xgmacclk1_dma_250mhz: clk250mhz_2 { 23 compatible = "fixed-clock"; 22 compatible = "fixed-clock"; 24 #clock-cells = <0>; 23 #clock-cells = <0>; 25 clock-frequency = <250000000>; 24 clock-frequency = <250000000>; 26 clock-output-names = "xgmacclk 25 clock-output-names = "xgmacclk1_dma_250mhz"; 27 }; 26 }; 28 27 29 xgmacclk1_ptp_250mhz: clk250mhz_3 { 28 xgmacclk1_ptp_250mhz: clk250mhz_3 { 30 compatible = "fixed-clock"; 29 compatible = "fixed-clock"; 31 #clock-cells = <0>; 30 #clock-cells = <0>; 32 clock-frequency = <250000000>; 31 clock-frequency = <250000000>; 33 clock-output-names = "xgmacclk 32 clock-output-names = "xgmacclk1_ptp_250mhz"; 34 }; 33 }; 35 34 36 xgmac0: xgmac@e0700000 { 35 xgmac0: xgmac@e0700000 { 37 compatible = "amd,xgbe-seattle 36 compatible = "amd,xgbe-seattle-v1a"; 38 reg = <0 0xe0700000 0 0x80000> 37 reg = <0 0xe0700000 0 0x80000>, 39 <0 0xe0780000 0 0x80000> 38 <0 0xe0780000 0 0x80000>, 40 <0 0xe1240800 0 0x00400> 39 <0 0xe1240800 0 0x00400>, /* SERDES RX/TX0 */ 41 <0 0xe1250000 0 0x00060> 40 <0 0xe1250000 0 0x00060>, /* SERDES IR 1/2 */ 42 <0 0xe12500f8 0 0x00004> 41 <0 0xe12500f8 0 0x00004>; /* SERDES IR 2/2 */ 43 interrupts = <0 325 4>, 42 interrupts = <0 325 4>, 44 <0 346 1>, <0 347 43 <0 346 1>, <0 347 1>, <0 348 1>, <0 349 1>, 45 <0 323 4>; 44 <0 323 4>; 46 amd,per-channel-interrupt; 45 amd,per-channel-interrupt; 47 amd,speed-set = <0>; 46 amd,speed-set = <0>; 48 amd,serdes-blwc = <1>, <1>, <0 47 amd,serdes-blwc = <1>, <1>, <0>; 49 amd,serdes-cdr-rate = <2>, <2> 48 amd,serdes-cdr-rate = <2>, <2>, <7>; 50 amd,serdes-pq-skew = <10>, <10 49 amd,serdes-pq-skew = <10>, <10>, <18>; 51 amd,serdes-tx-amp = <0>, <0>, 50 amd,serdes-tx-amp = <0>, <0>, <0>; 52 amd,serdes-dfe-tap-config = <3 51 amd,serdes-dfe-tap-config = <3>, <3>, <3>; 53 amd,serdes-dfe-tap-enable = <0 52 amd,serdes-dfe-tap-enable = <0>, <0>, <7>; 54 mac-address = [ 02 A1 A2 A3 A4 53 mac-address = [ 02 A1 A2 A3 A4 A5 ]; 55 clocks = <&xgmacclk0_dma_250mh 54 clocks = <&xgmacclk0_dma_250mhz>, <&xgmacclk0_ptp_250mhz>; 56 clock-names = "dma_clk", "ptp_ 55 clock-names = "dma_clk", "ptp_clk"; 57 phy-mode = "xgmii"; 56 phy-mode = "xgmii"; 58 iommus = <&xgmac0_smmu 0x00 0x !! 57 #stream-id-cells = <16>; 59 dma-coherent; 58 dma-coherent; 60 }; 59 }; 61 60 62 xgmac1: xgmac@e0900000 { 61 xgmac1: xgmac@e0900000 { 63 compatible = "amd,xgbe-seattle 62 compatible = "amd,xgbe-seattle-v1a"; 64 reg = <0 0xe0900000 0 0x80000> 63 reg = <0 0xe0900000 0 0x80000>, 65 <0 0xe0980000 0 0x80000> 64 <0 0xe0980000 0 0x80000>, 66 <0 0xe1240c00 0 0x00400> 65 <0 0xe1240c00 0 0x00400>, /* SERDES RX/TX1 */ 67 <0 0xe1250080 0 0x00060> 66 <0 0xe1250080 0 0x00060>, /* SERDES IR 1/2 */ 68 <0 0xe12500fc 0 0x00004> 67 <0 0xe12500fc 0 0x00004>; /* SERDES IR 2/2 */ 69 interrupts = <0 324 4>, 68 interrupts = <0 324 4>, 70 <0 341 1>, <0 342 69 <0 341 1>, <0 342 1>, <0 343 1>, <0 344 1>, 71 <0 322 4>; 70 <0 322 4>; 72 amd,per-channel-interrupt; 71 amd,per-channel-interrupt; 73 amd,speed-set = <0>; 72 amd,speed-set = <0>; 74 amd,serdes-blwc = <1>, <1>, <0 73 amd,serdes-blwc = <1>, <1>, <0>; 75 amd,serdes-cdr-rate = <2>, <2> 74 amd,serdes-cdr-rate = <2>, <2>, <7>; 76 amd,serdes-pq-skew = <10>, <10 75 amd,serdes-pq-skew = <10>, <10>, <18>; 77 amd,serdes-tx-amp = <0>, <0>, 76 amd,serdes-tx-amp = <0>, <0>, <0>; 78 amd,serdes-dfe-tap-config = <3 77 amd,serdes-dfe-tap-config = <3>, <3>, <3>; 79 amd,serdes-dfe-tap-enable = <0 78 amd,serdes-dfe-tap-enable = <0>, <0>, <7>; 80 mac-address = [ 02 B1 B2 B3 B4 79 mac-address = [ 02 B1 B2 B3 B4 B5 ]; 81 clocks = <&xgmacclk1_dma_250mh 80 clocks = <&xgmacclk1_dma_250mhz>, <&xgmacclk1_ptp_250mhz>; 82 clock-names = "dma_clk", "ptp_ 81 clock-names = "dma_clk", "ptp_clk"; 83 phy-mode = "xgmii"; 82 phy-mode = "xgmii"; 84 iommus = <&xgmac1_smmu 0x00 0x !! 83 #stream-id-cells = <16>; 85 dma-coherent; 84 dma-coherent; 86 }; 85 }; 87 86 88 xgmac0_smmu: iommu@e0600000 { !! 87 xgmac0_smmu: smmu@e0600000 { 89 compatible = "arm,mmu-401"; 88 compatible = "arm,mmu-401"; 90 reg = <0 0xe0600000 0 0x10000 89 reg = <0 0xe0600000 0 0x10000>; 91 #global-interrupts = <1>; 90 #global-interrupts = <1>; 92 interrupts = /* Uses combined 91 interrupts = /* Uses combined intr for both 93 * global and co 92 * global and context 94 */ 93 */ 95 <0 336 4>, 94 <0 336 4>, 96 <0 336 4>; 95 <0 336 4>; 97 #iommu-cells = <2>; !! 96 98 dma-coherent; !! 97 mmu-masters = <&xgmac0 >> 98 0 1 2 3 4 5 6 7 >> 99 16 17 18 19 20 21 22 23 >> 100 >; 99 }; 101 }; 100 102 101 xgmac1_smmu: iommu@e0800000 { !! 103 xgmac1_smmu: smmu@e0800000 { 102 compatible = "arm,mmu-401"; 104 compatible = "arm,mmu-401"; 103 reg = <0 0xe0800000 0 0x10000 105 reg = <0 0xe0800000 0 0x10000>; 104 #global-interrupts = <1>; 106 #global-interrupts = <1>; 105 interrupts = /* Uses combined 107 interrupts = /* Uses combined intr for both 106 * global and co 108 * global and context 107 */ 109 */ 108 <0 335 4>, 110 <0 335 4>, 109 <0 335 4>; 111 <0 335 4>; 110 #iommu-cells = <2>; !! 112 111 dma-coherent; !! 113 mmu-masters = <&xgmac1 >> 114 0 1 2 3 4 5 6 7 >> 115 16 17 18 19 20 21 22 23 >> 116 >; 112 }; 117 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.