Linux 6.9-rc4
[sfrench/cifs-2.6.git] / drivers / media / pci / cx23885 / cx23885-cards.c
index 8e5a2c580821ea51d0769e716581ae5e5ae0b517..9244b4320558e07c2c3241410cd08c8153eda404 100644 (file)
@@ -15,7 +15,7 @@
 #include <linux/firmware.h>
 #include <misc/altera.h>
 
-#include "tuner-xc2028.h"
+#include "xc2028.h"
 #include "netup-eeprom.h"
 #include "netup-init.h"
 #include "altera-ci.h"
@@ -657,14 +657,11 @@ struct cx23885_board cx23885_boards[] = {
                .porta          = CX23885_ANALOG_VIDEO,
                .input          = {{
                        .type   = CX23885_VMUX_COMPOSITE1,
-                       .vmux   = CX25840_VIN7_CH3 |
-                                 CX25840_VIN4_CH2 |
-                                 CX25840_VIN6_CH1,
+                       .vmux   = CX25840_VIN6_CH1,
                        .amux   = CX25840_AUDIO7,
                }, {
                        .type   = CX23885_VMUX_SVIDEO,
-                       .vmux   = CX25840_VIN7_CH3 |
-                                 CX25840_VIN4_CH2 |
+                       .vmux   = CX25840_VIN4_CH2 |
                                  CX25840_VIN8_CH1 |
                                  CX25840_SVIDEO_ON,
                        .amux   = CX25840_AUDIO7,
@@ -703,8 +700,29 @@ struct cx23885_board cx23885_boards[] = {
        },
        [CX23885_BOARD_HAUPPAUGE_HVR5525] = {
                .name           = "Hauppauge WinTV-HVR5525",
+               .porta          = CX23885_ANALOG_VIDEO,
                .portb          = CX23885_MPEG_DVB,
                .portc          = CX23885_MPEG_DVB,
+               .tuner_type     = TUNER_ABSENT,
+               .force_bff      = 1,
+               .input          = {{
+                       .type   = CX23885_VMUX_TELEVISION,
+                       .vmux   =       CX25840_VIN7_CH3 |
+                                       CX25840_VIN5_CH2 |
+                                       CX25840_VIN2_CH1 |
+                                       CX25840_DIF_ON,
+                       .amux   = CX25840_AUDIO8,
+               }, {
+                       .type   = CX23885_VMUX_COMPOSITE1,
+                       .vmux   = CX25840_VIN6_CH1,
+                       .amux   = CX25840_AUDIO7,
+               }, {
+                       .type   = CX23885_VMUX_SVIDEO,
+                       .vmux   = CX25840_VIN7_CH3 |
+                                 CX25840_VIN8_CH1 |
+                                 CX25840_SVIDEO_ON,
+                       .amux   = CX25840_AUDIO7,
+               } },
        },
        [CX23885_BOARD_VIEWCAST_260E] = {
                .name           = "ViewCast 260e",
@@ -757,42 +775,64 @@ struct cx23885_board cx23885_boards[] = {
                } },
        },
        [CX23885_BOARD_HAUPPAUGE_QUADHD_DVB] = {
-               .name        = "Hauppauge WinTV-QuadHD-DVB",
+               .name         = "Hauppauge WinTV-QuadHD-DVB",
+               .porta        = CX23885_ANALOG_VIDEO,
                .portb        = CX23885_MPEG_DVB,
                .portc        = CX23885_MPEG_DVB,
+               .tuner_type     = TUNER_ABSENT,
+               .force_bff      = 1,
+               .input          = {{
+                       .type   = CX23885_VMUX_TELEVISION,
+                       .vmux   =       CX25840_VIN7_CH3 |
+                                       CX25840_VIN5_CH2 |
+                                       CX25840_VIN2_CH1 |
+                                       CX25840_DIF_ON,
+                       .amux   = CX25840_AUDIO8,
+               } },
        },
        [CX23885_BOARD_HAUPPAUGE_QUADHD_DVB_885] = {
-               .name       = "Hauppauge WinTV-QuadHD-DVB(885)",
+               .name         = "Hauppauge WinTV-QuadHD-DVB(885)",
                .portb        = CX23885_MPEG_DVB,
                .portc        = CX23885_MPEG_DVB,
+               .tuner_type   = TUNER_ABSENT,
        },
        [CX23885_BOARD_HAUPPAUGE_QUADHD_ATSC] = {
-               .name        = "Hauppauge WinTV-QuadHD-ATSC",
+               .name         = "Hauppauge WinTV-QuadHD-ATSC",
+               .porta        = CX23885_ANALOG_VIDEO,
                .portb        = CX23885_MPEG_DVB,
                .portc        = CX23885_MPEG_DVB,
+               .tuner_type     = TUNER_ABSENT,
+               .input          = {{
+                       .type   = CX23885_VMUX_TELEVISION,
+                       .vmux   =       CX25840_VIN7_CH3 |
+                                       CX25840_VIN5_CH2 |
+                                       CX25840_VIN2_CH1 |
+                                       CX25840_DIF_ON,
+                       .amux   = CX25840_AUDIO8,
+               } },
        },
        [CX23885_BOARD_HAUPPAUGE_QUADHD_ATSC_885] = {
-               .name       = "Hauppauge WinTV-QuadHD-ATSC(885)",
+               .name         = "Hauppauge WinTV-QuadHD-ATSC(885)",
                .portb        = CX23885_MPEG_DVB,
                .portc        = CX23885_MPEG_DVB,
+               .tuner_type   = TUNER_ABSENT,
        },
        [CX23885_BOARD_HAUPPAUGE_HVR1265_K4] = {
                .name           = "Hauppauge WinTV-HVR-1265(161111)",
                .porta          = CX23885_ANALOG_VIDEO,
                .portc          = CX23885_MPEG_DVB,
                .tuner_type     = TUNER_ABSENT,
-               .force_bff      = 1,
                .input          = {{
-                       .type   = CX23885_VMUX_COMPOSITE1,
+                       .type   = CX23885_VMUX_TELEVISION,
                        .vmux   =       CX25840_VIN7_CH3 |
-                                       CX25840_VIN4_CH2 |
-                                       CX25840_VIN6_CH1,
-                       .amux   = CX25840_AUDIO7,
+                                       CX25840_VIN5_CH2 |
+                                       CX25840_VIN2_CH1 |
+                                       CX25840_DIF_ON,
+                       .amux   = CX25840_AUDIO8,
                }, {
                        .type   = CX23885_VMUX_SVIDEO,
-                       .vmux   =       CX25840_VIN7_CH3 |
-                                       CX25840_VIN4_CH2 |
-                                       CX25840_VIN8_CH1 |
+                       .vmux   =       CX25840_VIN4_CH2 |
+                                       CX25840_VIN6_CH1 |
                                        CX25840_SVIDEO_ON,
                        .amux   = CX25840_AUDIO7,
                } },
@@ -2169,7 +2209,7 @@ void cx23885_card_setup(struct cx23885_dev *dev)
                ts2->gen_ctrl_val  = 0xc; /* Serial bus + punctured clock */
                ts2->ts_clk_en_val = 0x1; /* Enable TS_CLK */
                ts2->src_sel_val   = CX23885_SRC_SEL_PARALLEL_MPEG_VIDEO;
-               /* fall-through */
+               fallthrough;
        case CX23885_BOARD_DVICO_FUSIONHDTV_5_EXP:
                ts1->gen_ctrl_val  = 0xc; /* Serial bus + punctured clock */
                ts1->ts_clk_en_val = 0x1; /* Enable TS_CLK */
@@ -2330,7 +2370,7 @@ void cx23885_card_setup(struct cx23885_dev *dev)
                /* Currently only enabled for the integrated IR controller */
                if (!enable_885_ir)
                        break;
-               /* fall-through */
+               fallthrough;
        case CX23885_BOARD_HAUPPAUGE_HVR1250:
        case CX23885_BOARD_HAUPPAUGE_HVR1800:
        case CX23885_BOARD_HAUPPAUGE_IMPACTVCBE:
@@ -2350,6 +2390,7 @@ void cx23885_card_setup(struct cx23885_dev *dev)
        case CX23885_BOARD_HAUPPAUGE_QUADHD_ATSC:
        case CX23885_BOARD_HAUPPAUGE_HVR1270:
        case CX23885_BOARD_HAUPPAUGE_HVR1850:
+       case CX23885_BOARD_HAUPPAUGE_HVR5525:
        case CX23885_BOARD_MYGICA_X8506:
        case CX23885_BOARD_MAGICPRO_PROHDTVE2:
        case CX23885_BOARD_HAUPPAUGE_HVR1290: