Kernel 4.15

AmigaOne X5000 platform specific issues related to Linux only.
User avatar
xeno74
Posts: 9348
Joined: Fri Mar 23, 2012 7:58 am

Re: Kernel 4.15

Post by xeno74 »

Hi All,

Today, we released the RC9 of kernel 4.15 for the X5000 and X1000.

New:
Download: vmlinux-4.15-rc9-AmigaOne_X1000_X5000.tar.gz

Image

Please test it on your X5000 and X1000.

Thanks,
Christian
http://www.amigalinux.org
http://www.supertuxkart-amiga.de

Running Linux on AmigaONEs can require some tinkering.
User avatar
Skateman
Posts: 861
Joined: Thu Aug 10, 2017 8:36 pm
Location: The Netherlands

Re: Kernel 4.15

Post by Skateman »

All working fine.... but the Ethernet problems still exist.

The Ethernet part is working but dies rather quickly... looking into why this happens.
AmigaOne X5000 -> 2GHz / 16GB RAM / Radeon RX 570 / Radeon X1950 / M-Audio 5.1 -> AmigaOS / Linux
Amiga 1200 -> Recapped / 68ec020 ACA 1221ec / CF HDD / RetroNET connected to the world
Vampire 4SA - RPi4 Running AmiKitXE Full
User avatar
xeno74
Posts: 9348
Joined: Fri Mar 23, 2012 7:58 am

Re: Kernel 4.15

Post by xeno74 »

FYI:
Jamie wrote: Hi All,

Download: vmlinux-4.15-rc9-AmigaOne_X1000_X5000.tar.gz

For anyone that is testing this kernel on the X5000/20,
here is a link to an alternate device tree file for testing
the DPAA Ethernet, that I got for Justin Hibbits (from
his work with FreeBSD on the X5000/20).

According to Justin the DPAA Ethernet is fully working
under FreeBSD, which I understand is a different driver
altogether from Linux.

Justin wrote:

"DPAA works just fine on FreeBSD. The only thing is you need to add
the proper PHY information into the device tree. You can find a
working device tree at:

https://people.freebsd.org/~jhibbits/cy ... amiga2.dtb "

Please note that, unlike Darren's version of the device tree,
this one does not attempt to map the dTSEC 4 & 5 to eth0
and eth1 under Linux, but rather they will initialize as
eth3 & 4 respectively.

So you should set some MAC address values for 'eth3addr'
and 'eth4addr' environment variables in U-Boot to give the
driver something to pick up for eth3 & 4.

Also, I have attached the source file I believe Justin used
to create the dtb file for FreeBSD. It would be interesting to
see what differences exist between this one, and what we
are currently testing with.

(From my initial testing with this .dtb file and the Linux-
4.15-rc8 kernel, I found that the DPAA Ethernet *does work*
for a short time before stopping. For example, I may get
a few minutes of 'synergy' {a network shared mouse and
keyboard tool} connecting and working perfectly. Then,
after a few minutes of working it just stops receiving
data updates.

I have never gotten it to successfully load a web page
in Firefox or anything however, or resolve DNS requests.

I thought maybe just some UDP traffic was making it,
and TCP connections were not working. However this
does not hold up as 'synergy' uses a stream of TCP
packets to forward mouse and keyboard events to
other computers -- In this case an outside Linux
machine was the server {forwarding the mouse and
keyboard} to the X5000/20 which was running the
synergy client {and hence receiving the data}).

--
Best Regards,

Jamie Krueger
BITbyBIT Software Group LLC
http://www.amigalinux.org
http://www.supertuxkart-amiga.de

Running Linux on AmigaONEs can require some tinkering.
User avatar
xeno74
Posts: 9348
Joined: Fri Mar 23, 2012 7:58 am

Re: Kernel 4.15

Post by xeno74 »

cyrus_p5020_amiga.dts part1:

Code: Select all

/dts-v1/;

