[PATCH] .apple kbd layout for sf and sg
Hello, this diff with current allows setting a useable kbd sf.apple and sg.apple (and the nodead variant) on a Macbook 1.1 (wscons) (alternative was xorg.conf macbook79 with ch layout and fr variant, but without the beautiful spleen consolefont...) Index: makemap.awk === RCS file: /home/cvs/src/sys/dev/usb/makemap.awk,v retrieving revision 1.15 diff -u -p -r1.15 makemap.awk --- makemap.awk 2 Nov 2020 19:45:18 - 1.15 +++ makemap.awk 4 Nov 2020 07:50:20 - @@ -37,6 +37,7 @@ BEGIN { declk = 0 haskeys = 0 kbfr = 0 + kbsg = 0 nmaps = 0 # PS/2 id -> UKBD conversion table, or "sanity lossage 101" @@ -407,6 +408,38 @@ $1 == "#define" || $1 == "#undef" { print "KC(47),\tKS_masculine,\tKS_ordfeminine," print "KC(50),\tKS_backslash,\tKS_bar," print "KC(52),\tKS_dead_tilde,\tKS_dead_circumflex" + } else + if (mapname == "ukbd_keydesc_sg[]") { + print $0 + print "\nstatic const keysym_t ukbd_keydesc_sg_apple[] = {" + print "/* pos normal\t\tshifted\t\talt\t\tshift-alt */" + print "KC(10),\tKS_g,\t\tKS_G,\t\tKS_at," + print "KC(17),\tKS_n,\t\tKS_N,\t\tKS_dead_tilde," + print "KC(30),\tKS_1,\t\tKS_plus,\tKS_plusminus," + print " KC(34),\tKS_5,\t\tKS_percent,\tKS_bracketleft," + print " KC(35),\tKS_6,\t\tKS_ampersand,\tKS_bracketright," + print " KC(36),\tKS_7,\t\tKS_slash,\tKS_bar,\t\tKS_backslash," + print " KC(37),\tKS_8,\t\tKS_parenleft,\tKS_braceleft," + print " KC(38),\tKS_9,\t\tKS_parenright,\tKS_braceright," + print "KC(88),\tKS_Mode_switch,\tKS_Multi_key," + print "KC(226),\tKS_Mode_switch,\tKS_Multi_key," + } else + if (mapname == "ukbd_keydesc_sg_nodead[]") { + print $0 + print "\nstatic const keysym_t ukbd_keydesc_sg_apple_nodead[] = {" + print "/* pos normal\t\tshifted\t\talt\t\tshift-alt */" + print "KC(17),\tKS_n,\t\tKS_N,\t\tKS_asciitilde," + print " KC(45),\tKS_apostrophe,\tKS_question,\tKS_acute," + print "KC(46),\tKS_asciicircum,\tKS_grave," + print "KC(48),\tKS_diaeresis,\tKS_exclam," + } else + if (mapname == "ukbd_keydesc_sf[]") { + print $0 + print "\nstatic const keysym_t ukbd_keydesc_sf_apple[] = {" + print "/* pos normal\t\tshifted\t\talt\t\tshift-alt */" + print "KC(47),\tKS_egrave,\tKS_udiaeresis," + print "KC(51),\tKS_eacute,\tKS_odiaeresis," + print "KC(52),\tKS_agrave,\tKS_adiaeresis," } } } @@ -425,6 +458,27 @@ $1 == "#define" || $1 == "#undef" { /KB_PT/ { print $0 print "\tKBD_MAP(KB_PT | KB_APPLE,\tKB_PT,\tukbd_keydesc_pt_apple)," + next +} +/KB_SG/ { + print $0 + kbsg++ + if (kbsg == 1) { + print "\tKBD_MAP(KB_SG | KB_APPLE,\tKB_SG,\tukbd_keydesc_sg_apple)," + } else if (kbsg == 2) { + print "\tKBD_MAP(KB_SG | KB_APPLE | KB_NODEAD,\tKB_SG | KB_APPLE," + print "\t\tukbd_keydesc_sg_apple_nodead)," + # Add first .apple variant for sf + } else if (kbsg == 3) { + print "\tKBD_MAP(KB_SF | KB_APPLE,\tKB_SG | KB_APPLE,\tukbd_keydesc_sf_apple)," + } + next +} +/KB_SF/ { + print $0 + # Add second .apple variant for sf + print "\tKBD_MAP(KB_SF | KB_APPLE | KB_NODEAD,\tKB_SF | KB_APPLE," + print "\t\tukbd_keydesc_sg_apple_nodead)," next } { Index: ukbd.4 === RCS file: /home/cvs/src/share/man/man4/ukbd.4,v retrieving revision 1.22 diff -u -p -r1.22 ukbd.4 --- ukbd.4 11 May 2019 14:19:16 - 1.22 +++ ukbd.4 3 Nov 2020 19:36:27 - @@ -171,10 +171,20 @@ Russian in .Pq sf Swiss French with .Dq dead accents . +.It KB_SF | KB_APPLE +.Pq sf.apple +Swiss French with +.Dq dead accents +for MacBooks. .It KB_SG .Pq sg Swiss German with .Dq dead accents . +.It KB_SG | KB_APPLE +.Pq sg.apple +Swiss German with +.Dq dead accents +for MacBooks. .It KB_SI .Pq si Slovenian.
[PATCH] Macbook1,1 - minimal diff to swap 2 key for ISO internal kbd
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 - 1.79 +++ ukbd.c 27 Oct 2020 19:18:51 - @@ -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 - 1.720 +++ usbdevs 27 Oct 2020 19:24:15 - @@ -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. I was annoyed by using an external Dell USB keyboard... (not affected by this diff, dmesg below) OpenBSD 6.8 (GENERIC.MP) #27: Tue Oct 27 20:56:51 CET 2020 s...@i386.smat.ch:/sys/arch/i386/compile/GENERIC.MP real mem = 2114273280 (2016MB) avail mem = 2059362304 (1963MB) random: good seed from bootblocks mpath0 at root scsibus0 at mpath0: 256 targets mainbus0 at root bios0 at mainbus0: date 07/29/05, SMBIOS rev. 2.4 @ 0xe7440 (37 entries) bios0: vendor Apple Computer, Inc. version "MB11.88Z.0061.B03.0610121324" date 10/12/06 bios0: Apple Computer, Inc. MacBook1,1 acpi0 at bios0: ACPI 3.0 acpi0: sleep states S0 S3 S4 S5 acpi0: tables DSDT FACP HPET APIC MCFG ASF! SBST ECDT SSDT SSDT SSDT acpi0: wakeup devices ADP1(S3) LID0(S3) PXS1(S4) PXS2(S4) USB1(S3) USB2(S3) USB3(S3) USB4(S3) USB7(S3) EC__(S3) acpitimer0 at acpi0: 3579545 Hz, 24 bits acpihpet0 at acpi0: 14318179 Hz acpimadt0 at acpi0 addr 0xfee0: PC-AT compat cpu0 at mainbus0: apid 0 (boot processor) cpu0: Genuine Intel(R) CPU 1500 @ 2.00GHz ("GenuineIntel" 686-class) 2 GHz, 06-0e-08 cpu0: FPU,V86,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,CFLUSH,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE,SSE3,MWAIT,VMX,EST,TM2,xTPR,PDCM,NXE,PERF,SENSOR,MELTDOWN mtrr: Pentium Pro MTRR support, 8 var ranges, 88 fixed ranges cpu0: apic clock running at 166MHz cpu0: mwait min=64, max=64, C-substates=0.2.2.2.2, IBE cpu1 at mainbus0: apid 1 (application processor) cpu1: Genuine Intel(R) CPU 1500 @ 2.00GHz ("GenuineIntel" 686-class) 2 GHz, 06-0e-08 cpu1: FPU,V86,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,CFLUSH,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE,SSE3,MWAIT,VMX,EST,TM2,xTPR,PDCM,NXE,PERF,SENSOR,MELTDOWN ioapic0 at mainbus0: apid 1 pa 0xfec0, version 20, 24 pins, remapped acpimcfg0 at acpi0 acpimcfg0: addr 0xe000, bus 0-255 acpiec0 at acpi0 acpiprt0 at acpi0: bus 0 (PCI0) acpiprt1 at acpi0: bus 1 (RP01) acpiprt2 at acpi0: bus 2 (RP02) acpiprt3 at acpi0: bus 3 (PCIB) acpisbs0 at acpi0: SBS0 model "ASMB013" serial 1234 type LION oem "HSW" acpiac0 at acpi0: AC unit online acpibtn0 at acpi0: LID0 "APP0002" at acpi0 not configured acpibtn1 at acpi0: PWRB acpibtn2 at acpi0: SLPB "PNP0A08" at acpi0 not configured asmc0 at acpi0: SMC_ (smc-napa) addr 0x300/0x20: rev 1.4f504, 203 keys "APP0003" at acpi0 not configured "ACPI0001" at acpi0 not configured "IFX0101" at acpi0 not configured acpicmos0 at acpi0 acpicpu0 at acpi0: !C4(100@55 mwait@0x31), !C3(500@1 mwait@0x20), !C2(500@1 mwait@0x10), C1(1000@1 mwait), PSS acpicpu1 at acpi0: !C4(100@55 mwait@0x31), !C3(500@1 mwait@0x20), !C2(500@1 mwait@0x10), C1(1000@1 mwait), PSS acpivideo0 at acpi0: GFX0 bios0: ROM list: 0xc/0xe600! cpu0: Enhanced SpeedStep 1998 MHz: speeds: 2000, 1833, 1667, 1500, 1333, 1000 MHz memory map conflict 0xe00f8000/0x1000 memory map conflict 0xfed1c000/0x4000 memory map conflict 0xfffb/0x3 pci0 at mainbus0 bus 0: configuration mode 1 (bios) pchb0 at pci0 dev 0 function 0 "Intel 82945GM Host" rev 0x03 inteldrm0 at pci0 dev 2 function 0 "Intel 82945GM Video" rev 0x03 drm0 at inteldr
Re: PC Engines APU2 coming soon - how is OpenBSD's support so far?
Le 16.11.15 18:42, Jason Barbier a écrit : Looks like you need to email support and get the updated BIOS. I had the same problem and there is an update to the bios to allow for mSATA boot but not SD card boot yet. Yes, mSATA install and boot works after this bios update: http://pcengines.ch/file/apu151109.zip SeaBIOS (version rel-1.8.0-190-gc029eab-20151109_141843-wim-ws) BUILD: gcc: binutils: (GNU Binutils) 2.23.2 <...> Google, Inc. Serial Graphics Adapter 08/22/15 SGABIOS $Id: sgabios.S 8 2010-04-22 00:03:40Z nlaredo $ (wiv@coreboot-Virtual-Machine) Sat Aug 22 09:25:30 UTC 2015 But hooking a 2TB WD Element HDD still hangs the APU2 on the next reboot (4k sectors, USB 3.0, bad init timings in the bios ?) Symptoms: Searching bootorder for: /pci@i0cf8/*@11/drive@0/disk@0 WARNING - Timeout at wait_bit:310! <...> USB MSC vendor='WD' product='Elements 10B8' rev='1012' type=0 removable=0 call16 with invalid stack And if you choose the memtest payload, there is no way to abort it. Mathias On Sat, Nov 14, 2015, at 10:22 AM, Mathias Schmocker wrote: > Le 14.11.15 17:02, Chris Cappuccio a écrit : > > Mathias Schmocker [s...@smat.ch] wrote: > >> > >> First tests with a bootable OpenBSD amd64 5.8-current USB stick and > >> installation on the 16GB mSata internal storage. > >> After reboot, BIOS could find mSata to boot on, but defaulted to the > memtest > >> boot payload > >> > > > > This is a setting you can change, although the default boot order > would put memtest last. > > Not for me: > > 1. USB MSC Drive SanDisk Ultra Fit 1.00 > 2. Payload [memtest] > 3. Payload [setup] > > I have now successfully installed and booted on a small 16GB SanDisk USB > key, root on sd1a (but I had a hard lockup once, with > > xhci_wait_for_command: Command ring still running ...) > > But pressing F10 and 3 to access setup and placing mSata in front of all > the other does NOT work (even if sd0a has a bootable bsd.rd, /boot and > the proper /etc/boot.conf, and is accessible once OpenBSD runs out of > the USB key ...) > > Which SeaBIOS, BUILD version, and option rom does your APU2 display when > booting up ? > > > I've had no problems with apu2 detecting msata so far.. > > > >> Unable to abort memtest by pressing (esc) on the serial console, or > (c) for > >> configure. > >> > > > > You have to escape to the prompt before memtest starts. > > > > >
Re: PC Engines APU2 coming soon - how is OpenBSD's support so far?
Le 14.11.15 17:02, Chris Cappuccio a écrit : > Mathias Schmocker [s...@smat.ch] wrote: >> >> First tests with a bootable OpenBSD amd64 5.8-current USB stick and >> installation on the 16GB mSata internal storage. >> After reboot, BIOS could find mSata to boot on, but defaulted to the memtest >> boot payload >> > > This is a setting you can change, although the default boot order would put memtest last. Not for me: 1. USB MSC Drive SanDisk Ultra Fit 1.00 2. Payload [memtest] 3. Payload [setup] I have now successfully installed and booted on a small 16GB SanDisk USB key, root on sd1a (but I had a hard lockup once, with > xhci_wait_for_command: Command ring still running ...) But pressing F10 and 3 to access setup and placing mSata in front of all the other does NOT work (even if sd0a has a bootable bsd.rd, /boot and the proper /etc/boot.conf, and is accessible once OpenBSD runs out of the USB key ...) Which SeaBIOS, BUILD version, and option rom does your APU2 display when booting up ? > I've had no problems with apu2 detecting msata so far.. > >> Unable to abort memtest by pressing (esc) on the serial console, or (c) for >> configure. >> > > You have to escape to the prompt before memtest starts. > >
Re: PC Engines APU2 coming soon - how is OpenBSD's support so far?
Hello, APU2 BETA TEST 4GB version with: SeaBIOS (version rel-1.8.0-181-g0af5958) BUILD: gcc: (Ubuntu 4.8.4-2ubuntu1~14.04) 4.8.4 binutils: (GNU Binutils for Ubuntu) 2.24 <...> Running option rom at c000:0003 Google, Inc. Serial Graphics Adapter 08/22/15 SGABIOS $Id: sgabios.S 8 2010-04-22 00:03:40Z nlaredo $ (wiv@coreboot- Virtual-Machine) Sat Aug 22 09:25:30 UTC 2015 Term: 80x24 IO4 0 Turning on vga text mode console <...> First tests with a bootable OpenBSD amd64 5.8-current USB stick and installation on the 16GB mSata internal storage. After reboot, BIOS could find mSata to boot on, but defaulted to the memtest boot payload Unable to abort memtest by pressing (esc) on the serial console, or (c) for configure. Other install trials with a the bootable USB stick and another USB HDD not conclusive yet. It seems to me that the BETA bios has some trouble to properly and reliably detect USB, or boot from mSata. Mathias Le 04.11.15 18:31, Noth a écrit : This is with the -CURRENT : OpenBSD 5.8-current (GENERIC.MP) #0: Wed Nov 4 17:47:40 CET 2015 r...@euryale.nineinchnetworks.ch:/usr/src/sys/arch/amd64/compile/GENERIC.MP real mem = 4261081088 (4063MB) avail mem = 4127813632 (3936MB) mpath0 at root scsibus0 at mpath0: 256 targets mainbus0 at root bios0 at mainbus0: SMBIOS rev. 2.7 @ 0xdffb7020 (7 entries) bios0: vendor coreboot version "APU2A_20150924-3-g0bf9198-dirty" date 09/28/2015 bios0: PC Engines apu2 acpi0 at bios0: rev 2 acpi0: sleep states S0 S1 S2 S3 S4 S5 acpi0: tables DSDT FACP SSDT APIC HEST SSDT SSDT HPET acpi0: wakeup devices PWRB(S4) PBR4(S4) PBR5(S4) PBR6(S4) PBR7(S4) PBR8(S4) UOH1(S3) UOH3(S3) UOH5(S3) XHC0(S4) acpitimer0 at acpi0: 3579545 Hz, 32 bits acpimadt0 at acpi0 addr 0xfee0: PC-AT compat cpu0 at mainbus0: apid 0 (boot processor) cpu0: AMD GX-412TC SOC, 998.27 MHz cpu0: FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,MMX,FXSR,SSE,SSE2,HTT,SSE3,PCLMUL,MWAIT,SSSE3,CX16,SSE4.1,SSE4.2,MOVBE,POPCNT,AES,XSAVE,AVX,F16C,NXE,MMXX,FFXSR,PAGE1GB,LONG,LAHF,CMPLEG,SVM,EAPICSP,AMCR8,ABM,SSE4A,MASSE,3DNOWP,OSVW,IBS,SKINIT,TOPEXT,ITSC,BMI1 cpu0: 32KB 64b/line 2-way I-cache, 32KB 64b/line 8-way D-cache, 2MB 64b/line 16-way L2 cache cpu0: ITLB 32 4KB entries fully associative, 8 4MB entries fully associative cpu0: DTLB 40 4KB entries fully associative, 8 4MB entries fully associative cpu0: smt 0, core 0, package 0 mtrr: Pentium Pro MTRR support, 8 var ranges, 88 fixed ranges cpu0: apic clock running at 99MHz cpu0: mwait min=64, max=64, IBE cpu1 at mainbus0: apid 1 (application processor) cpu1: AMD GX-412TC SOC, 998.11 MHz cpu1: FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,MMX,FXSR,SSE,SSE2,HTT,SSE3,PCLMUL,MWAIT,SSSE3,CX16,SSE4.1,SSE4.2,MOVBE,POPCNT,AES,XSAVE,AVX,F16C,NXE,MMXX,FFXSR,PAGE1GB,LONG,LAHF,CMPLEG,SVM,EAPICSP,AMCR8,ABM,SSE4A,MASSE,3DNOWP,OSVW,IBS,SKINIT,TOPEXT,ITSC,BMI1 cpu1: 32KB 64b/line 2-way I-cache, 32KB 64b/line 8-way D-cache, 2MB 64b/line 16-way L2 cache cpu1: ITLB 32 4KB entries fully associative, 8 4MB entries fully associative cpu1: DTLB 40 4KB entries fully associative, 8 4MB entries fully associative cpu1: smt 0, core 1, package 0 cpu2 at mainbus0: apid 2 (application processor) cpu2: AMD GX-412TC SOC, 998.11 MHz cpu2: FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,MMX,FXSR,SSE,SSE2,HTT,SSE3,PCLMUL,MWAIT,SSSE3,CX16,SSE4.1,SSE4.2,MOVBE,POPCNT,AES,XSAVE,AVX,F16C,NXE,MMXX,FFXSR,PAGE1GB,LONG,LAHF,CMPLEG,SVM,EAPICSP,AMCR8,ABM,SSE4A,MASSE,3DNOWP,OSVW,IBS,SKINIT,TOPEXT,ITSC,BMI1 cpu2: 32KB 64b/line 2-way I-cache, 32KB 64b/line 8-way D-cache, 2MB 64b/line 16-way L2 cache cpu2: ITLB 32 4KB entries fully associative, 8 4MB entries fully associative cpu2: DTLB 40 4KB entries fully associative, 8 4MB entries fully associative cpu2: smt 0, core 2, package 0 cpu3 at mainbus0: apid 3 (application processor) cpu3: AMD GX-412TC SOC, 998.11 MHz cpu3: FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,MMX,FXSR,SSE,SSE2,HTT,SSE3,PCLMUL,MWAIT,SSSE3,CX16,SSE4.1,SSE4.2,MOVBE,POPCNT,AES,XSAVE,AVX,F16C,NXE,MMXX,FFXSR,PAGE1GB,LONG,LAHF,CMPLEG,SVM,EAPICSP,AMCR8,ABM,SSE4A,MASSE,3DNOWP,OSVW,IBS,SKINIT,TOPEXT,ITSC,BMI1 cpu3: 32KB 64b/line 2-way I-cache, 32KB 64b/line 8-way D-cache, 2MB 64b/line 16-way L2 cache cpu3: ITLB 32 4KB entries fully associative, 8 4MB entries fully associative cpu3: DTLB 40 4KB entries fully associative, 8 4MB entries fully associative cpu3: smt 0, core 3, package 0 ioapic0 at mainbus0: apid 4 pa 0xfec0, version 21, 24 pins ioapic1 at mainbus0: apid 5 pa 0xfec2, version 21, 32 pins ioapic1: misconfigured as apic 0, remapped to apid 5 acpihpet0 at acpi0: 14318180 Hz acpiprt0 at acpi0: bus 0 (PCI0) acpiprt1 at acpi0: bus -1 (PBR4) acpiprt2 at acpi0: bus 1 (PBR5) acpiprt3 at acpi0: bus 2 (PBR6) acpiprt4 at acpi0: bus 3 (PBR7) acpiprt5 at acpi0: bus -1 (PBR8) acpicpu0 at acpi0: !C2(0@400 io@0x1771), C1(@1 halt!),