> From: Mathias Schmocker <s...@smat.ch>
> Date: Wed, 28 Oct 2020 20:54:13 +0100
> 
> Hello,
> Here a minimal diff to solve the swapped keys of the internal ISO 
> keyboard/trackpad found on my older Macbook1,1 13inch black laptop
> (6.8 i386 release)
> cvs diff: Diffing .
> Index: ukbd.c
> ===================================================================
> RCS file: /home/cvs/src/sys/dev/usb/ukbd.c,v
> retrieving revision 1.79
> diff -u -p -r1.79 ukbd.c
> --- ukbd.c    23 Aug 2020 11:08:02 -0000      1.79
> +++ ukbd.c    27 Oct 2020 19:18:51 -0000
> @@ -259,6 +259,7 @@ ukbd_attach(struct device *parent, struc
>                               case USB_PRODUCT_APPLE_GEYSER_ISO:
>                               case USB_PRODUCT_APPLE_WELLSPRING6_ISO:
>                               case USB_PRODUCT_APPLE_WELLSPRING8_ISO:
> +                             case USB_PRODUCT_APPLE_INT_KBTP_218_ISO:
>                                       sc->sc_munge = ukbd_apple_iso_munge;
>                                       break;
>                               case USB_PRODUCT_APPLE_WELLSPRING_ISO:
> Index: usbdevs
> ===================================================================
> RCS file: /home/cvs/src/sys/dev/usb/usbdevs,v
> retrieving revision 1.720
> diff -u -p -r1.720 usbdevs
> --- usbdevs   3 Aug 2020 14:25:44 -0000       1.720
> +++ usbdevs   27 Oct 2020 19:24:15 -0000
> @@ -941,6 +941,7 @@ product APPLE FOUNTAIN_ANSI       0x020e  Keybo
>   product APPLE FOUNTAIN_ISO  0x020f  Keyboard/Trackpad
>   product APPLE GEYSER_ANSI   0x0214  Keyboard/Trackpad
>   product APPLE GEYSER_ISO    0x0215  Keyboard/Trackpad
> +product APPLE INT_KBTP_218_ISO       0x0218  Keyboard/Trackpad
>   product APPLE WELLSPRING_ANSI       0x0223  Keyboard/Trackpad
>   product APPLE WELLSPRING_ISO        0x0224  Keyboard/Trackpad
>   product APPLE WELLSPRING_JIS        0x0225  Keyboard/Trackpad
> 
> With this, the sf keyboard maps correcly the less/greater and the 
> (swiss-french and swiss-german) section/degree key.
> On the console and on with the X-server.
> 

NetBSD has a better name for the device I think.  So I propose the
diff below which also adds a few more missing device IDs in the range.

ok?


Index: dev/usb/usbdevs
===================================================================
RCS file: /cvs/src/sys/dev/usb/usbdevs,v
retrieving revision 1.724
diff -u -p -r1.724 usbdevs
--- dev/usb/usbdevs     25 Oct 2020 09:03:01 -0000      1.724
+++ dev/usb/usbdevs     28 Oct 2020 20:29:58 -0000
@@ -951,6 +951,13 @@ product APPLE FOUNTAIN_ANSI        0x020e  Keybo
 product APPLE FOUNTAIN_ISO     0x020f  Keyboard/Trackpad
 product APPLE GEYSER_ANSI      0x0214  Keyboard/Trackpad
 product APPLE GEYSER_ISO       0x0215  Keyboard/Trackpad
+product APPLE GEYSER_JIS       0x0216  Keyboard/Trackpad
+product APPLE GEYSER3_ANSI     0x0217  Keyboard/Trackpad
+product APPLE GEYSER3_ISO      0x0218  Keyboard/Trackpad
+product APPLE GEYSER3_JIS      0x0219  Keyboard/Trackpad
+product APPLE GEYSER4_ANSI     0x021a  Keyboard/Trackpad
+product APPLE GEYSER4_ISO      0x021b  Keyboard/Trackpad
+product APPLE GEYSER4_JIS      0x021c  Keyboard/Trackpad
 product APPLE WELLSPRING_ANSI  0x0223  Keyboard/Trackpad
 product APPLE WELLSPRING_ISO   0x0224  Keyboard/Trackpad
 product APPLE WELLSPRING_JIS   0x0225  Keyboard/Trackpad
Index: dev/usb/ukbd.c
===================================================================
RCS file: /cvs/src/sys/dev/usb/ukbd.c,v
retrieving revision 1.79
diff -u -p -r1.79 ukbd.c
--- dev/usb/ukbd.c      23 Aug 2020 11:08:02 -0000      1.79
+++ dev/usb/ukbd.c      28 Oct 2020 20:29:58 -0000
@@ -257,6 +257,7 @@ ukbd_attach(struct device *parent, struc
                                switch (uha->uaa->product) {
                                case USB_PRODUCT_APPLE_FOUNTAIN_ISO:
                                case USB_PRODUCT_APPLE_GEYSER_ISO:
+                               case USB_PRODUCT_APPLE_GEYSER3_ISO:
                                case USB_PRODUCT_APPLE_WELLSPRING6_ISO:
                                case USB_PRODUCT_APPLE_WELLSPRING8_ISO:
                                        sc->sc_munge = ukbd_apple_iso_munge;

Reply via email to