LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Other *NIX (https://www.linuxquestions.org/questions/other-%2Anix-55/)
-   -   Problem with old SVR4 (https://www.linuxquestions.org/questions/other-%2Anix-55/problem-with-old-svr4-4175723480/)

camerabambai 03-26-2023 10:26 PM

Problem with old SVR4
 
Usually one serial port is sufficient to control via minicom the old SVR4 on Qemu (I know is a very old system, is unsafe, etc..). But I need two serials (one for login, the other to try pppd).

I have set those two ports on configuration of vm

Code:

    <serial type="pty">
      <source path="/dev/pts/1"/>
      <target type="isa-serial" port="0">
        <model name="isa-serial"/>
      </target>
      <alias name="serial0"/>
    </serial>
   
    serial type="pty">
      <source path="/dev/pts/2"/>
      <target type="isa-serial" port="1">
        <model name="isa-serial"/>
      </target>
      <alias name="serial1"/>
    </serial>

But on start, only one port is enabled

Code:

find /dev/ -name *tty* -print
    /dev/systty
    /dev/tty00
    /dev/tty
    /dev/tty00s
    /dev/tty00h

So I try to rebuild the kernel. On SVR4 to rebuild the kernel first I make the changes in
the file /etc/conf/sdevice.d/asy

Code:

    asy    Y      1      7      1      4      3f8    3ff    0      0
    asy    Y      1      7      1      3      2f8    2ff    0      0

the syntax is simple: asy is the driver Y enable it, 1 7 1 I don't know, 3 is the interrupt (on all my system irq 3 is used by the second serial port, 4 by the first). 3f8-3ff and 2f8-2ff are the port interval, 0 0 I don't know

Then I rebuild the kernel with idbuild.
After reboot, same situation.
If I edit the file /etc/conf/node.d/asy
Code:

    asy    tty00  c      0
    asy    term/00 c      0
    asy    tty00s  c      0
    asy    tty00h  c      128
    asy    term/00s        c      0
    asy    term/00h        c      128
   
    asy    tty01  c      1
    asy    term/01 c      1
    asy    tty01s  c      1
    asy    tty01h  c      128
    asy    term/01s        c      1
    asy    term/01h        c      128

and recreate the nodes

Code:

    idmknod -s
I have this strange situation

ls -ld /dev/tty*

Code:

crw-rw-rw-  1 bin      bin      16,  0 Dec 25 19:31 /dev/tty
    crw--w----  1 myuser  tty        3,  0 Mar 27 05:20 /dev/tty00
    crw-rw-rw-  1 root    root      3,128 Mar 27 04:26 /dev/tty00h
    crw-rw-rw-  1 root    root      3,  0 Mar 27 04:26 /dev/tty00s
    crw--w----  1 root    root      3,  0 Mar 27 05:20 /dev/tty01
    crw-rw-rw-  1 root    root      3,128 Mar 27 04:26 /dev/tty01h
    crw-rw-rw-  1 root    root      3,  0 Mar 27 04:26 /dev/tty01s

All files use the major number 3.
Why the 4 is complete ignored? What I miss? Probably a bug in the kernel or what else?
On all my system the two serials are recognized, modern (Linux) and old (Sco Unix).

smallpond 04-05-2023 09:44 AM

major number is the driver, minor number is the device. So com1 (3f8) should be minor 0 and com2 (2f8) should be minor 1.


All times are GMT -5. The time now is 12:23 PM.