[OpenIndiana-discuss] Setup serial console on ttyc (the third serial port)

wessels wessels147 at gmail.com
Thu Mar 3 12:15:29 UTC 2011


while waiting for the build to complete I took some time to really
look at the code, as I should have done in the first place. I think
quite a bit more patching needs to be done for example boot_console
also needs to be updated. Any more hints would be more than welcome.

On Thu, Mar 3, 2011 at 12:29 PM, wessels <wessels147 at gmail.com> wrote:
> Goodmorning,
>
> The output you requested is below.
> As stated before grub works fine on the third port with these lines:
> serial --unit=2 --speed=9600 --word=8 --parity=no --stop=1
> terminal --timeout=30 serial
>
> Can you confirm a few thing for me?
> -consplat.c is the only file which needs patching?
> -kernel/misc/consconfig and kernel/misc/amd64/consconfig are the only
> two binaries which need to be updated
> -for testing only the two consconfig files can be replaced by copying
> them from the proto area. No additional steps need to be done, like
> creating a new BE. Nor do any other files need to be updated.
> -the correct kernel line in menu.lst should look like this:
> kernel$ /platform/i86pc/kernel/$ISADIR/unix -k -B $ZFS-BOOTFS,console=ttyc
>
> Lastly can you help me build consconfig without running nightly.sh?
> That will save quite some time.
>
> Many thanks,
> Frederik
>
> OpenIndiana     SunOS 5.11      oi_148  November 2010
>
> root at oi_test:~# ls -l /dev/tty*
> lrwxrwxrwx 1 root root 26 2011-02-18 22:11 /dev/tty ->
> ../devices/pseudo/sy at 0:tty
> lrwxrwxrwx 1 root root 37 2011-02-18 22:11 /dev/tty00 ->
> ../devices/pci at 0,0/isa at 1f/asy at 1,3f8:a
> lrwxrwxrwx 1 root root 37 2011-02-18 22:11 /dev/tty01 ->
> ../devices/pci at 0,0/isa at 1f/asy at 1,2f8:b
> lrwxrwxrwx 1 root root 37 2011-02-18 22:11 /dev/tty02 ->
> ../devices/pci at 0,0/isa at 1f/asy at 1,3e8:c
> lrwxrwxrwx 1 root root 37 2011-02-18 22:11 /dev/ttya ->
> ../devices/pci at 0,0/isa at 1f/asy at 1,3f8:a
> lrwxrwxrwx 1 root root 37 2011-02-18 22:11 /dev/ttyb ->
> ../devices/pci at 0,0/isa at 1f/asy at 1,2f8:b
> lrwxrwxrwx 1 root root 37 2011-02-18 22:11 /dev/ttyc ->
> ../devices/pci at 0,0/isa at 1f/asy at 1,3e8:c
> lrwxrwxrwx 1 root root 40 2011-02-18 22:11 /dev/ttyd0 ->
> ../devices/pci at 0,0/isa at 1f/asy at 1,3f8:a,cu
> lrwxrwxrwx 1 root root 40 2011-02-18 22:11 /dev/ttyd1 ->
> ../devices/pci at 0,0/isa at 1f/asy at 1,2f8:b,cu
> lrwxrwxrwx 1 root root 40 2011-02-18 22:11 /dev/ttyd2 ->
> ../devices/pci at 0,0/isa at 1f/asy at 1,3e8:c,cu
> lrwxrwxrwx 1 root root 30 2011-02-18 22:11 /dev/ttyp0 ->
> ../devices/pseudo/ptsl at 0:ttyp0
> lrwxrwxrwx 1 root root 30 2011-02-18 22:11 /dev/ttyp1 ->
> ../devices/pseudo/ptsl at 0:ttyp1
> lrwxrwxrwx 1 root root 30 2011-02-18 22:11 /dev/ttyp2 ->
> ../devices/pseudo/ptsl at 0:ttyp2
> lrwxrwxrwx 1 root root 30 2011-02-18 22:11 /dev/ttyp3 ->
> ../devices/pseudo/ptsl at 0:ttyp3
> lrwxrwxrwx 1 root root 30 2011-02-18 22:11 /dev/ttyp4 ->
> ../devices/pseudo/ptsl at 0:ttyp4
> lrwxrwxrwx 1 root root 30 2011-02-18 22:11 /dev/ttyp5 ->
> ../devices/pseudo/ptsl at 0:ttyp5
> lrwxrwxrwx 1 root root 30 2011-02-18 22:11 /dev/ttyp6 ->
> ../devices/pseudo/ptsl at 0:ttyp6
> lrwxrwxrwx 1 root root 30 2011-02-18 22:11 /dev/ttyp7 ->
> ../devices/pseudo/ptsl at 0:ttyp7
> lrwxrwxrwx 1 root root 30 2011-02-18 22:11 /dev/ttyp8 ->
> ../devices/pseudo/ptsl at 0:ttyp8
> lrwxrwxrwx 1 root root 30 2011-02-18 22:11 /dev/ttyp9 ->
> ../devices/pseudo/ptsl at 0:ttyp9
> lrwxrwxrwx 1 root root 30 2011-02-18 22:11 /dev/ttypa ->
> ../devices/pseudo/ptsl at 0:ttypa
> lrwxrwxrwx 1 root root 30 2011-02-18 22:11 /dev/ttypb ->
> ../devices/pseudo/ptsl at 0:ttypb
> lrwxrwxrwx 1 root root 30 2011-02-18 22:11 /dev/ttypc ->
> ../devices/pseudo/ptsl at 0:ttypc
> lrwxrwxrwx 1 root root 30 2011-02-18 22:11 /dev/ttypd ->
> ../devices/pseudo/ptsl at 0:ttypd
> lrwxrwxrwx 1 root root 30 2011-02-18 22:11 /dev/ttype ->
> ../devices/pseudo/ptsl at 0:ttype
> lrwxrwxrwx 1 root root 30 2011-02-18 22:11 /dev/ttypf ->
> ../devices/pseudo/ptsl at 0:ttypf
> lrwxrwxrwx 1 root root 30 2011-02-18 22:11 /dev/ttyq0 ->
> ../devices/pseudo/ptsl at 0:ttyq0
> lrwxrwxrwx 1 root root 30 2011-02-18 22:11 /dev/ttyq1 ->
> ../devices/pseudo/ptsl at 0:ttyq1
> lrwxrwxrwx 1 root root 30 2011-02-18 22:11 /dev/ttyq2 ->
> ../devices/pseudo/ptsl at 0:ttyq2
> lrwxrwxrwx 1 root root 30 2011-02-18 22:11 /dev/ttyq3 ->
> ../devices/pseudo/ptsl at 0:ttyq3
> lrwxrwxrwx 1 root root 30 2011-02-18 22:11 /dev/ttyq4 ->
> ../devices/pseudo/ptsl at 0:ttyq4
> lrwxrwxrwx 1 root root 30 2011-02-18 22:11 /dev/ttyq5 ->
> ../devices/pseudo/ptsl at 0:ttyq5
> lrwxrwxrwx 1 root root 30 2011-02-18 22:11 /dev/ttyq6 ->
> ../devices/pseudo/ptsl at 0:ttyq6
> lrwxrwxrwx 1 root root 30 2011-02-18 22:11 /dev/ttyq7 ->
> ../devices/pseudo/ptsl at 0:ttyq7
> lrwxrwxrwx 1 root root 30 2011-02-18 22:11 /dev/ttyq8 ->
> ../devices/pseudo/ptsl at 0:ttyq8
> lrwxrwxrwx 1 root root 30 2011-02-18 22:11 /dev/ttyq9 ->
> ../devices/pseudo/ptsl at 0:ttyq9
> lrwxrwxrwx 1 root root 30 2011-02-18 22:11 /dev/ttyqa ->
> ../devices/pseudo/ptsl at 0:ttyqa
> lrwxrwxrwx 1 root root 30 2011-02-18 22:11 /dev/ttyqb ->
> ../devices/pseudo/ptsl at 0:ttyqb
> lrwxrwxrwx 1 root root 30 2011-02-18 22:11 /dev/ttyqc ->
> ../devices/pseudo/ptsl at 0:ttyqc
> lrwxrwxrwx 1 root root 30 2011-02-18 22:11 /dev/ttyqd ->
> ../devices/pseudo/ptsl at 0:ttyqd
> lrwxrwxrwx 1 root root 30 2011-02-18 22:11 /dev/ttyqe ->
> ../devices/pseudo/ptsl at 0:ttyqe
> lrwxrwxrwx 1 root root 30 2011-02-18 22:11 /dev/ttyqf ->
> ../devices/pseudo/ptsl at 0:ttyqf
> lrwxrwxrwx 1 root root 30 2011-02-18 22:11 /dev/ttyr0 ->
> ../devices/pseudo/ptsl at 0:ttyr0
> lrwxrwxrwx 1 root root 30 2011-02-18 22:11 /dev/ttyr1 ->
> ../devices/pseudo/ptsl at 0:ttyr1
> lrwxrwxrwx 1 root root 30 2011-02-18 22:11 /dev/ttyr2 ->
> ../devices/pseudo/ptsl at 0:ttyr2
> lrwxrwxrwx 1 root root 30 2011-02-18 22:11 /dev/ttyr3 ->
> ../devices/pseudo/ptsl at 0:ttyr3
> lrwxrwxrwx 1 root root 30 2011-02-18 22:11 /dev/ttyr4 ->
> ../devices/pseudo/ptsl at 0:ttyr4
> lrwxrwxrwx 1 root root 30 2011-02-18 22:11 /dev/ttyr5 ->
> ../devices/pseudo/ptsl at 0:ttyr5
> lrwxrwxrwx 1 root root 30 2011-02-18 22:11 /dev/ttyr6 ->
> ../devices/pseudo/ptsl at 0:ttyr6
> lrwxrwxrwx 1 root root 30 2011-02-18 22:11 /dev/ttyr7 ->
> ../devices/pseudo/ptsl at 0:ttyr7
> lrwxrwxrwx 1 root root 30 2011-02-18 22:11 /dev/ttyr8 ->
> ../devices/pseudo/ptsl at 0:ttyr8
> lrwxrwxrwx 1 root root 30 2011-02-18 22:11 /dev/ttyr9 ->
> ../devices/pseudo/ptsl at 0:ttyr9
> lrwxrwxrwx 1 root root 30 2011-02-18 22:11 /dev/ttyra ->
> ../devices/pseudo/ptsl at 0:ttyra
> lrwxrwxrwx 1 root root 30 2011-02-18 22:11 /dev/ttyrb ->
> ../devices/pseudo/ptsl at 0:ttyrb
> lrwxrwxrwx 1 root root 30 2011-02-18 22:11 /dev/ttyrc ->
> ../devices/pseudo/ptsl at 0:ttyrc
> lrwxrwxrwx 1 root root 30 2011-02-18 22:11 /dev/ttyrd ->
> ../devices/pseudo/ptsl at 0:ttyrd
> lrwxrwxrwx 1 root root 30 2011-02-18 22:11 /dev/ttyre ->
> ../devices/pseudo/ptsl at 0:ttyre
> lrwxrwxrwx 1 root root 30 2011-02-18 22:11 /dev/ttyrf ->
> ../devices/pseudo/ptsl at 0:ttyrf
> root at oi_test:~# prtconf
> System Configuration:  Project OpenIndiana  i86pc
> Memory size: 16376 Megabytes
> System Peripherals (Software Nodes):
>
> i86pc
>    scsi_vhci, instance #0
>        disk, instance #3
>        disk, instance #4
>        disk, instance #5
>        disk, instance #2
>        disk, instance #9 (driver not attached)
>        disk, instance #8 (driver not attached)
>    pci, instance #0
>        pci15d9,40d (driver not attached)
>        pci8086,d138 (driver not attached)
>        pci8086,d13a, instance #1
>            pci1000,3020, instance #0
>                iport, instance #2
>                iport, instance #3
>                iport, instance #4
>                iport, instance #1
>                iport, instance #7
>                iport, instance #6
>                iport, instance #5
>        pcid9,d (driver not attached)
>        pcid9,d (driver not attached)
>        pcid9,d (driver not attached)
>        pcid9,d (driver not attached)
>        pcid9,d (driver not attached)
>        pcid9,d (driver not attached)
>        pci15d9,40d, instance #0
>            hub, instance #0
>                device, instance #0
>                    mouse, instance #1
>                    keyboard, instance #2
>        pci8086,3b42, instance #2
>        pci8086,3b4a, instance #3
>            pci15d9,40d, instance #0
>        pci8086,3b4c, instance #4
>            pci15d9,40d, instance #1 (driver not attached)
>        pci15d9,40d, instance #1
>            hub, instance #1
>        pci8086,244e, instance #0
>            display, instance #0
>        isa, instance #0
>            motherboard (driver not attached)
>            asy, instance #0 (driver not attached)
>            asy, instance #1 (driver not attached)
>            asy, instance #2 (driver not attached)
>            motherboard (driver not attached)
>            pit_beep, instance #0
>        pci15d9,40d, instance #0
>            disk, instance #1
>            disk, instance #6 (driver not attached)
>        pci15d9,40d (driver not attached)
>    fw, instance #0
>        cpu, instance #0
>        cpu, instance #1
>        cpu, instance #2
>        cpu, instance #3
>        cpu, instance #4
>        cpu, instance #5
>        cpu, instance #6
>        cpu, instance #7
>        sb, instance #1
>    used-resources (driver not attached)
>    iscsi, instance #0
>    options, instance #0
>    pseudo, instance #0
>    agpgart, instance #0 (driver not attached)
>    xsvc, instance #0
>
>
> Lastly a snippet from prtconf -v
>
>            asy, instance #0 (driver not attached)
>                System software properties:
>                    name='interrupt-priorities' type=int items=1
>                        value=0000000c
>                Hardware properties:
>                    name='compatible' type=string items=1
>                        value='pnpPNP,501'
>                    name='interrupts' type=int items=1
>                        value=00000004
>                    name='reg' type=int items=3
>                        value=00000001.000003f8.00000008
>                    name='acpi-namespace' type=string items=1
>                        value='\_SB_.PCI0.SBRG.UAR1'
>                    name='model' type=string items=1
>                        value='16550A-compatible COM port'
>                Register Specifications:
>                    Bus Type=0x1, Address=0x3f8, Size=0x8
>                Interrupt Specifications:
>                    Interrupt Priority=0x5 (ipl 5), vector=0x4 (4)
>            asy, instance #1 (driver not attached)
>                System software properties:
>                    name='interrupt-priorities' type=int items=1
>                        value=0000000c
>                Hardware properties:
>                    name='compatible' type=string items=1
>                        value='pnpPNP,501'
>                    name='interrupts' type=int items=1
>                        value=00000003
>                    name='reg' type=int items=3
>                        value=00000001.000002f8.00000008
>                    name='acpi-namespace' type=string items=1
>                        value='\_SB_.PCI0.SBRG.UAR2'
>                    name='model' type=string items=1
>                        value='16550A-compatible COM port'
>                Register Specifications:
>                    Bus Type=0x1, Address=0x2f8, Size=0x8
>                Interrupt Specifications:
>                    Interrupt Priority=0x5 (ipl 5), vector=0x3 (3)
>            asy, instance #2 (driver not attached)
>                System properties:
>                    name='interrupts' type=int items=1
>                        value=00000005
>                    name='reg' type=int items=3
>                        value=00000001.000003e8.00000008
>                    name='interrupt-priorities' type=int items=1
>                        value=0000000c
>                Hardware properties:
>                    name='compatible' type=string items=1
>                        value='pnpPNP,501'
>                    name='interrupts' type=int items=1
>                        value=00000005
>                    name='reg' type=int items=3
>                        value=00000001.000003e8.00000008
>                    name='acpi-namespace' type=string items=1
>                        value='\_SB_.PCI0.SBRG.UAR3'
>                    name='model' type=string items=1
>                        value='16550A-compatible COM port'
>                Register Specifications:
>                    Bus Type=0x1, Address=0x3e8, Size=0x8
>                Interrupt Specifications:
>                    Interrupt Priority=0x5 (ipl 5), vector=0x5 (5)
>            motherboard (driver not attached)
>                Hardware properties:
>                    name='compatible' type=string items=1
>                        value='pnpPNP,c01'
>                    name='reg' type=int items=9
>
> value=00000000.000c0000.00010000.00000000.000e0000.00020000.00000000.fed90000.01270000
>                    name='acpi-namespace' type=string items=1
>                        value='\_SB_.RMEM'
>                    name='model' type=string items=1
>                        value='Motherboard'
>            pit_beep, instance #0
>                System properties:
>                    name='instance' type=int items=1
>                        value=00000000
>
>
>
>
> On Thu, Mar 3, 2011 at 11:55 AM, Andrew Gabriel
> <illumos at cucumber.demon.co.uk> wrote:
>> I'm wondering if your system has actually identified com3 at all.
>> Is it configured in the BIOS on i/o address 3E8 (as com3 should be)?
>> When you have the system booted, is there actually a /dev/ttyc
>> and a /dev/term/c, and if so, do the links point to
>> /devices/pci at 0,0/isa at 1/asy at 1,3e8:c ?
>>
>> If it's not there, then Solaris has not found com3 in the ACPI
>> tables, and won't know the system has a com3 port.
>>
>> wessels wrote:
>>>
>>> hi,
>>>
>>> I setup the build environment, what a pita, patched the file. Did a
>>> build. Only replaced both consconfig files but no console. Are there
>>> other files as well which need patching to make this work ?
>>>
>>> tia
>>>
>>> On Wed, Mar 2, 2011 at 9:50 PM, Andrew Gabriel
>>> <illumos at cucumber.demon.co.uk> wrote:
>>>>
>>>> I suspect it would be very easy to fix this in the kernel.
>>>> I fixed the missing bits in the asy(7D) driver 7 or 8 years ago when I
>>>> was
>>>> adding 16650/16750 support. I think all that's left to fix is adding ttyc
>>>> and ttyd support to usr/src/uts/i86pc/io/consplat.c
>>>>
>>>> <url:http://src.opensolaris.org/source/xref/onnv/onnv-gate/usr/src/uts/i86pc/io/consplat.c#107>.
>>>>
>>>> The other bit that was outstanding at that time was the Device
>>>> Configuration
>>>> Assistant (DCA), which was a complete swine to build. However, that
>>>> vanished
>>>> in Solaris 10 Update 1, being replaced by grub and some device
>>>> enumeration
>>>> support in the kernel, and I would guess grub probably does support com3
>>>> and
>>>> com4.
>>
>> --
>> Andrew
>>
>> _______________________________________________
>> OpenIndiana-discuss mailing list
>> OpenIndiana-discuss at openindiana.org
>> http://openindiana.org/mailman/listinfo/openindiana-discuss
>>
>



More information about the OpenIndiana-discuss mailing list