New kernels

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

Re: New kernels

Post by xeno74 »

Rob Herring wrote: Changing the firmware is not the only way to modify the DT. Perhaps a
DT overlay would work better than carrying patches if the patches
aren't upstreamable. It kind of depends on how early you'd need to
apply the overlay and whether you'd need external phandles (aka
__symbols__ node, which the base DTB wouldn't support).

Looking at the DT, I think this change might fix it. Can you test this change:

Code: Select all

diff --git a/drivers/of/address.c b/drivers/of/address.c
index e692809ff822..475b74413fdd 100644
--- a/drivers/of/address.c
+++ b/drivers/of/address.c
@@ -284,7 +284,7 @@ EXPORT_SYMBOL(of_range_to_resource);

 static int of_bus_isa_match(struct device_node *np)
 {
-       return of_node_name_eq(np, "isa");
+       return of_node_is_type(np, "isa") || of_node_name_eq(np, "isa");
 }

 static void of_bus_isa_count_cells(struct device_node *child,
http://www.amigalinux.org
http://www.supertuxkart-amiga.de

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

Re: New kernels

Post by xeno74 »

xeno74 wrote: Thu May 04, 2023 3:22 am
Rob Herring wrote: Changing the firmware is not the only way to modify the DT. Perhaps a
DT overlay would work better than carrying patches if the patches
aren't upstreamable. It kind of depends on how early you'd need to
apply the overlay and whether you'd need external phandles (aka
__symbols__ node, which the base DTB wouldn't support).

Looking at the DT, I think this change might fix it. Can you test this change:

Code: Select all

diff --git a/drivers/of/address.c b/drivers/of/address.c
index e692809ff822..475b74413fdd 100644
--- a/drivers/of/address.c
+++ b/drivers/of/address.c
@@ -284,7 +284,7 @@ EXPORT_SYMBOL(of_range_to_resource);

 static int of_bus_isa_match(struct device_node *np)
 {
-       return of_node_name_eq(np, "isa");
+       return of_node_is_type(np, "isa") || of_node_name_eq(np, "isa");
 }

 static void of_bus_isa_count_cells(struct device_node *child,
I tested this patch today but unfortunately the X1000 doesn't boot.
http://www.amigalinux.org
http://www.supertuxkart-amiga.de

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

Re: New kernels

Post by xeno74 »

xeno74 wrote: Wed Apr 26, 2023 2:43 pm Kernel 6.4:

Hans Verkuil has dropped the overlay support for BTTV TV cards. That means, that tvtime doesn't work anymore.
Hans Verkuil wrote: Destructive overlay support (i.e. where the video frame is DMA-ed
straight into a framebuffer) is effectively dead. It was a
necessary evil in the early days when computers were not fast enough
to copy SDTV video frames around, but today that's no longer a problem.

It requires access to the framebuffer memory, which is a bad idea and
very hard to do safely. In addition, in drm it is today almost
impossible to get hold of the framebuffer address.

So drop support for this.
bttv: drop overlay support

I reported this issue to the kernel developers today.

Link: [BTTV] [FSL P50x0] [PASEMI] TV Time doesn't work anymore after dropping the overlay support -- lore.kernel.org/linux-media
Hans Verkuil wrote: If v4l2-ctl fails, then try again
after applying this series:

https://patchwork.linuxtv.org/project/l ... abora.com/
This patch series solved the issue. :-)
http://www.amigalinux.org
http://www.supertuxkart-amiga.de

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

Re: New kernels

Post by xeno74 »

Hi All,

The alpha5 of kernel 6.4 is available for testing.

New:
Download: linux-image-6.4-alpha5-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
musa
Posts: 709
Joined: Tue Aug 23, 2011 7:58 pm

Re: New kernels

Post by musa »

Hi
trying to boot Fienix with vmlinux-6.4_a5
3 attempts with kernel panic.
Debian 32 bookworm boot with no errors.
Have a nice day
Image
AmigaX1000
Follow me on twitter @basjoo_dk
User avatar
xeno74
Posts: 9349
Joined: Fri Mar 23, 2012 7:58 am

Re: New kernels

Post by xeno74 »

Thank you for testing! :-)
http://www.amigalinux.org
http://www.supertuxkart-amiga.de

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

Re: New kernels

Post by xeno74 »

“Rob Herring“ wrote: Do you have a dmesg log with debug enabled for a successful boot? I searched archives and forum, but couldn't find one. isa-bridge.c has debug enabled so you should get a few messages.

From looking at the DT, the isa node has no ranges, so the difference in parsing code shouldn't even matter. You should be seeing this message:

printk(KERN_ERR "no ISA IO ranges or unexpected isa range, "
"mapping 64k\n");

