mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-20 02:34:23 +08:00
[media] em28xx: write output frame resolution to regs 0x34+0x35 for em25xx family bridges
The Windows driver writes the output resolution to registers 0x34 (width / 16) and 0x35 (height / 16) always. We don't know yet what these registers are used for. Signed-off-by: Frank Schäfer <fschaefer.oss@googlemail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
This commit is contained in:
parent
c8c39796c4
commit
1e2e9086c7
@ -767,6 +767,13 @@ static void em28xx_capture_area_set(struct em28xx *dev, u8 hstart, u8 vstart,
|
||||
em28xx_write_regs(dev, EM28XX_R1E_CWIDTH, &cwidth, 1);
|
||||
em28xx_write_regs(dev, EM28XX_R1F_CHEIGHT, &cheight, 1);
|
||||
em28xx_write_regs(dev, EM28XX_R1B_OFLOW, &overflow, 1);
|
||||
|
||||
/* FIXME: function/meaning of these registers ? */
|
||||
/* FIXME: align width+height to multiples of 4 ?! */
|
||||
if (dev->is_em25xx) {
|
||||
em28xx_write_reg(dev, 0x34, width >> 4);
|
||||
em28xx_write_reg(dev, 0x35, height >> 4);
|
||||
}
|
||||
}
|
||||
|
||||
static int em28xx_scaler_set(struct em28xx *dev, u16 h, u16 v)
|
||||
|
@ -48,7 +48,7 @@
|
||||
#define EM28XX_CHIPCFG2_TS_PACKETSIZE_752 0x03
|
||||
|
||||
|
||||
/* GPIO/GPO registers */
|
||||
/* GPIO/GPO registers */
|
||||
#define EM2880_R04_GPO 0x04 /* em2880-em2883 only */
|
||||
#define EM28XX_R08_GPIO 0x08 /* em2820 or upper */
|
||||
|
||||
@ -167,6 +167,13 @@
|
||||
|
||||
#define EM28XX_R34_VBI_START_H 0x34
|
||||
#define EM28XX_R35_VBI_START_V 0x35
|
||||
/*
|
||||
* NOTE: the EM276x (and EM25xx, EM277x/8x ?) (camera bridges) use these
|
||||
* registers for a different unknown purpose.
|
||||
* => register 0x34 is set to capture width / 16
|
||||
* => register 0x35 is set to capture height / 16
|
||||
*/
|
||||
|
||||
#define EM28XX_R36_VBI_WIDTH 0x36
|
||||
#define EM28XX_R37_VBI_HEIGHT 0x37
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user