/ {
        compatible = "varisys,CYRUS";
        #address-cells = <0x00000002>;
        #size-cells = <0x00000002>;
        interrupt-parent = <0x00000001>;
        model = "varisys,CYRUS";
        cpus {
                power-isa-version = "2.06";
                power-isa-b;
                power-isa-e;
                power-isa-atb;
                power-isa-cs;
                power-isa-ds;
                power-isa-e.ed;
                power-isa-e.pd;
                power-isa-e.hv;
                power-isa-e.le;
                power-isa-e.pm;
                power-isa-e.pc;
                power-isa-ecl;
                power-isa-exp;
                power-isa-fp;
                power-isa-fp.r;
                power-isa-mmc;
                power-isa-scpm;
                power-isa-wt;
                power-isa-64;
                fsl,eref-deo;
                mmu-type = "power-embedded";
                #address-cells = <0x00000001>;
                #size-cells = <0x00000000>;
                PowerPC,e5500@0 {
                        i-cache-sets = <0x00000040>;
                        i-cache-size = <0x00008000>;
                        i-cache-block-size = <0x00000040>;
                        cache-stash-id = <0x00000020>;
                        d-cache-sets = <0x00000040>;
                        d-cache-size = <0x00008000>;
                        d-cache-block-size = <0x00000040>;
                        enable-method = "spin-table";
                        status = "okay";
                        clock-frequency = <0x76e948c0>;
                        timebase-frequency = <0x017c841c>;
                        device_type = "cpu";
                        reg = <0x00000000>;
                        bus-frequency = <0x2f908380>;
                        clocks = <0x00000002>;
                        next-level-cache = <0x00000003>;
                        fsl,portid-mapping = <0x80000000>;
                        linux,phandle = <0x00000009>;
                        phandle = <0x00000009>;
                        l2-cache {
                                compatible = "cache";
                                cache-level = <0x00000002>;
                                cache-sets = <0x00000400>;
                                cache-size = <0x00080000>;
                                cache-block-size = <0x00000040>;
                                cache-unified;
                                cache-stash-id = <0x00000021>;
                                next-level-cache = <0x00000004>;
                                linux,phandle = <0x00000003>;
                                phandle = <0x00000003>;
                        };
                };
                PowerPC,e5500@1 {
                        i-cache-sets = <0x00000040>;
                        i-cache-size = <0x00008000>;
                        i-cache-block-size = <0x00000040>;
                        cache-stash-id = <0x00000022>;
                        d-cache-sets = <0x00000040>;
                        d-cache-size = <0x00008000>;
                        d-cache-block-size = <0x00000040>;
                        enable-method = "spin-table";
                        status = "disabled";
                        clock-frequency = <0x76e948c0>;
                        bus-frequency = <0x2f908380>;
                        timebase-frequency = <0x017c841c>;
                        device_type = "cpu";
                        reg = <0x00000001>;
                        clocks = <0x00000005>;
                        next-level-cache = <0x00000006>;
                        fsl,portid-mapping = <0x40000000>;
                        linux,phandle = <0x0000000a>;
                        phandle = <0x0000000a>;
                        l2-cache {
                                compatible = "cache";
                                cache-level = <0x00000002>;
                                cache-sets = <0x00000400>;
                                cache-size = <0x00080000>;
                                cache-block-size = <0x00000040>;
                                cache-unified;
                                cache-stash-id = <0x00000023>;
                                next-level-cache = <0x00000004>;
                                linux,phandle = <0x00000006>;
                                phandle = <0x00000006>;
                        };
                };
        };
        aliases {
                ccsr = "/soc@ffe000000";
                dcsr = "/dcsr@f00000000";
                serial0 = "/soc@ffe000000/serial@11c500";
                serial1 = "/soc@ffe000000/serial@11c600";
                serial2 = "/soc@ffe000000/serial@11d500";
                serial3 = "/soc@ffe000000/serial@11d600";
                pci0 = "/pcie@ffe200000";
                pci1 = "/pcie@ffe201000";
                pci2 = "/pcie@ffe202000";
                pci3 = "/pcie@ffe203000";
                usb0 = "/soc@ffe000000/usb@210000";
                usb1 = "/soc@ffe000000/usb@211000";
                dma0 = "/soc@ffe000000/dma@100300";
                dma1 = "/soc@ffe000000/dma@101300";
                sdhc = "/soc@ffe000000/sdhc@114000";
                msi0 = "/soc@ffe000000/msi@41600";
                msi1 = "/soc@ffe000000/msi@41800";
                msi2 = "/soc@ffe000000/msi@41a00";
                sec_jr0 = "/soc@ffe000000/crypto@300000/jr@1000";
                sec_jr1 = "/soc@ffe000000/crypto@300000/jr@2000";
                sec_jr2 = "/soc@ffe000000/crypto@300000/jr@3000";
                sec_jr3 = "/soc@ffe000000/crypto@300000/jr@4000";
                rtic_a = "/soc@ffe000000/crypto@300000/rtic@6000/rtic-a@0";
                rtic_b = "/soc@ffe000000/crypto@300000/rtic@6000/rtic-b@20";
                rtic_c = "/soc@ffe000000/crypto@300000/rtic@6000/rtic-c@40";
                rtic_d = "/soc@ffe000000/crypto@300000/rtic@6000/rtic-d@60";
                sec_mon = "/soc@ffe000000/sec_mon@314000";
                raideng = "/soc@ffe000000/raideng@320000";
                raideng_jr0 = "/soc@ffe000000/raideng@320000/raideng_jq0@1000/jr@0";
                raideng_jr1 = "/soc@ffe000000/raideng@320000/raideng_jq0@1000/jr@400";
                raideng_jr2 = "/soc@ffe000000/raideng@320000/raideng_jq1@2000/jr@0";
                raideng_jr3 = "/soc@ffe000000/raideng@320000/raideng_jq1@2000/jr@400";
                fman0 = "/soc@ffe000000/fman@400000";
                ethernet0 = "/soc@ffe000000/fman@400000/ethernet@e0000";
                ethernet1 = "/soc@ffe000000/fman@400000/ethernet@e2000";
                ethernet2 = "/soc@ffe000000/fman@400000/ethernet@e4000";
                ethernet3 = "/soc@ffe000000/fman@400000/ethernet@e6000";
                ethernet4 = "/soc@ffe000000/fman@400000/ethernet@e8000";
                ethernet5 = "/soc@ffe000000/fman@400000/ethernet@f0000";
        };
        memory {
                reg = <0x00000000 0x00000000 0x00000000 0x80000000>;
                device_type = "memory";
        };
        reserved-memory {
                #address-cells = <0x00000002>;
                #size-cells = <0x00000002>;
                ranges;
                bman-fbpr {
                        size = <0x00000000 0x01000000>;
                        alignment = <0x00000000 0x01000000>;
                        compatible = "fsl,bman-fbpr";
                        alloc-ranges = <0x00000000 0x00000000 0x00010000 0x00000000>;
                        linux,phandle = <0x00000015>;
                        phandle = <0x00000015>;
                };
                qman-fqd {
                        size = <0x00000000 0x00400000>;
                        alignment = <0x00000000 0x00400000>;
                        compatible = "fsl,qman-fqd";
                        alloc-ranges = <0x00000000 0x00000000 0x00010000 0x00000000>;
                        linux,phandle = <0x00000012>;
                        phandle = <0x00000012>;
                };
                qman-pfdr {
                        size = <0x00000000 0x02000000>;
                        alignment = <0x00000000 0x02000000>;
                        compatible = "fsl,qman-pfdr";
                        alloc-ranges = <0x00000000 0x00000000 0x00010000 0x00000000>;
                        linux,phandle = <0x00000013>;
                        phandle = <0x00000013>;
                };
        };
        dcsr@f00000000 {
                ranges = <0x00000000 0x0000000f 0x00000000 0x01008000>;
                #address-cells = <0x00000001>;
                #size-cells = <0x00000001>;
                compatible = "fsl,dcsr", "simple-bus";
                dcsr-epu@0 {
                        compatible = "fsl,p5020-dcsr-epu", "fsl,dcsr-epu";
                        interrupts = <0x00000034 0x00000002 0x00000000 0x00000000 0x00000054 0x00000002 0x00000000 0x00000000 0x00000055 0x00000002 0x00000000 0x00000000>;
                        reg = <0x00000000 0x00001000>;
                };
                dcsr-npc {
                        compatible = "fsl,dcsr-npc";
                        reg = <0x00001000 0x00001000 0x01000000 0x00008000>;
                };
                dcsr-nxc@2000 {
                        compatible = "fsl,dcsr-nxc";
                        reg = <0x00002000 0x00001000>;
                };
                dcsr-corenet {
                        compatible = "fsl,dcsr-corenet";
                        reg = <0x00008000 0x00001000 0x000b0000 0x00001000>;
                };
                dcsr-dpaa@9000 {
                        compatible = "fsl,p5020-dcsr-dpaa", "fsl,dcsr-dpaa";
                        reg = <0x00009000 0x00001000>;
                };
                dcsr-ocn@11000 {
                        compatible = "fsl,p5020-dcsr-ocn", "fsl,dcsr-ocn";
                        reg = <0x00011000 0x00001000>;
                };
                dcsr-ddr@12000 {
                        compatible = "fsl,dcsr-ddr";
                        dev-handle = <0x00000007>;
                        reg = <0x00012000 0x00001000>;
                };
                dcsr-ddr@13000 {
                        compatible = "fsl,dcsr-ddr";
                        dev-handle = <0x00000008>;
                        reg = <0x00013000 0x00001000>;
                };
                dcsr-nal@18000 {
                        compatible = "fsl,p5020-dcsr-nal", "fsl,dcsr-nal";
                        reg = <0x00018000 0x00001000>;
                };
                dcsr-rcpm@22000 {
                        compatible = "fsl,p5020-dcsr-rcpm", "fsl,dcsr-rcpm";
                        reg = <0x00022000 0x00001000>;
                };
                dcsr-cpu-sb-proxy@40000 {
                        compatible = "fsl,dcsr-e5500-sb-proxy", "fsl,dcsr-cpu-sb-proxy";
                        cpu-handle = <0x00000009>;
                        reg = <0x00040000 0x00001000>;
                };
                dcsr-cpu-sb-proxy@41000 {
                        compatible = "fsl,dcsr-e5500-sb-proxy", "fsl,dcsr-cpu-sb-proxy";
                        cpu-handle = <0x0000000a>;
                        reg = <0x00041000 0x00001000>;
                };
        };
        bman-portals@ff4000000 {
                ranges = <0x00000000 0x0000000f 0xf4000000 0x00200000>;
                #address-cells = <0x00000001>;
                #size-cells = <0x00000001>;
                compatible = "fsl,bman-portals", "simple-bus";
                linux,phandle = <0x00000014>;
                phandle = <0x00000014>;
                bman-portal@0 {
                        compatible = "fsl,bman-portal-1.0.0", "fsl,bman-portal";
                        reg = <0x00000000 0x00004000 0x00100000 0x00001000>;
                        interrupts = <0x00000069 0x00000002 0x00000000 0x00000000>;
                };
                bman-portal@4000 {
                        compatible = "fsl,bman-portal-1.0.0", "fsl,bman-portal";
                        reg = <0x00004000 0x00004000 0x00101000 0x00001000>;
                        interrupts = <0x0000006b 0x00000002 0x00000000 0x00000000>;
                };
                bman-portal@8000 {
                        compatible = "fsl,bman-portal-1.0.0", "fsl,bman-portal";
                        reg = <0x00008000 0x00004000 0x00102000 0x00001000>;
                        interrupts = <0x0000006d 0x00000002 0x00000000 0x00000000>;
                };
                bman-portal@c000 {
                        compatible = "fsl,bman-portal-1.0.0", "fsl,bman-portal";
                        reg = <0x0000c000 0x00004000 0x00103000 0x00001000>;
                        interrupts = <0x0000006f 0x00000002 0x00000000 0x00000000>;
                };
                bman-portal@10000 {
                        compatible = "fsl,bman-portal-1.0.0", "fsl,bman-portal";
                        reg = <0x00010000 0x00004000 0x00104000 0x00001000>;
                        interrupts = <0x00000071 0x00000002 0x00000000 0x00000000>;
                };
                bman-portal@14000 {
                        compatible = "fsl,bman-portal-1.0.0", "fsl,bman-portal";
                        reg = <0x00014000 0x00004000 0x00105000 0x00001000>;
                        interrupts = <0x00000073 0x00000002 0x00000000 0x00000000>;
                };
                bman-portal@18000 {
                        compatible = "fsl,bman-portal-1.0.0", "fsl,bman-portal";
                        reg = <0x00018000 0x00004000 0x00106000 0x00001000>;
                        interrupts = <0x00000075 0x00000002 0x00000000 0x00000000>;
                };
                bman-portal@1c000 {
                        compatible = "fsl,bman-portal-1.0.0", "fsl,bman-portal";
                        reg = <0x0001c000 0x00004000 0x00107000 0x00001000>;
                        interrupts = <0x00000077 0x00000002 0x00000000 0x00000000>;
                };
                bman-portal@20000 {
                        compatible = "fsl,bman-portal-1.0.0", "fsl,bman-portal";
                        reg = <0x00020000 0x00004000 0x00108000 0x00001000>;
                        interrupts = <0x00000079 0x00000002 0x00000000 0x00000000>;
                };
                bman-portal@24000 {
                        compatible = "fsl,bman-portal-1.0.0", "fsl,bman-portal";
                        reg = <0x00024000 0x00004000 0x00109000 0x00001000>;
                        interrupts = <0x0000007b 0x00000002 0x00000000 0x00000000>;
                };
        };
        qman-portals@ff4200000 {
                ranges = <0x00000000 0x0000000f 0xf4200000 0x00200000>;
                #address-cells = <0x00000001>;
                #size-cells = <0x00000001>;
                compatible = "fsl,qman-portals", "simple-bus";
                linux,phandle = <0x00000011>;
                phandle = <0x00000011>;
                qman-portal@0 {
                        fsl,liodn = <0x00000001 0x00000002>;
                        compatible = "fsl,qman-portal-1.2.0", "fsl,qman-portal";
                        reg = <0x00000000 0x00004000 0x00100000 0x00001000>;
                        interrupts = <0x00000068 0x00000002 0x00000000 0x00000000>;
                        cell-index = <0x00000000>;
                        fman@0 {
                                fsl,liodn = <0x00000021>;
                                dev-handle = <0x0000002a>;
                        };
                };
                qman-portal@4000 {
                        fsl,liodn = <0x00000003 0x00000004>;
                        compatible = "fsl,qman-portal-1.2.0", "fsl,qman-portal";
                        reg = <0x00004000 0x00004000 0x00101000 0x00001000>;
                        interrupts = <0x0000006a 0x00000002 0x00000000 0x00000000>;
                        cell-index = <0x00000001>;
                        fman@0 {
                                fsl,liodn = <0x00000022>;
                                dev-handle = <0x0000002a>;
                        };
                };
                qman-portal@8000 {
                        fsl,liodn = <0x00000005 0x00000006>;
                        compatible = "fsl,qman-portal-1.2.0", "fsl,qman-portal";
                        reg = <0x00008000 0x00004000 0x00102000 0x00001000>;
                        interrupts = <0x0000006c 0x00000002 0x00000000 0x00000000>;
                        cell-index = <0x00000002>;
                        fman@0 {
                                fsl,liodn = <0x00000023>;
                                dev-handle = <0x0000002a>;
                        };
                };
                qman-portal@c000 {
                        fsl,liodn = <0x00000007 0x00000008>;
                        compatible = "fsl,qman-portal-1.2.0", "fsl,qman-portal";
                        reg = <0x0000c000 0x00004000 0x00103000 0x00001000>;
                        interrupts = <0x0000006e 0x00000002 0x00000000 0x00000000>;
                        cell-index = <0x00000003>;
                        fman@0 {
                                fsl,liodn = <0x00000024>;
                                dev-handle = <0x0000002a>;
                        };
                };
                qman-portal@10000 {
                        fsl,liodn = <0x00000009 0x0000000a>;
                        compatible = "fsl,qman-portal-1.2.0", "fsl,qman-portal";
                        reg = <0x00010000 0x00004000 0x00104000 0x00001000>;
                        interrupts = <0x00000070 0x00000002 0x00000000 0x00000000>;
                        cell-index = <0x00000004>;
                        fman@0 {
                                fsl,liodn = <0x00000025>;
                                dev-handle = <0x0000002a>;
                        };
                };
                qman-portal@14000 {
                        fsl,liodn = <0x0000000b 0x0000000c>;
                        compatible = "fsl,qman-portal-1.2.0", "fsl,qman-portal";
                        reg = <0x00014000 0x00004000 0x00105000 0x00001000>;
                        interrupts = <0x00000072 0x00000002 0x00000000 0x00000000>;
                        cell-index = <0x00000005>;
                        fman@0 {
                                fsl,liodn = <0x00000026>;
                                dev-handle = <0x0000002a>;
                        };
                };
                qman-portal@18000 {
                        fsl,liodn = <0x0000000d 0x0000000e>;
                        compatible = "fsl,qman-portal-1.2.0", "fsl,qman-portal";
                        reg = <0x00018000 0x00004000 0x00106000 0x00001000>;
                        interrupts = <0x00000074 0x00000002 0x00000000 0x00000000>;
                        cell-index = <0x00000006>;
                        fman@0 {
                                fsl,liodn = <0x00000027>;
                                dev-handle = <0x0000002a>;
                        };
                };
                qman-portal@1c000 {
                        fsl,liodn = <0x0000000f 0x00000010>;
                        compatible = "fsl,qman-portal-1.2.0", "fsl,qman-portal";
                        reg = <0x0001c000 0x00004000 0x00107000 0x00001000>;
                        interrupts = <0x00000076 0x00000002 0x00000000 0x00000000>;
                        cell-index = <0x00000007>;
                        fman@0 {
                                fsl,liodn = <0x00000028>;
                                dev-handle = <0x0000002a>;
                        };
                };
                qman-portal@20000 {
                        fsl,liodn = <0x00000011 0x00000012>;
                        compatible = "fsl,qman-portal-1.2.0", "fsl,qman-portal";
                        reg = <0x00020000 0x00004000 0x00108000 0x00001000>;
                        interrupts = <0x00000078 0x00000002 0x00000000 0x00000000>;
                        cell-index = <0x00000008>;
                        fman@0 {
                                fsl,liodn = <0x00000029>;
                                dev-handle = <0x0000002a>;
                        };
                };
                qman-portal@24000 {
                        fsl,liodn = <0x00000013 0x00000014>;
                        compatible = "fsl,qman-portal-1.2.0", "fsl,qman-portal";
                        reg = <0x00024000 0x00004000 0x00109000 0x00001000>;
                        interrupts = <0x0000007a 0x00000002 0x00000000 0x00000000>;
                        cell-index = <0x00000009>;
                        fman@0 {
                                fsl,liodn = <0x0000002a>;
                                dev-handle = <0x0000002a>;
                        };
                };
        };
        soc@ffe000000 {
                bus-frequency = <0x2f908380>;
                ranges = <0x00000000 0x0000000f 0xfe000000 0x01000000>;
                reg = <0x0000000f 0xfe000000 0x00000000 0x00001000>;
                #address-cells = <0x00000001>;
                #size-cells = <0x00000001>;
                device_type = "soc";
                compatible = "simple-bus";
                spi@110000 {
                        #address-cells = <0x00000001>;
                        #size-cells = <0x00000000>;
                        compatible = "fsl,mpc8536-espi";
                        reg = <0x00110000 0x00001000>;
                        interrupts = <0x00000035 0x00000002 0x00000000 0x00000000>;
                        fsl,espi-num-chipselects = <0x00000004>;
                };
                i2c@118100 {
                        #address-cells = <0x00000001>;
                        #size-cells = <0x00000000>;
                        cell-index = <0x00000001>;
                        compatible = "fsl-i2c";
                        reg = <0x00118100 0x00000100>;
                        interrupts = <0x00000026 0x00000002 0x00000000 0x00000000>;
                        dfsrr;
                };
                i2c@119100 {
                        #address-cells = <0x00000001>;
                        #size-cells = <0x00000000>;
                        cell-index = <0x00000003>;
                        compatible = "fsl-i2c";
                        reg = <0x00119100 0x00000100>;
                        interrupts = <0x00000027 0x00000002 0x00000000 0x00000000>;
                        dfsrr;
                        rtc@6f {
                                compatible = "microchip,mcp7941x";
                                reg = <0x0000006f>;
                        };
                };
                soc-sram-error {
                        compatible = "fsl,soc-sram-error";
                        interrupts = <0x00000010 0x00000002 0x00000001 0x0000001d>;
                };
                corenet-law@0 {
                        compatible = "fsl,corenet-law";
                        reg = <0x00000000 0x00001000>;
                        fsl,num-laws = <0x00000020>;
                };
                memory-controller@8000 {
                        compatible = "fsl,qoriq-memory-controller-v4.5", "fsl,qoriq-memory-controller";
                        reg = <0x00008000 0x00001000>;
                        interrupts = <0x00000010 0x00000002 0x00000001 0x00000017>;
                        linux,phandle = <0x00000007>;
                        phandle = <0x00000007>;
                };
                memory-controller@9000 {
                        compatible = "fsl,qoriq-memory-controller-v4.5", "fsl,qoriq-memory-controller";
                        reg = <0x00009000 0x00001000>;
                        interrupts = <0x00000010 0x00000002 0x00000001 0x00000016>;
                        linux,phandle = <0x00000008>;
                        phandle = <0x00000008>;
                };
                l3-cache-controller@10000 {
                        cache-stash-id = <0x00000001>;
                        cache-level = <0x00000003>;
                        cache-sets = <0x00000400>;
                        cache-size = <0x00200000>;
                        cache-block-size = <0x00000040>;
                        cache-unified;
                        compatible = "fsl,p5020-l3-cache-controller", "fsl,p4080-l3-cache-controller", "cache";
                        reg = <0x00010000 0x00001000 0x00011000 0x00001000>;
                        interrupts = <0x00000010 0x00000002 0x00000001 0x0000001b 0x00000010 0x00000002 0x00000001 0x0000001a>;
                        linux,phandle = <0x00000004>;
                        phandle = <0x00000004>;
                };
                corenet-cf@18000 {
                        compatible = "fsl,corenet1-cf", "fsl,corenet-cf";
                        reg = <0x00018000 0x00001000>;
                        interrupts = <0x00000010 0x00000002 0x00000001 0x0000001f>;
                        fsl,ccf-num-csdids = <0x00000020>;
                        fsl,ccf-num-snoopids = <0x00000020>;
                };
                iommu@20000 {
                        compatible = "fsl,pamu-v1.0", "fsl,pamu";
                        reg = <0x00020000 0x00004000>;
                        ranges = <0x00000000 0x00020000 0x00004000>;
                        #address-cells = <0x00000001>;
                        #size-cells = <0x00000001>;
                        interrupts = <0x00000018 0x00000002 0x00000000 0x00000000 0x00000010 0x00000002 0x00000001 0x0000001e>;
                        fsl,portid-mapping = <0x3c000000>;
                        pamu@0 {
                                reg = <0x00000000 0x00001000>;
                                fsl,primary-cache-geometry = <0x00000020 0x00000001>;
                                fsl,secondary-cache-geometry = <0x00000080 0x00000002>;
                                linux,phandle = <0x0000000e>;
                                phandle = <0x0000000e>;
                        };
                        pamu@1000 {
                                reg = <0x00001000 0x00001000>;
                                fsl,primary-cache-geometry = <0x00000020 0x00000001>;
                                fsl,secondary-cache-geometry = <0x00000080 0x00000002>;
                                linux,phandle = <0x00000010>;
                                phandle = <0x00000010>;
                        };
                        pamu@2000 {
                                reg = <0x00002000 0x00001000>;
                                fsl,primary-cache-geometry = <0x00000020 0x00000001>;
                                fsl,secondary-cache-geometry = <0x00000080 0x00000002>;
                        };
                        pamu@3000 {
                                reg = <0x00003000 0x00001000>;
                                fsl,primary-cache-geometry = <0x00000020 0x00000001>;
                                fsl,secondary-cache-geometry = <0x00000080 0x00000002>;
                        };
                };
                pic@40000 {
                        interrupt-controller;
                        #address-cells = <0x00000000>;
                        #interrupt-cells = <0x00000004>;
                        reg = <0x00040000 0x00040000>;
                        compatible = "fsl,mpic", "chrp,open-pic";
                        device_type = "open-pic";
                        clock-frequency = <0x17c841c0>;
                        linux,phandle = <0x00000001>;
                        phandle = <0x00000001>;
                };
                timer@41100 {
                        compatible = "fsl,mpic-global-timer";
                        reg = <0x00041100 0x00000100 0x00041300 0x00000004>;
                        interrupts = <0x00000000 0x00000000 0x00000003 0x00000000 0x00000001 0x00000000 0x00000003 0x00000000 0x00000002 0x00000000 0x00000003 0x00000000 0x00000003 0x00000000 0x00000003 0x00000000>;
                };
                msi@41600 {
                        compatible = "fsl,mpic-msi";
                        reg = <0x00041600 0x00000200 0x00044140 0x00000004>;
                        msi-available-ranges = <0x00000000 0x00000100>;
			interrupts = <0xe0 0x0 0x0 0x0 0xe1 0x0 0x0 0x0 0xe2 0x0 0x0 0x0 0xe3 0x0 0x0 0x0 0xe4 0x0 0x0 0x0 0xe5 0x0 0x0 0x0 0xe6 0x0 0x0 0x0 0xe7 0x0 0x0 0x0>;
                };
                msi@41800 {
                        compatible = "fsl,mpic-msi";
                        reg = <0x00041800 0x00000200 0x00045140 0x00000004>;
                        msi-available-ranges = <0x00000000 0x00000100>;
			interrupts = <0xe8 0x0 0x0 0x0 0xe9 0x0 0x0 0x0 0xea 0x0 0x0 0x0 0xeb 0x0 0x0 0x0 0xec 0x0 0x0 0x0 0xed 0x0 0x0 0x0 0xee 0x0 0x0 0x0 0xef 0x0 0x0 0x0>;
                };
                msi@41a00 {
                        compatible = "fsl,mpic-msi";
                        reg = <0x00041a00 0x00000200 0x00046140 0x00000004>;
                        msi-available-ranges = <0x00000000 0x00000100>;
			interrupts = <0xf0 0x0 0x0 0x0 0xf1 0x0 0x0 0x0 0xf2 0x0 0x0 0x0 0xf3 0x0 0x0 0x0 0xf4 0x0 0x0 0x0 0xf5 0x0 0x0 0x0 0xf6 0x0 0x0 0x0 0xf7 0x0 0x0 0x0>;
                };
                timer@42100 {
                        compatible = "fsl,mpic-global-timer";
                        reg = <0x00042100 0x00000100 0x00042300 0x00000004>;
                        interrupts = <0x00000004 0x00000000 0x00000003 0x00000000 0x00000005 0x00000000 0x00000003 0x00000000 0x00000006 0x00000000 0x00000003 0x00000000 0x00000007 0x00000000 0x00000003 0x00000000>;
                };
                global-utilities@e0000 {
                        compatible = "fsl,qoriq-device-config-1.0";
                        reg = <0x000e0000 0x00000e00>;
                        fsl,has-rstcr;
                        #sleep-cells = <0x00000001>;
                        fsl,liodn-bits = <0x0000000c>;
                        linux,phandle = <0x0000000f>;
                        phandle = <0x0000000f>;
                };
                global-utilities@e0e00 {
                        compatible = "fsl,qoriq-pin-control-1.0";
                        reg = <0x000e0e00 0x00000200>;
                        #sleep-cells = <0x00000002>;
                };
http://www.amigalinux.org
http://www.supertuxkart-amiga.de

Running Linux on AmigaONEs can require some tinkering.
User avatar
xeno74
Posts: 9348
Joined: Fri Mar 23, 2012 7:58 am

Re: Kernel 4.15

Post by xeno74 »

cyrus_p5020_amiga.dts part2:

Code: Select all

                global-utilities@e1000 {
                        compatible = "fsl,p5020-clockgen", "fsl,qoriq-clockgen-1.0";
                        ranges = <0x00000000 0x000e1000 0x00001000>;
                        reg = <0x000e1000 0x00001000>;
                        clock-frequency = <0x07ed6b40>;
                        #address-cells = <0x00000001>;
                        #size-cells = <0x00000001>;
                        #clock-cells = <0x00000002>;
                        linux,phandle = <0x00000016>;
                        phandle = <0x00000016>;
                        sysclk {
                                #clock-cells = <0x00000000>;
                                compatible = "fsl,qoriq-sysclk-1.0", "fixed-clock";
                                clock-output-names = "sysclk";
                                linux,phandle = <0x0000000b>;
                                phandle = <0x0000000b>;
                        };
                        pll0@800 {
                                #clock-cells = <0x00000001>;
                                reg = <0x00000800 0x00000004>;
                                compatible = "fsl,qoriq-core-pll-1.0";
                                clocks = <0x0000000b>;
                                clock-output-names = "pll0", "pll0-div2";
                                linux,phandle = <0x0000000c>;
                                phandle = <0x0000000c>;
                        };
                        pll1@820 {
                                #clock-cells = <0x00000001>;
                                reg = <0x00000820 0x00000004>;
                                compatible = "fsl,qoriq-core-pll-1.0";
                                clocks = <0x0000000b>;
                                clock-output-names = "pll1", "pll1-div2";
                                linux,phandle = <0x0000000d>;
                                phandle = <0x0000000d>;
                        };
                        mux0@0 {
                                #clock-cells = <0x00000000>;
                                reg = <0x00000000 0x00000004>;
                                compatible = "fsl,qoriq-core-mux-1.0";
                                clocks = <0x0000000c 0x00000000 0x0000000c 0x00000001 0x0000000d 0x00000000 0x0000000d 0x00000001>;
                                clock-names = "pll0", "pll0-div2", "pll1", "pll1-div2";
                                clock-output-names = "cmux0";
                                linux,phandle = <0x00000002>;
                                phandle = <0x00000002>;
                        };
                        mux1@20 {
                                #clock-cells = <0x00000000>;
                                reg = <0x00000020 0x00000004>;
                                compatible = "fsl,qoriq-core-mux-1.0";
                                clocks = <0x0000000c 0x00000000 0x0000000c 0x00000001 0x0000000d 0x00000000 0x0000000d 0x00000001>;
                                clock-names = "pll0", "pll0-div2", "pll1", "pll1-div2";
                                clock-output-names = "cmux1";
                                linux,phandle = <0x00000005>;
                                phandle = <0x00000005>;
                        };
                        platform-pll@c00 {
                                #clock-cells = <0x00000001>;
                                reg = <0x00000c00 0x00000004>;
                                compatible = "fsl,qoriq-platform-pll-1.0";
                                clocks = <0x0000000b>;
                                clock-output-names = "platform-pll", "platform-pll-div2";
                        };
                };
                global-utilities@e2000 {
                        compatible = "fsl,qoriq-rcpm-1.0";
                        reg = <0x000e2000 0x00001000>;
                        #sleep-cells = <0x00000001>;
                };
                sfp@e8000 {
                        compatible = "fsl,p5020-sfp", "fsl,qoriq-sfp-1.0";
                        reg = <0x000e8000 0x00001000>;
                };
                serdes@ea000 {
                        compatible = "fsl,p5020-serdes";
                        reg = <0x000ea000 0x00001000>;
                };
                dma@100300 {
                        fsl,liodn = <0x000000c5>;
                        #address-cells = <0x00000001>;
                        #size-cells = <0x00000001>;
                        compatible = "fsl,eloplus-dma";
                        reg = <0x00100300 0x00000004>;
                        ranges = <0x00000000 0x00100100 0x00000200>;
                        cell-index = <0x00000000>;
                        fsl,iommu-parent = <0x0000000e>;
                        fsl,liodn-reg = <0x0000000f 0x00000580>;
                        dma-channel@0 {
                                compatible = "fsl,eloplus-dma-channel";
                                reg = <0x00000000 0x00000080>;
                                cell-index = <0x00000000>;
                                interrupts = <0x0000001c 0x00000002 0x00000000 0x00000000>;
                        };
                        dma-channel@80 {
                                compatible = "fsl,eloplus-dma-channel";
                                reg = <0x00000080 0x00000080>;
                                cell-index = <0x00000001>;
                                interrupts = <0x0000001d 0x00000002 0x00000000 0x00000000>;
                        };
                        dma-channel@100 {
                                compatible = "fsl,eloplus-dma-channel";
                                reg = <0x00000100 0x00000080>;
                                cell-index = <0x00000002>;
                                interrupts = <0x0000001e 0x00000002 0x00000000 0x00000000>;
                        };
                        dma-channel@180 {
                                compatible = "fsl,eloplus-dma-channel";
                                reg = <0x00000180 0x00000080>;
                                cell-index = <0x00000003>;
                                interrupts = <0x0000001f 0x00000002 0x00000000 0x00000000>;
                        };
                };
                dma@101300 {
                        fsl,liodn = <0x000000c6>;
                        #address-cells = <0x00000001>;
                        #size-cells = <0x00000001>;
                        compatible = "fsl,eloplus-dma";
                        reg = <0x00101300 0x00000004>;
                        ranges = <0x00000000 0x00101100 0x00000200>;
                        cell-index = <0x00000001>;
                        fsl,iommu-parent = <0x0000000e>;
                        fsl,liodn-reg = <0x0000000f 0x00000584>;
                        dma-channel@0 {
                                compatible = "fsl,eloplus-dma-channel";
                                reg = <0x00000000 0x00000080>;
                                cell-index = <0x00000000>;
                                interrupts = <0x00000020 0x00000002 0x00000000 0x00000000>;
                        };
                        dma-channel@80 {
                                compatible = "fsl,eloplus-dma-channel";
                                reg = <0x00000080 0x00000080>;
                                cell-index = <0x00000001>;
                                interrupts = <0x00000021 0x00000002 0x00000000 0x00000000>;
                        };
                        dma-channel@100 {
                                compatible = "fsl,eloplus-dma-channel";
                                reg = <0x00000100 0x00000080>;
                                cell-index = <0x00000002>;
                                interrupts = <0x00000022 0x00000002 0x00000000 0x00000000>;
                        };
                        dma-channel@180 {
                                compatible = "fsl,eloplus-dma-channel";
                                reg = <0x00000180 0x00000080>;
                                cell-index = <0x00000003>;
                                interrupts = <0x00000023 0x00000002 0x00000000 0x00000000>;
                        };
                };
                sdhc@114000 {
                        fsl,liodn = <0x00000040>;
                        status = "okay";
                        compatible = "fsl,p5020-esdhc", "fsl,esdhc";
                        reg = <0x00114000 0x00001000>;
                        interrupts = <0x00000030 0x00000002 0x00000000 0x00000000>;
                        clock-frequency = <0x17c841c0>;
                        fsl,iommu-parent = <0x00000010>;
                        fsl,liodn-reg = <0x0000000f 0x00000530>;
                        sdhci,auto-cmd12;
                };
                i2c@118000 {
                        #address-cells = <0x00000001>;
                        #size-cells = <0x00000000>;
                        cell-index = <0x00000000>;
                        compatible = "fsl-i2c";
                        reg = <0x00118000 0x00000100>;
                        interrupts = <0x00000026 0x00000002 0x00000000 0x00000000>;
                        dfsrr;
                };
                i2c@119000 {
                        #address-cells = <0x00000001>;
                        #size-cells = <0x00000000>;
                        cell-index = <0x00000002>;
                        compatible = "fsl-i2c";
                        reg = <0x00119000 0x00000100>;
                        interrupts = <0x00000027 0x00000002 0x00000000 0x00000000>;
                        dfsrr;
                };
                serial@11c500 {
                        cell-index = <0x00000000>;
                        device_type = "serial";
                        compatible = "fsl,ns16550", "ns16550";
                        reg = <0x0011c500 0x00000100>;
                        clock-frequency = <0x17c841c0>;
                        interrupts = <0x00000024 0x00000002 0x00000000 0x00000000>;
                };
                serial@11c600 {
                        cell-index = <0x00000001>;
                        device_type = "serial";
                        compatible = "fsl,ns16550", "ns16550";
                        reg = <0x0011c600 0x00000100>;
                        clock-frequency = <0x17c841c0>;
                        interrupts = <0x00000024 0x00000002 0x00000000 0x00000000>;
                };
                serial@11d500 {
                        cell-index = <0x00000002>;
                        device_type = "serial";
                        compatible = "fsl,ns16550", "ns16550";
                        reg = <0x0011d500 0x00000100>;
                        clock-frequency = <0x17c841c0>;
                        interrupts = <0x00000025 0x00000002 0x00000000 0x00000000>;
                };
                serial@11d600 {
                        cell-index = <0x00000003>;
                        device_type = "serial";
                        compatible = "fsl,ns16550", "ns16550";
                        reg = <0x0011d600 0x00000100>;
                        clock-frequency = <0x17c841c0>;
                        interrupts = <0x00000025 0x00000002 0x00000000 0x00000000>;
                };
                gpio0: gpio@130000 {
                        compatible = "fsl,qoriq-gpio";
                        reg = <0x00130000 0x00001000>;
                        interrupts = <0x00000037 0x00000002 0x00000000 0x00000000>;
                        #gpio-cells = <0x00000002>;
                        gpio-controller;
                };
                usb@210000 {
                        dr_mode = "host";
                        fsl,liodn = <0x0000007d>;
                        compatible = "fsl-usb2-mph-v1.6", "fsl,mpc85xx-usb2-mph", "fsl-usb2-mph";
                        reg = <0x00210000 0x00001000>;
                        #address-cells = <0x00000001>;
                        #size-cells = <0x00000000>;
                        interrupts = <0x0000002c 0x00000002 0x00000000 0x00000000>;
                        fsl,iommu-parent = <0x00000010>;
                        fsl,liodn-reg = <0x0000000f 0x00000520>;
                        phy_type = "utmi";
                        port0;
                };
                usb@211000 {
                        fsl,liodn = <0x0000007e>;
                        compatible = "fsl-usb2-dr-v1.6", "fsl,mpc85xx-usb2-dr", "fsl-usb2-dr";
                        reg = <0x00211000 0x00001000>;
                        #address-cells = <0x00000001>;
                        #size-cells = <0x00000000>;
                        interrupts = <0x0000002d 0x00000002 0x00000000 0x00000000>;
                        fsl,iommu-parent = <0x00000010>;
                        fsl,liodn-reg = <0x0000000f 0x00000524>;
                        dr_mode = "host";
                        phy_type = "utmi";
                };
                sata@220000 {
                        fsl,liodn = <0x0000007f>;
                        compatible = "fsl,pq-sata-v2";
                        reg = <0x00220000 0x00001000>;
                        interrupts = <0x00000044 0x00000002 0x00000000 0x00000000>;
                        fsl,iommu-parent = <0x00000010>;
                        fsl,liodn-reg = <0x0000000f 0x00000550>;
                };
                sata@221000 {
                        fsl,liodn = <0x00000080>;
                        compatible = "fsl,pq-sata-v2";
                        reg = <0x00221000 0x00001000>;
                        interrupts = <0x00000045 0x00000002 0x00000000 0x00000000>;
                        fsl,iommu-parent = <0x00000010>;
                        fsl,liodn-reg = <0x0000000f 0x00000554>;
                };
                sec_mon@314000 {
                        compatible = "fsl,sec-v4.2-mon", "fsl,sec-v4.0-mon";
                        reg = <0x00314000 0x00001000>;
                        interrupts = <0x0000005d 0x00000002 0x00000000 0x00000000>;
                };
                qman@318000 {
                        fsl,liodn = <0x0000001f>;
                        clock-frequency = <0x17c841c0>;
                        compatible = "fsl,qman";
                        reg = <0x00318000 0x00001000>;
                        interrupts = <0x00000010 0x00000002 0x00000001 0x00000003>;
                        fsl,qman-portals = <0x00000011>;
                        memory-region = <0x00000012 0x00000013>;
                };
                bman@31a000 {
                        fsl,liodn = <0x00000020>;
                        compatible = "fsl,bman";
                        reg = <0x0031a000 0x00001000>;
                        interrupts = <0x00000010 0x00000002 0x00000001 0x00000002>;
                        fsl,bman-portals = <0x00000014>;
                        memory-region = <0x00000015>;
                };
                raideng@320000 {
                        compatible = "fsl,raideng-v1.0";
                        #address-cells = <0x00000001>;
                        #size-cells = <0x00000001>;
                        reg = <0x00320000 0x00010000>;
                        ranges = <0x00000000 0x00320000 0x00010000>;
                        fsl,iommu-parent = <0x00000010>;
                        raideng_jq0@1000 {
                                compatible = "fsl,raideng-v1.0-job-queue";
                                #address-cells = <0x00000001>;
                                #size-cells = <0x00000001>;
                                reg = <0x00001000 0x00001000>;
                                ranges = <0x00000000 0x00001000 0x00001000>;
                                jr@0 {
                                        fsl,liodn = <0x0000003c>;
                                        compatible = "fsl,raideng-v1.0-job-ring", "fsl,raideng-v1.0-hp-ring";
                                        reg = <0x00000000 0x00000400>;
                                        interrupts = <0x0000008b 0x00000002 0x00000000 0x00000000>;
                                        interrupt-parent = <0x00000001>;
                                };
                                jr@400 {
                                        fsl,liodn = <0x0000003d>;
                                        compatible = "fsl,raideng-v1.0-job-ring", "fsl,raideng-v1.0-lp-ring";
                                        reg = <0x00000400 0x00000400>;
                                        interrupts = <0x0000008c 0x00000002 0x00000000 0x00000000>;
                                        interrupt-parent = <0x00000001>;
                                };
                        };
                        raideng_jq1@2000 {
                                compatible = "fsl,raideng-v1.0-job-queue";
                                #address-cells = <0x00000001>;
                                #size-cells = <0x00000001>;
                                reg = <0x00002000 0x00001000>;
                                ranges = <0x00000000 0x00002000 0x00001000>;
                                jr@0 {
                                        fsl,liodn = <0x0000003e>;
                                        compatible = "fsl,raideng-v1.0-job-ring", "fsl,raideng-v1.0-hp-ring";
                                        reg = <0x00000000 0x00000400>;
                                        interrupts = <0x0000008d 0x00000002 0x00000000 0x00000000>;
                                        interrupt-parent = <0x00000001>;
                                };
                                jr@400 {
                                        fsl,liodn = <0x0000003f>;
                                        compatible = "fsl,raideng-v1.0-job-ring", "fsl,raideng-v1.0-lp-ring";
                                        reg = <0x00000400 0x00000400>;
                                        interrupts = <0x0000008e 0x00000002 0x00000000 0x00000000>;
                                        interrupt-parent = <0x00000001>;
                                };
                        };
                };
                fman@400000 {
                        linux,phandle = <0x0000002a>;
                        phandle = <0x0000002a>;
                        clock-frequency = <0x1dba5230>;
                        #address-cells = <0x00000001>;
                        #size-cells = <0x00000001>;
                        cell-index = <0x00000000>;
                        compatible = "fsl,fman";
                        ranges = <0x00000000 0x00400000 0x00100000>;
                        reg = <0x00400000 0x00100000>;
                        interrupts = <0x00000060 0x00000002 0x00000000 0x00000000 0x00000010 0x00000002 0x00000001 0x00000001>;
                        clocks = <0x00000016 0x00000003 0x00000000>;
                        clock-names = "fmanclk";
                        fsl,qman-channel-range = <0x00000040 0x0000000c>;
                        muram@0 {
                                compatible = "fsl,fman-muram";
                                reg = <0x00000000 0x00028000>;
                        };
                        port@81000 {
                                cell-index = <0x00000001>;
                                compatible = "fsl,fman-v2-port-oh";
                                reg = <0x00081000 0x00001000>;
                        };
                        port@82000 {
                                cell-index = <0x00000002>;
                                compatible = "fsl,fman-v2-port-oh";
                                reg = <0x00082000 0x00001000>;
                        };
                        port@83000 {
                                cell-index = <0x00000003>;
                                compatible = "fsl,fman-v2-port-oh";
                                reg = <0x00083000 0x00001000>;
                        };
                        port@84000 {
                                cell-index = <0x00000004>;
                                compatible = "fsl,fman-v2-port-oh";
                                reg = <0x00084000 0x00001000>;
                        };
                        port@85000 {
                                cell-index = <0x00000005>;
                                compatible = "fsl,fman-v2-port-oh";
                                reg = <0x00085000 0x00001000>;
                                status = "disabled";
                        };
                        port@86000 {
                                cell-index = <0x00000006>;
                                compatible = "fsl,fman-v2-port-oh";
                                reg = <0x00086000 0x00001000>;
                                status = "disabled";
                        };
                        port@87000 {
                                cell-index = <0x00000007>;
                                compatible = "fsl,fman-v2-port-oh";
                                reg = <0x00087000 0x00001000>;
                                status = "disabled";
                        };
                        ptp-timer@fe000 {
                                compatible = "fsl,fman-ptp-timer";
                                reg = <0x000fe000 0x00001000>;
                                linux,phandle = <0x0000001a>;
                                phandle = <0x0000001a>;
                        };
                        port@88000 {
                                cell-index = <0x00000008>;
                                compatible = "fsl,fman-v2-port-rx";
                                reg = <0x00088000 0x00001000>;
                                linux,phandle = <0x00000017>;
                                phandle = <0x00000017>;
                        };
                        port@a8000 {
                                cell-index = <0x00000028>;
                                compatible = "fsl,fman-v2-port-tx";
                                reg = <0x000a8000 0x00001000>;
                                linux,phandle = <0x00000018>;
                                phandle = <0x00000018>;
                        };
                        ethernet@e0000 {
                                cell-index = <0x00000000>;
                                compatible = "fsl,fman-dtsec";
                                reg = <0x000e0000 0x00001000>;
                                fsl,fman-ports = <0x00000017 0x00000018>;
                                tbi-handle = <0x00000019>;
                                ptp-timer = <0x0000001a>;
                                phy-connection-type = "rgmii";
                        };
                        mdio@e1120 {
                                #address-cells = <0x00000001>;
                                #size-cells = <0x00000000>;
                                compatible = "fsl,fman-mdio";
                                reg = <0x000e1120 0x00000ee0>;
                                interrupts = <0x00000064 0x00000002 0x00000000 0x00000000>;
				phy3: ethernet-phy@3 {
					reg = <0x3>;
				};

				phy7: ethernet-phy@7 {
					reg = <0x7>;
				};
                                tbi-phy@8 {
                                        reg = <0x00000008>;
                                        device_type = "tbi-phy";
                                        linux,phandle = <0x00000019>;
                                        phandle = <0x00000019>;
                                };
                        };
                        port@89000 {
                                cell-index = <0x00000009>;
                                compatible = "fsl,fman-v2-port-rx";
                                reg = <0x00089000 0x00001000>;
                                linux,phandle = <0x0000001b>;
                                phandle = <0x0000001b>;
                        };
                        port@a9000 {
                                cell-index = <0x00000029>;
                                compatible = "fsl,fman-v2-port-tx";
                                reg = <0x000a9000 0x00001000>;
                                linux,phandle = <0x0000001c>;
                                phandle = <0x0000001c>;
                        };
                        ethernet@e2000 {
                                cell-index = <0x00000001>;
                                compatible = "fsl,fman-dtsec";
                                reg = <0x000e2000 0x00001000>;
                                fsl,fman-ports = <0x0000001b 0x0000001c>;
                                tbi-handle = <0x0000001d>;
                                ptp-timer = <0x0000001a>;
                        };
                        mdio@e3120 {
                                #address-cells = <0x00000001>;
                                #size-cells = <0x00000000>;
                                compatible = "fsl,fman-mdio";
                                reg = <0x000e3120 0x00000ee0>;
                                tbi-phy@8 {
                                        reg = <0x00000008>;
                                        device_type = "tbi-phy";
                                        linux,phandle = <0x0000001d>;
                                        phandle = <0x0000001d>;
                                };
                        };
                        port@8a000 {
                                cell-index = <0x0000000a>;
                                compatible = "fsl,fman-v2-port-rx";
                                reg = <0x0008a000 0x00001000>;
                                linux,phandle = <0x0000001e>;
                                phandle = <0x0000001e>;
                        };
                        port@aa000 {
                                cell-index = <0x0000002a>;
                                compatible = "fsl,fman-v2-port-tx";
                                reg = <0x000aa000 0x00001000>;
                                linux,phandle = <0x0000001f>;
                                phandle = <0x0000001f>;
                        };
                        ethernet@e4000 {
                                cell-index = <0x00000002>;
                                compatible = "fsl,fman-dtsec";
                                reg = <0x000e4000 0x00001000>;
                                fsl,fman-ports = <0x0000001e 0x0000001f>;
                                tbi-handle = <0x00000020>;
                                ptp-timer = <0x0000001a>;
                        };
                        mdio@e5120 {
                                #address-cells = <0x00000001>;
                                #size-cells = <0x00000000>;
                                compatible = "fsl,fman-mdio";
                                reg = <0x000e5120 0x00000ee0>;
                                tbi-phy@8 {
                                        reg = <0x00000008>;
                                        device_type = "tbi-phy";
                                        linux,phandle = <0x00000020>;
                                        phandle = <0x00000020>;
                                };
                        };
                        port@8b000 {
                                cell-index = <0x0000000b>;
                                compatible = "fsl,fman-v2-port-rx";
                                reg = <0x0008b000 0x00001000>;
                                linux,phandle = <0x00000021>;
                                phandle = <0x00000021>;
                        };
                        port@ab000 {
                                cell-index = <0x0000002b>;
                                compatible = "fsl,fman-v2-port-tx";
                                reg = <0x000ab000 0x00001000>;
                                linux,phandle = <0x00000022>;
                                phandle = <0x00000022>;
                        };
                        ethernet@e6000 {
                                local-mac-address = [00 04 a3 6b 42 89];
                                cell-index = <0x00000003>;
                                compatible = "fsl,fman-dtsec";
                                reg = <0x000e6000 0x00001000>;
                                fsl,fman-ports = <0x00000021 0x00000022>;
                                tbi-handle = <0x00000023>;
                                phy-handle = <&phy3>;
                                ptp-timer = <0x0000001a>;
                                phy-connection-type = "rgmii";
                        };
                        mdio@e7120 {
                                #address-cells = <0x00000001>;
                                #size-cells = <0x00000000>;
                                compatible = "fsl,fman-mdio";
                                reg = <0x000e7120 0x00000ee0>;
                                tbi-phy@8 {
                                        reg = <0x00000008>;
                                        device_type = "tbi-phy";
                                        linux,phandle = <0x00000023>;
                                        phandle = <0x00000023>;
                                };
                        };
                        port@8c000 {
                                cell-index = <0x0000000c>;
                                compatible = "fsl,fman-v2-port-rx";
                                reg = <0x0008c000 0x00001000>;
                                linux,phandle = <0x00000024>;
                                phandle = <0x00000024>;
                        };
                        port@ac000 {
                                cell-index = <0x0000002c>;
                                compatible = "fsl,fman-v2-port-tx";
                                reg = <0x000ac000 0x00001000>;
                                linux,phandle = <0x00000025>;
                                phandle = <0x00000025>;
                        };
                        ethernet@e8000 {
                                local-mac-address = [00 1e c0 f7 ce 63];
                                cell-index = <0x00000004>;
                                compatible = "fsl,fman-dtsec";
                                reg = <0x000e8000 0x00001000>;
                                fsl,fman-ports = <0x00000024 0x00000025>;
                                phy-handle = <&phy7>;
                                tbi-handle = <0x00000026>;
                                ptp-timer = <0x0000001a>;
                                phy-connection-type = "rgmii";
                        };
                        mdio@e9120 {
                                #address-cells = <0x00000001>;
                                #size-cells = <0x00000000>;
                                compatible = "fsl,fman-mdio";
                                reg = <0x000e9120 0x00000ee0>;
                                tbi-phy@8 {
                                        reg = <0x00000008>;
                                        device_type = "tbi-phy";
                                        linux,phandle = <0x00000026>;
                                        phandle = <0x00000026>;
                                };
                        };
                        port@90000 {
                                cell-index = <0x00000010>;
                                compatible = "fsl,fman-v2-port-rx";
                                reg = <0x00090000 0x00001000>;
                                linux,phandle = <0x00000027>;
                                phandle = <0x00000027>;
                        };
                        port@b0000 {
                                cell-index = <0x00000030>;
                                compatible = "fsl,fman-v2-port-tx";
                                reg = <0x000b0000 0x00001000>;
                                linux,phandle = <0x00000028>;
                                phandle = <0x00000028>;
                        };
                        ethernet@f0000 {
                                cell-index = <0x00000008>;
                                compatible = "fsl,fman-xgec";
                                reg = <0x000f0000 0x00001000>;
                                fsl,fman-ports = <0x00000027 0x00000028>;
                        };
                        mdio@f1000 {
                                #address-cells = <0x00000001>;
                                #size-cells = <0x00000000>;
                                compatible = "fsl,fman-xmdio";
                                reg = <0x000f1000 0x00001000>;
                                interrupts = <0x00000065 0x00000002 0x00000000 0x00000000>;
                        };
                };
        };
        rapidio@ffe0c0000 {
                reg = <0x0000000f 0xfe0c0000 0x00000000 0x00011000>;
                compatible = "fsl,srio";
                interrupts = <0x00000010 0x00000002 0x00000001 0x0000000b>;
                #address-cells = <0x00000002>;
                #size-cells = <0x00000002>;
                fsl,iommu-parent = <0x0000000e>;
                ranges;
                port1 {
                        ranges = <0x00000000 0x00000000 0x0000000c 0x20000000 0x00000000 0x10000000>;
                        #address-cells = <0x00000002>;
                        #size-cells = <0x00000002>;
                        cell-index = <0x00000001>;
                        fsl,liodn-reg = <0x0000000f 0x00000510>;
                };
                port2 {
                        ranges = <0x00000000 0x00000000 0x0000000c 0x30000000 0x00000000 0x10000000>;
                        #address-cells = <0x00000002>;
                        #size-cells = <0x00000002>;
                        cell-index = <0x00000002>;
                        fsl,liodn-reg = <0x0000000f 0x00000514>;
                };
        };
        localbus@ffe124000 {
                bus-frequency = <0x02f90838>;
                reg = <0x0000000f 0xfe124000 0x00000000 0x00001000>;
                ranges = <0x00000000 0x00000000 0x0000000f 0xe8000000 0x08000000 0x00000002 0x00000000 0x0000000f 0xffa00000 0x00040000 0x00000003 0x00000000 0x0000000f 0xffdf0000 0x00008000>;
                compatible = "fsl,p5020-elbc", "fsl,elbc", "simple-bus";
                interrupts = <0x00000019 0x00000002 0x00000000 0x00000000>;
                #address-cells = <0x00000002>;
                #size-cells = <0x00000001>;
        };
        pcie@ffe200000 {
                fsl,liodn = <0x000000c1>;
                reg = <0x0000000f 0xfe200000 0x00000000 0x00001000>;
                ranges = <0x02000000 0x00000000 0xe0000000 0x0000000c 0x00000000 0x00000000 0x20000000 0x01000000 0x00000000 0x00000000 0x0000000f 0xf8000000 0x00000000 0x00010000>;
                compatible = "fsl,p5020-pcie", "fsl,qoriq-pcie-v2.2";
                device_type = "pci";
                #size-cells = <0x00000002>;
                #address-cells = <0x00000003>;
                bus-range = <0x00000000 0x00000001>;
                clock-frequency = <0x01fca055>;
                interrupts = <0x00000010 0x00000002 0x00000001 0x0000000f>;
                fsl,iommu-parent = <0x0000000e>;
                fsl,liodn-reg = <0x0000000f 0x00000500>;
                pcie@0 {
                        ranges = <0x02000000 0x00000000 0xe0000000 0x02000000 0x00000000 0xe0000000 0x00000000 0x20000000 0x01000000 0x00000000 0x00000000 0x01000000 0x00000000 0x00000000 0x00000000 0x00010000>;
                        reg = <0x00000000 0x00000000 0x00000000 0x00000000 0x00000000>;
                        #interrupt-cells = <0x00000001>;
                        #size-cells = <0x00000002>;
                        #address-cells = <0x00000003>;
                        device_type = "pci";
                        interrupts = <0x00000010 0x00000002 0x00000001 0x0000000f>;
                        interrupt-map-mask = <0x0000f800 0x00000000 0x00000000 0x00000007>;
			interrupt-map = <0x0 0x0 0x0 0x1 0x1 0x28 0x1 0x0 0x0 0x0 0x0 0x0 0x2 0x1 0x1 0x1 0x0 0x0 0x0 0x0 0x0 0x3 0x1 0x2 0x1 0x0 0x0 0x0 0x0 0x0 0x4 0x1 0x3 0x1 0x0 0x0>;
                };
        };
        pcie@ffe201000 {
                fsl,liodn = <0x000000c2>;
                reg = <0x0000000f 0xfe201000 0x00000000 0x00001000>;
                ranges = <0x02000000 0x00000000 0xe0000000 0x0000000c 0x20000000 0x00000000 0x20000000 0x01000000 0x00000000 0x00000000 0x0000000f 0xf8010000 0x00000000 0x00010000>;
                compatible = "fsl,p5020-pcie", "fsl,qoriq-pcie-v2.2";
                device_type = "pci";
                #size-cells = <0x00000002>;
                #address-cells = <0x00000003>;
                bus-range = <0x00000000 0x00000008>;
                clock-frequency = <0x01fca055>;
                interrupts = <0x00000010 0x00000002 0x00000001 0x0000000e>;
                fsl,iommu-parent = <0x0000000e>;
                fsl,liodn-reg = <0x0000000f 0x00000504>;
                pcie@0 {
                        ranges = <0x02000000 0x00000000 0xe0000000 0x02000000 0x00000000 0xe0000000 0x00000000 0x20000000 0x01000000 0x00000000 0x00000000 0x01000000 0x00000000 0x00000000 0x00000000 0x00010000>;
                        reg = <0x00000000 0x00000000 0x00000000 0x00000000 0x00000000>;
                        #interrupt-cells = <0x00000001>;
                        #size-cells = <0x00000002>;
                        #address-cells = <0x00000003>;
                        device_type = "pci";
                        interrupts = <0x00000010 0x00000002 0x00000001 0x0000000e>;
                        interrupt-map-mask = <0x0000f800 0x00000000 0x00000000 0x00000007>;
			interrupt-map = <0x0 0x0 0x0 0x1 0x1 0x29 0x1 0x0 0x0 0x0 0x0 0x0 0x2 0x1 0x5 0x1 0x0 0x0 0x0 0x0 0x0 0x3 0x1 0x6 0x1 0x0 0x0 0x0 0x0 0x0 0x4 0x1 0x7 0x1 0x0 0x0>;
                };
        };

	gpio-poweroff {
		compatible = "gpio-poweroff";
		gpios = <&gpio0 3 1>;
	};

	gpio-restart {
		compatible = "gpio-restart";
		gpios = <&gpio0 2 1>;
	};

	chosen {
		stdin = "serial0";
		stdout = "serial0";
	};
};
http://www.amigalinux.org
http://www.supertuxkart-amiga.de

