Thanks a lot for your help Miod. I will try to apply this patch and rebuild the kernel.
On December 21, 2023 2:29:32 PM GMT+01:00, Miod Vallat <m...@online.fr> wrote: >> Hello Miod, >> >> Thank you for your reply. >> >> It would appear that, at least in my case, /dev/tty00 is not mapped to >> any driver. > >Oops, my had, I hadn't looked carefully enough. It turns out that there >are no device nodes created for pluart at the moment. > >The following diff takes care of it; you will need to build a new kernel >with the conf.c change and also need to use the updated MAKEDEV to >create the /dev/ttyP0 node. > >Index: etc//MAKEDEV.common >=================================================================== >RCS file: /OpenBSD/src/etc/MAKEDEV.common,v >retrieving revision 1.120 >diff -u -p -r1.120 MAKEDEV.common >--- etc//MAKEDEV.common 28 Jan 2023 11:04:47 -0000 1.120 >+++ etc//MAKEDEV.common 21 Dec 2023 13:26:21 -0000 >@@ -167,6 +167,7 @@ target(all, bpf)dnl > target(all, kcov)dnl > target(all, dt)dnl > target(all, kstat)dnl >+twrget(all, pluart, ttyP0, 0, 1)dnl > dnl > _mkdev(all, {-all-}, {-dnl > show_target(all)dnl >@@ -535,3 +536,8 @@ __devitem(kstat, kstat, Kernel Statistic > _mkdev(kstat, kstat, {-M kstat c major_kstat_c 0 640-})dnl > __devitem(efi, efi, EFI runtime services)dnl > _mkdev(efi, efi, {-M efi c major_efi_c 0 600-})dnl >+__devitem({-pluart-}, {-ttyP[0-1]-}, serial ports)dnl >+_mkdev(com, {-ttyP[0-1]-}, {-U=${i#ttyP*} >+ o=$(h2d $U) >+ M ttyP$U c major_pluart_c $o 660 dialer root >+ M cuaP$U c major_pluart_c Add($o, 128) 660 dialer root-})dnl >Index: etc//etc.arm64/MAKEDEV >=================================================================== >RCS file: /OpenBSD/src/etc/etc.arm64/MAKEDEV,v >retrieving revision 1.27 >diff -u -p -r1.27 MAKEDEV >--- etc//etc.arm64/MAKEDEV 28 Jan 2023 11:47:25 -0000 1.27 >+++ etc//etc.arm64/MAKEDEV 21 Dec 2023 13:26:21 -0000 >@@ -39,6 +39,7 @@ > # ch* SCSI media changers > # Terminal ports: > # tty[0-7][0-9a-f] NS16x50 serial ports >+# ttyP[0-1] serial ports > # Pseudo terminals: > # ptm pty master device > # pty* Set of 62 master pseudo terminals >@@ -511,12 +512,12 @@ all) > R efi ipmi0 dri gpio0 gpio1 gpio2 bktr0 vnd0 vnd1 vnd2 vnd3 > R sd0 sd1 sd2 sd3 sd4 sd5 sd6 sd7 sd8 sd9 cd0 cd1 rd0 tap0 > R tap1 tap2 tap3 tun0 tun1 tun2 tun3 bio pty0 diskmap vscsi0 >- R ch0 audio0 audio1 audio2 audio3 kstat dt bpf fuse pppac pppx >- R hotplug ptm local wscons pci0 pci1 pci2 pci3 uall rmidi0 >- R rmidi1 rmidi2 rmidi3 rmidi4 rmidi5 rmidi6 rmidi7 tuner0 >- R radio0 video0 video1 uk0 random tty00 tty01 tty02 tty03 >- R tty04 tty05 tty06 tty07 tty08 tty09 tty0a tty0b apm pf wd0 >- R wd1 wd2 wd3 std fd >+ R ch0 audio0 audio1 audio2 audio3 ttyP00 ttyP01 kstat dt bpf >+ R fuse pppac pppx hotplug ptm local wscons pci0 pci1 pci2 pci3 >+ R uall rmidi0 rmidi1 rmidi2 rmidi3 rmidi4 rmidi5 rmidi6 rmidi7 >+ R tuner0 radio0 video0 video1 uk0 random tty00 tty01 tty02 >+ R tty03 tty04 tty05 tty06 tty07 tty08 tty09 tty0a tty0b apm pf >+ R wd0 wd1 wd2 wd3 std fd > ;; > > wd*|sd*) >Index: etc//etc.arm64/MAKEDEV.md >=================================================================== >RCS file: /OpenBSD/src/etc/etc.arm64/MAKEDEV.md,v >retrieving revision 1.16 >diff -u -p -r1.16 MAKEDEV.md >--- etc//etc.arm64/MAKEDEV.md 14 Jan 2023 12:15:12 -0000 1.16 >+++ etc//etc.arm64/MAKEDEV.md 21 Dec 2023 13:26:21 -0000 >@@ -34,6 +34,7 @@ _TITLE(tap) > _DEV(ch, 17) > _TITLE(term) > _DEV(com, 8) >+_DEV(pluart, 10) > _TITLE(pty) > _DEV(ptm, 81) > _DEV(pty, 6) >Index: etc//etc.armv7/MAKEDEV >=================================================================== >RCS file: /OpenBSD/src/etc/etc.armv7/MAKEDEV,v >retrieving revision 1.42 >diff -u -p -r1.42 MAKEDEV >--- etc//etc.armv7/MAKEDEV 28 Jan 2023 11:47:25 -0000 1.42 >+++ etc//etc.armv7/MAKEDEV 21 Dec 2023 13:26:21 -0000 >@@ -40,6 +40,7 @@ > # st* SCSI tape drives > # Terminal ports: > # tty[0-7][0-9a-f] NS16x50 serial ports >+# ttyP[0-1] serial ports > # Pseudo terminals: > # ptm pty master device > # pty* Set of 62 master pseudo terminals >@@ -494,12 +495,12 @@ all) > R gpio0 gpio1 gpio2 gpio3 gpio4 gpio5 gpio6 gpio7 gpio8 vnd0 > R vnd1 vnd2 vnd3 sd0 sd1 sd2 sd3 sd4 sd5 sd6 sd7 sd8 sd9 cd0 > R cd1 rd0 tap0 tap1 tap2 tap3 tun0 tun1 tun2 tun3 bio pty0 >- R diskmap vscsi0 ch0 audio0 audio1 audio2 kstat dt bpf fuse >- R pppac pppx hotplug ptm local wscons pci0 pci1 pci2 pci3 uall >- R rmidi0 rmidi1 rmidi2 rmidi3 rmidi4 rmidi5 rmidi6 rmidi7 >- R tuner0 radio0 video0 video1 uk0 random tty00 tty01 tty02 >- R tty03 tty04 tty05 tty06 tty07 tty08 tty09 tty0a tty0b apm pf >- R wd0 wd1 wd2 wd3 std st0 st1 fd >+ R diskmap vscsi0 ch0 audio0 audio1 audio2 ttyP00 ttyP01 kstat >+ R dt bpf fuse pppac pppx hotplug ptm local wscons pci0 pci1 >+ R pci2 pci3 uall rmidi0 rmidi1 rmidi2 rmidi3 rmidi4 rmidi5 >+ R rmidi6 rmidi7 tuner0 radio0 video0 video1 uk0 random tty00 >+ R tty01 tty02 tty03 tty04 tty05 tty06 tty07 tty08 tty09 tty0a >+ R tty0b apm pf wd0 wd1 wd2 wd3 std st0 st1 fd > ;; > > wd*|sd*) >Index: etc//etc.armv7/MAKEDEV.md >=================================================================== >RCS file: /OpenBSD/src/etc/etc.armv7/MAKEDEV.md,v >retrieving revision 1.22 >diff -u -p -r1.22 MAKEDEV.md >--- etc//etc.armv7/MAKEDEV.md 9 Nov 2022 19:35:23 -0000 1.22 >+++ etc//etc.armv7/MAKEDEV.md 21 Dec 2023 13:26:21 -0000 >@@ -42,9 +42,9 @@ _DEV(wd, 16, 16) > _TITLE(tap) > _DEV(st, 25) > _TITLE(term) >-dnl _DEV(com, 12) > dnl _DEV(fcom, 54) > _DEV(com, 12) >+_DEV(pluart, 10) > _TITLE(pty) > _DEV(ptm, 98) > _DEV(pty, 5) >Index: share/man/man4/pluart.4 >=================================================================== >RCS file: /OpenBSD/src/share/man/man4/pluart.4,v >retrieving revision 1.2 >diff -u -p -r1.2 pluart.4 >--- share/man/man4/pluart.4 2 Jul 2018 15:39:33 -0000 1.2 >+++ share/man/man4/pluart.4 21 Dec 2023 13:26:21 -0000 >@@ -27,6 +27,13 @@ > The > .Nm > driver supports the ARM PrimeCell PL011 UART. >+.Sh FILES >+.Bl -tag -width Pa -compact >+.It Pa /dev/ttyP0 >+.It Pa /dev/ttyP1 >+.It Pa /dev/cuap0 >+.It Pa /dev/cuaP1 >+.El > .Sh SEE ALSO > .Xr tty 4 > .Rs >Index: sys/arch/arm/arm/conf.c >=================================================================== >RCS file: /OpenBSD/src/sys/arch/arm/arm/conf.c,v >retrieving revision 1.59 >diff -u -p -r1.59 conf.c >--- sys/arch/arm/arm/conf.c 2 Sep 2022 20:06:55 -0000 1.59 >+++ sys/arch/arm/arm/conf.c 21 Dec 2023 13:26:21 -0000 >@@ -142,6 +142,9 @@ cdev_decl(wsmouse); > #include "radio.h" > cdev_decl(radio); > >+#include "pluart.h" >+cdev_decl(pluart); >+ > #include <arm/conf.h> > > /* Block devices */ >@@ -275,7 +278,7 @@ struct cdevsw cdevsw[] = { > cdev_fd_init(1,filedesc), /* 7: file descriptor > pseudo-device */ > cdev_ksyms_init(NKSYMS,ksyms), /* 8: Kernel symbols device */ > cdev_lpt_init(NLPT,lpt), /* 9: parallel printer */ >- cdev_notdef(), /* 10: */ >+ cdev_tty_init(NPLUART,pluart), /* 10: serial port */ > cdev_notdef(), /* 11: */ > cdev_tty_init(NCOM,com), /* 12: serial port */ > cdev_gpio_init(NGPIO,gpio), /* 13: GPIO interface */ >Index: sys/arch/arm64/arm64/conf.c >=================================================================== >RCS file: /OpenBSD/src/sys/arch/arm64/arm64/conf.c,v >retrieving revision 1.22 >diff -u -p -r1.22 conf.c >--- sys/arch/arm64/arm64/conf.c 6 Mar 2023 17:20:06 -0000 1.22 >+++ sys/arch/arm64/arm64/conf.c 21 Dec 2023 13:26:21 -0000 >@@ -101,6 +101,8 @@ cdev_decl(lpt); > #include "radio.h" > #include "drm.h" > cdev_decl(drm); >+#include "pluart.h" >+cdev_decl(pluart); > > #include "wsdisplay.h" > #include "wskbd.h" >@@ -135,7 +137,7 @@ struct cdevsw cdevsw[] = > cdev_log_init(1,log), /* 7: /dev/klog */ > cdev_tty_init(NCOM,com), /* 8: serial port */ > cdev_notdef(), /* 9: was floppy disk */ >- cdev_notdef(), /* 10 */ >+ cdev_tty_init(NPLUART,pluart), /* 10: serial port */ > cdev_notdef(), /* 11: Sony CD-ROM */ > cdev_wsdisplay_init(NWSDISPLAY, /* 12: frame buffers, etc. */ > wsdisplay),