123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247 |
- /*
- * Copyright (C) 2014, Bin Meng <bmeng.cn@gmail.com>
- *
- * SPDX-License-Identifier: GPL-2.0+
- */
- /dts-v1/;
- #include <dt-bindings/interrupt-router/intel-irq.h>
- /include/ "skeleton.dtsi"
- /include/ "serial.dtsi"
- /include/ "keyboard.dtsi"
- /include/ "rtc.dtsi"
- /include/ "tsc_timer.dtsi"
- / {
- model = "Intel Crown Bay";
- compatible = "intel,crownbay", "intel,queensbay";
- aliases {
- spi0 = &spi;
- };
- config {
- silent_console = <0>;
- };
- cpus {
- #address-cells = <1>;
- #size-cells = <0>;
- cpu@0 {
- device_type = "cpu";
- compatible = "cpu-x86";
- reg = <0>;
- intel,apic-id = <0>;
- };
- cpu@1 {
- device_type = "cpu";
- compatible = "cpu-x86";
- reg = <1>;
- intel,apic-id = <1>;
- };
- };
- chosen {
- /*
- * By default the legacy superio serial port is used as the
- * U-Boot serial console. If we want to use UART from Topcliff
- * PCH as the console, change this property to &pciuart#.
- *
- * For example, stdout-path = &pciuart0 will use the first
- * UART on Topcliff PCH.
- */
- stdout-path = "/serial";
- };
- microcode {
- update@0 {
- #include "microcode/m0220661105_cv.dtsi"
- };
- };
- pci {
- #address-cells = <3>;
- #size-cells = <2>;
- compatible = "pci-x86";
- u-boot,dm-pre-reloc;
- ranges = <0x02000000 0x0 0x40000000 0x40000000 0 0x80000000
- 0x42000000 0x0 0xc0000000 0xc0000000 0 0x20000000
- 0x01000000 0x0 0x2000 0x2000 0 0xe000>;
- pcie@17,0 {
- #address-cells = <3>;
- #size-cells = <2>;
- compatible = "pci-bridge";
- u-boot,dm-pre-reloc;
- reg = <0x0000b800 0x0 0x0 0x0 0x0>;
- topcliff@0,0 {
- #address-cells = <3>;
- #size-cells = <2>;
- compatible = "pci-bridge";
- u-boot,dm-pre-reloc;
- reg = <0x00010000 0x0 0x0 0x0 0x0>;
- pciuart0: uart@a,1 {
- compatible = "pci8086,8811.00",
- "pci8086,8811",
- "pciclass,070002",
- "pciclass,0700",
- "ns16550";
- u-boot,dm-pre-reloc;
- reg = <0x00025100 0x0 0x0 0x0 0x0
- 0x01025110 0x0 0x0 0x0 0x0>;
- reg-shift = <0>;
- clock-frequency = <1843200>;
- current-speed = <115200>;
- };
- pciuart1: uart@a,2 {
- compatible = "pci8086,8812.00",
- "pci8086,8812",
- "pciclass,070002",
- "pciclass,0700",
- "ns16550";
- u-boot,dm-pre-reloc;
- reg = <0x00025200 0x0 0x0 0x0 0x0
- 0x01025210 0x0 0x0 0x0 0x0>;
- reg-shift = <0>;
- clock-frequency = <1843200>;
- current-speed = <115200>;
- };
- pciuart2: uart@a,3 {
- compatible = "pci8086,8813.00",
- "pci8086,8813",
- "pciclass,070002",
- "pciclass,0700",
- "ns16550";
- u-boot,dm-pre-reloc;
- reg = <0x00025300 0x0 0x0 0x0 0x0
- 0x01025310 0x0 0x0 0x0 0x0>;
- reg-shift = <0>;
- clock-frequency = <1843200>;
- current-speed = <115200>;
- };
- pciuart3: uart@a,4 {
- compatible = "pci8086,8814.00",
- "pci8086,8814",
- "pciclass,070002",
- "pciclass,0700",
- "ns16550";
- u-boot,dm-pre-reloc;
- reg = <0x00025400 0x0 0x0 0x0 0x0
- 0x01025410 0x0 0x0 0x0 0x0>;
- reg-shift = <0>;
- clock-frequency = <1843200>;
- current-speed = <115200>;
- };
- };
- };
- pch@1f,0 {
- reg = <0x0000f800 0 0 0 0>;
- compatible = "intel,pch7";
- #address-cells = <1>;
- #size-cells = <1>;
- irq-router {
- compatible = "intel,queensbay-irq-router";
- intel,pirq-config = "pci";
- intel,actl-addr = <0x58>;
- intel,pirq-link = <0x60 8>;
- intel,pirq-mask = <0xcee0>;
- intel,pirq-routing = <
- /* TunnelCreek PCI devices */
- PCI_BDF(0, 2, 0) INTA PIRQE
- PCI_BDF(0, 3, 0) INTA PIRQF
- PCI_BDF(0, 23, 0) INTA PIRQA
- PCI_BDF(0, 23, 0) INTB PIRQB
- PCI_BDF(0, 23, 0) INTC PIRQC
- PCI_BDF(0, 23, 0) INTD PIRQD
- PCI_BDF(0, 24, 0) INTA PIRQB
- PCI_BDF(0, 24, 0) INTB PIRQC
- PCI_BDF(0, 24, 0) INTC PIRQD
- PCI_BDF(0, 24, 0) INTD PIRQA
- PCI_BDF(0, 25, 0) INTA PIRQC
- PCI_BDF(0, 25, 0) INTB PIRQD
- PCI_BDF(0, 25, 0) INTC PIRQA
- PCI_BDF(0, 25, 0) INTD PIRQB
- PCI_BDF(0, 26, 0) INTA PIRQD
- PCI_BDF(0, 26, 0) INTB PIRQA
- PCI_BDF(0, 26, 0) INTC PIRQB
- PCI_BDF(0, 26, 0) INTD PIRQC
- PCI_BDF(0, 27, 0) INTA PIRQG
- /*
- * Topcliff PCI devices
- *
- * Note on the Crown Bay board, Topcliff
- * chipset is connected to TunnelCreek
- * PCIe port 0, so its bus number is 1
- * for its PCIe port and 2 for its PCI
- * devices per U-Boot current PCI bus
- * enumeration algorithm.
- */
- PCI_BDF(1, 0, 0) INTA PIRQA
- PCI_BDF(2, 0, 1) INTA PIRQA
- PCI_BDF(2, 0, 2) INTA PIRQA
- PCI_BDF(2, 2, 0) INTB PIRQD
- PCI_BDF(2, 2, 1) INTB PIRQD
- PCI_BDF(2, 2, 2) INTB PIRQD
- PCI_BDF(2, 2, 3) INTB PIRQD
- PCI_BDF(2, 2, 4) INTB PIRQD
- PCI_BDF(2, 4, 0) INTC PIRQC
- PCI_BDF(2, 4, 1) INTC PIRQC
- PCI_BDF(2, 6, 0) INTD PIRQB
- PCI_BDF(2, 8, 0) INTA PIRQA
- PCI_BDF(2, 8, 1) INTA PIRQA
- PCI_BDF(2, 8, 2) INTA PIRQA
- PCI_BDF(2, 8, 3) INTA PIRQA
- PCI_BDF(2, 10, 0) INTB PIRQD
- PCI_BDF(2, 10, 1) INTB PIRQD
- PCI_BDF(2, 10, 2) INTB PIRQD
- PCI_BDF(2, 10, 3) INTB PIRQD
- PCI_BDF(2, 10, 4) INTB PIRQD
- PCI_BDF(2, 12, 0) INTC PIRQC
- PCI_BDF(2, 12, 1) INTC PIRQC
- PCI_BDF(2, 12, 2) INTC PIRQC
- PCI_BDF(2, 12, 3) INTC PIRQC
- PCI_BDF(2, 12, 4) INTC PIRQC
- >;
- };
- spi: spi {
- #address-cells = <1>;
- #size-cells = <0>;
- compatible = "intel,ich7-spi";
- spi-flash@0 {
- reg = <0>;
- compatible = "sst,25vf016b",
- "spi-flash";
- memory-map = <0xffe00000 0x00200000>;
- };
- };
- gpioa {
- compatible = "intel,ich6-gpio";
- u-boot,dm-pre-reloc;
- reg = <0 0x20>;
- bank-name = "A";
- };
- gpiob {
- compatible = "intel,ich6-gpio";
- u-boot,dm-pre-reloc;
- reg = <0x20 0x20>;
- bank-name = "B";
- };
- };
- };
- };
|