Running Linux on AmigaONEs can require some tinkering.
User avatar
xeno74
Posts: 9348
Joined: Fri Mar 23, 2012 7:58 am

Re: Kernel 4.15

Post by xeno74 »

Hi All,

Here are the outputs of /sys/devices/system/cpu/vulnerabilities/ of my AmigaOnes with the RC9 of kernel 4.15:

X5000 (CPU Freescale/NXP QorIQ P5020 with two e5000 cores):

Code: Select all

ls: cannot access '/sys/devices/system/cpu/vulnerabilities/': No such file or directory
X1000 (CPU P.A. Semi PWRficient PA6T-1682M with two PA6T cores):

Code: Select all

-r--r--r-- 1 root root 4096 Jan 25 09:38 meltdown
-r--r--r-- 1 root root 4096 Jan 25 09:38 spectre_v1
-r--r--r-- 1 root root 4096 Jan 25 09:38 spectre_v2

Code: Select all

meltdown Vulnerable
spectre_v1 Not affected
spectre_v2 Not affected
Cheers,
Christian
http://www.amigalinux.org
http://www.supertuxkart-amiga.de

Running Linux on AmigaONEs can require some tinkering.
User avatar
xeno74
Posts: 9348
Joined: Fri Mar 23, 2012 7:58 am

Re: Kernel 4.15

Post by xeno74 »

Hi All,

Linus Torvalds released the final kernel 4.15 today.

Summary of the development of the kernel 4.15 (X1000 and X5000 specific topics):

The first alpha version didn't boot on the X5000. I reported the X5000 boot issue on the Linuxppc mailing list. I figured out which commit is responsible for the X5000 boot issue. I created the spinlock patch. With this patch the X5000 booted without any problems. I disabled PREEMPT and after that the X5000 boots without the spinlock patch (Thanks to Michael Ellerman).

The X1000 didn't have hardware 3D acceleration with the alpha2. I reverted the first DRM updates and after that the hardware 3D acceleration works again on the X1000. I reported the issue with the hardware 3D acceleration on the DRI devel mailing list. I enabled SWIOTLB and the hardware 3D acceleration works again on my AmigaOne X1000 (Thanks to Ilia). Christian released a new drm ttm patch so I was able to disable SWIOTLB. Later, the DRM TTM (Direct Rendering Manager Translation Table Maps) have been fixed in the official kernel source code so we don't need the drm ttm patch anymore.

Julian wasn't able to boot the alpha3 on his X5000 because of wrong Radeon firmwares. I added the correct firmwares and some new firmwares to the X5000 and X1000 Linux kernel (Thanks to Julian). After that, Julian was able to boot the kernel on his X5000.

