linux/drivers/video/aty
Witold Filipczyk 125e1137cd aty128fb: fix blanking
I have a problem with blanking. The soundcard uses speakers of the monitor.
Sound is muted when the screen blanks due to a bug in aty128fb.c.

Here is a fragment of linux/fb.h
/* VESA Blanking Levels */
#define VESA_NO_BLANKING        0
#define VESA_VSYNC_SUSPEND      1
#define VESA_HSYNC_SUSPEND      2
#define VESA_POWERDOWN          3

enum {
        /* screen: unblanked, hsync: on,  vsync: on */
        FB_BLANK_UNBLANK       = VESA_NO_BLANKING,

        /* screen: blanked,   hsync: on,  vsync: on */
        FB_BLANK_NORMAL        = VESA_NO_BLANKING + 1,

        /* screen: blanked,   hsync: on,  vsync: off */
        FB_BLANK_VSYNC_SUSPEND = VESA_VSYNC_SUSPEND + 1,

        /* screen: blanked,   hsync: off, vsync: on */
        FB_BLANK_HSYNC_SUSPEND = VESA_HSYNC_SUSPEND + 1,

        /* screen: blanked,   hsync: off, vsync: off */
        FB_BLANK_POWERDOWN     = VESA_POWERDOWN + 1
};

So FB_BLANK_NORMAL is 1, FB_BLANK_VSYNC_SUSPEND is 2,
FB_BLANK_HSYNC_SUSPEND is 3, FB_BLANK_POWERDOWN is 4.
And now:
blank = FB_BLANK_NORMAL (1)
blank & FB_BLANK_HSYNC_SUSPEND (1 & 3) is true,
so normal blank caused hsync suspend and sound is muted.

Cc: James Simmons <jsimmons@infradead.org>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-05-08 11:15:25 -07:00
..
ati_ids.h [PATCH] fbdev: ATI RN50 pci id 2005-11-07 07:53:53 -08:00
aty128fb.c aty128fb: fix blanking 2007-05-08 11:15:25 -07:00
atyfb_base.c [ATYFB]: Use pci_device_to_OF_node() in sparc. 2007-04-26 01:55:01 -07:00
atyfb.h [PATCH] atyfb: fix kconfig error part 2 2007-03-06 09:30:24 -08:00
mach64_accel.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
mach64_ct.c [PATCH] video/aty/mach64_ct.c: fix bogus delay loop 2007-03-05 08:12:54 -08:00
mach64_cursor.c [PATCH] atyfb: Fix section warnings 2006-06-26 09:58:31 -07:00
mach64_gx.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
Makefile [PATCH] Rewritten backlight infrastructure for portable Apple computers 2006-06-25 10:00:59 -07:00
radeon_accel.c
radeon_backlight.c backlight: Separate backlight properties from backlight ops pointers 2007-02-20 09:26:53 +00:00
radeon_base.c Revert "[POWERPC] Rename get_property to of_get_property: drivers" 2007-04-26 22:24:31 +10:00
radeon_i2c.c PCI: Cleanup the includes of <linux/pci.h> 2007-05-02 19:02:35 -07:00
radeon_monitor.c Revert "[POWERPC] Rename get_property to of_get_property: drivers" 2007-04-26 22:24:31 +10:00
radeon_pm.c Revert "[POWERPC] Rename get_property to of_get_property: drivers" 2007-04-26 22:24:31 +10:00
radeonfb.h [RADEON]: Probe clocks and monitor using OF properties on sparc. 2007-04-26 01:54:44 -07:00