Patchwork net: stmmac: fixed enh_desc set always zero

login
register
mail settings
Submitter Byungho An
Date June 28, 2013, 7:35 a.m.
Message ID <015801ce73d2$12332070$36996150$%an@samsung.com>
Download mbox | patch
Permalink /patch/255285/
State Accepted
Delegated to: David Miller
Headers show

Comments

Byungho An - June 28, 2013, 7:35 a.m.
This patch fixed that enh_desc value is always zero.
Due to calling order of stmmac_selec_desc_mode(), enh_desc value is always zero. 
Even though mac is set to use enhanced dma descriptor, if enh_desc is zero, 
functions related dma descriptor are not working correctly.

Signed-off-by: Byungho An <bh74.an@samsung.com>
---
 drivers/net/ethernet/stmicro/stmmac/stmmac_main.c |    6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)
Giuseppe CAVALLARO - June 28, 2013, 12:57 p.m.
On 6/28/2013 9:35 AM, Byungho An wrote:
> 
> This patch fixed that enh_desc value is always zero.
> Due to calling order of stmmac_selec_desc_mode(), enh_desc value is always zero.
> Even though mac is set to use enhanced dma descriptor, if enh_desc is zero,
> functions related dma descriptor are not working correctly.
> Signed-off-by: Byungho An <bh74.an@samsung.com>

Acked-by: Giuseppe Cavallaro <peppe.cavallaro@st.com>

> ---
>   drivers/net/ethernet/stmicro/stmmac/stmmac_main.c |    6 +++---
>   1 file changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
> index e5e221e..40efd55 100644
> --- a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
> +++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
> @@ -2567,9 +2567,6 @@ static int stmmac_hw_init(struct stmmac_priv *priv)
>   	/* Get and dump the chip ID */
>   	priv->synopsys_id = stmmac_get_synopsys_id(priv);
>   
> -	/* To use alternate (extended) or normal descriptor structures */
> -	stmmac_selec_desc_mode(priv);
> -
>   	/* To use the chained or ring mode */
>   	if (chain_mode) {
>   		priv->hw->chain = &chain_mode_ops;
> @@ -2604,6 +2601,9 @@ static int stmmac_hw_init(struct stmmac_priv *priv)
>   	} else
>   		pr_info(" No HW DMA feature register supported");
>   
> +	/* To use alternate (extended) or normal descriptor structures */
> +	stmmac_selec_desc_mode(priv);
> +
>   	ret = priv->hw->mac->rx_ipc(priv->ioaddr);
>   	if (!ret) {
>   		pr_warn(" RX IPC Checksum Offload not configured.\n");
> 

--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
David Miller - July 1, 2013, 8:33 p.m.
From: Giuseppe CAVALLARO <peppe.cavallaro@st.com>
Date: Fri, 28 Jun 2013 14:57:46 +0200

> On 6/28/2013 9:35 AM, Byungho An wrote:
>> 
>> This patch fixed that enh_desc value is always zero.
>> Due to calling order of stmmac_selec_desc_mode(), enh_desc value is always zero.
>> Even though mac is set to use enhanced dma descriptor, if enh_desc is zero,
>> functions related dma descriptor are not working correctly.
>> Signed-off-by: Byungho An <bh74.an@samsung.com>
> 
> Acked-by: Giuseppe Cavallaro <peppe.cavallaro@st.com>

Applied.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Patch

diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
index e5e221e..40efd55 100644
--- a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
+++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
@@ -2567,9 +2567,6 @@  static int stmmac_hw_init(struct stmmac_priv *priv)
 	/* Get and dump the chip ID */
 	priv->synopsys_id = stmmac_get_synopsys_id(priv);
 
-	/* To use alternate (extended) or normal descriptor structures */
-	stmmac_selec_desc_mode(priv);
-
 	/* To use the chained or ring mode */
 	if (chain_mode) {
 		priv->hw->chain = &chain_mode_ops;
@@ -2604,6 +2601,9 @@  static int stmmac_hw_init(struct stmmac_priv *priv)
 	} else
 		pr_info(" No HW DMA feature register supported");
 
+	/* To use alternate (extended) or normal descriptor structures */
+	stmmac_selec_desc_mode(priv);
+
 	ret = priv->hw->mac->rx_ipc(priv->ioaddr);
 	if (!ret) {
 		pr_warn(" RX IPC Checksum Offload not configured.\n");