Bjorn Helgaas released the probe.c patch for the X1000 for scanning all possible devices below PCIe root ports, not just device 0. Therefore we were able to remove the probe.c code from the Nemo patch but we needed to add 'pci=pcie_scan_all' to the kernel boot arguments. Fortunately Olof Johansson helped us with a patch for the additional scan of the devices below the SB600. The first version of Olof's patch didn't compile. I modified Olof's patch and after that the kernel compiled. With this new patch we don’t need the additional boot argument 'pci=pcie_scan_all' anymore.

With the RC3 we added an uInitrd for the X5000 for booting with a UUID or with a LABEL.

We were able to remove the pata_of_platform.c code from the Nemo patch with enabling the kernel config options CONFIG_PATA_PCMCIA, CONFIG_PCMCIA, and CONFIG_ELECTRA_CF (Thanks to Darren).

We added the QorIQ DPAA Ethernet driver to the X5000 Linux kernel and Darren's new Cyrus eth dtb to the Linux kernel package. Unfortunately the QorIQ DPAA Ethernet driver has some problems. Jamie and Skateman have tested a lot the DPAA Ethernet and have found some issues. They figured out that we have to configure the MAC addresses in U-Boot because there aren't any MAC addresses configured. It seems the serial eeprom on the Cyrus board wasn't programmed with MAC addresses. This is where U-Boot gets its MAC addresses from if you haven't programmed the U-Boot variables. Darren told us that Linux looks in the device tree to see which ethernet ports to attach. On the earlier kernels (based on the SDK) we had no problems, as the aliases used to link dTSEC's to eth ports was in the board description file, however at some point Freescale moved the p5020 board aliases to the p5020si-pre.dtsi file, which messes up our system as we include that too meaning conflicts. It seems we need to get the device tree fixed, that's where the problem is. I figured out that the DPAA Ethernet driver has only been available since the mainline vanilla kernel 4.10. This driver isn't available for older kernels like 4.9, 4.8, etc.
Jamie and Skateman have posted the issue on the linuxppc-dev mailing list. Madalin Bucur created a mdio patch to avoid MDIO bus removal when a PHY is missing. This patch was added to the RC9. We had a little success with disabling the PAMU support in the X5000 kernel. Without the PAMU support, Skateman was able to configure a manual IP address and he was also able to ping his gateway, and even DNS queries work without any problems. Unfortunately if he generates to much packets, then all traffic dies because it isn't enough buffer space available. He was able to increase the buffer space with 'ip link set eth0 qlen 10000'. Jamie's X5000 was able to obtain an IP address via DHCP. He captured with Wireshark which showed a successful DHCP request/response for the X5000/20, followed by some failed ping attempts. Even when the interface does obtain an IP address via DHCP (about half the time), subsequent traffic still fails to receive responses. I hope we can solve the issue with the DPAA Ethernet driver.

