Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Linux/arch/powerpc/boot/dts/   (Open Source Betriebssystem Version 6.17.9©)  Datei vom 24.10.2025 mit Größe 7 kB image not shown  

Quelle  socrates.dts   Sprache: unbekannt

 
// SPDX-License-Identifier: GPL-2.0-or-later
/*
 * Device Tree Source for the Socrates board (MPC8544).
 *
 * Copyright (c) 2008 Emcraft Systems.
 * Sergei Poselenov, <sposelenov@emcraft.com>
 */

/dts-v1/;

/ {
 model = "abb,socrates";
 compatible = "abb,socrates";
 #address-cells = <1>;
 #size-cells = <1>;

 aliases {
  ethernet0 = &enet0;
  ethernet1 = &enet1;
  serial0 = &serial0;
  serial1 = &serial1;
  pci0 = &pci0;
 };

 cpus {
  #address-cells = <1>;
  #size-cells = <0>;

  PowerPC,8544@0 {
   device_type = "cpu";
   reg = <0>;
   d-cache-line-size = <32>;
   i-cache-line-size = <32>;
   d-cache-size = <0x8000>; // L1, 32K
   i-cache-size = <0x8000>; // L1, 32K
   timebase-frequency = <0>;
   bus-frequency = <0>;
   clock-frequency = <0>;
   next-level-cache = <&L2>;
  };
 };

 memory {
  device_type = "memory";
  reg = <0x00000000 0x00000000>; // Filled in by U-Boot
 };

 soc8544@e0000000 {
  #address-cells = <1>;
  #size-cells = <1>;
  device_type = "soc";

  ranges = <0x00000000 0xe0000000 0x00100000>;
  bus-frequency = <0>;  // Filled in by U-Boot
  compatible = "fsl,mpc8544-immr", "simple-bus";

  ecm-law@0 {
   compatible = "fsl,ecm-law";
   reg = <0x0 0x1000>;
   fsl,num-laws = <10>;
  };

  ecm@1000 {
   compatible = "fsl,mpc8544-ecm", "fsl,ecm";
   reg = <0x1000 0x1000>;
   interrupts = <17 2>;
   interrupt-parent = <&mpic>;
  };

  memory-controller@2000 {
   compatible = "fsl,mpc8544-memory-controller";
   reg = <0x2000 0x1000>;
   interrupt-parent = <&mpic>;
   interrupts = <18 2>;
  };

  L2: l2-cache-controller@20000 {
   compatible = "fsl,mpc8544-l2-cache-controller";
   reg = <0x20000 0x1000>;
   cache-line-size = <32>;
   cache-size = <0x40000>; // L2, 256K
   interrupt-parent = <&mpic>;
   interrupts = <16 2>;
  };

  i2c@3000 {
   #address-cells = <1>;
   #size-cells = <0>;
   cell-index = <0>;
   compatible = "fsl,mpc8544-i2c", "fsl-i2c";
   reg = <0x3000 0x100>;
   interrupts = <43 2>;
   interrupt-parent = <&mpic>;
   fsl,preserve-clocking;

   dtt@28 {
    compatible = "winbond,w83782d";
    reg = <0x28>;
   };
   rtc@32 {
    compatible = "epson,rx8025";
    reg = <0x32>;
    interrupts = <7 1>;
    interrupt-parent = <&mpic>;
   };
   dtt@4c {
    compatible = "dallas,ds75";
    reg = <0x4c>;
   };
   ts@4a {
    compatible = "ti,tsc2003";
    reg = <0x4a>;
    interrupt-parent = <&mpic>;
    interrupts = <8 1>;
   };
  };

  i2c@3100 {
   #address-cells = <1>;
   #size-cells = <0>;
   cell-index = <1>;
   compatible = "fsl,mpc8544-i2c", "fsl-i2c";
   reg = <0x3100 0x100>;
   interrupts = <43 2>;
   interrupt-parent = <&mpic>;
   fsl,preserve-clocking;
  };

  enet0: ethernet@24000 {
   #address-cells = <1>;
   #size-cells = <1>;
   cell-index = <0>;
   device_type = "network";
   model = "eTSEC";
   compatible = "gianfar";
   reg = <0x24000 0x1000>;
   ranges = <0x0 0x24000 0x1000>;
   local-mac-address = [ 00 00 00 00 00 00 ];
   interrupts = <29 2 30 2 34 2>;
   interrupt-parent = <&mpic>;
   phy-handle = <&phy0>;
   tbi-handle = <&tbi0>;
   phy-connection-type = "rgmii-id";

   mdio@520 {
    #address-cells = <1>;
    #size-cells = <0>;
    compatible = "fsl,gianfar-mdio";
    reg = <0x520 0x20>;

    phy0: ethernet-phy@0 {
     interrupt-parent = <&mpic>;
     interrupts = <0 1>;
     reg = <0>;
    };
    phy1: ethernet-phy@1 {
     interrupt-parent = <&mpic>;
     interrupts = <0 1>;
     reg = <1>;
    };
    tbi0: tbi-phy@11 {
     reg = <0x11>;
    };
   };
  };

  enet1: ethernet@26000 {
   #address-cells = <1>;
   #size-cells = <1>;
   cell-index = <1>;
   device_type = "network";
   model = "eTSEC";
   compatible = "gianfar";
   reg = <0x26000 0x1000>;
   ranges = <0x0 0x26000 0x1000>;
   local-mac-address = [ 00 00 00 00 00 00 ];
   interrupts = <31 2 32 2 33 2>;
   interrupt-parent = <&mpic>;
   phy-handle = <&phy1>;
   tbi-handle = <&tbi1>;
   phy-connection-type = "rgmii-id";

   mdio@520 {
    #address-cells = <1>;
    #size-cells = <0>;
    compatible = "fsl,gianfar-tbi";
    reg = <0x520 0x20>;

    tbi1: tbi-phy@11 {
     reg = <0x11>;
    };
   };
  };

  serial0: serial@4500 {
   cell-index = <0>;
   device_type = "serial";
   compatible = "fsl,ns16550", "ns16550";
   reg = <0x4500 0x100>;
   clock-frequency = <0>;
   interrupts = <42 2>;
   interrupt-parent = <&mpic>;
  };

  serial1: serial@4600 {
   cell-index = <1>;
   device_type = "serial";
   compatible = "fsl,ns16550", "ns16550";
   reg = <0x4600 0x100>;
   clock-frequency = <0>;
   interrupts = <42 2>;
   interrupt-parent = <&mpic>;
  };

  global-utilities@e0000 { //global utilities block
   compatible = "fsl,mpc8548-guts";
   reg = <0xe0000 0x1000>;
   fsl,has-rstcr;
  };

  mpic: pic@40000 {
   interrupt-controller;
   #address-cells = <0>;
   #interrupt-cells = <2>;
   reg = <0x40000 0x40000>;
   compatible = "chrp,open-pic";
   device_type = "open-pic";
  };
 };


 localbus {
  compatible = "fsl,mpc8544-localbus",
               "fsl,pq3-localbus",
        "simple-bus";
  #address-cells = <2>;
  #size-cells = <1>;
  reg = <0xe0005000 0x40>;
  interrupt-parent = <&mpic>;
  interrupts = <19 2>;

  ranges = <0 0 0xfc000000 0x04000000
     2 0 0xc8000000 0x04000000
     3 0 0xc0000000 0x00100000
   >; /* Overwritten by U-Boot */

  nor_flash@0,0 {
   compatible = "amd,s29gl256n", "cfi-flash";
   bank-width = <2>;
   reg = <0x0 0x000000 0x4000000>;
   #address-cells = <1>;
   #size-cells = <1>;
   partition@0 {
    label = "kernel";
    reg = <0x0 0x1e0000>;
    read-only;
   };
   partition@1e0000 {
    label = "dtb";
    reg = <0x1e0000 0x20000>;
   };
   partition@200000 {
    label = "root";
    reg = <0x200000 0x200000>;
   };
   partition@400000 {
    label = "user";
    reg = <0x400000 0x3b80000>;
   };
   partition@3f80000 {
    label = "env";
    reg = <0x3f80000 0x40000>;
    read-only;
   };
   partition@3fc0000 {
    label = "u-boot";
    reg = <0x3fc0000 0x40000>;
    read-only;
   };
  };

  display@2,0 {
   compatible = "fujitsu,lime";
   reg = <2 0x0 0x4000000>;
   interrupt-parent = <&mpic>;
   interrupts = <6 1>;
  };

  fpga_pic: fpga-pic@3,10 {
   compatible = "abb,socrates-fpga-pic";
   reg = <3 0x10 0x10>;
   interrupt-controller;
   /* IRQs 2, 10, 11, active low, level-sensitive */
   interrupts = <2 1 10 1 11 1>;
   interrupt-parent = <&mpic>;
   #interrupt-cells = <3>;
  };

  spi@3,60 {
   compatible = "abb,socrates-spi";
   reg = <3 0x60 0x10>;
   interrupts = <8 4 0>; // number, type, routing
   interrupt-parent = <&fpga_pic>;
  };

  nand@3,70 {
   compatible = "abb,socrates-nand";
   reg = <3 0x70 0x04>;
   bank-width = <1>;
   #address-cells = <1>;
   #size-cells = <1>;
   data@0 {
    label = "data";
    reg = <0x0 0x40000000>;
   };
  };

  can@3,100 {
   compatible = "philips,sja1000";
   reg = <3 0x100 0x80>;
   interrupts = <2 8 1>; // number, type, routing
   interrupt-parent = <&fpga_pic>;
  };
 };

 pci0: pci@e0008000 {
  #interrupt-cells = <1>;
  #size-cells = <2>;
  #address-cells = <3>;
  compatible = "fsl,mpc8540-pci";
  device_type = "pci";
  reg = <0xe0008000 0x1000>;
  clock-frequency = <66666666>;

  interrupt-map-mask = <0xf800 0x0 0x0 0x7>;
  interrupt-map = <
    /* IDSEL 0x11 */
     0x8800 0x0 0x0 1 &mpic 5 1
    /* IDSEL 0x12 */
     0x9000 0x0 0x0 1 &mpic 4 1>;
  interrupt-parent = <&mpic>;
  interrupts = <24 2>;
  bus-range = <0x0 0x0>;
  ranges = <0x02000000 0x0 0x80000000 0x80000000 0x0 0x20000000
     0x01000000 0x0 0x00000000 0xe2000000 0x0 0x01000000>;
 };

};

[ Dauer der Verarbeitung: 0.2 Sekunden  (vorverarbeitet)  ]