Your message dated Sun, 29 Jul 2007 17:47:15 +0000 with message-id <E1IFCrL-0007Xe-MP@ries.debian.org> and subject line Bug#383194: fixed in xawtv 3.95.dfsg.1-4 has caused the attached Bug report to be marked as done. This means that you claim that the problem has been dealt with. If this is not the case it is now your responsibility to reopen the Bug report if necessary, and/or fix the problem forthwith. (NB: If you are a system administrator and have no idea what I am talking about this indicates a serious mail system misconfiguration somewhere. Please contact me immediately.) Debian bug tracking system administrator (administrator, Debian Bugs database)
--- Begin Message ---
- To: submit@bugs.debian.org
- Subject: fbtv does not work correctly on radeonfb
- From: Petr Vandrovec <petr@vandrovec.name>
- Date: Tue, 15 Aug 2006 16:33:19 +0200
- Message-id: <20060815143319.GA8451@vana.vc.cvut.cz>
Package: fbtv Version: 3.95-1 Tags: patch Hello, this patch fixes 4 problems with fbtv I've observed with radeonfb: (1) Fixes to support 15bpp depth in v4l-conf. d->bpp must be used to distinguish between 24 and 32 RGB888 formats, but d->depth must be used to distinguish between RGB555 and RGB565. (2) When switching terminals fbtv forgets to reload palette. (3) Clearing 256MB of videoram is dog slow. It is better to just clear visible area - which is usually 10-100 times smaller. (4) On atyfb FBIOGETCMAP returns (in 15/16bpp) returns cmap with 256 entries, but when this cmap is programmed back it returns EINVAL when cmap length is over 32 (or over 64 for 16bpp). Fortunately first 32/64 entries are programmed anyway, so we can just ignore EINVAL returned from FBIOPUTCMAP. Thanks, Petr Vandrovec diff -urN xawtv-3.95.dist/console/fbtools.c xawtv-3.95/console/fbtools.c --- xawtv-3.95.dist/console/fbtools.c 2003-02-14 15:14:04.000000000 +0100 +++ xawtv-3.95/console/fbtools.c 2006-08-15 16:07:29.000000000 +0200 @@ -447,7 +447,7 @@ fb_activate_current(tty); /* cls */ - fb_memset(fb_mem+fb_mem_offset,0,fb_fix.smem_len); + fb_memset(fb_mem+fb_mem_offset,0,fb_var.yres * fb_fix.line_length); return fb; err: @@ -458,15 +458,33 @@ void fb_cleanup(void) { + struct fb_var_screeninfo var; + /* restore console */ + if (0 == ioctl(fb,FBIOGET_VSCREENINFO,&var)) { + if (!memcmp(&var, &fb_ovar, sizeof(var))) { + goto skip_var; + } + } if (-1 == ioctl(fb,FBIOPUT_VSCREENINFO,&fb_ovar)) perror("ioctl FBIOPUT_VSCREENINFO"); +skip_var: if (-1 == ioctl(fb,FBIOGET_FSCREENINFO,&fb_fix)) perror("ioctl FBIOGET_FSCREENINFO"); if (fb_ovar.bits_per_pixel == 8 || fb_fix.visual == FB_VISUAL_DIRECTCOLOR) { - if (-1 == ioctl(fb,FBIOPUTCMAP,&ocmap)) - perror("ioctl FBIOPUTCMAP"); + if (-1 == ioctl(fb,FBIOPUTCMAP,&ocmap)) { + /* + * radeonfb in 15/16bpp returns EINVAL when color + * map retrieved by FBIOGETCMAP is programmed back + * by FBIOPUTCMAP. It still programs palette + * correctly, just instead of ignoring items 64-255 + * it returns an error. + */ + if (errno != EINVAL) { + perror("ioctl FBIOPUTCMAP"); + } + } } close(fb); diff -urN xawtv-3.95.dist/console/fbtv.c xawtv-3.95/console/fbtv.c --- xawtv-3.95.dist/console/fbtv.c 2005-09-30 12:09:22.000000000 +0200 +++ xawtv-3.95/console/fbtv.c 2006-08-15 16:07:04.000000000 +0200 @@ -230,6 +230,26 @@ } static void +fb_loadpalette(int fd) +{ + if (fb_var.bits_per_pixel == 8 || + fb_fix.visual == FB_VISUAL_DIRECTCOLOR) { + if (-1 == ioctl(fd,FBIOPUTCMAP,&cmap)) { + /* + * radeonfb in 15/16bpp returns EINVAL when color + * map retrieved by FBIOGETCMAP is programmed back + * by FBIOPUTCMAP. It still programs palette + * correctly, just instead of ignoring items 64-255 + * it returns an error. + */ + if (errno != EINVAL) { + perror("ioctl FBIOPUTCMAP"); + } + } + } +} + +static void fb_initcolors(int fd, int gray) { /* get colormap */ @@ -288,11 +308,7 @@ } /* set colormap */ - if (fb_var.bits_per_pixel == 8 || - fb_fix.visual == FB_VISUAL_DIRECTCOLOR) { - if (-1 == ioctl(fd,FBIOPUTCMAP,&cmap)) - perror("ioctl FBIOPUTCMAP"); - } + fb_loadpalette(fd); } static void @@ -511,11 +527,17 @@ } static void +clear_video(void) +{ + fb_memset(fb_mem+fb_mem_offset,0,fb_var.yres * fb_fix.line_length); +} + +static void do_fullscreen(void) { do_va_cmd(2,"capture","off"); quiet = !quiet; - fb_memset(fb_mem+fb_mem_offset,0,fb_fix.smem_len); + clear_video(); do_va_cmd(2,"capture","on"); } @@ -553,8 +575,9 @@ case FB_ACQ_REQ: switch_last = fb_switch_state; fb_switch_acquire(); - fb_memset(fb_mem+fb_mem_offset,0,fb_fix.smem_len); + clear_video(); ioctl(fb,FBIOPAN_DISPLAY,&fb_var); + fb_loadpalette(fb); do_va_cmd(2,"capture","on"); break; case FB_ACTIVE: @@ -748,7 +771,7 @@ } #endif - fb_memset(fb_mem+fb_mem_offset,0,fb_fix.smem_len); + clear_video(); for (;!sig;) { if ((fb_switch_state == FB_ACTIVE || keep_dma_on) && !quiet) { /* clear first lines */ @@ -918,7 +941,7 @@ audio_off(); drv->close(h_drv); if (fb_switch_state == FB_ACTIVE) - fb_memset(fb_mem+fb_mem_offset,0,fb_fix.smem_len); + clear_video(); tty_cleanup(); fb_cleanup(); exit(0); diff -urN xawtv-3.95.dist/console/v4l-conf.c xawtv-3.95/console/v4l-conf.c --- xawtv-3.95.dist/console/v4l-conf.c 2005-02-09 13:27:36.000000000 +0100 +++ xawtv-3.95/console/v4l-conf.c 2006-08-15 15:15:22.000000000 +0200 @@ -347,7 +347,7 @@ /* set values */ fb.fmt.width = d->width; fb.fmt.height = d->height; - switch (d->bpp) { + switch (d->bpp != 16 ? d->bpp : d->depth) { case 8: fb.fmt.pixelformat = V4L2_PIX_FMT_HI240; break; #if BYTE_ORDER == BIG_ENDIAN case 15: fb.fmt.pixelformat = V4L2_PIX_FMT_RGB555X; break;
--- End Message ---
--- Begin Message ---
- To: 383194-close@bugs.debian.org
- Subject: Bug#383194: fixed in xawtv 3.95.dfsg.1-4
- From: Krzysztof Burghardt <krzysztof@burghardt.pl>
- Date: Sun, 29 Jul 2007 17:47:15 +0000
- Message-id: <E1IFCrL-0007Xe-MP@ries.debian.org>
Source: xawtv Source-Version: 3.95.dfsg.1-4 We believe that the bug you reported is fixed in the latest version of xawtv, which is due to be installed in the Debian FTP archive: alevtd_3.95.dfsg.1-4_ia64.deb to pool/main/x/xawtv/alevtd_3.95.dfsg.1-4_ia64.deb fbtv_3.95.dfsg.1-4_ia64.deb to pool/main/x/xawtv/fbtv_3.95.dfsg.1-4_ia64.deb pia_3.95.dfsg.1-4_ia64.deb to pool/main/x/xawtv/pia_3.95.dfsg.1-4_ia64.deb radio_3.95.dfsg.1-4_ia64.deb to pool/main/x/xawtv/radio_3.95.dfsg.1-4_ia64.deb scantv_3.95.dfsg.1-4_ia64.deb to pool/main/x/xawtv/scantv_3.95.dfsg.1-4_ia64.deb streamer_3.95.dfsg.1-4_ia64.deb to pool/main/x/xawtv/streamer_3.95.dfsg.1-4_ia64.deb ttv_3.95.dfsg.1-4_ia64.deb to pool/main/x/xawtv/ttv_3.95.dfsg.1-4_ia64.deb v4l-conf_3.95.dfsg.1-4_ia64.deb to pool/main/x/xawtv/v4l-conf_3.95.dfsg.1-4_ia64.deb webcam_3.95.dfsg.1-4_ia64.deb to pool/main/x/xawtv/webcam_3.95.dfsg.1-4_ia64.deb xawtv-plugins_3.95.dfsg.1-4_ia64.deb to pool/main/x/xawtv/xawtv-plugins_3.95.dfsg.1-4_ia64.deb xawtv-tools_3.95.dfsg.1-4_ia64.deb to pool/main/x/xawtv/xawtv-tools_3.95.dfsg.1-4_ia64.deb xawtv_3.95.dfsg.1-4.diff.gz to pool/main/x/xawtv/xawtv_3.95.dfsg.1-4.diff.gz xawtv_3.95.dfsg.1-4.dsc to pool/main/x/xawtv/xawtv_3.95.dfsg.1-4.dsc xawtv_3.95.dfsg.1-4_ia64.deb to pool/main/x/xawtv/xawtv_3.95.dfsg.1-4_ia64.deb A summary of the changes between this version and the previous one is attached. Thank you for reporting the bug, which will now be closed. If you have further comments please address them to 383194@bugs.debian.org, and the maintainer will reopen the bug report if appropriate. Debian distribution maintenance software pp. Krzysztof Burghardt <krzysztof@burghardt.pl> (supplier of updated xawtv package) (This message was generated automatically at their request; if you believe that there is a problem with it please contact the archive administrators by mailing ftpmaster@debian.org) -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Format: 1.7 Date: Sun, 29 Jul 2007 15:00:06 +0200 Source: xawtv Binary: xawtv-plugins fbtv radio ttv webcam pia xawtv xawtv-tools scantv streamer alevtd v4l-conf Architecture: source ia64 Version: 3.95.dfsg.1-4 Distribution: unstable Urgency: low Maintainer: Krzysztof Burghardt <krzysztof@burghardt.pl> Changed-By: Krzysztof Burghardt <krzysztof@burghardt.pl> Description: alevtd - http daemon for videotext pages fbtv - linux console (fbcon) TV application pia - movie player radio - ncurses-based radio application scantv - scan TV channels for stations streamer - capture tool (images / movies) ttv - tty TV application v4l-conf - tool to configure video4linux drivers webcam - capture and upload images xawtv - X11 TV application xawtv-plugins - plugins for xawtv and motv xawtv-tools - Miscellaneous tools distributed with xawtv Closes: 199570 202133 369803 374626 379251 383194 Changes: xawtv (3.95.dfsg.1-4) unstable; urgency=low . * Applied Kristof Koehler's patch for problems with recording oss audio using streamer (Closes: #374626) * Applied Romain FRANCOISE's patch for unmute sound on xavtv exit (Closes: #199570) * Applied Steven Barker's patches for radio application. This fixes multiple issues listed in bug report (Closes: #202133) * Applied Bjoern Erik Nilsen's patch that fixes some memory leaks in the v4l plugins (Closes: #369803) * Applied Petr Vandrovec's patch that fixes 4 problems with fbtv observed with radeonfb. Fixes to support 15bpp depth in v4l-conf, reload palette when switching terminals, clear only visible area of videoram instead of clearing 256MB and problem with FBIOGETCMAP. (Closes: #383194) * Changed ${Source-Version} substvar to ${binary:Version} * Adjust debconf-templates. * New maintainer (Closes: #379251) Files: 858bef506510e9816b7d9e8334ead80e 1101 graphics extra xawtv_3.95.dfsg.1-4.dsc dda43cd87d7dd96162db7efe36ff82c5 29315 graphics extra xawtv_3.95.dfsg.1-4.diff.gz b89a6dcd854f62ea7c96578b5497211d 341586 x11 extra xawtv_3.95.dfsg.1-4_ia64.deb e38286c2f4a9f68479a4a2ece1649b84 52606 x11 extra pia_3.95.dfsg.1-4_ia64.deb 79fcadc72afc6d2b3442739a0deb0623 100944 graphics extra fbtv_3.95.dfsg.1-4_ia64.deb c62409f318e55c6b55a2bde66736738d 76064 graphics extra ttv_3.95.dfsg.1-4_ia64.deb cdb8d4e2fb856eced307974bc984d153 83878 graphics extra scantv_3.95.dfsg.1-4_ia64.deb d8973dc18c43e1028ea862eb1516f1b9 77516 graphics extra streamer_3.95.dfsg.1-4_ia64.deb 189f5e160947dcf946df77c49bb2eae6 21954 sound extra radio_3.95.dfsg.1-4_ia64.deb 5578c5c8a33d1b68bc502705b8f18ae6 31396 graphics extra v4l-conf_3.95.dfsg.1-4_ia64.deb b41779abf049aa47103ef0488015405f 39776 graphics extra xawtv-tools_3.95.dfsg.1-4_ia64.deb 3d06485775776cc141dade8d06c8ff54 124500 graphics extra xawtv-plugins_3.95.dfsg.1-4_ia64.deb 5db26edd3e295ab9990dd2ef3538ad47 50168 net extra webcam_3.95.dfsg.1-4_ia64.deb ab12c9e0c538b067b24fdf2af221df57 42030 net extra alevtd_3.95.dfsg.1-4_ia64.deb -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.1 (GNU/Linux) iD8DBQFGrNFumdOZoew2oYURAn4dAKC3uBfKTM7HXfb/bGprxvsVPDYC2QCfWSWO 4HSwxmYp26epyBb+sYBFgX4= =Akqp -----END PGP SIGNATURE-----
--- End Message ---