#else
                .tuner_type   = TUNER_ABSENT,
 #endif
-               .i2c_speed    = EM2874_I2C_SECONDARY_BUS_SELECT |
-                               EM28XX_I2C_CLK_WAIT_ENABLE |
+               .def_i2c_bus  = 1,
+               .i2c_speed    = EM28XX_I2C_CLK_WAIT_ENABLE |
                                EM28XX_I2C_FREQ_400_KHZ,
        },
        [EM2884_BOARD_HAUPPAUGE_WINTV_HVR_930C] = {
                .tuner_type   = TUNER_ABSENT,
 #endif
                .ir_codes     = RC_MAP_HAUPPAUGE,
-               .i2c_speed    = EM2874_I2C_SECONDARY_BUS_SELECT |
-                               EM28XX_I2C_CLK_WAIT_ENABLE |
+               .def_i2c_bus  = 1,
+               .i2c_speed    = EM28XX_I2C_CLK_WAIT_ENABLE |
                                EM28XX_I2C_FREQ_400_KHZ,
        },
        [EM2884_BOARD_CINERGY_HTC_STICK] = {
                .has_dvb      = 1,
                .ir_codes     = RC_MAP_NEC_TERRATEC_CINERGY_XS,
                .tuner_type   = TUNER_ABSENT,
-               .i2c_speed    = EM2874_I2C_SECONDARY_BUS_SELECT |
-                               EM28XX_I2C_CLK_WAIT_ENABLE |
+               .def_i2c_bus  = 1,
+               .i2c_speed    = EM28XX_I2C_CLK_WAIT_ENABLE |
                                EM28XX_I2C_FREQ_400_KHZ,
        },
        [EM2880_BOARD_HAUPPAUGE_WINTV_HVR_900] = {
        },
 
        [EM2874_BOARD_LEADERSHIP_ISDBT] = {
-               .i2c_speed      = EM2874_I2C_SECONDARY_BUS_SELECT |
-                                 EM28XX_I2C_CLK_WAIT_ENABLE |
+               .def_i2c_bus    = 1,
+               .i2c_speed      = EM28XX_I2C_CLK_WAIT_ENABLE |
                                  EM28XX_I2C_FREQ_100_KHZ,
                .xclk           = EM28XX_XCLK_FREQUENCY_10MHZ,
                .name           = "EM2874 Leadership ISDBT",
         * Empia EM28174, Sony CXD2820R and NXP TDA18271HD/C2 */
        [EM28174_BOARD_PCTV_290E] = {
                .name          = "PCTV nanoStick T2 290e",
-               .i2c_speed      = EM2874_I2C_SECONDARY_BUS_SELECT |
-                       EM28XX_I2C_CLK_WAIT_ENABLE | EM28XX_I2C_FREQ_100_KHZ,
+               .def_i2c_bus   = 1,
+               .i2c_speed     = EM28XX_I2C_CLK_WAIT_ENABLE | EM28XX_I2C_FREQ_100_KHZ,
                .tuner_type    = TUNER_ABSENT,
                .tuner_gpio    = pctv_290e,
                .has_dvb       = 1,
        /* 2013:024f PCTV DVB-S2 Stick 460e
         * Empia EM28174, NXP TDA10071, Conexant CX24118A and Allegro A8293 */
        [EM28174_BOARD_PCTV_460E] = {
-               .i2c_speed     = EM2874_I2C_SECONDARY_BUS_SELECT |
-                       EM28XX_I2C_CLK_WAIT_ENABLE | EM28XX_I2C_FREQ_400_KHZ,
+               .def_i2c_bus   = 1,
+               .i2c_speed     = EM28XX_I2C_CLK_WAIT_ENABLE | EM28XX_I2C_FREQ_400_KHZ,
                .name          = "PCTV DVB-S2 Stick (460e)",
                .tuner_type    = TUNER_ABSENT,
                .tuner_gpio    = pctv_460e,
                .tuner_type    = TUNER_ABSENT,
                .tuner_gpio    = maxmedia_ub425_tc,
                .has_dvb       = 1,
-               .i2c_speed     = EM2874_I2C_SECONDARY_BUS_SELECT |
-                               EM28XX_I2C_CLK_WAIT_ENABLE |
+               .def_i2c_bus   = 1,
+               .i2c_speed     = EM28XX_I2C_CLK_WAIT_ENABLE |
                                EM28XX_I2C_FREQ_400_KHZ,
        },
        /* 2304:0242 PCTV QuatroStick (510e)
                .tuner_gpio    = pctv_510e,
                .has_dvb       = 1,
                .ir_codes      = RC_MAP_PINNACLE_PCTV_HD,
-               .i2c_speed     = EM2874_I2C_SECONDARY_BUS_SELECT |
-                               EM28XX_I2C_CLK_WAIT_ENABLE |
+               .def_i2c_bus   = 1,
+               .i2c_speed     = EM28XX_I2C_CLK_WAIT_ENABLE |
                                EM28XX_I2C_FREQ_400_KHZ,
        },
        /* 2013:0251 PCTV QuatroStick nano (520e)
                .tuner_gpio    = pctv_520e,
                .has_dvb       = 1,
                .ir_codes      = RC_MAP_PINNACLE_PCTV_HD,
-               .i2c_speed     = EM2874_I2C_SECONDARY_BUS_SELECT |
-                               EM28XX_I2C_CLK_WAIT_ENABLE |
+               .def_i2c_bus   = 1,
+               .i2c_speed     = EM28XX_I2C_CLK_WAIT_ENABLE |
                                EM28XX_I2C_FREQ_400_KHZ,
        },
        [EM2884_BOARD_TERRATEC_HTC_USB_XS] = {
                .has_dvb      = 1,
                .ir_codes     = RC_MAP_NEC_TERRATEC_CINERGY_XS,
                .tuner_type   = TUNER_ABSENT,
-               .i2c_speed    = EM2874_I2C_SECONDARY_BUS_SELECT |
-                               EM28XX_I2C_CLK_WAIT_ENABLE |
+               .def_i2c_bus  = 1,
+               .i2c_speed    = EM28XX_I2C_CLK_WAIT_ENABLE |
                                EM28XX_I2C_FREQ_400_KHZ,
        },
 };
        if (!dev->board.i2c_speed)
                dev->board.i2c_speed = EM28XX_I2C_CLK_WAIT_ENABLE |
                                       EM28XX_I2C_FREQ_100_KHZ;
+
+       if (dev->board.def_i2c_bus == 1)
+               dev->board.i2c_speed |= EM2874_I2C_SECONDARY_BUS_SELECT;
 }