Skip to content
  1. Sep 03, 2014
  2. Sep 02, 2014
    • Changbing Xiong's avatar
      [media] media: check status of dmxdev->exit in poll functions of demux&dvr · d102cac8
      Changbing Xiong authored
      
      
      when usb-type tuner is pulled out, user applications did not close device's FD,
      and go on polling the device, we should return POLLERR directly.
      
      Signed-off-by: default avatarChangbing Xiong <cb.xiong@samsung.com>
      Signed-off-by: default avatarMauro Carvalho Chehab <m.chehab@samsung.com>
      d102cac8
    • Changbing Xiong's avatar
      [media] media: correct return value in dvb_demux_poll · 236c9bfa
      Changbing Xiong authored
      
      
      Data type of return value is unsigned int, but in function of dvb_demux_poll,
      when the pointer of dmxdevfilter equals NULL, it will return -EINVAL, which
      is invalid.
      
      Signed-off-by: default avatarChangbing Xiong <cb.xiong@samsung.com>
      Signed-off-by: default avatarMauro Carvalho Chehab <m.chehab@samsung.com>
      236c9bfa
    • Changbing Xiong's avatar
      [media] media: fix kernel deadlock due to tuner pull-out while playing · 7a0af6ed
      Changbing Xiong authored
      
      
      Normally, ADAP_STREAMING bit is set in dvb_usb_start_feed and cleared in
      dvb_usb_stop_feed.
      
      But in exceptional cases, for example, when the tv is playing programs
      and the tuner is pulled out, then dvb_usbv2_disconnect is called.
      
      In such case, it will first call dvb_usbv2_adapter_frontend_exit to stop
      dvb_frontend_thread, and then call dvb_usbv2_adapter_dvb_exit to clear
      ADAP_STREAMING bit.
      
      At this point, if dvb_frontend_thread is sleeping and waiting for
      ADAP_STREAMING to be cleared to get out of sleep. then
      dvb_frontend_thread can never be stoped, because clearing ADAP_STREAMING
      bit is performed after dvb_frontend_thread is stopped (i.e. performed in
      dvb_usbv2_adapter_dvb_exit).
      
      So, deadlock:
      
      [  240.822037] INFO: task khubd:497 blocked for more than 120 seconds.
      [  240.822655] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
      [  240.830493] khubd           D c0013b3c     0   497      2 0x00000000
      [  240.836996] [<c0013b3c>] (__schedule+0x200/0x54c) from [<c00110f4>] (schedule_timeout+0x14c/0x19c)
      [  240.845940] [<c00110f4>] (schedule_timeout+0x14c/0x19c) from [<c00137f4>] (wait_for_common+0xac/0x150)
      [  240.855234] [<c00137f4>] (wait_for_common+0xac/0x150) from [<c004989c>] (kthread_stop+0x58/0x90)
      [  240.864004] [<c004989c>] (kthread_stop+0x58/0x90) from [<c03b2ebc>] (dvb_frontend_stop+0x3c/0x9c)
      [  240.872849] [<c03b2ebc>] (dvb_frontend_stop+0x3c/0x9c) from [<c03b2f3c>] (dvb_unregister_frontend+0x20/0xd8)
      [  240.882666] [<c03b2f3c>] (dvb_unregister_frontend+0x20/0xd8) from [<c03ed938>] (dvb_usbv2_exit+0x68/0xfc)
      [  240.892204] [<c03ed938>] (dvb_usbv2_exit+0x68/0xfc) from [<c03eda18>] (dvb_usbv2_disconnect+0x4c/0x70)
      [  240.901499] [<c03eda18>] (dvb_usbv2_disconnect+0x4c/0x70) from [<c031c050>] (usb_unbind_interface+0x58/0x188)
      [  240.911395] [<c031c050>] (usb_unbind_interface+0x58/0x188) from [<c02c3e78>] (__device_release_driver+0x74/0xd0)
      [  240.921544] [<c02c3e78>] (__device_release_driver+0x74/0xd0) from [<c02c3ef0>] (device_release_driver+0x1c/0x28)
      [  240.931697] [<c02c3ef0>] (device_release_driver+0x1c/0x28) from [<c02c39b8>] (bus_remove_device+0xc4/0xe4)
      [  240.941332] [<c02c39b8>] (bus_remove_device+0xc4/0xe4) from [<c02c1344>] (device_del+0xf4/0x178)
      [  240.950106] [<c02c1344>] (device_del+0xf4/0x178) from [<c0319eb0>] (usb_disable_device+0xa0/0x1c8)
      [  240.959040] [<c0319eb0>] (usb_disable_device+0xa0/0x1c8) from [<c03128b4>] (usb_disconnect+0x88/0x188)
      [  240.968326] [<c03128b4>] (usb_disconnect+0x88/0x188) from [<c0313edc>] (hub_thread+0x4d0/0x1200)
      [  240.977100] [<c0313edc>] (hub_thread+0x4d0/0x1200) from [<c0049690>] (kthread+0xa4/0xb0)
      [  240.985174] [<c0049690>] (kthread+0xa4/0xb0) from [<c0009118>] (ret_from_fork+0x14/0x3c)
      [  240.993259] INFO: task kdvb-ad-0-fe-0:3256 blocked for more than 120 seconds.
      [  241.000349] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
      [  241.008162] kdvb-ad-0-fe-0  D c0013b3c     0  3256      2 0x00000000
      [  241.014507] [<c0013b3c>] (__schedule+0x200/0x54c) from [<c03eda44>] (wait_schedule+0x8/0x10)
      [  241.022924] [<c03eda44>] (wait_schedule+0x8/0x10) from [<c001120c>] (__wait_on_bit+0x74/0xb8)
      [  241.031434] [<c001120c>] (__wait_on_bit+0x74/0xb8) from [<c00112b8>] (out_of_line_wait_on_bit+0x68/0x70)
      [  241.040902] [<c00112b8>] (out_of_line_wait_on_bit+0x68/0x70) from [<c03e5e88>] (dvb_usb_fe_sleep+0xf4/0xfc)
      [  241.050618] [<c03e5e88>] (dvb_usb_fe_sleep+0xf4/0xfc) from [<c03b4b74>] (dvb_frontend_thread+0x124/0x4e8)
      [  241.060164] [<c03b4b74>] (dvb_frontend_thread+0x124/0x4e8) from [<c0049690>] (kthread+0xa4/0xb0)
      [  241.068929] [<c0049690>] (kthread+0xa4/0xb0) from [<c0009118>] (ret_from_fork+0x14/0x3c)
      
      Fix it by calling dvb_usbv2_adapter_frontend_exit() latter.
      
      Test enviroment: odroidx2 + Hauppauge(WinTV-Aero-M)
      
      Signed-off-by: default avatarChangbing Xiong <cb.xiong@samsung.com>
      Signed-off-by: default avatarMauro Carvalho Chehab <m.chehab@samsung.com>
      7a0af6ed
  3. Aug 27, 2014
    • Mauro Carvalho Chehab's avatar
      [media] omap: be sure that MMU is there for COMPILE_TEST · 38a07311
      Mauro Carvalho Chehab authored
      
      
      COMPILE_TEST fail on (some) archs without MMU.
      
      Signed-off-by: default avatarMauro Carvalho Chehab <m.chehab@samsung.com>
      38a07311
    • Mauro Carvalho Chehab's avatar
      [media] be sure that HAS_DMA is enabled for vb2-dma-contig · 12bd88e6
      Mauro Carvalho Chehab authored
      
      
      vb2-dma-contig depends on HAS_DMA, but the Kbuild doesn't take
      it into account at select.
      
      Signed-off-by: default avatarMauro Carvalho Chehab <m.chehab@samsung.com>
      12bd88e6
    • Mauro Carvalho Chehab's avatar
      [media] enable COMPILE_TEST for media drivers · 7155043c
      Mauro Carvalho Chehab authored
      
      
      There are several arch-specific media drivers that don't
      require asm-specific includes and can be successfully
      compiled on x86. Add COMPILE_TEST dependency for them, in
      order to allow a broader test on those drivers.
      
      That helps static analysis tools like Coverity to discover
      eventual troubles there.
      
      Signed-off-by: default avatarMauro Carvalho Chehab <m.chehab@samsung.com>
      7155043c
    • Mauro Carvalho Chehab's avatar
      [media] enable COMPILE_TEST for OMAP2 vout · 1dbfacf2
      Mauro Carvalho Chehab authored
      
      
      We don't need anything special to enable COMPILE_TEST for
      this driver.
      
      Signed-off-by: default avatarMauro Carvalho Chehab <m.chehab@samsung.com>
      1dbfacf2
    • Mauro Carvalho Chehab's avatar
      [media] allow COMPILE_TEST for SAMSUNG_EXYNOS4_IS · f2080e38
      Mauro Carvalho Chehab authored
      
      
      That helps some static checks, so enable it. While there, it was
      noticed that linux/sizes.h was missing:
      
      drivers/media/platform/exynos4-is/mipi-csis.c: In function ‘s5pcsis_s_rx_buffer’:
      drivers/media/platform/exynos4-is/mipi-csis.c:114:31: error: ‘SZ_4K’ undeclared (first use in this function)
       #define S5PCSIS_PKTDATA_SIZE  SZ_4K
                                     ^
      
      Signed-off-by: default avatarMauro Carvalho Chehab <m.chehab@samsung.com>
      f2080e38
    • Mauro Carvalho Chehab's avatar
      [media] enable COMPILE_TEST for ti-vbe · f3334180
      Mauro Carvalho Chehab authored
      
      
      Allowing COMPILE_TEST here is trivial, but there's one missing
      header to be added:
      
      drivers/media/platform/ti-vpe/vpe.c: In function ‘vpe_probe’:
      drivers/media/platform/ti-vpe/vpe.c:2266:56: error: ‘SZ_32K’ undeclared (first use in this function)
        dev->base = devm_ioremap(&pdev->dev, dev->res->start, SZ_32K);
                                                              ^
      
      Signed-off-by: default avatarMauro Carvalho Chehab <m.chehab@samsung.com>
      f3334180
    • Mauro Carvalho Chehab's avatar
      [media] enable COMPILE_TEST for MX2 eMMa-PrP driver · 1c17d8c7
      Mauro Carvalho Chehab authored
      
      
      By allowing compilation on all archs, we can use static
      analysis tools to test this driver.
      
      In order to do that, replace asm/sizes.h by its generic
      name (linux/sizes.h), with should keep doing the right
      thing.
      
      Signed-off-by: default avatarMauro Carvalho Chehab <m.chehab@samsung.com>
      1c17d8c7
    • Mauro Carvalho Chehab's avatar
      Revert "[media] staging: omap4iss: copy paste error in iss_get_clocks" · 821ee47e
      Mauro Carvalho Chehab authored
      This patch readded a call to iss_put_clocks(), with was removed
      by changeset 1153be56, causing a compilation breakage.
      
      This reverts commit d4b32646.
      821ee47e
    • Mauro Carvalho Chehab's avatar
      [media] s5p-jpeg: Get rid of a warning · c4382699
      Mauro Carvalho Chehab authored
      
      
      drivers/media/platform/s5p-jpeg/jpeg-hw-s5p.c: In function 's5p_jpeg_clear_int':
      drivers/media/platform/s5p-jpeg/jpeg-hw-s5p.c:327:16: warning: variable 'reg' set but not used [-Wunused-but-set-variable]
        unsigned long reg;
                      ^
      
      Signed-off-by: default avatarMauro Carvalho Chehab <m.chehab@samsung.com>
      c4382699
    • Mauro Carvalho Chehab's avatar
      [media] atmel-isi: get rid of a warning · b91677ad
      Mauro Carvalho Chehab authored
      
      
      drivers/media/platform/soc_camera/atmel-isi.c: In function 'start_streaming':
      drivers/media/platform/soc_camera/atmel-isi.c:387:6: warning: variable 'sr' set but not used [-Wunused-but-set-variable]
        u32 sr = 0;
            ^
      
      Signed-off-by: default avatarMauro Carvalho Chehab <m.chehab@samsung.com>
      b91677ad
    • Mauro Carvalho Chehab's avatar
      [media] mx2_camera: get rid of a warning · 615f1bcb
      Mauro Carvalho Chehab authored
      
      
      drivers/media/platform/soc_camera/mx2_camera.c: In function 'mx27_camera_emma_prp_reset':
      drivers/media/platform/soc_camera/mx2_camera.c:812:6: warning: variable 'cntl' set but not used [-Wunused-but-set-variable]
        u32 cntl;
            ^
      
      Signed-off-by: default avatarMauro Carvalho Chehab <m.chehab@samsung.com>
      615f1bcb
    • Mauro Carvalho Chehab's avatar
      [media] exynos4-is/media-dev: get rid of a warning for a dead code · cdf58a6f
      Mauro Carvalho Chehab authored
      
      
      drivers/media/platform/exynos4-is/media-dev.c: In function 'fimc_md_link_notify':
      drivers/media/platform/exynos4-is/media-dev.c:1102:4: warning: suggest braces around empty body in an 'else' statement [-Wempty-body]
          ; /* TODO: Link state change validation */
          ^
      
      Signed-off-by: default avatarMauro Carvalho Chehab <m.chehab@samsung.com>
      cdf58a6f
    • Mauro Carvalho Chehab's avatar
      [media] mipi-csis: get rid of a warning · 84ddba45
      Mauro Carvalho Chehab authored
      
      
      drivers/media/platform/exynos4-is/mipi-csis.c: In function 's5pcsis_parse_dt':
      drivers/media/platform/exynos4-is/mipi-csis.c:756:2: warning: comparison is always false due to limited range of data type [-Wtype-limits]
        if (state->index < 0 || state->index >= CSIS_MAX_ENTITIES)
        ^
      
      Signed-off-by: default avatarMauro Carvalho Chehab <m.chehab@samsung.com>
      84ddba45
    • Mauro Carvalho Chehab's avatar
      [media] s5p_mfc: get rid of several warnings · 8492ec69
      Mauro Carvalho Chehab authored
      
      
      drivers/media/platform/s5p-mfc/s5p_mfc_dec.c:826:5: warning: no previous prototype for 'vidioc_decoder_cmd' [-Wmissing-prototypes]
       int vidioc_decoder_cmd(struct file *file, void *priv,
           ^
      drivers/media/platform/s5p-mfc/s5p_mfc.c: In function 's5p_mfc_runtime_resume':
      drivers/media/platform/s5p-mfc/s5p_mfc.c:1314:6: warning: variable 'pre_power' set but not used [-Wunused-but-set-variable]
        int pre_power;
            ^
      drivers/media/platform/s5p-mfc/s5p_mfc_cmd_v5.c:163:25: warning: no previous prototype for 's5p_mfc_init_hw_cmds_v5' [-Wmissing-prototypes]
       struct s5p_mfc_hw_cmds *s5p_mfc_init_hw_cmds_v5(void)
                               ^
      drivers/media/platform/s5p-mfc/s5p_mfc_cmd_v6.c:156:25: warning: no previous prototype for 's5p_mfc_init_hw_cmds_v6' [-Wmissing-prototypes]
       struct s5p_mfc_hw_cmds *s5p_mfc_init_hw_cmds_v6(void)
                               ^
      drivers/media/platform/s5p-mfc/s5p_mfc_opr_v5.c: In function 's5p_mfc_run_dec_frame':
      drivers/media/platform/s5p-mfc/s5p_mfc_opr_v5.c:1189:15: warning: variable 'index' set but not used [-Wunused-but-set-variable]
        unsigned int index;
                     ^
      drivers/media/platform/s5p-mfc/s5p_mfc_enc.c: In function 'cleanup_ref_queue':
      drivers/media/platform/s5p-mfc/s5p_mfc_enc.c:742:27: warning: variable 'mb_c_addr' set but not used [-Wunused-but-set-variable]
        unsigned long mb_y_addr, mb_c_addr;
                                 ^
      drivers/media/platform/s5p-mfc/s5p_mfc_enc.c:742:16: warning: variable 'mb_y_addr' set but not used [-Wunused-but-set-variable]
        unsigned long mb_y_addr, mb_c_addr;
                      ^
      drivers/media/platform/s5p-mfc/s5p_mfc_enc.c: At top level:
      drivers/media/platform/s5p-mfc/s5p_mfc_enc.c:1684:5: warning: no previous prototype for 'vidioc_encoder_cmd' [-Wmissing-prototypes]
       int vidioc_encoder_cmd(struct file *file, void *priv,
           ^
      
      Signed-off-by: default avatarMauro Carvalho Chehab <m.chehab@samsung.com>
      8492ec69
    • Mauro Carvalho Chehab's avatar
      [media] s5p_mfc_ctrl: add missing s5p_mfc_ctrl.h header · b171e3d8
      Mauro Carvalho Chehab authored
      
      
      That gets rid of the following warnings:
      
      drivers/media/platform/s5p-mfc/s5p_mfc_ctrl.c:119:5: warning: no previous prototype for 's5p_mfc_release_firmware' [-Wmissing-prototypes]
       int s5p_mfc_release_firmware(struct s5p_mfc_dev *dev)
           ^
      drivers/media/platform/s5p-mfc/s5p_mfc_ctrl.c:132:5: warning: no previous prototype for 's5p_mfc_reset' [-Wmissing-prototypes]
       int s5p_mfc_reset(struct s5p_mfc_dev *dev)
           ^
      drivers/media/platform/s5p-mfc/s5p_mfc_ctrl.c:214:5: warning: no previous prototype for 's5p_mfc_init_hw' [-Wmissing-prototypes]
       int s5p_mfc_init_hw(struct s5p_mfc_dev *dev)
           ^
      drivers/media/platform/s5p-mfc/s5p_mfc_ctrl.c:291:6: warning: no previous prototype for 's5p_mfc_deinit_hw' [-Wmissing-prototypes]
       void s5p_mfc_deinit_hw(struct s5p_mfc_dev *dev)
            ^
      drivers/media/platform/s5p-mfc/s5p_mfc_ctrl.c:301:5: warning: no previous prototype for 's5p_mfc_sleep' [-Wmissing-prototypes]
       int s5p_mfc_sleep(struct s5p_mfc_dev *dev)
           ^
      drivers/media/platform/s5p-mfc/s5p_mfc_ctrl.c:330:5: warning: no previous prototype for 's5p_mfc_wakeup' [-Wmissing-prototypes]
       int s5p_mfc_wakeup(struct s5p_mfc_dev *dev)
           ^
      drivers/media/platform/s5p-mfc/s5p_mfc_ctrl.c:378:5: warning: no previous prototype for 's5p_mfc_open_mfc_inst' [-Wmissing-prototypes]
       int s5p_mfc_open_mfc_inst(struct s5p_mfc_dev *dev, struct s5p_mfc_ctx *ctx)
           ^
      drivers/media/platform/s5p-mfc/s5p_mfc_ctrl.c:420:6: warning: no previous prototype for 's5p_mfc_close_mfc_inst' [-Wmissing-prototypes]
       void s5p_mfc_close_mfc_inst(struct s5p_mfc_dev *dev, struct s5p_mfc_ctx *ctx)
            ^
      
      Signed-off-by: default avatarMauro Carvalho Chehab <m.chehab@samsung.com>
      b171e3d8
    • Mauro Carvalho Chehab's avatar
      [media] fimc-is-param: get rid of warnings · 2ff1d4c1
      Mauro Carvalho Chehab authored
      
      
      In file included from drivers/media/platform/exynos4-is/fimc-is-param.c:31:0:
      drivers/media/platform/exynos4-is/fimc-is-errno.h:245:20: warning: type qualifiers ignored on function return type [-Wignored-qualifiers]
       const char * const fimc_is_strerr(unsigned int error);
                          ^
      drivers/media/platform/exynos4-is/fimc-is-errno.h:246:20: warning: type qualifiers ignored on function return type [-Wignored-qualifiers]
       const char * const fimc_is_param_strerr(unsigned int error);
                          ^
      drivers/media/platform/exynos4-is/fimc-is-param.c: In function 'fimc_is_set_initial_params':
      drivers/media/platform/exynos4-is/fimc-is-param.c:670:23: warning: variable 'sensor' set but not used [-Wunused-but-set-variable]
        struct sensor_param *sensor;
                             ^
      
      Signed-off-by: default avatarMauro Carvalho Chehab <m.chehab@samsung.com>
      2ff1d4c1
    • Mauro Carvalho Chehab's avatar
      [media] g2d: remove unused var · dc916aa7
      Mauro Carvalho Chehab authored
      
      
      drivers/media/platform/s5p-g2d/g2d.c: In function 'job_abort':
      drivers/media/platform/s5p-g2d/g2d.c:493:6: warning: variable 'ret' set but not used [-Wunused-but-set-variable]
        int ret;
            ^
      
      The job_abort function returns void. No sense to get the
      returned argument, if this won't be used.
      
      Signed-off-by: default avatarMauro Carvalho Chehab <m.chehab@samsung.com>
      dc916aa7
    • Mauro Carvalho Chehab's avatar
      [media] s5p-jpeg: get rid of some warnings · af425be8
      Mauro Carvalho Chehab authored
      
      
      Declare this as static:
      
      drivers/media/platform/s5p-jpeg/jpeg-core.c:732:6: warning: no previous prototype for 'exynos4_jpeg_set_huff_tbl' [-Wmissing-prototypes]
       void exynos4_jpeg_set_huff_tbl(void __iomem *base)
            ^
      
      And don't compile this dead code, while not needed:
      drivers/media/platform/s5p-jpeg/jpeg-hw-exynos3250.c:236:14: warning: no previous prototype for 'exynos3250_jpeg_get_y' [-Wmissing-prototypes]
       unsigned int exynos3250_jpeg_get_y(void __iomem *regs)
                    ^
      drivers/media/platform/s5p-jpeg/jpeg-hw-exynos3250.c:241:14: warning: no previous prototype for 'exynos3250_jpeg_get_x' [-Wmissing-prototypes]
       unsigned int exynos3250_jpeg_get_x(void __iomem *regs)
                    ^
      
      Signed-off-by: default avatarMauro Carvalho Chehab <m.chehab@samsung.com>
      af425be8
    • Mauro Carvalho Chehab's avatar
      [media] omap_vout: Get rid of a few warnings · 52334bb3
      Mauro Carvalho Chehab authored
      
      
      drivers/media/platform/omap/omap_vout.c: In function 'omapvid_setup_overlay':
      drivers/media/platform/omap/omap_vout.c:372:29: warning: variable 'pixheight' set but not used [-Wunused-but-set-variable]
        int cropheight, cropwidth, pixheight, pixwidth;
                                   ^
      drivers/media/platform/omap/omap_vout.c: In function 'vidioc_s_ctrl':
      drivers/media/platform/omap/omap_vout.c:1454:24: warning: variable 'ovl' set but not used [-Wunused-but-set-variable]
         struct omap_overlay *ovl;
                              ^
      drivers/media/platform/omap/omap_vout.c: In function 'vidioc_reqbufs':
      drivers/media/platform/omap/omap_vout.c:1492:55: warning: comparison of unsigned expression < 0 is always false [-Wtype-limits]
        if ((req->type != V4L2_BUF_TYPE_VIDEO_OUTPUT) || (req->count < 0))
                                                             ^
      
      Signed-off-by: default avatarMauro Carvalho Chehab <m.chehab@samsung.com>
      52334bb3
    • Mauro Carvalho Chehab's avatar
      [media] omap: fix compilation if !VIDEO_OMAP2_VOUT_VRFB · 92e3919a
      Mauro Carvalho Chehab authored
      
      
      When CONFIG_VIDEO_OMAP2_VOUT_VRFB is disabled, the compilation
      will fail, as the function stubs are wrong. Also, as they weren't
      declared as static inline, lots of warnings will be generated.
      
      Signed-off-by: default avatarMauro Carvalho Chehab <m.chehab@samsung.com>
      92e3919a
    • Mauro Carvalho Chehab's avatar
      [media] gsc: Use %pad for dma_addr_t · 286da990
      Mauro Carvalho Chehab authored
      
      
      drivers/media/platform/exynos-gsc/gsc-core.c:855:2: note: in expansion of macro 'pr_debug'
        pr_debug("ADDR: y= 0x%X  cb= 0x%X cr= 0x%X ret= %d",
        ^
      include/linux/dynamic_debug.h:64:16: warning: format '%X' expects argument of type 'unsigned int', but argument 4 has type 'dma
      _addr_t' [-Wformat=]
        static struct _ddebug  __aligned(8)   \
                      ^
      
      Signed-off-by: default avatarMauro Carvalho Chehab <m.chehab@samsung.com>
      286da990
    • Mauro Carvalho Chehab's avatar
      [media] dvb_frontend: estimate bandwidth also for DVB-S/S2/Turbo · c623ed63
      Mauro Carvalho Chehab authored
      
      
      The needed bandwidth can be estimated using the symbol rate and
      the rolloff factor. This could be useful for the frontend drivers,
      as they don't need to calculate it themselves.
      
      Reported-by: default avatarAntti Palosaari <crope@iki.fi>
      Signed-off-by: default avatarMauro Carvalho Chehab <m.chehab@samsung.com>
      c623ed63