도와주세요!!
글 수 15,339
2008.12.15 14:36:11 (*.100.85.10)
8780
부팅 후 리눅스 로고 화면과 함께 콘솔 출력이 LCD 화면에 같이 나타납니다.
커널에서 프레임버퍼 콘솔 출력을 선택하지 않고 컴파일해서 커널을 다시 올렸는데
화면이 아예 먹통이 되어버리네요.
커널 옵션에서 로고 출력은 선택하고 프레임버퍼 콘솔 출력만 선택해제했습니다.
강좌에서 리눅스 로고화면 바꾸기의 답변 글에는 프레임버퍼 콘솔 출력만 해제하면 된다고 해서 간단한 줄 알았는데 골치아프게 하네요.
처음 프레임 버퍼 콘솔 출력을 해제하고 컴파일 했을 때 soft_cursor함수를 찾을 수 없다고 에러가 나타났습니다.
그래서 다음과 같이 .fb_cursor 지정하는 부분을 수정하고 컴파일 했는데 커널을 올린 후 화면이 아예 뭉개져 버리고 아무것도 출력이 되질 않는군요.
struct fb_ops s3c_fb_ops = {
.owner = THIS_MODULE,
.fb_check_var = s3c_fb_check_var,
.fb_set_par = s3c_fb_set_par,
.fb_blank = s3c_fb_blank,
.fb_pan_display = s3c_fb_pan_display,
.fb_setcolreg = s3c_fb_setcolreg,
.fb_fillrect = cfb_fillrect,
.fb_copyarea = cfb_copyarea,
.fb_imageblit = cfb_imageblit,
#ifdef CONFIG_FRAMEBUFFER_CONSOLE //콘솔 출력을 막기 위해.. 2008년12월 3일
.fb_cursor = soft_cursor,
#endif
.fb_ioctl = s3c_fb_ioctl,
};
커널에서 프레임버퍼 콘솔 출력을 선택하지 않고 컴파일해서 커널을 다시 올렸는데
화면이 아예 먹통이 되어버리네요.
커널 옵션에서 로고 출력은 선택하고 프레임버퍼 콘솔 출력만 선택해제했습니다.
강좌에서 리눅스 로고화면 바꾸기의 답변 글에는 프레임버퍼 콘솔 출력만 해제하면 된다고 해서 간단한 줄 알았는데 골치아프게 하네요.
처음 프레임 버퍼 콘솔 출력을 해제하고 컴파일 했을 때 soft_cursor함수를 찾을 수 없다고 에러가 나타났습니다.
그래서 다음과 같이 .fb_cursor 지정하는 부분을 수정하고 컴파일 했는데 커널을 올린 후 화면이 아예 뭉개져 버리고 아무것도 출력이 되질 않는군요.
struct fb_ops s3c_fb_ops = {
.owner = THIS_MODULE,
.fb_check_var = s3c_fb_check_var,
.fb_set_par = s3c_fb_set_par,
.fb_blank = s3c_fb_blank,
.fb_pan_display = s3c_fb_pan_display,
.fb_setcolreg = s3c_fb_setcolreg,
.fb_fillrect = cfb_fillrect,
.fb_copyarea = cfb_copyarea,
.fb_imageblit = cfb_imageblit,
#ifdef CONFIG_FRAMEBUFFER_CONSOLE //콘솔 출력을 막기 위해.. 2008년12월 3일
.fb_cursor = soft_cursor,
#endif
.fb_ioctl = s3c_fb_ioctl,
};
2008.12.17 09:15:33 (*.138.143.22)
안녕하세요..
커서는 커널의 drivers/video/console/bitblit.c 에서 수정해 주시면 됩니다,
236 static void bit_cursor(struct vc_data *vc, struct fb_info *info, int mode,
237 int softback_lines, int fg, int bg)
238 {
239 struct fb_cursor cursor;
240 struct fbcon_ops *ops = info->fbcon_par;
241 unsigned short charmask = vc->vc_hi_font_mask ? 0x1ff : 0xff;
242 int w = (vc->vc_font.width + 7) >> 3, c;
243 int y = real_y(ops->p, vc->vc_y);
244 int attribute, use_sw = (vc->vc_cursor_type & 0x10);
245 int err = 1;
246 char *src;
247
248 return;
249
250 cursor.set = 0;
248라인에서 return; 해 주시면 됩니다.
그럼 좋은 하루 되세요....
커서는 커널의 drivers/video/console/bitblit.c 에서 수정해 주시면 됩니다,
236 static void bit_cursor(struct vc_data *vc, struct fb_info *info, int mode,
237 int softback_lines, int fg, int bg)
238 {
239 struct fb_cursor cursor;
240 struct fbcon_ops *ops = info->fbcon_par;
241 unsigned short charmask = vc->vc_hi_font_mask ? 0x1ff : 0xff;
242 int w = (vc->vc_font.width + 7) >> 3, c;
243 int y = real_y(ops->p, vc->vc_y);
244 int attribute, use_sw = (vc->vc_cursor_type & 0x10);
245 int err = 1;
246 char *src;
247
248 return;
249
250 cursor.set = 0;
248라인에서 return; 해 주시면 됩니다.
그럼 좋은 하루 되세요....
로그인 화면이 나오지 않게 하기 위해서는 램디스크에서 수정해 주셔야 합니다.
etc/inittab에서
T0:12345:respawn:/sbin/getty -L ttyFC 115200 vt100
#T0:12345:respawn:/sbin/getty -L ttySAC2 115200 vt100
#T0:12345:respawn:/sbin/getty -L ttySP2 115200 vt100
#T0:12345:respawn:/sbin/getty -L ttyCL1 115200 vt100
#T1:12345:respawn:/sbin/getty -L ttyS0 115200 vt100
T1:12345:once:/sbin/getty -L tty1 115200 vt100
#T2:12345:respawn:/sbin/getty -L tty2 115200 vt100
T1:12345:once:/sbin/getty -L tty1 115200 vt100 의 부분을 주석처리 해 주세요...
그리고 다시 램디스크를 만드셨어 타겟보드에 다운로드 하시면 됩니다..
그럼 좋은 하루 되세요..