Re: regarding pci vga card output with powerpc
From: sudheer <hidden>
Date: 2006-08-10 07:10:41
Andrey Volkov wrote:
sudheer wrote:quoted
Andrey Volkov wrote:quoted
urwithsudheer wrote:quoted
Hello All, I am working with a pci based vga card. I have connected the vga card next to the pci slot of my target processor on the baseboard. I have connected a monitor to the vga card. When i boot linux from minicom, i could see all the kernel log messages on both the minicom and vga card monitor. But on the vga monitor, i could not see any messages after asking for login as below: . . Mounting filesystems Running depmod Setting up networking on loopback device: Setting up networking on eth0: eth0: PHY is Marvell 88E11x1 (1410cc2) Adding static route for default gateway to 192.168.3.1: Setting nameserver to 192.168.0.1 in /etc/resolv.conf: Starting inetd: login: Though i am entering my login and passwd at the minicom, nothing comes on to the vga monitor. But i am able to write to vga monitor using the following commands from minicom: # echo "Hello" > /dev/tty1 # echo "Hi " > /dev/tty1 My requirement is to get on the vga monitor whatever i am typing on the minicom after logging into the linux like . ls or pwd commands. Anyone pl help me. Thanks & Regards SudheerSee Documentation/kernel-parameters.txt. If be short, add: console=/dev/ttySxx console=/dev/tty1 (both) to a kernel parameters string.I got upto login prompt on the vga monitor only after giving the above parameters in my u-boot bootargs. u-boot=> set bootargs console=tty1 console=ttyS0,115200. I have added in the serial driver linux/drivers/serial/serial_core.c in the function uart_write(struct tty_struct *tty, const unsigned char * buf, int count) The lines in the if directive. if (c <= 0) break; memcpy(circ->buf + circ->head, buf, c); /* added to test vga */ #if 1 memcpy(tempbuf, circ->buf + circ->head, c); for(i=0;i<c;i++) printk("%c", tempbuf[i]); #endif circ->head = (circ->head + c) & (UART_XMIT_SIZE - 1); buf += c; Then as i expected, all the letters i enter in the minicom came twice on the minicom.Because printk didn't print to an dedicated device, but to a klog stream. So check your /etc/inittab and /etc/securetty, its similar that something wrong in this files.
oh..sorry, i forgot to tell you about the other two modifications done in the kernel config and ramdisk. In the kernel config-- I have selected the virtual terminal option. In the ramdisk- etc/inittab - i added the following line: ::respawn:/sbin/getty tty1 115200 vt100. The etc/securetty contains the following: console fb0 tty1 tty2 tty3 tty4 tty5 tty6 tty7 tty8 ttyS0 ttyS1 ttyS2 ttyS3 ttyp0 ttyp1 ttyp2 ttyp3 ttyAM0 ttyAM1 tts/0 tts/1 Do i need to use fb0, to send the serial data to frame buffer ?
quoted
login:rroooott Password: Password: login on `ttyS0'ogin on `ttyS0'login[83]: root ~ # ~ # llss ~ # ~ # iiffccoonnffiigg And whatever i enter on the minicom also gets print on the vga monitor but only once. When i comment the if directive, On the vga monitor i could see only upto login prompt. I don't know why the printk statement i added in the serial driver prints on the vga monitor. As said by shkatikannan, i am going through the vga driver to copy to the frambuffer. But yet couldn't get it exactly in the code where to copy. Please tell me if i am in the wrong path. Thanks & Regards Sudheer