ASoC: Intel: Skylake: use a helper macro to rounding-up calculation
authorTakashi Sakamoto <takashi.sakamoto@miraclelinux.com>
Mon, 6 Mar 2017 07:12:22 +0000 (16:12 +0900)
committerMark Brown <broonie@kernel.org>
Wed, 8 Mar 2017 10:02:42 +0000 (11:02 +0100)
In 'include/linux/kernel.h', there's a helper macro to round numerical
value. Let's use it.

Signed-off-by: Takashi Sakamoto <takashi.sakamoto@miraclelinux.com>
Acked-by: Vinod Koul <vinod.koul@intel.com>
Tested-by: Subhransu S. Prusty <subhransu.s.prusty@intel.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/intel/skylake/skl-topology.c

index ed58b5b3555a869ff91772689b761369873d6c89..17a9a55026a420d5ad34a778f07357541ec951c6 100644 (file)
@@ -299,8 +299,6 @@ static void skl_tplg_update_buffer_size(struct skl_sst *ctx,
 {
        int multiplier = 1;
        struct skl_module_fmt *in_fmt, *out_fmt;
-       int in_rate, out_rate;
-
 
        /* Since fixups is applied to pin 0 only, ibs, obs needs
         * change for pin 0 only
@@ -311,21 +309,13 @@ static void skl_tplg_update_buffer_size(struct skl_sst *ctx,
        if (mcfg->m_type == SKL_MODULE_TYPE_SRCINT)
                multiplier = 5;
 
-       if (in_fmt->s_freq % 1000)
-               in_rate = (in_fmt->s_freq / 1000) + 1;
-       else
-               in_rate = (in_fmt->s_freq / 1000);
-
-       mcfg->ibs = in_rate * (mcfg->in_fmt->channels) *
+       mcfg->ibs = DIV_ROUND_UP(in_fmt->s_freq, 1000) *
+                       (mcfg->in_fmt->channels) *
                        (mcfg->in_fmt->bit_depth >> 3) *
                        multiplier;
 
-       if (mcfg->out_fmt->s_freq % 1000)
-               out_rate = (mcfg->out_fmt->s_freq / 1000) + 1;
-       else
-               out_rate = (mcfg->out_fmt->s_freq / 1000);
-
-       mcfg->obs = out_rate * (mcfg->out_fmt->channels) *
+       mcfg->obs = DIV_ROUND_UP(mcfg->out_fmt->s_freq, 1000) *
+                       (mcfg->out_fmt->channels) *
                        (mcfg->out_fmt->bit_depth >> 3) *
                        multiplier;
 }