[OpenIndiana-discuss] Serial console for OI/Solaris on Intel MFSYS blades
Jim Klimov
jimklimov at cos.ru
Thu Jun 14 17:58:29 UTC 2012
Thanks for the suggestions, but they did not help :(
Waiting for more ideas ;)
Details follow:
2012-06-14 21:28, Gary Mills wrote:
> On Thu, Jun 14, 2012 at 06:53:23PM +0400, Jim Klimov wrote:
>>
>> I have a peculiar problem: the Intel MFSYS blade servers, in short ;)
>>
>> The problem is, the redirected console gets lost after Solaris 10
>> or OI boots on the blade. It works somewhat for BIOS and GRUB (but
>> even there it sometimes loses connections or farts out invalid
>> characters), and if I boot with "-B console=ttya" - sercon usually
>> makes it through the OS build version banner and prints a character
>> or two of the OS initialization (console logs from SMF startups).
>
> You will always get output for BIOS and GRUB because these do their
> I/O through the BIOS, using BIOS redirection. Once Linux or Solaris
> start, they do their own I/O directly to the serial port.
No, GRUB can also own its I/O to the serial port (also, in BIOS
the redirection-after-POST is disabled). GRUB's menu.lst defines:
serial --unit=0 --speed=9600 ---word=8 --parity=no --stop=1
terminal --dumb --timeout=10 console serial
So wherever a key is pressed during the first 10-second timeout,
the interactive menu would pop up, with its own timeout to boot.
> You might also have to set the serial bit rate to match in the
> firmware on the remote management card. You can also change it in
> OI to match the card's.
That one is a tricky part, as I wrote. I have tried a few
settings of baud-rate, DTR/DTS, flowctl, parity via eeprom
and /etc/ttydefs and /etc/saf/zsmon/_pmtab and such; that
had no noticeable influence over several non-fast reboots.
I also my did tests over all located serial port names
(below) like "/dev/(term/a|ttya|tty00|cua/a|cua0|ttyd0)".
Except that in some cases I got no output at all, or the
OS version output headers broke mid-string even before SMF
report messages, but it certainly was not an improvement,
but not a definitive change either...
Is eeprom (/boot/solaris/bootenv.rc) the only location which
influences the serial port settings during the OS uptime?
Is there a way to dynamically set and change the serial port
options (i.e. via some terminal emulator, etc.) and recover
the logical port/driver from a hung position without a reboot?
Is the serial driver (asy?) instrumented for debug or dtrace?
> How many `asy' ports show up in `prtconf -v'? It's usually COM3
> (ttyc) that's used for serial-over-lan.
Actually, on Sun Fire servers those are usually ttya's as well.
On this box it certainly is, "unit=0" in GRUB, "ttyS0" in Linux
and "console=ttya" works for a short while in Solaris/OI.
Answering the direct question, there is only one "asy" unit
(thanks, I didn't think of asy, I only looked for uart, but
they lead to the same piece of hardware):
# prtconf -v | gegrep -B1 -A15 -i 'asy|uart'
name='ddi-forceload' type=string items=7
value='misc/scsi_vhci/scsi_vhci_f_asym_sun' +
'misc/scsi_vhci/scsi_vhci_f_asym_lsi' +
'misc/scsi_vhci/scsi_vhci_f_asym_emc' +
'misc/scsi_vhci/scsi_vhci_f_sym_emc' +
'misc/scsi_vhci/scsi_vhci_f_sym_hds' + 'misc/scsi_vhci/scsi_vhci_f_sym'
+ 'misc/scsi_vhci/scsi_vhci_f_tpgs'
...
asy, instance #0
System software properties:
name='interrupt-priorities' type=int items=1
value=0000000c
Hardware properties:
name='interrupts' type=int items=1
value=00000004
name='reg' type=int items=3
value=00000001.000003f8.00000008
name='model' type=string items=1
value='Standard PC COM port'
name='compatible' type=string items=1
value='PNP0500'
Register Specifications:
Bus Type=0x1, Address=0x3f8, Size=0x8
Interrupt Specifications:
Interrupt Priority=0xc (ipl 12), vector=0x4 (4)
Device Minor Nodes:
dev=(106,0)
dev_path=/pci at 0,0/isa at 1f/asy at 1,3f8:a
spectype=chr type=minor
dev_link=/dev/ttya
dev_link=/dev/tty00
dev_link=/dev/term/a
Minor properties:
name='uart' type=string items=1 dev=(106,0)
value='16550A'
dev=(106,131072)
dev_path=/pci at 0,0/isa at 1f/asy at 1,3f8:a,cu
spectype=chr type=minor
dev_link=/dev/ttyd0
dev_link=/dev/cua0
dev_link=/dev/cua/a
...
//Jim Klimov
More information about the OpenIndiana-discuss
mailing list