Rob
“Rob Herring“ wrote: Commit e4ab08be5b49 ("powerpc/isa-bridge: Remove open coded "ranges" parsing") broke PASemi Nemo board booting. The issue is the ISA I/O range was not getting mapped as the logic to handle no "ranges" was inverted. If phb_io_base_phys is non-zero, then the ISA range defaults to the first 64K of the PCI I/O space. phb_io_base_phys should only be 0 when looking for a non-PCI ISA region.

Fixes: e4ab08be5b49 ("powerpc/isa-bridge: Remove open coded "ranges" parsing")
Link: https://lore.kernel.org/all/301595ad-0e ... nosoft.de/
Reported-by: Christian Zigotzky <chzigotzky@xenosoft.de>
Signed-off-by: Rob Herring <robh@kernel.org>
---
Untested, but I think this should fix the issue.

Code: Select all

 arch/powerpc/kernel/isa-bridge.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/arch/powerpc/kernel/isa-bridge.c b/arch/powerpc/kernel/isa-bridge.c
index 85bdd7d3652f..48e0eaf1ad61 100644
--- a/arch/powerpc/kernel/isa-bridge.c
+++ b/arch/powerpc/kernel/isa-bridge.c
@@ -93,11 +93,12 @@ static int process_ISA_OF_ranges(struct device_node *isa_node,
 	}
 
 inval_range:
-	if (!phb_io_base_phys) {
+	if (phb_io_base_phys) {
 		pr_err("no ISA IO ranges or unexpected isa range, mapping 64k\n");
 		remap_isa_base(phb_io_base_phys, 0x10000);
+		return 0;
 	}
-	return 0;
+	return -EINVAL;
 }
 
 
Link: [PATCH] powerpc: isa-bridge: Fix ISA mmapping when "ranges" is not present
http://www.amigalinux.org
http://www.supertuxkart-amiga.de

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

Re: New kernels

Post by xeno74 »

xeno74 wrote: Sat May 06, 2023 4:38 am
“Rob Herring“ wrote: Do you have a dmesg log with debug enabled for a successful boot? I searched archives and forum, but couldn't find one. isa-bridge.c has debug enabled so you should get a few messages.

From looking at the DT, the isa node has no ranges, so the difference in parsing code shouldn't even matter. You should be seeing this message:

printk(KERN_ERR "no ISA IO ranges or unexpected isa range, "
"mapping 64k\n");

Rob
“Rob Herring“ wrote: Commit e4ab08be5b49 ("powerpc/isa-bridge: Remove open coded "ranges" parsing") broke PASemi Nemo board booting. The issue is the ISA I/O range was not getting mapped as the logic to handle no "ranges" was inverted. If phb_io_base_phys is non-zero, then the ISA range defaults to the first 64K of the PCI I/O space. phb_io_base_phys should only be 0 when looking for a non-PCI ISA region.

Fixes: e4ab08be5b49 ("powerpc/isa-bridge: Remove open coded "ranges" parsing")
Link: https://lore.kernel.org/all/301595ad-0e ... nosoft.de/
Reported-by: Christian Zigotzky <chzigotzky@xenosoft.de>
Signed-off-by: Rob Herring <robh@kernel.org>
---
Untested, but I think this should fix the issue.

Code: Select all

 arch/powerpc/kernel/isa-bridge.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/arch/powerpc/kernel/isa-bridge.c b/arch/powerpc/kernel/isa-bridge.c
index 85bdd7d3652f..48e0eaf1ad61 100644
--- a/arch/powerpc/kernel/isa-bridge.c
+++ b/arch/powerpc/kernel/isa-bridge.c
@@ -93,11 +93,12 @@ static int process_ISA_OF_ranges(struct device_node *isa_node,
 	}
 
 inval_range:
-	if (!phb_io_base_phys) {
+	if (phb_io_base_phys) {
 		pr_err("no ISA IO ranges or unexpected isa range, mapping 64k\n");
 		remap_isa_base(phb_io_base_phys, 0x10000);
+		return 0;
 	}
-	return 0;
+	return -EINVAL;
 }
 
 
Link: [PATCH] powerpc: isa-bridge: Fix ISA mmapping when "ranges" is not present
Great! The X1000 boots with this patch! :-)
http://www.amigalinux.org
http://www.supertuxkart-amiga.de

Running Linux on AmigaONEs can require some tinkering.
User avatar
musa
Posts: 709
Joined: Tue Aug 23, 2011 7:58 pm

Re: New kernels

Post by musa »

Hi Christian can i have a try?
Thanks
AmigaX1000
Follow me on twitter @basjoo_dk
User avatar
xeno74
Posts: 9349
Joined: Fri Mar 23, 2012 7:58 am

Re: New kernels

Post by xeno74 »

musa wrote: Sun May 07, 2023 11:38 am Hi Christian can i have a try?
Thanks
I will compile the RC1 with this new patch tomorrow. Maybe I can release the RC1 after testing it on Wednesday.
http://www.amigalinux.org
http://www.supertuxkart-amiga.de

Running Linux on AmigaONEs can require some tinkering.
Post Reply