New kernels

AmigaOne X1000 platform specific issues related to Linux only.
Post Reply
User avatar
xeno74
Posts: 9320
Joined: Fri Mar 23, 2012 7:58 am

New kernels

Post by xeno74 »

Hi All,

I will post the test kernels in this thread in the future.

The merge window for 5.16 has been started and here is the first alpha for testing.

New:
Download: linux-image-5.16-alpha1-X1000_X5000.tar.gz

Image

Please test the alpha1.

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

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

Re: New kernels

Post by xeno74 »

Hi All,

I released the second alpha of kernel 5.16 for the X1000 and X5000 today.

New:
Download: linux-image-5.16-alpha2-X1000_X5000.tar.gz

Image

FYI: Xorg doesn't start anymore in a virtual e5500 QEMU KVM HV machine with the VirtIO GPU.

Error messages on MintPPC:

Code: Select all

Debian GNU/Linux bullseye/sid debian ttyS0

debian login: BUG: Kernel NULL pointer dereference on read at 0x00000018
Faulting instruction address: 0xc00000000075055c
Oops: Kernel access of bad area, sig: 11 [#1]
BE PAGE_SIZE=4K SMP NR_CPUS=4 QEMU e500
Modules linked in:
CPU: 0 PID: 2418 Comm: Xorg Not tainted 5.16.0-a2_A-EON_X5000-07264-gff0700f03609-dirty #1
NIP:  c00000000075055c LR: c000000000750550 CTR: c000000000750548
REGS: c00000000ae737f0 TRAP: 0300   Not tainted  (5.16.0-a2_A-EON_X5000-07264-gff0700f03609-dirty)
MSR:  0000000090029002 <CE,EE,ME>  CR: 24022288  XER: 00000000
DEAR: 0000000000000018 ESR: 0000000000000000 IRQMASK: 0 
GPR00: c0000000001bd678 c00000000ae73a90 c000000001993600 c00000000a077000 
GPR04: c00000000ae73c10 0000000000000001 c00000000a098270 c00000000cafc400 
GPR08: c0000000017f2f88 0000000000000000 c0000000018e2418 018c3e5000413614 
GPR12: 0000000084082282 c000000001a68000 00000000ffaee5a4 0000000000ee613c 
GPR16: 0000000000efa53c 0000000000ca5040 000000000000000c 0000000000000000 
GPR20: c000000002892598 c00000000a077030 0000000000000000 000000000a077000 
GPR24: 000000000af9d300 c00000000af9d300 0000000000000000 c00000000a077000 
GPR28: c00000000a448280 c000000002892580 c00000000a098260 c00000000a5aa400 
NIP [c00000000075055c] .virtio_gpu_poll+0x14/0x134
LR [c000000000750550] .virtio_gpu_poll+0x8/0x134
Call Trace:
[c00000000ae73a90] [c00000000ae73b10] 0xc00000000ae73b10 (unreliable)
[c00000000ae73b20] [c0000000001bd678] .ep_item_poll+0x5c/0x80
[c00000000ae73ba0] [c0000000001beb5c] .do_epoll_ctl+0x604/0x878
[c00000000ae73ca0] [c0000000001bee14] .__se_sys_epoll_ctl+0x44/0x8c
[c00000000ae73d50] [c00000000000b0d4] .system_call_exception+0x11c/0x148
[c00000000ae73e10] [c0000000000001f8] system_call_common+0xf0/0x210
--- interrupt: c00 at 0x33c634
NIP:  000000000033c634 LR: 0000000000e11ea8 CTR: 0000000000000000
REGS: c00000000ae73e80 TRAP: 0c00   Not tainted  (5.16.0-a2_A-EON_X5000-07264-gff0700f03609-dirty)
MSR:  000000001002d002 <CE,EE,PR,ME>  CR: 46000224  XER: 00000000
IRQMASK: 0 
GPR00: 00000000000000ed 00000000ffaee3d0 00000000f7aa8340 0000000000000003 
GPR04: 0000000000000001 000000000000000c 00000000ffaee3e8 00000000018c3e48 
GPR08: 0000000000000011 0000000000000000 0000000000000000 0000000000000000 
GPR12: 0000000000000000 0000000000edfff4 00000000ffaee5a4 0000000000ee613c 
GPR16: 0000000000efa53c 0000000000ca5040 0000000000000000 0000000000c97330 
GPR20: 0000000000c9b800 00000000fffffffc 0000000000000003 0000000001641fb0 
GPR24: 000000000174f270 0000000000e0c800 0000000000000001 000000000000000c 
GPR28: 0000000001642220 00000000018c3e50 0000000000ee7628 0000000000000003 
NIP [000000000033c634] 0x33c634
LR [0000000000e11ea8] 0xe11ea8
--- interrupt: c00
Instruction dump:
48000ad9 60000000 7fe3fb78 4befb0f5 60000000 38210080 485fbc44 7c0802a6 
485fbbcd f821ff71 ebe300c0 e93f0088 <e9290018> 2fa90000 40de001c 4bef71fd 
---[ end trace 24595e2ea6e47c05 ]---
Error messages on Void PPC:

Code: Select all

=> Initialization complete, running stage 2...
- runit: leave stage: /etc/runit/1
- runit: enter stage: /etc/runit/2
runsvchdir: default: current.
urandom_read: 1 callbacks suppressed
random: dbus-daemon: uninitialized urandom read (12 bytes read)
udevd[2362]: starting version 3.2.10
udevd[2362]: starting eudev-3.2.10
elogind-daemon[2441]: New seat seat0.
elogind-daemon[2441]: Watching system buttons on /dev/input/event1 (QEMU Virtio Keyboard)
BUG: Kernel NULL pointer dereference on read at 0x00000018
Faulting instruction address: 0xc00000000075055c
Oops: Kernel access of bad area, sig: 11 [#1]
BE PAGE_SIZE=4K SMP NR_CPUS=4 QEMU e500
Modules linked in:
CPU: 0 PID: 2443 Comm: Xorg Not tainted 5.16.0-a2_A-EON_X5000-07264-gff0700f03609-dirty #1
NIP:  c00000000075055c LR: c000000000750550 CTR: c000000000750548
REGS: c00000000a7ab7f0 TRAP: 0300   Not tainted  (5.16.0-a2_A-EON_X5000-07264-gff0700f03609-dirty)
MSR:  0000000090029002 <CE,EE,ME>  CR: 24022288  XER: 00000000
DEAR: 0000000000000018 ESR: 0000000000000000 IRQMASK: 0
GPR00: c0000000001bd678 c00000000a7aba90 c000000001993600 c0000000028da400 
GPR04: c00000000a7abc10 0000000000000001 c000000009a55800 c0000000028c2900 
GPR08: c0000000017f2f88 0000000000000000 c0000000018e2418 00e8bdf0003205d4 
GPR12: 0000000084082282 c000000001a68000 0000000000a53230 0000000000000000 
GPR16: 0000000000000001 00000000009435d4 000000000000000b 0000000000000000 
GPR20: c00000000a98cc98 c0000000028da430 0000000000000000 00000000028da400 
GPR24: 000000000a036600 c00000000a036600 0000000000000000 c0000000028da400 
GPR28: c000000009a55800 c00000000a98cc80 c00000000a02a210 c000000009b0b200 
NIP [c00000000075055c] .virtio_gpu_poll+0x14/0x134
LR [c000000000750550] .virtio_gpu_poll+0x8/0x134
Call Trace:
[c00000000a7aba90] [c00000000a7abb10] 0xc00000000a7abb10 (unreliable)
[c00000000a7abb20] [c0000000001bd678] .ep_item_poll+0x5c/0x80
[c00000000a7abba0] [c0000000001beb5c] .do_epoll_ctl+0x604/0x878
[c00000000a7abca0] [c0000000001bee14] .__se_sys_epoll_ctl+0x44/0x8c
[c00000000a7abd50] [c00000000000b0d4] .system_call_exception+0x11c/0x148
[c00000000a7abe10] [c0000000000001f8] system_call_common+0xf0/0x210
-- interrupt: c00 at 0x24f008
NIP:  000000000024f008 LR: 000000000099e7d4 CTR: 0000000000000000
REGS: c00000000a7abe80 TRAP: 0c00   Not tainted  (5.16.0-a2_A-EON_X5000-07264-gff0700f03609-dirty)
MSR:  000000001002f002 <CE,EE,PR,FP,ME>  CR: 46004224  XER: 00000000
IRQMASK: 0 
GPR00: 00000000000000ed 00000000ffb83460 00000000f7a25f60 0000000000000003 
GPR04: 0000000000000001 000000000000000b 00000000ffb83478 000000000032061c 
GPR08: 0000000000e8bdf0 0000000000000000 0000000000000000 0000000000000000 
GPR12: 0000000000000000 0000000000a4fff4 0000000000a53230 0000000000000000 
GPR16: 0000000000000001 00000000009435d4 000000000094d848 000000000092ab90 
GPR20: 0000000000a883e8 00000000fffffffd 0000000000e5edd0 0000000000e8bc60 
GPR24: 0000000000904534 0000000000000001 000000000000000b 0000000000000002 
GPR28: 0000000000e5f200 0000000000e8bdf0 0000000000a57b74 0000000000000002 
NIP [000000000024f008] 0x24f008
LR [000000000099e7d4] 0x99e7d4
--- interrupt: c00
Instruction dump:
48000ad9 60000000 7fe3fb78 4befb0f5 60000000 38210080 485fbc44 7c0802a6 
485fbbcd f821ff71 ebe300c0 e93f0088 <e9290018> 2fa90000 40de001c 4bef71fd 
---[ end trace ece66d7be00861fa ]---
I reverted the VirtIO GPU changes in the latest DRM updates. After that, the VirtIO GPU works without any problems.

Download of the alpha2 of kernel 5.16 without the VirtIO GPU updates: uImage-virtiogpu

I reported this issue to the kernel developers today. Link:

[VirtIO GPU] Xorg doesn't start with the DRM updates 'drm-next-2021-11-03' in a virtual e5500 QEMU KVM-HV machine on a Freescale P5040 board

Please test the kernels.

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

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

Re: New kernels

Post by xeno74 »

Hi All,

Vivek Kasireddy has released a patch because of the VirtIO GPU issue. :-)
He wrote: [PATCH] drm/virtio: Fix NULL dereference error in virtio_gpu_poll

When virgl is not enabled, vfpriv pointer would not be allocated.
Therefore, check for a valid value before dereferencing.

Reported-by: Christian Zigotzky <chzigotzky@xenosoft.de>
Cc: Gurchetan Singh <gurchetansingh@chromium.org>
Cc: Gerd Hoffmann <kraxel@redhat.com>
Signed-off-by: Vivek Kasireddy <vivek.kasireddy@intel.com>

Code: Select all

drivers/gpu/drm/virtio/virtgpu_drv.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/virtio/virtgpu_drv.c b/drivers/gpu/drm/virtio/virtgpu_drv.c
index 749db18dcfa2..d86e1ad4a972 100644
--- a/drivers/gpu/drm/virtio/virtgpu_drv.c
+++ b/drivers/gpu/drm/virtio/virtgpu_drv.c
@@ -163,10 +163,11 @@ static __poll_t virtio_gpu_poll(struct file *filp,
   struct drm_file *drm_file = filp->private_data;
   struct virtio_gpu_fpriv *vfpriv = drm_file->driver_priv;
   struct drm_device *dev = drm_file->minor->dev;
+    struct virtio_gpu_device *vgdev = dev->dev_private;
   struct drm_pending_event *e = NULL;
   __poll_t mask = 0;

-    if (!vfpriv->ring_idx_mask)
+    if (!vgdev->has_virgl_3d || !vfpriv || !vfpriv->ring_idx_mask)
       return drm_poll(filp, wait);

   poll_wait(filp, &drm_file->event_wait, wait);
Cheers,
Christian
http://www.amigalinux.org
http://www.supertuxkart-amiga.de

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

Re: New kernels

Post by xeno74 »

Hi All,

Here is the third alpha of kernel 5.16 for testing.

New:
Download: linux-image-5.16-alpha3-X1000_X5000.tar.gz

Image

Please test the kernels.

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

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

Re: New kernels

Post by xeno74 »

Hi All,

I released the stable longterm kernel 5.15.1 today.

New:
Download: linux-image-5.15.1-X1000_X5000.tar.gz

Image

Please test the kernels.

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

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

Re: New kernels

Post by xeno74 »

Hi All,

The alpha4 and the alpha5 of kernel 5.16 are available for testing.

The alpha4 doesn't boot on the X5000 because of an issue in the PowerPC updates 5.16-1. The X1000 and the virtual e5500 QEMU machine boots with this kernel.

The alpha5 of kernel 5.16 boots on the X5000 and in a virtual e5500 QEMU machine. This version has been patched with the new fsl_booke patch.

New:
Download alpha4 for the X1000 and for the virtual e5500 QEMU machine: linux-image-5.16-alpha4-X1000_X5000.tar.gz

Download alpha5 for the X5000 and for the virtual e5500 QEMU machine: linux-image-5.16-alpha5-X1000_X5000.tar.gz

Image

Please test the kernels.

Thanks,
Christian
Last edited by xeno74 on Tue Nov 09, 2021 3:53 pm, edited 2 times in total.
http://www.amigalinux.org
http://www.supertuxkart-amiga.de

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

Re: New kernels

Post by xeno74 »

The latest Git kernel doesn't recognize any ATA disks anymore on the X1000.

Error messages:

Code: Select all

ata4.00: gc timeout cmd 0xec
ata4.00: failed to IDENTIFY (I/O error, error_mask=0x4)
ata1.00: gc timeout cmd 0xec
ata1.00: failed to IDENTIFY (I/O error, error_mask=0x4)
ata3.00: gc timeout cmd 0xec
ata3.00: failed to IDENTIFY (I/O error, error_mask=0x4)
I have figured out that the PCI updates are responsible for this issue.

I was able to revert the PCI updates with the following command:

Code: Select all

git revert 0c5c62ddf88c34bc83b66e4ac9beb2bb0e1887d4 -m 1
After a new compiling, the kernel recognize all ATA disks correctly.

I reported this issue to the kernel developers today.

Link: [PASEMI] Nemo board doesn't recognize any ATA disks with the pci-v5.16 updates

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

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

Re: New kernels

Post by xeno74 »

xeno74 wrote: Tue Nov 09, 2021 2:49 pm The latest Git kernel doesn't recognize any ATA disks anymore on the X1000.

Error messages:

Code: Select all

ata4.00: gc timeout cmd 0xec
ata4.00: failed to IDENTIFY (I/O error, error_mask=0x4)
ata1.00: gc timeout cmd 0xec
ata1.00: failed to IDENTIFY (I/O error, error_mask=0x4)
ata3.00: gc timeout cmd 0xec
ata3.00: failed to IDENTIFY (I/O error, error_mask=0x4)
I have figured out that the PCI updates are responsible for this issue.

I was able to revert the PCI updates with the following command:

Code: Select all

git revert 0c5c62ddf88c34bc83b66e4ac9beb2bb0e1887d4 -m 1
After a new compiling, the kernel recognize all ATA disks correctly.

I reported this issue to the kernel developers today.

Link: [PASEMI] Nemo board doesn't recognize any ATA disks with the pci-v5.16 updates

- Christian
I compiled the latest Git kernel today and unfortunately the issue still exists. After that I bisected.

About bisecting:
Git bisect is like a little wizard that walks you through recent commits, asks you if they are good or bad, and narrows down the broken commit.
Git bisect starts with the midpoint commit. The midpoint commit is between the initial “good” commit and the initial “bad” commit.
If the midpoint commit was good, you know the commit that introduced the change is between your midpoint and the initial “bad” commit.
If the midpoint commit was bad, you know the commit that introduced the change is between your midpoint and the initial “good” commit.
After that git bisect selects a new midpoint in the area where the commit was bad. And this is repeated over and over again till the bad commit has been found.
  1. Code: Select all

    git bisect start
  2. Code: Select all

    git bisect good 8bb7eca972ad531c9b149c0a51ab43a417385813
    (Good: Linux 5.15)
  3. Code: Select all

    git bisect bad cb690f5238d71f543f4ce874aa59237cf53a877c
    (Bad: Merge tag 'for-5.16/drivers-2021-11-09' of git://git.kernel.dk/linux-block -- 2021-11-09 11:24:08 -0800)
    Output:

    Code: Select all

    [56d33754481fe0dc7436dc4ee4fbd44b3039361d] Merge tag 'drm-next-2021-11-03' of git://anongit.freedesktop.org/drm/drm
    
  4. git bisect good
    Output:

    Code: Select all

    [048ff8629e117d8411a787559417c781bcd78d7e] Merge tag 'usb-5.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb
  5. git bisect good
    Output:

    Code: Select all

    [5af06603c4090617be216a9185193a7be3ca60af] Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/hid/hid
  6. git bisect good
    Output:

    Code: Select all

    [0b707e572a1955b892dfcb32e7b573fab78767d9] Merge tag 's390-5.16-1' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux
  7. git bisect bad
    Output:

    Code: Select all

    [fe91c4725aeed35023ba4f7a1e1adfebb6878c23] Merge tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi[
  8. git bisect good
    Output:

    Code: Select all

    [ee801b7dd7822a82fd7663048ad649545fac6df3] mm/damon/schemes: activate schemes based on a watermarks mechanism
  9. git bisect good
    Output:

    Code: Select all

    [c840bb27e3222aca368b5f247ea1a7af98eb0a30] Merge branch 'remotes/lorenzo/pci/dt'
  10. git bisect bad
    Output:

    Code: Select all

    [ebf275b8564ccc3a75a3ee8f9167a4a20794f050] Merge branch 'pci/sysfs'
  11. git bisect good
    Output:

    Code: Select all

    [78be29ab548f050fb61065f94f8c129a6cdde5c2] Merge branch 'pci/misc'
  12. git bisect good
    Output:

    Code: Select all

    [84e1b4045dc887b78bdc87d92927093dc3a465aa] PCI: aardvark: Set PCI Bridge Class Code to PCI Bridge
  13. git bisect good
    Output:

    Code: Select all

    [468c8d52c33271d21aac070ebef9283f302094cc] PCI: apple: Configure RID to SID mapper on device addition
  14. git bisect bad
    Output:

    Code: Select all

    [1e33888fbe44ade6e9d54eb7c6c5e92d1455ff08] PCI: apple: Add initial hardware bring-up
  15. git bisect bad
    Output:

    Code: Select all

    [0412841812265734c306ba5ef8088bcb64d5d3bd] of/irq: Allow matching of an interrupt-map local to an interrupt controller
  16. git bisect bad
    Output:

    Code: Select all

    [0ab8d0f6ae3f1234e38eaedc3ff7c22bfdf7f78c] irqdomain: Make of_phandle_args_to_fwspec() generally available
  17. git bisect good
    Output:

    Code: Select all

    0412841812265734c306ba5ef8088bcb64d5d3bd is the first bad commit
    commit 0412841812265734c306ba5ef8088bcb64d5d3bd
    Author: Marc Zyngier <maz@kernel.org>
    Date:   Wed Sep 29 17:38:35 2021 +0100
    
        of/irq: Allow matching of an interrupt-map local to an interrupt controller
        
        of_irq_parse_raw() has a baked assumption that if a node has an
        interrupt-controller property, it cannot possibly also have an
        interrupt-map property (the latter being ignored).
        
        This seems to be an odd behaviour, and there is no reason why we should
        avoid supporting this use case. This is specially useful when a PCI root
        port acts as an interrupt controller for PCI endpoints, such as this:
        
          pcie0: pcie@690000000 {
              [...]
              port00: pci@0,0 {
                  device_type = "pci";
                  [...]
                  #address-cells = <3>;
        
                  interrupt-controller;
                  #interrupt-cells = <1>;
        
                  interrupt-map-mask = <0 0 0 7>;
                  interrupt-map = <0 0 0 1 &port00 0 0 0 0>,
                                  <0 0 0 2 &port00 0 0 0 1>,
                                  <0 0 0 3 &port00 0 0 0 2>,
                                  <0 0 0 4 &port00 0 0 0 3>;
              };
          };
        
        Handle it by detecting that we have an interrupt-map early in the parsing,
        and special case the situation where the phandle in the interrupt map
        refers to the current node (which is the interesting case here).
        
        Link: https://lore.kernel.org/r/20210929163847.2807812-3-maz@kernel.org
        Tested-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
        Signed-off-by: Marc Zyngier <maz@kernel.org>
        Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
        Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
        Reviewed-by: Rob Herring <robh@kernel.org>
    
    :040000 040000 a71ad7f11996f6b6cb54f3f7c4d27c8716df5f78 cac653d015f442804d9ab9d6972ee06c0990452a M	drivers
    
Result: 0412841812265734c306ba5ef8088bcb64d5d3bd is the first bad commit.

I was able to revert the first bad commit.

Code: Select all

git revert 0412841812265734c306ba5ef8088bcb64d5d3bd
Output:

Code: Select all

[master 28a84cc58698] Revert "of/irq: Allow matching of an interrupt-map local to an interrupt controller"
 1 file changed, 5 insertions(+), 12 deletions(-)
After a new compiling, the kernel boots without any problems.

I created a patch for reverting the bad commit.

Code: Select all

diff -rupN a b > ata.patch

ata.patch:

Code: Select all

diff -rupN a/drivers/of/irq.c b/drivers/of/irq.c
--- a/drivers/of/irq.c	2021-11-10 18:21:43.494361285 +0100
+++ b/drivers/of/irq.c	2021-11-10 18:20:49.970472082 +0100
@@ -156,14 +156,10 @@ int of_irq_parse_raw(const __be32 *addr,
 
 	/* Now start the actual "proper" walk of the interrupt tree */
 	while (ipar != NULL) {
-		/*
-		 * Now check if cursor is an interrupt-controller and
-		 * if it is then we are done, unless there is an
-		 * interrupt-map which takes precedence.
+		/* Now check if cursor is an interrupt-controller and if it is
+		 * then we are done
 		 */
-		imap = of_get_property(ipar, "interrupt-map", &imaplen);
-		if (imap == NULL &&
-		    of_property_read_bool(ipar, "interrupt-controller")) {
+		if (of_property_read_bool(ipar, "interrupt-controller")) {
 			pr_debug(" -> got it !\n");
 			return 0;
 		}
@@ -177,6 +173,8 @@ int of_irq_parse_raw(const __be32 *addr,
 			goto fail;
 		}
 
+		/* Now look for an interrupt-map */
+		imap = of_get_property(ipar, "interrupt-map", &imaplen);
 		/* No interrupt map, check for an interrupt parent */
 		if (imap == NULL) {
 			pr_debug(" -> no map, getting parent\n");
@@ -257,11 +255,6 @@ int of_irq_parse_raw(const __be32 *addr,
 		out_irq->args_count = intsize = newintsize;
 		addrsize = newaddrsize;
 
-		if (ipar == newpar) {
-			pr_debug("%pOF interrupt-map entry to self\n", ipar);
-			return 0;
-		}
-
 	skiplevel:
 		/* Iterate again with new parent */
 		out_irq->np = newpar;
I compiled the kernel with this patch. After that it boots without any problems.

I reported this result to the kernel developers today.

Link: [PASEMI] Nemo board doesn't recognize any ATA disks with the pci-v5.16 updates

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

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

Re: New kernels

Post by xeno74 »

Device tree of the Nemo board (Hardinfo):

Code: Select all

-Device Tree-
Summary
Maps
/
/sdc@fc000000
/sdc@fc000000/openpic@fc000000
/sdc@fc000000/mdio@0
/sdc@fc000000/mdio@0/ethernet-phy@0
/sdc@fc000000/rng@fc105000
/sdc@fc000000/gizmo@fc104000
/sdc@fc000000/gpio@fc103000
/pxp@0,e0000000
/pxp@0,e0000000/i2c@1c,2
/pxp@0,e0000000/serial@1d
/pxp@0,e0000000/io-bridge@0
/pxp@0,e0000000/dma-engine@1a
/pxp@0,e0000000/pci@11
/pxp@0,e0000000/pci@11/pci@13
/pxp@0,e0000000/pci@11/pci@13,3
/pxp@0,e0000000/pci@11/pci@13,1
/pxp@0,e0000000/pci@11/pci@14,4
/pxp@0,e0000000/pci@11/pci@14,4/pci@6
/pxp@0,e0000000/pci@11/pci@14,4/pci@6,1
/pxp@0,e0000000/pci@11/pci@14,4/pci@5
/pxp@0,e0000000/pci@11/pci@14,2
/pxp@0,e0000000/pci@11/pci@14
/pxp@0,e0000000/pci@11/pci@13,4
/pxp@0,e0000000/pci@11/pci@12
/pxp@0,e0000000/pci@11/pci@12/atapi0.1
/pxp@0,e0000000/pci@11/pci@12/ide0.0
/pxp@0,e0000000/pci@11/pci@13,2
/pxp@0,e0000000/pci@11/pci@14,3
/pxp@0,e0000000/pci@11/pci@14,1
/pxp@0,e0000000/pci@11/pci@13,5
/pxp@0,e0000000/pci@8
/pxp@0,e0000000/i2c@1c
/pxp@0,e0000000/pci@11,2
/pxp@0,e0000000/pci@4
/pxp@0,e0000000/ethernet@14,3
/pxp@0,e0000000/pci@1b
/pxp@0,e0000000/i2c@1c,1
/pxp@0,e0000000/pci@9
/pxp@0,e0000000/pci@11,3
/pxp@0,e0000000/pci@10
/pxp@0,e0000000/pci@10/pci@0,1
/pxp@0,e0000000/pci@10/pci@0
/pxp@0,e0000000/pci@11,1
/pxp@0,e0000000/cache-controller@1
/pxp@0,e0000000/pci@5
/pxp@0,e0000000/serial@1d,1
/pxp@0,e0000000/pci@1e
/pxp@0,e0000000/pci@3
/pxp@0,e0000000/pci@15
/bootconsole
/options
/openprom
/lpc@fe000000
/chosen
/cpus
/cpus/PowerPC,PA6T@0
/cpus/PowerPC,PA6T@1
/memory
/localbus@f0000000
/localbus@f0000000/cf@1000000
Messages
lsprop /proc/device-tree

Output:

Code: Select all

compatible       "pasemi,nemo"
		 "pasemi,pa6t-1682m"
		 "PA6T-1682M"
		 "pasemi,pwrficient"
		 "pasemi"
device_type      "bootrom"
model            "pasemi,nemo"
#interrupt-cells 00000002
#address-cells   00000002
#size-cells      00000002
linux,phandle    7fdff018 (2145382424)
platform-open-pic 00000000 fc000000 00000000 00041000
name             ""

/proc/device-tree/sdc@fc000000:
compatible       "1682m-sdc"
		 "pasemi,pwrficient-sdc"
		 "pasemi,sdc"
device_type      "sdc"
#address-cells   00000001
#size-cells      00000001
reg              00000000 fc000000 00000000 00800000
linux,phandle    7fe2f458 (2145580120)
name             "sdc"

/proc/device-tree/sdc@fc000000/rng@fc105000:
compatible       "1682m-rng"
		 "pasemi,pwrficient-rng"
		 "pasemi,rng"
device_type      "rng"
reg              fc105000 00001000
linux,phandle    7fe2fdd0 (2145582544)
name             "rng"

/proc/device-tree/sdc@fc000000/mdio@0:
compatible       "gpio-mdio"
mdc-pin          00000005
#address-cells   00000001
#size-cells      00000000
reg              00000000 00000000
linux,phandle    7fe3d5a0 (2145637792)
mdio-pin         00000006
name             "mdio"

/proc/device-tree/sdc@fc000000/mdio@0/ethernet-phy@0:
interrupt-parent 7fe2f6e8 (2145580776)
interrupts       00000007 00000001
reg              00000000
linux,phandle    7fe3d860 (2145638496)
name             "ethernet-phy"

/proc/device-tree/sdc@fc000000/openpic@fc000000:
compatible       "pasemi,pwrficient-openpic"
		 "chrp,open-pic"
device_type      "open-pic"
msi-available-ranges 00000200 00000200
#interrupt-cells 00000002
#address-cells   00000000
reg              fc000000 00100000
linux,phandle    7fe2f6e8 (2145580776)
name             "openpic"
interrupt-controller

/proc/device-tree/sdc@fc000000/gizmo@fc104000:
compatible       "1682m-gizmo"
		 "pasemi,pwrficient-gizmo"
		 "pasemi,gizmo"
device_type      "gizmo"
reg              fc104000 00001000
linux,phandle    7fe2fbf0 (2145582064)
name             "gizmo"

/proc/device-tree/sdc@fc000000/gpio@fc103000:
compatible       "1682m-gpio"
		 "pasemi,pwrficient-gpio"
		 "pasemi,gpio"
device_type      "gpio"
reg              fc103000 00001000
linux,phandle    7fe2fa18 (2145581592)
name             "gpio"

/proc/device-tree/options:
MENU_2_LABEL     "Debian Sid/experimental Kernel 4.9"
MENU_4_COMMAND   "set pmu -astate=A4 ; ramdisk -z -addr=0x24000000 -fatfs cf0:slitaz25.gz ; boot -elf -noints -fatfs cf0:vmlinux-3.13.14"
ETH0_HWADDR      "00:50:C2:20:DA:9E"
CFE_MEMORYSIZE   "8192"
MENU_5_LABEL     "Fedora 17 Kernel 3.13.9"
MENU_8_LABEL     "ubuntu MATE 16.04.2 LTS Kernel 4.9"
MENU_1_COMMAND   "setenv amigaboot_quiet Y ;boot -fs=iso atapi0.1:amigaboot.of"
MENU_8_COMMAND   "set pmu -astate=A4 ; setenv bootargs "root=/dev/sdb1 quiet ro splash" ; boot -elf -noints -fatfs cf0:vmlinux-4.9"
bootargs         "root=/dev/sda4"
STARTUP          "speed;menu"
MENU_DEFAULT     "0"
MENU_0_LABEL     "AmigaOS"
MENU_5_COMMAND   73657420 706d7520 2d617374 6174653d
		 4134203b 20736574 656e7620 626f6f74
		 61726773 20227264 2e6d643d 30207264
		 2e6c766d 3d302072 642e646d 3d302053
		 5953464f 4e543d54 72756520 4b455954
		 41424c45 3d646520 72642e6c 756b733d
		 3020726f 6f743d2f 6465762f 73646233
		 204c414e 473d6465 5f44452e 5554462d
		 [191 bytes total]
MENU_3_LABEL     "ubuntu MATE 17.04 Kernel 4.9"
MENU_6_LABEL     "Fedora 25 PPC64 Kernel 4.9"
MENU_2_COMMAND   "set pmu -astate=A4 ; setenv bootargs "root=/dev/sda4" ; boot -elf -noints -fatfs cf0:vmlinux-4.9"
MENU_9_LABEL     "openSUSE Tumbleweed Kernel 4.14"
speed            "set pmu -astate=A4"
MENU_9_COMMAND   "set pmu -astate=A4 ; setenv bootargs "root=/dev/sdb6 splash=silent" ; boot -elf -noints -fatfs cf0:vmlinux-4.14"
BOOT_CONSOLE     "pcconsole0"
CFE_VERSION      "PAS-2.0.30"
little-endian?   00000000
MENU_6_COMMAND   "set pmu -astate=A4 ; setenv bootargs "root=/dev/sdb4" ; boot -elf -noints -fatfs cf0:vmlinux-4.9"
CFE_BOARDNAME    "NEMO"
MENU_1_LABEL     "AmigaOS CD Boot"
MENU_4_LABEL     "SliTaz Snapshot 25 Kernel 3.13.14"
MENU_3_COMMAND   "set pmu -astate=A4 ; setenv bootargs "root=/dev/sdb7 quiet ro splash" ; boot -elf -noints -fatfs cf0:vmlinux-4.9"
MENU_7_LABEL     "openSUSE 11.1 Kernel 4.13"
os4_commandline  "DEBUGLEVEL=0 SERIAL"
MENU_0_COMMAND   "setenv amigaboot_quiet Y ;boot -fs=amigafs ide0.0:amigaboot.of"
linux,phandle    7fe2f1f0 (2145579504)
MENU_TIMEOUT     "6"
MENU_7_COMMAND   "set pmu -astate=A4 ; setenv bootargs "root=/dev/sdb5" ; boot -elf -noints -fatfs cf0:vmlinux-4.13"
framebuffer      "800/600/8/0x90000000/832"
name             "options"

/proc/device-tree/chosen:
linux,stdout-package 7fe35880 (2145605760)
bootargs         "root=/dev/sda4"
cpu              7fe30698 (2145584792)
stdout           7fe35990 (2145606032)
memory           7fe316c8 (2145588936)
stdin            7fe35990 (2145606032)
linux,stdout-path "/bootconsole"
sdc-interrupt-controller 7fe2f6e8 (2145580776)
linux,phandle    7fe34628 (2145601064)
name             "chosen"

/proc/device-tree/openprom:
device_type      "BootROM"
model            "Open Firmware 3"
linux,phandle    7fe2f2f0 (2145579760)
name             "openprom"

/proc/device-tree/localbus@f0000000:
compatible       "pasemi,localbus"
		 "localbus"
device_type      "localbus"
ranges           00000000 00000000 f0000000 0c000000
#interrupt-cells 00000002
#address-cells   00000001
#size-cells      00000001
reg              00000000 f0000000 00000000 0c000000
linux,phandle    7fe342e0 (2145600224)
name             "localbus"

/proc/device-tree/localbus@f0000000/cf@1000000:
compatible       "pasemi,chitra-cf"
		 "pasemi,electra-cf"
		 "electra-cf"
card-3v-gpio     0000000a (10)
device_type      "electra-cf"
card-vsense-gpio 00000001
interrupt-parent 7fe2f6e8 (2145580776)
interrupts       00000000 00000001
reg              00000000 00001000 01000000 00001000
card-detect-gpio 0000000e (14)
linux,phandle    7fe3da70 (2145639024)
card-5v-gpio     0000000b (11)
name             "cf"

/proc/device-tree/memory:
device_type      "memory"
available        00000000 00000000 00000000 7fd1d000
		 00000001 00000000 00000001 80000000
reg              00000000 00000000 00000000 80000000
		 00000001 00000000 00000001 80000000
linux,phandle    7fe316c8 (2145588936)
name             "memory"

/proc/device-tree/pxp@0,e0000000:
compatible       "pasemi,rootbus"
		 "pa-pxp"
device_type      "pci"
interrupt-map-mask 00000000 00000000 00000000 000000ff
model            "pa"
ranges           00000000 00000000 e0000000 00000000
		 e0000000 00000000 10000000 01000000
		 00000000 00000000 00000000 fc800000
		 00000000 00800000 02000000 00000000
		 80000000 00000000 80000000 00000000
		 60000000 02000000 00000000 e0000000
		 00000000 e0000000 00000000 00100000
		 02000000 00000000 fd800000 00000000
		 [168 bytes total]
#interrupt-cells 00000001
bus-range        00000000 000000ff
#address-cells   00000003
interrupt-map    00000000 00000000 00000000 00000030
		 7fe2f6e8 00000030 00000001 00000000
		 00000000 00000000 00000031 7fe2f6e8
		 00000031 00000001 00000000 00000000
		 00000000 00000032 7fe2f6e8 00000032
		 00000001 00000000 00000000 00000000
		 00000033 7fe2f6e8 00000033 00000001
#size-cells      00000002
reg              00000000 e0000000 00000000 10000000
linux,phandle    7fe2ffa8 (2145583016)
name             "pxp"
interrupt-controller

/proc/device-tree/pxp@0,e0000000/i2c@1c,2:
assigned-addresses 8100e210 00000000 007f0280 00000000 00000040
device_type      "i2c"
revision-id      00000001
class-code       000c0500 (787712)
vendor-id        00001959 (6489)
interrupt-parent 7fe2f6e8 (2145580776)
interrupts       00000048 00000001
device-id        0000a003 (40963)
reg              0000e200 00000000 00000000 00000000 00000000
		 0100e210 00000000 00000000 00000000 00000040
linux,phandle    7fe33c80 (2145598592)
name             "i2c"

/proc/device-tree/pxp@0,e0000000/pci@8:
device_type      "pci"
revision-id      00000012 (18)
class-code       000b2000 (729088)
vendor-id        00001959 (6489)
device-id        0000a000 (40960)
reg              00004000 00000000 00000000 00000000 00000000
linux,phandle    7fe383f8 (2145616888)
name             "pci"

/proc/device-tree/pxp@0,e0000000/serial@1d,1:
current-speed    0001c200 (115200)
compatible       "ns16550"
		 "pciclass,0700"
assigned-addresses 8100e910 00000000 007f02f8 00000000 00000008
device_type      "serial"
revision-id      00000002
class-code       00070003 (458755)
vendor-id        00001959 (6489)
interrupt-parent 7fe2f6e8 (2145580776)
interrupts       0000004a 00000001
device-id        0000a004 (40964)
reg              0000e900 00000000 00000000 00000000 00000000
		 0100e910 00000000 00000000 00000000 00000008
clock-frequency  07f28155 (133333333)
linux,phandle    7fe31db0 (2145590704)
name             "serial"

/proc/device-tree/pxp@0,e0000000/pci@1b:
device_type      "pci"
revision-id      00000011 (17)
class-code       00088000 (557056)
vendor-id        00001959 (6489)
device-id        0000a00b (40971)
reg              0000d800 00000000 00000000 00000000 00000000
linux,phandle    7fe38d78 (2145619320)
name             "pci"

/proc/device-tree/pxp@0,e0000000/pci@11,2:
device_type      "pci"
revision-id      00000011 (17)
class-code       00060400 (394240)
vendor-id        00001959 (6489)
#interrupt-cells 00000001
bus-range        00000008 00000008
#address-cells   00000003
#size-cells      00000002
device-id        0000a002 (40962)
reg              00008a00 00000000 00000000 00000000 00000000
linux,phandle    7fe367d0 (2145609680)
name             "pci"

/proc/device-tree/pxp@0,e0000000/pci@4:
device_type      "pci"
revision-id      00000011 (17)
class-code       00050000 (327680)
vendor-id        00001959 (6489)
interrupt-parent 7fe2f6e8 (2145580776)
interrupts       00000058 00000001
device-id        0000a00a (40970)
reg              00002000 00000000 00000000 00000000 00000000
linux,phandle    7fe37d08 (2145615112)
name             "pci"

/proc/device-tree/pxp@0,e0000000/pci@10:
device_type      "pci"
revision-id      00000011 (17)
class-code       00060400 (394240)
ranges           01000000 00000000 00002000 01000000
		 00000000 00002000 00000000 00001000
		 02000000 00000000 90000000 02000000
		 00000000 90000000 00000000 10100000
vendor-id        00001959 (6489)
#interrupt-cells 00000001
bus-range        00000001 00000001
#address-cells   00000003
#size-cells      00000002
device-id        0000a002 (40962)
reg              00008000 00000000 00000000 00000000 00000000
linux,phandle    7fe374d8 (2145613016)
name             "pci"

/proc/device-tree/pxp@0,e0000000/pci@10/pci@0,1:
assigned-addresses 82010110 00000000 a0040000 00000000 00004000
device_type      "pci"
revision-id      00000000
subsystem-id     0000aa88 (43656)
class-code       00040300 (262912)
vendor-id        00001002 (4098)
interrupt-parent 7fe2f6e8 (2145580776)
interrupts       00000031 00000001
device-id        0000aa88 (43656)
reg              00010100 00000000 00000000 00000000 00000000
		 02010110 00000000 00000000 00000000 00004000
subsystem-vendor-id 00001682 (5762)
linux,phandle    7fe39948 (2145622344)
name             "pci"

/proc/device-tree/pxp@0,e0000000/pci@10/pci@0:
assigned-addresses c2010010 00000000 90000000 00000000 10000000
		 82010018 00000000 a0020000 00000000 00020000
		 81010020 00000000 00002000 00000000 00000100
device_type      "pci"
revision-id      00000000
subsystem-id     00003107 (12551)
class-code       00030000 (196608)
vendor-id        00001002 (4098)
interrupt-parent 7fe2f6e8 (2145580776)
interrupts       00000030 00000001
device-id        00006738 (26424)
reg              00010000 00000000 00000000 00000000 00000000
		 42010010 00000000 00000000 00000000 10000000
		 02010018 00000000 00000000 00000000 00020000
		 01010020 00000000 00000000 00000000 00000100
subsystem-vendor-id 00001682 (5762)
linux,phandle    7fe39458 (2145621080)
name             "pci"

/proc/device-tree/pxp@0,e0000000/i2c@1c,1:
assigned-addresses 8100e110 00000000 007f0240 00000000 00000040
device_type      "i2c"
revision-id      00000001
class-code       000c0500 (787712)
vendor-id        00001959 (6489)
interrupt-parent 7fe2f6e8 (2145580776)
interrupts       00000047 00000001
device-id        0000a003 (40963)
reg              0000e100 00000000 00000000 00000000 00000000
		 0100e110 00000000 00000000 00000000 00000040
linux,phandle    7fe33890 (2145597584)
name             "i2c"

/proc/device-tree/pxp@0,e0000000/pci@1e:
assigned-addresses 8100f010 00000000 007f0400 00000000 00000100
		 8100f014 00000000 007f0500 00000000 00000100
device_type      "pci"
revision-id      00000012 (18)
class-code       000601ff (393727)
vendor-id        00001959 (6489)
interrupt-parent 7fe2f6e8 (2145580776)
interrupts       00000051 00000001
device-id        0000a008 (40968)
reg              0000f000 00000000 00000000 00000000 00000000
		 0100f010 00000000 00000000 00000000 00000100
		 0100f014 00000000 00000000 00000000 00000100
linux,phandle    7fe39040 (2145620032)
name             "pci"

/proc/device-tree/pxp@0,e0000000/pci@9:
device_type      "pci"
revision-id      00000012 (18)
class-code       000b2000 (729088)
vendor-id        00001959 (6489)
device-id        0000a000 (40960)
reg              00004800 00000000 00000000 00000000 00000000
linux,phandle    7fe386c0 (2145617600)
name             "pci"

/proc/device-tree/pxp@0,e0000000/io-bridge@0:
compatible       "pasemi,1682m-iob"
		 "pasemi,io-bridge"
assigned-addresses 82000000 00000000 e0000000 00000000 00002000
		 c2000000 00000000 fd800000 00000000 00001000
device_type      "isa"
revision-id      00000012 (18)
class-code       00060000 (393216)
vendor-id        00001959 (6489)
interrupt-parent 7fe2f6e8 (2145580776)
interrupts       00000056 00000001
device-id        0000a001 (40961)
reg              00000000 00000000 00000000 00000000 00000000
		 82000000 00000000 e0000000 00000000 00002000
		 c2000000 00000000 fd800000 00000000 00001000
linux,phandle    7fe32728 (2145593128)
name             "io-bridge"

/proc/device-tree/pxp@0,e0000000/pci@15:
assigned-addresses 82000000 00000000 e00a8000 00000000 00001000
device_type      "pci"
revision-id      00000011 (17)
class-code       00020000 (131072)
vendor-id        00001959 (6489)
interrupt-parent 7fe2f6e8 (2145580776)
interrupts       00000044 00000001
device-id        0000a006 (40966)
reg              0000a800 00000000 00000000 00000000 00000000
		 82000000 00000000 e00a8000 00000000 00001000
linux,phandle    7fe38988 (2145618312)
name             "pci"

/proc/device-tree/pxp@0,e0000000/dma-engine@1a:
compatible       "1682m-dma"
		 "pasemi,dma-engine"
assigned-addresses 82000000 00000000 e00d0000 00000000 00001000
device_type      "dma-engine"
revision-id      00000012 (18)
class-code       000801ff (524799)
vendor-id        00001959 (6489)
interrupt-parent 7fe2f6e8 (2145580776)
interrupts       00000080 00000001
device-id        0000a007 (40967)
reg              0000d000 00000000 00000000 00000000 00000000
		 82000000 00000000 e00d0000 00000000 00001000
linux,phandle    7fe322b8 (2145591992)
name             "dma-engine"

/proc/device-tree/pxp@0,e0000000/pci@11,3:
device_type      "pci"
revision-id      00000011 (17)
class-code       00060400 (394240)
vendor-id        00001959 (6489)
#interrupt-cells 00000001
bus-range        00000009 00000009
#address-cells   00000003
#size-cells      00000002
device-id        0000a002 (40962)
reg              00008b00 00000000 00000000 00000000 00000000
linux,phandle    7fe363a8 (2145608616)
name             "pci"

/proc/device-tree/pxp@0,e0000000/pci@5:
device_type      "pci"
revision-id      00000011 (17)
class-code       00050000 (327680)
vendor-id        00001959 (6489)
interrupt-parent 7fe2f6e8 (2145580776)
interrupts       0000005a 00000001
device-id        0000a00a (40970)
reg              00002800 00000000 00000000 00000000 00000000
linux,phandle    7fe38080 (2145616000)
name             "pci"

/proc/device-tree/pxp@0,e0000000/i2c@1c:
assigned-addresses 8100e010 00000000 007f0200 00000000 00000040
device_type      "i2c"
revision-id      00000001
class-code       000c0500 (787712)
vendor-id        00001959 (6489)
interrupt-parent 7fe2f6e8 (2145580776)
interrupts       00000046 00000001
device-id        0000a003 (40963)
reg              0000e000 00000000 00000000 00000000 00000000
		 0100e010 00000000 00000000 00000000 00000040
linux,phandle    7fe334a0 (2145596576)
name             "i2c"

/proc/device-tree/pxp@0,e0000000/cache-controller@1:
compatible       "pasemi,1682m-l2c"
		 "pasemi,l2c"
device_type      "cache-controller"
revision-id      00000011 (17)
class-code       00058000 (360448)
vendor-id        00001959 (6489)
interrupt-parent 7fe2f6e8 (2145580776)
interrupts       00000052 00000001
device-id        0000a009 (40969)
reg              00000800 00000000 00000000 00000000 00000000
linux,phandle    7fe32bc8 (2145594312)
name             "cache-controller"

/proc/device-tree/pxp@0,e0000000/pci@11:
device_type      "pci"
revision-id      00000011 (17)
class-code       00060400 (394240)
ranges           01000000 00000000 00000000 01000000
		 00000000 00000000 00000000 00004000
		 02000000 00000000 a0100000 02000000
		 00000000 a0100000 00000000 00300000
vendor-id        00001959 (6489)
#interrupt-cells 00000001
bus-range        00000005 00000006
#address-cells   00000003
#size-cells      00000002
device-id        0000a002 (40962)
reg              00008800 00000000 00000000 00000000 00000000
linux,phandle    7fe37020 (2145611808)
name             "pci"

/proc/device-tree/pxp@0,e0000000/pci@11/pci@14,1:
assigned-addresses 8105a110 00000000 00001030 00000000 00000008
		 8105a114 00000000 00001054 00000000 00000004
		 8105a118 00000000 00001038 00000000 00000008
		 8105a11c 00000000 00001050 00000000 00000004
		 8105a120 00000000 00001000 00000000 00000010
device_type      "pci"
revision-id      00000000
class-code       00010183 (65923)
vendor-id        00001002 (4098)
interrupt-parent 7fe2ffa8 (2145583016)
interrupts       00000009 00000001
device-id        0000438c (17292)
reg              0005a100 00000000 00000000 00000000 00000000 0105a110
		 00000000 00000000 00000000 00000008 0105a114 00000000
		 00000000 00000000 00000004 0105a118 00000000 00000000
		 00000000 00000008 0105a11c 00000000 00000000 00000000
		 00000004 0105a120 00000000 00000000 00000000 00000010
linux,phandle    7fe3bfb0 (2145632176)
name             "pci"

/proc/device-tree/pxp@0,e0000000/pci@11/pci@13,5:
assigned-addresses 82059d10 00000000 a0209800 00000000 00000100
device_type      "pci"
revision-id      00000000
class-code       000c0320 (787232)
vendor-id        00001002 (4098)
interrupt-parent 7fe2ffa8 (2145583016)
interrupts       0000000c 00000001
device-id        00004386 (17286)
reg              00059d00 00000000 00000000 00000000 00000000
		 02059d10 00000000 00000000 00000000 00000100
linux,phandle    7fe3b858 (2145630296)
name             "pci"

/proc/device-tree/pxp@0,e0000000/pci@11/pci@13,3:
assigned-addresses 82059b10 00000000 a0204000 00000000 00001000
device_type      "pci"
revision-id      00000000
class-code       000c0310 (787216)
vendor-id        00001002 (4098)
interrupt-parent 7fe2ffa8 (2145583016)
interrupts       0000000a 00000001
device-id        0000438a (17290)
reg              00059b00 00000000 00000000 00000000 00000000
		 02059b10 00000000 00000000 00000000 00001000
linux,phandle    7fe3b078 (2145628280)
name             "pci"

/proc/device-tree/pxp@0,e0000000/pci@11/pci@14:
assigned-addresses 8105a010 00000000 00001020 00000000 00000010
		 8205a014 00000000 a0209000 00000000 00000400
device_type      "pci"
revision-id      00000014 (20)
class-code       000c0500 (787712)
vendor-id        00001002 (4098)
device-id        00004385 (17285)
reg              0005a000 00000000 00000000 00000000 00000000
		 0105a010 00000000 00000000 00000000 00000010
		 0205a014 00000000 00000000 00000000 00000400
linux,phandle    7fe3bc48 (2145631304)
name             "pci"

/proc/device-tree/pxp@0,e0000000/pci@11/pci@13,1:
assigned-addresses 82059910 00000000 a0207000 00000000 00001000
device_type      "pci"
revision-id      00000000
class-code       000c0310 (787216)
vendor-id        00001002 (4098)
interrupt-parent 7fe2ffa8 (2145583016)
interrupts       0000000a 00000001
device-id        00004388 (17288)
reg              00059900 00000000 00000000 00000000 00000000
		 02059910 00000000 00000000 00000000 00001000
linux,phandle    7fe3a898 (2145626264)
name             "pci"

/proc/device-tree/pxp@0,e0000000/pci@11/pci@12:
assigned-addresses 81059010 00000000 00001040 00000000 00000008 81059014
		 00000000 0000105c 00000000 00000004 81059018 00000000
		 00001048 00000000 00000008 8105901c 00000000 00001058
		 00000000 00000004 81059020 00000000 00001010 00000000
		 00000010 82059024 00000000 a0209400 00000000 00000400
device_type      "pci"
revision-id      00000000
class-code       0001018f (65935)
vendor-id        00001002 (4098)
interrupt-parent 7fe2ffa8 (2145583016)
interrupts       00000009 00000001
device-id        00004380 (17280)
reg              00059000 00000000 00000000 00000000
		 00000000 01059010 00000000 00000000
		 00000000 00000008 01059014 00000000
		 00000000 00000000 00000004 01059018
		 00000000 00000000 00000000 00000008
		 0105901c 00000000 00000000 00000000
		 00000004 01059020 00000000 00000000
		 00000000 00000010 02059024 00000000
		 [140 bytes total]
linux,phandle    7fe39de8 (2145623528)
name             "pci"

/proc/device-tree/pxp@0,e0000000/pci@11/pci@12/ide0.0:
device_type      "block"
linux,phandle    7fe3a2a0 (2145624736)
name             "ide0.0"

/proc/device-tree/pxp@0,e0000000/pci@11/pci@12/atapi0.1:
device_type      "block"
linux,phandle    7fe3a3a0 (2145624992)
name             "atapi0.1"

/proc/device-tree/pxp@0,e0000000/pci@11/pci@14,4:
device_type      "pci"
revision-id      00000000
class-code       00060400 (394240)
ranges           01000000 00000000 00003000 01000000
		 00000000 00003000 00000000 00001000
		 02000000 00000000 a0300000 02000000
		 00000000 a0300000 00000000 00100000
vendor-id        00001002 (4098)
#interrupt-cells 00000001
bus-range        00000006 00000006
#address-cells   00000003
#size-cells      00000002
device-id        00004384 (17284)
reg              0005a400 00000000 00000000 00000000 00000000
linux,phandle    7fe3cc20 (2145635360)
name             "pci"

/proc/device-tree/pxp@0,e0000000/pci@11/pci@14,4/pci@5:
assigned-addresses 81062810 00000000 00003000 00000000 00000100
		 82062814 00000000 a0310000 00000000 00000100
device_type      "pci"
revision-id      00000010 (16)
subsystem-id     00008139 (33081)
class-code       00020000 (131072)
vendor-id        000010ec (4332)
interrupt-parent 7fe2ffa8 (2145583016)
interrupts       00000004 00000001
device-id        00008139 (33081)
reg              00062800 00000000 00000000 00000000 00000000
		 01062810 00000000 00000000 00000000 00000100
		 02062814 00000000 00000000 00000000 00000100
subsystem-vendor-id 000010ec (4332)
linux,phandle    7fe3d0d8 (2145636568)
name             "pci"

/proc/device-tree/pxp@0,e0000000/pci@11/pci@14,2:
assigned-addresses 8205a210 00000000 a0200000 00000000 00004000
device_type      "pci"
revision-id      00000000
subsystem-id     00001000 (4096)
class-code       00040300 (262912)
vendor-id        00001002 (4098)
interrupt-parent 7fe2ffa8 (2145583016)
interrupts       00000009 00000001
device-id        00004383 (17283)
reg              0005a200 00000000 00000000 00000000 00000000
		 0205a210 00000000 00000000 00000000 00004000
subsystem-vendor-id 00001888 (6280)
linux,phandle    7fe3c440 (2145633344)
name             "pci"

/proc/device-tree/pxp@0,e0000000/pci@11/pci@13,4:
assigned-addresses 82059c10 00000000 a0205000 00000000 00001000
device_type      "pci"
revision-id      00000000
class-code       000c0310 (787216)
vendor-id        00001002 (4098)
interrupt-parent 7fe2ffa8 (2145583016)
interrupts       0000000b 00000001
device-id        0000438b (17291)
reg              00059c00 00000000 00000000 00000000 00000000
		 02059c10 00000000 00000000 00000000 00001000
linux,phandle    7fe3b468 (2145629288)
name             "pci"

/proc/device-tree/pxp@0,e0000000/pci@11/pci@13,2:
assigned-addresses 82059a10 00000000 a0206000 00000000 00001000
device_type      "pci"
revision-id      00000000
class-code       000c0310 (787216)
vendor-id        00001002 (4098)
interrupt-parent 7fe2ffa8 (2145583016)
interrupts       0000000b 00000001
device-id        00004389 (17289)
reg              00059a00 00000000 00000000 00000000 00000000
		 02059a10 00000000 00000000 00000000 00001000
linux,phandle    7fe3ac88 (2145627272)
name             "pci"

/proc/device-tree/pxp@0,e0000000/pci@11/pci@13:
assigned-addresses 82059810 00000000 a0208000 00000000 00001000
device_type      "pci"
revision-id      00000000
class-code       000c0310 (787216)
vendor-id        00001002 (4098)
interrupt-parent 7fe2ffa8 (2145583016)
interrupts       00000009 00000001
device-id        00004387 (17287)
reg              00059800 00000000 00000000 00000000 00000000
		 02059810 00000000 00000000 00000000 00001000
linux,phandle    7fe3a4a8 (2145625256)
name             "pci"

/proc/device-tree/pxp@0,e0000000/pci@11/pci@14,3:
assigned-addresses 8205a310 00000000 a0100000 00000000 00100000
device_type      "pci"
revision-id      00000000
class-code       00060100 (393472)
vendor-id        00001002 (4098)
device-id        0000438d (17293)
reg              0005a300 00000000 00000000 00000000 00000000
		 0205a310 00000000 00000000 00000000 00100000
linux,phandle    7fe3c8e0 (2145634528)
name             "pci"

/proc/device-tree/pxp@0,e0000000/pci@11,1:
device_type      "pci"
revision-id      00000011 (17)
class-code       00060400 (394240)
vendor-id        00001959 (6489)
#interrupt-cells 00000001
bus-range        00000007 00000007
#address-cells   00000003
#size-cells      00000002
device-id        0000a002 (40962)
reg              00008900 00000000 00000000 00000000 00000000
linux,phandle    7fe36bf8 (2145610744)
name             "pci"

/proc/device-tree/pxp@0,e0000000/serial@1d:
current-speed    0001c200 (115200)
compatible       "ns16550"
		 "pciclass,0700"
assigned-addresses 8100e810 00000000 007f03f8 00000000 00000008
device_type      "serial"
revision-id      00000002
class-code       00070003 (458755)
vendor-id        00001959 (6489)
interrupt-parent 7fe2f6e8 (2145580776)
interrupts       00000049 00000001
device-id        0000a004 (40964)
reg              0000e800 00000000 00000000 00000000 00000000
		 0100e810 00000000 00000000 00000000 00000008
clock-frequency  07f28155 (133333333)
linux,phandle    7fe318a8 (2145589416)
name             "serial"

/proc/device-tree/pxp@0,e0000000/ethernet@14,3:
phy-handle       7fe3d860 (2145638496)
compatible       "pasemi,1682m-gmac"
		 "pasemi,ethernet"
assigned-addresses 82000000 00000000 e00a3000 00000000 00001000
local-mac-address 02 00 ffffffe0 0a 30 00                              ....0.
device_type      "ethernet"
revision-id      00000011 (17)
class-code       00020000 (131072)
vendor-id        00001959 (6489)
interrupt-parent 7fe2f6e8 (2145580776)
interrupts       00000043 00000001
device-id        0000a005 (40965)
reg              0000a300 00000000 00000000 00000000 00000000
		 82000000 00000000 e00a3000 00000000 00001000
linux,phandle    7fe32fd0 (2145595344)
name             "ethernet"

/proc/device-tree/pxp@0,e0000000/pci@3:
device_type      "pci"
revision-id      00000013 (19)
class-code       00080080 (524416)
vendor-id        00001959 (6489)
interrupt-parent 7fe2f6e8 (2145580776)
interrupts       00000054 00000001
device-id        0000a00c (40972)
reg              00001800 00000000 00000000 00000000 00000000
linux,phandle    7fe37990 (2145614224)
name             "pci"

/proc/device-tree/lpc@fe000000:
device_type      "lpc"
ranges           fe000000 00000000 fe000000 02000000
#address-cells   00000001
#size-cells      00000001
reg              00000000 fe000000 00000000 02000000
linux,phandle    7fe34070 (2145599600)
name             "lpc"

/proc/device-tree/bootconsole:
device_type      "bootconsole"
linux,phandle    7fe35880 (2145605760)
name             "bootconsole"

/proc/device-tree/cpus:
#address-cells   00000001
#size-cells      00000000
linux,phandle    7fe30540 (2145584448)
name             "cpus"

/proc/device-tree/cpus/PowerPC,PA6T@0:
bus-frequency    35a4e900 (900000000)
64-bit          
timebase-frequency 03f940aa (66666666)
graphics        
device_type      "cpu"
ibm,segment-page-sizes 0000000c 00000000 00000001 0000000c
		 00000000 0000000e 00000020 00000001
		 0000000e 00000001 00000010 00000110
		 00000001 00000010 00000003 00000012
		 00000130 00000001 00000012 0000000f
		 00000014 00000030 00000001 00000014
		 0000001f 00000018 00000100 00000001
		 00000018 00000000 0000001e 00000120
		 [140 bytes total]
i-cache-line-size 00000040 (64)
cpu-version      00900102 (9437442)
i-cache-block-size 00000040 (64)
reg              00000000
d-cache-block-size 00000040 (64)
clock-frequency  6b49d200 (1800000000)
ibm,processor-segment-sizes 0000001c 00000028
linux,phandle    7fe30698 (2145584792)
d-cache-size     00010000 (65536)
i-cache-size     00010000 (65536)
general-purpose 
name             "PowerPC,PA6T"
ibm,processor-page-sizes 0000000c 0000000e 00000010 00000012
		 00000014 00000018 0000001e
d-cache-sets     00000002
i-cache-sets     00000002
d-cache-line-size 00000040 (64)

/proc/device-tree/cpus/PowerPC,PA6T@1:
bus-frequency    35a4e900 (900000000)
64-bit          
timebase-frequency 03f940aa (66666666)
graphics        
device_type      "cpu"
ibm,segment-page-sizes 0000000c 00000000 00000001 0000000c
		 00000000 0000000e 00000020 00000001
		 0000000e 00000001 00000010 00000110
		 00000001 00000010 00000003 00000012
		 00000130 00000001 00000012 0000000f
		 00000014 00000030 00000001 00000014
		 0000001f 00000018 00000100 00000001
		 00000018 00000000 0000001e 00000120
		 [140 bytes total]
i-cache-line-size 00000040 (64)
cpu-version      00900102 (9437442)
i-cache-block-size 00000040 (64)
reg              00000001
d-cache-block-size 00000040 (64)
clock-frequency  6b49d200 (1800000000)
ibm,processor-segment-sizes 0000001c 00000028
linux,phandle    7fe30eb0 (2145586864)
d-cache-size     00010000 (65536)
i-cache-size     00010000 (65536)
general-purpose 
name             "PowerPC,PA6T"
ibm,processor-page-sizes 0000000c 0000000e 00000010 00000012
		 00000014 00000018 0000001e
d-cache-sets     00000002
i-cache-sets     00000002
d-cache-line-size 00000040 (64)
Darren wrote: The following series of 3 patches brings initial device tree patches for
A-Eon's Nemo motherboard, as used in the Amigaone X1000.

The dtb passed by the CFE firmware has a number of issues, which up till
now have been fixed by use of patches applied to the mainline kernel.
This occasionally causes problems with changes made to mainline.

Patching the firmware to correct the dtb is not an option for the
following reasons:

It was modified by a 3rd party, and we don't have a copy of the source.

All versions of CFE used on the X1000 export the same dtb.

At least one machine suffered damage during a firmware upgrade attempt,
many people will be unwilling to reflash their system if an upgrade is
produced.
Darren wrote: Pasemi arch code finds the root of the PCI-e bus by searching the
device-tree for a node called 'pxp'. But the root bus has a
compatible property of 'pasemi,rootbus' so search for that instead.
Darren wrote: Add config option for the Nemo motherboard used in the Amigaone X1000.
This is a custom PASemi board with an AMD SB600 southbridge, and needs
some patches to it device tree. This option will be used to build these
into the kernel
Darren wrote: The device tree on the Nemo passes all of the i8259 interruts with
numbers between 212 and 222, and points their interrupt-parent property
to the pasemi-opic, requiring custom patches to the kernel.
Fix the values so that they can be controlled by the generic ppc i8259
code.
Download the compiled device tree for the Nemo board: fdt-nemo-board.zip
http://www.amigalinux.org
http://www.supertuxkart-amiga.de

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

Re: New kernels

Post by xeno74 »

Hi All,

The alpha6 of kernel 5.16 is available for testing.

New:
Download: linux-image-5.16-alpha6-X1000_X5000.tar.gz

Image

Please test the kernels.

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

Running Linux on AmigaONEs can require some tinkering.
Post Reply