/* * AmigaOne Device Tree Source * * Copyright 2008 Gerhard Pircher (gerhard_pircher@gmx.net) * * This program is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License as published by the * Free Software Foundation; either version 2 of the License, or (at your * option) any later version. */ /dts-v1/; / { model = "AmigaOne"; compatible = "eyetech,amigaone"; coherency-off; #address-cells = <1>; #size-cells = <1>; cpus { #cpus = <1>; #address-cells = <1>; #size-cells = <0>; cpu@0 { device_type = "cpu"; reg = <0>; d-cache-line-size = <32>; // 32 bytes i-cache-line-size = <32>; // 32 bytes d-cache-size = <32768>; // L1, 32K i-cache-size = <32768>; // L1, 32K timebase-frequency = <0>; // 33.3 MHz, from U-boot clock-frequency = <0>; // From U-boot bus-frequency = <0>; // From U-boot }; }; memory { device_type = "memory"; reg = <0 0>; // From U-boot }; pci@80000000 { device_type = "pci"; compatible = "mai-logic,articia-s"; bus-frequency = <33333333>; bus-range = <0 0xff>; ranges = <0x01000000 0 0x00000000 0xfe000000 0 0x00c00000 // PCI I/O 0x02000000 0 0x80000000 0x80000000 0 0x7d000000 // PCI memory 0x02000000 0 0x00000000 0xfd000000 0 0x01000000>; // PCI alias memory (ISA) // Configuration address and data register. reg = <0xfec00cf8 4 0xfee00cfc 4>; 8259-interrupt-acknowledge = <0xfef00000>; // Do not define a interrupt-parent here, if there is no // interrupt-map property. #address-cells = <3>; #size-cells = <2>; isa@7 { device_type = "isa"; compatible = "pciclass,0601"; vendor-id = <0x00001106>; device-id = <0x00000686>; revision-id = <0x00000010>; class-code = <0x00060100>; subsystem-id = <0>; subsystem-vendor-id = <0>; devsel-speed = <0x00000001>; min-grant = <0>; max-latency = <0>; /* First 4k for I/O at 0x0 on PCI mapped to 0x0 on ISA. */ ranges = <0x00000001 0 0x01000000 0 0x00000000 0x00001000>; interrupt-parent = <&i8259>; #interrupt-cells = <2>; #address-cells = <2>; #size-cells = <1>; dma-controller@0 { compatible = "pnpPNP,200"; reg = <1 0x00000000 0x00000020 1 0x00000080 0x00000010 1 0x000000c0 0x00000020>; }; i8259: interrupt-controller@20 { device_type = "interrupt-controller"; compatible = "pnpPNP,000"; interrupt-controller; reg = <1 0x00000020 0x00000002 1 0x000000a0 0x00000002 1 0x000004d0 0x00000002>; reserved-interrupts = <2>; #interrupt-cells = <2>; }; timer@40 { // Also adds pcspkr to platform devices. compatible = "pnpPNP,100"; reg = <1 0x00000040 0x00000020>; }; 8042@60 { device_type = "8042"; reg = <1 0x00000060 0x00000001 1 0x00000064 0x00000001>; interrupts = <1 3 12 3>; #address-cells = <1>; #size-cells = <0>; keyboard@0 { compatible = "pnpPNP,303"; reg = <0>; }; mouse@1 { compatible = "pnpPNP,f03"; reg = <1>; }; }; rtc@70 { compatible = "pnpPNP,b00"; reg = <1 0x00000070 0x00000002>; interrupts = <8 3>; }; serial@3f8 { device_type = "serial"; compatible = "pnpPNP,501","pnpPNP,500"; reg = <1 0x000003f8 0x00000008>; interrupts = <4 3>; clock-frequency = <1843200>; current-speed = <115200>; }; serial@2f8 { device_type = "serial"; compatible = "pnpPNP,501","pnpPNP,500"; reg = <1 0x000002f8 0x00000008>; interrupts = <3 3>; clock-frequency = <1843200>; current-speed = <115200>; }; parallel@378 { device_type = "parallel"; // No ECP support for now, otherwise add "pnpPNP,401". compatible = "pnpPNP,400"; reg = <1 0x00000378 0x00000003 1 0x00000778 0x00000003>; }; fdc@3f0 { device_type = "fdc"; compatible = "pnpPNP,700"; reg = <1 0x000003f0 0x00000008>; interrupts = <6 3>; #address-cells = <1>; #size-cells = <0>; disk@0 { reg = <0>; }; }; }; }; chosen { linux,stdout-path = "/pci@80000000/isa@7/serial@3f8"; }; };