lkml.org 
[lkml]   [2020]   [Jul]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH v5 04/10] net: eth: altera: add optional function to start tx dma
    Date
    From: Dalon Westergreen <dalon.westergreen@intel.com>

    Allow for optional start up of tx dma if the start_txdma
    function is defined in altera_dmaops.

    Signed-off-by: Dalon Westergreen <dalon.westergreen@intel.com>
    Signed-off-by: Joyce Ooi <joyce.ooi@intel.com>
    Reviewed-by: Thor Thayer <thor.thayer@linux.intel.com>
    ---
    v2: no change
    v3: no change
    v4: no change
    v5: no change
    ---
    drivers/net/ethernet/altera/altera_tse.h | 1 +
    drivers/net/ethernet/altera/altera_tse_main.c | 5 +++++
    2 files changed, 6 insertions(+)

    diff --git a/drivers/net/ethernet/altera/altera_tse.h b/drivers/net/ethernet/altera/altera_tse.h
    index 7d0c98fc103e..26c5541fda27 100644
    --- a/drivers/net/ethernet/altera/altera_tse.h
    +++ b/drivers/net/ethernet/altera/altera_tse.h
    @@ -401,6 +401,7 @@ struct altera_dmaops {
    int (*init_dma)(struct altera_tse_private *priv);
    void (*uninit_dma)(struct altera_tse_private *priv);
    void (*start_rxdma)(struct altera_tse_private *priv);
    + void (*start_txdma)(struct altera_tse_private *priv);
    };

    /* This structure is private to each device.
    diff --git a/drivers/net/ethernet/altera/altera_tse_main.c b/drivers/net/ethernet/altera/altera_tse_main.c
    index a3749ffdcac9..0a724e4d2c8c 100644
    --- a/drivers/net/ethernet/altera/altera_tse_main.c
    +++ b/drivers/net/ethernet/altera/altera_tse_main.c
    @@ -1244,6 +1244,9 @@ static int tse_open(struct net_device *dev)

    priv->dmaops->start_rxdma(priv);

    + if (priv->dmaops->start_txdma)
    + priv->dmaops->start_txdma(priv);
    +
    /* Start MAC Rx/Tx */
    spin_lock(&priv->mac_cfg_lock);
    tse_set_mac(priv, true);
    @@ -1646,6 +1649,7 @@ static const struct altera_dmaops altera_dtype_sgdma = {
    .init_dma = sgdma_initialize,
    .uninit_dma = sgdma_uninitialize,
    .start_rxdma = sgdma_start_rxdma,
    + .start_txdma = NULL,
    };

    static const struct altera_dmaops altera_dtype_msgdma = {
    @@ -1665,6 +1669,7 @@ static const struct altera_dmaops altera_dtype_msgdma = {
    .init_dma = msgdma_initialize,
    .uninit_dma = msgdma_uninitialize,
    .start_rxdma = msgdma_start_rxdma,
    + .start_txdma = NULL,
    };

    static const struct of_device_id altera_tse_ids[] = {
    --
    2.13.0
    \
     
     \ /
      Last update: 2020-07-27 11:23    [W:2.545 / U:0.848 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site