public inbox for linux-m68k@lists.linux-m68k.org
 help / color / mirror / Atom feed
From: William R Sowerbutts <will@sowerbutts.com>
To: Finn Thain <fthain@linux-m68k.org>
Cc: Michael Schmitz <schmitzmic@gmail.com>,
	Geert Uytterhoeven <geert@linux-m68k.org>,
	linux-m68k <linux-m68k@lists.linux-m68k.org>,
	Richard Zidlicky <rz@linux-m68k.org>
Subject: Re: Linux 6.4.4 on m68k - Q40 - pata_falcon causes oops at boot time
Date: Wed, 16 Aug 2023 18:56:04 +0100	[thread overview]
Message-ID: <ZN0NtE0PA6bXVUGc@sowerbutts.com> (raw)
In-Reply-To: <ZNlYFCVubNgzmUfc@sowerbutts.com>

[-- Attachment #1: Type: text/plain, Size: 1623 bytes --]

On Sun, Aug 13, 2023 at 11:24:20PM +0100, William R Sowerbutts wrote:
>I am going to look at the pata_legacy driver and see if it might be usable 
>on the Q40 instead of pata_falcon.
>
>As a long term fix I think I need to read up on CONFIG_HAS_IOPORT_MAP to try 
>and understand how I might enable this.  I expect enabling it will have
>implications for all M68K machines, so maybe someone with more experience 
>should be making that decision.

Enabling CONFIG_HAS_IOPORT_MAP for the Q40 turned out to be simple.  Attached 
is the patch I am using -- it just sets NO_IOPORT_MAP=n when Q40 is enabled.

Enabling CONFIG_HAS_IOPORT_MAP allows pata_legacy to work on the Q40 with no 
further changes!

pata_legacy drives the IDE interface perfectly.  The data is byte swapped, so 
I think pata_falcon still has a place for Q40 users who want to use legacy 
reverse-byte-order disks.

I tested bulk transfer performance (exactly the same way as I tested 
pata_falcon with and without byte swapping); pata_legacy performs much the 
same as pata_falcon with byte swapping enabled (as one might expect).

I suppose the next step is to build a kernel supporting both Q40 and perhaps 
Atari, then test this in ARAnyM.  I'll try this out over the next few days.

Thanks

Will

_________________________________________________________________________
William R Sowerbutts                                  will@sowerbutts.com
"Carpe post meridiem"                               http://sowerbutts.com
         main(){char*s=">#=0> ^#X@#@^7=",c=0,m;for(;c<15;c++)for
         (m=-1;m<7;putchar(m++/6&c%3/2?10:s[c]-31&1<<m?42:32));}  


[-- Attachment #2: linux-6.4.10-q40-ioport.patch --]
[-- Type: text/x-diff, Size: 953 bytes --]

diff -urN linux-6.4.10.orig/arch/m68k/include/asm/kmap.h linux-6.4.10.q40/arch/m68k/include/asm/kmap.h
--- linux-6.4.10.orig/arch/m68k/include/asm/kmap.h	2023-08-11 11:14:29.000000000 +0100
+++ linux-6.4.10.q40/arch/m68k/include/asm/kmap.h	2023-08-16 00:34:12.894812394 +0100
@@ -58,6 +58,7 @@
 
 #endif /* CONFIG_MMU */
 
+#ifndef CONFIG_HAS_IOPORT_MAP
 #define ioport_map ioport_map
 static inline void __iomem *ioport_map(unsigned long port, unsigned int nr)
 {
@@ -68,5 +69,6 @@
 static inline void ioport_unmap(void __iomem *p)
 {
 }
+#endif /* CONFIG_HAS_IOPORT_MAP */
 
 #endif /* _KMAP_H */
diff -urN linux-6.4.10.orig/arch/m68k/Kconfig linux-6.4.10.q40/arch/m68k/Kconfig
--- linux-6.4.10.orig/arch/m68k/Kconfig	2023-08-11 11:14:29.000000000 +0100
+++ linux-6.4.10.q40/arch/m68k/Kconfig	2023-08-16 00:27:50.044269922 +0100
@@ -61,7 +61,8 @@
 	default y
 
 config NO_IOPORT_MAP
-	def_bool y
+        bool
+        default !Q40
 
 config HZ
 	int

  parent reply	other threads:[~2023-08-16 17:56 UTC|newest]

Thread overview: 44+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <ZLvZmVfzJNHlPTlJ@sowerbutts.com>
2023-07-23  8:35 ` Linux 6.4.4 on m68k - Q40 - pata_falcon causes oops at boot time Geert Uytterhoeven
2023-07-23  9:59   ` Finn Thain
2023-07-23 15:28     ` William R Sowerbutts
2023-07-24  1:43       ` Finn Thain
2023-07-24 11:09         ` William R Sowerbutts
2023-07-26  7:22           ` Finn Thain
2023-07-23 20:26     ` Michael Schmitz
2023-07-24 11:42       ` William R Sowerbutts
2023-07-24 20:26         ` Michael Schmitz
2023-07-26  9:22           ` Finn Thain
2023-07-26 20:13             ` Michael Schmitz
2023-07-27  1:16               ` Finn Thain
2023-07-27  3:17                 ` Michael Schmitz
2023-07-27 23:47                   ` Finn Thain
2023-07-28  7:21                     ` Geert Uytterhoeven
2023-07-28  7:52                     ` Michael Schmitz
2023-07-28  8:03                       ` Geert Uytterhoeven
2023-07-29  4:56                         ` Michael Schmitz
2023-08-13  3:06                     ` Michael Schmitz
2023-08-13  7:38                       ` Finn Thain
2023-08-13 21:20                         ` Michael Schmitz
2023-08-13 22:24                         ` William R Sowerbutts
2023-08-13 22:54                           ` Michael Schmitz
2023-08-13 23:37                             ` Finn Thain
2023-08-14  0:33                               ` Michael Schmitz
2023-08-14  1:15                                 ` Finn Thain
2023-08-14  2:48                                   ` Michael Schmitz
2023-08-14 11:18                             ` William R Sowerbutts
2023-08-14 20:15                               ` Michael Schmitz
2023-08-14 20:24                                 ` Richard Z
2023-08-14 23:31                                   ` Finn Thain
2023-08-15  3:05                                     ` Richard Z
2023-08-15  3:30                                       ` Michael Schmitz
2023-08-15  9:49                                         ` William R Sowerbutts
2023-08-15 10:42                                           ` Geert Uytterhoeven
2023-08-15 20:43                                             ` Richard Z
2023-08-15 20:13                                           ` Michael Schmitz
2023-08-15 22:10                                             ` William R Sowerbutts
2023-08-15 22:38                                               ` Michael Schmitz
2023-08-14 20:19                               ` Richard Z
2023-08-14 21:22                                 ` Michael Schmitz
2023-08-15 11:04                                   ` William R Sowerbutts
2023-08-16 17:56                           ` William R Sowerbutts [this message]
2023-07-27  7:18               ` Geert Uytterhoeven

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=ZN0NtE0PA6bXVUGc@sowerbutts.com \
    --to=will@sowerbutts.com \
    --cc=fthain@linux-m68k.org \
    --cc=geert@linux-m68k.org \
    --cc=linux-m68k@lists.linux-m68k.org \
    --cc=rz@linux-m68k.org \
    --cc=schmitzmic@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox