We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

Showing results for 
Search instead for 
Did you mean: 
Observer gosha-z
Registered: ‎09-07-2018

linux-xlnx 4.19.0, bugs/mistakes


  just noted that linux-xlnx kernel has been updated to 4.19 version. Doing a deep dive into content of zynqmp.dtsi, I've found a lot of strange things:

1. APU-PMU1 IPI Mailbox:

        /* PMU1<->APU IPI mailbox controller */
        ipi_mailbox_pmu1: mailbox@ff990400 {
                compatible = "xlnx,zynqmp-ipi-mailbox";
                reg = <0x0 0xff9905c0 0x0 0x20>,
                      <0x0 0xff9905e0 0x0 0x20>,
                      <0x0 0xff990e80 0x0 0x20>,
                      <0x0 0xff990ea0 0x0 0x20>;
                reg-names = "local_request_region", "local_response_region",
                            "remote_request_region", "remote_response_region";
                #mbox-cells = <1>;
                xlnx,ipi-ids = <0 4>;
                interrupt-parent = <&gic>;
                interrupts = <0 35 4>;

First: Table 13-3 on p.321 of TRM (UG1085) tell us that APU IPI Message Buffers are located at 0xFF99_0000 and PMU IPI Message Buffers are located at 0xFF99_0E00. Slightly different, isn't it?

Second: Device Tree Binding Document states that DT should have a different syntax and tree structure.

2. Duplicated interrupt lines:

                rtc: rtc@ffa60000 {
                        interrupts = <0 26 4>, <0 27 4>;
                perf_monitor_ddr: perf-monitor@fd0b0000 {
                        interrupts = <0 27 4>;
                perf_monitor_cci: perf-monitor@fd490000 {
                        interrupts = <0 27 4>;

Due to the mixed interrupt lines I've got the following in the kernel bootlog:

[    3.382354] genirq: Flags mismatch irq 25. 00000004 (ffa60000.rtc) vs. 00000084 (axi-pmon)
[    3.390308] rtc_zynqmp ffa60000.rtc: request irq failed
[    3.395509] rtc_zynqmp: probe of ffa60000.rtc failed with error -16

Can someone explain, what is the correct way to fix it? Or someone from Xilinx will do a quick fix?

Thanks in advance



0 Kudos