summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrey Shvetsov <andrey.shvetsov@k2l.de>2016-09-15 14:19:03 (GMT)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2016-09-15 17:23:28 (GMT)
commit55f142ca5f2d0fbb1e3c438f4a5aa86b339437d0 (patch)
tree782ecf2aff9f09a12fbd637b40d010566484c43d
parent8c243d21d6ac980bdb38e11db9ffa3a44b1dc84c (diff)
downloadlinux-55f142ca5f2d0fbb1e3c438f4a5aa86b339437d0.tar.xz
staging: most: hdm-dim2: fix channel configuration
The DIM2 HDM checks the parameters passed to the function configure_channel() and adapts the buffer sizes of the configuration according to the hardware limitation. This patch is needed to init the HAL layer with the correct values. Signed-off-by: Andrey Shvetsov <andrey.shvetsov@k2l.de> Signed-off-by: Christian Gromm <christian.gromm@microchip.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/staging/most/hdm-dim2/dim2_hdm.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/staging/most/hdm-dim2/dim2_hdm.c b/drivers/staging/most/hdm-dim2/dim2_hdm.c
index 87039d9..dc71dab 100644
--- a/drivers/staging/most/hdm-dim2/dim2_hdm.c
+++ b/drivers/staging/most/hdm-dim2/dim2_hdm.c
@@ -1,7 +1,7 @@
/*
* dim2_hdm.c - MediaLB DIM2 Hardware Dependent Module
*
- * Copyright (C) 2015, Microchip Technology Germany II GmbH & Co. KG
+ * Copyright (C) 2015-2016, Microchip Technology Germany II GmbH & Co. KG
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
@@ -557,7 +557,7 @@ static int configure_channel(struct most_interface *most_iface, int ch_idx,
hdm_ch->name, buf_size, new_size);
spin_lock_irqsave(&dim_lock, flags);
hal_ret = dim_init_control(&hdm_ch->ch, is_tx, ch_addr,
- buf_size);
+ new_size);
break;
case MOST_CH_ASYNC:
new_size = dim_norm_ctrl_async_buffer_size(buf_size);
@@ -570,7 +570,7 @@ static int configure_channel(struct most_interface *most_iface, int ch_idx,
pr_warn("%s: fixed buffer size (%d -> %d)\n",
hdm_ch->name, buf_size, new_size);
spin_lock_irqsave(&dim_lock, flags);
- hal_ret = dim_init_async(&hdm_ch->ch, is_tx, ch_addr, buf_size);
+ hal_ret = dim_init_async(&hdm_ch->ch, is_tx, ch_addr, new_size);
break;
case MOST_CH_ISOC_AVP:
new_size = dim_norm_isoc_buffer_size(buf_size, sub_size);