I added the poweroff support to Darren's Cyrus eth dtb file.

We had to remove the gameport support as it that caused an oops with a Sound blaster Live sound card (Thanks to Julian).

Unfortunately, since the RC9 of kernel 4.15, we know that the P.A. Semi PWRficient PA6T-1682M CPU has the meltdown vulnerability.

BTW, Darren has submitted some Nemo patches for the kernel 4.16 to the kernel developers.

Links:
Many thanks to Darren! :-)

Thanks a lot to Tom and TearsOfMe for testing the test kernels on theirs X1000 and many thanks to Casey for testing the kernels on the X5000.

Further news:
Download: vmlinux-4.15-AmigaOne_X1000_X5000.tar.gz

Kernel 4.15 PowerPC final with ARM and x86 emulation:

Image

Cheers,
Christian
http://www.amigalinux.org
http://www.supertuxkart-amiga.de

Running Linux on AmigaONEs can require some tinkering.
User avatar
Skateman
Posts: 861
Joined: Thu Aug 10, 2017 8:36 pm
Location: The Netherlands

Re: Kernel 4.15

Post by Skateman »

@xeno74

Thanks for the update and the explanation of the work in progress!!

For those interested... i have recorded a video of my X5000 DPAA Ethernet connected and the issue`s ..
In this Video i am also transfering hundereds of megabytes from my NAS to the X5000..
You will also see pings die... mostly after the 12th packet and giving the no buffer space error..

the link: https://drive.google.com/file/d/18Rhksf ... D0Xim/view
AmigaOne X5000 -> 2GHz / 16GB RAM / Radeon RX 570 / Radeon X1950 / M-Audio 5.1 -> AmigaOS / Linux
Amiga 1200 -> Recapped / 68ec020 ACA 1221ec / CF HDD / RetroNET connected to the world
Vampire 4SA - RPi4 Running AmiKitXE Full
User avatar
xeno74
Posts: 9348
Joined: Fri Mar 23, 2012 7:58 am

Re: Kernel 4.15

Post by xeno74 »

Skateman wrote: For those interested... i have recorded a video of my X5000 DPAA Ethernet connected and the issue`s ..
In this Video i am also transfering hundereds of megabytes from my NAS to the X5000..
You will also see pings die... mostly after the 12th packet and giving the no buffer space error..

the link: https://drive.google.com/file/d/18Rhksf ... D0Xim/view
Thank you very much!

-- Christian
http://www.amigalinux.org
http://www.supertuxkart-amiga.de

Running Linux on AmigaONEs can require some tinkering.
User avatar
xeno74
Posts: 9348
Joined: Fri Mar 23, 2012 7:58 am

Re: Kernel 4.15

Post by xeno74 »

Hi All,

Here is the first update of the stable kernel 4.15 for the X5000 and X1000.

New:
Download: vmlinux-4.15.1-AmigaOne_X1000_X5000.tar.gz

Cheers,
Christian
http://www.amigalinux.org
http://www.supertuxkart-amiga.de

Running Linux on AmigaONEs can require some tinkering.
Post Reply