lkml.org 
[lkml]   [2021]   [Dec]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH net-next v10 2/6] stmmac: dwmac-mediatek: Reuse more common features
    Date
    This patch makes dwmac-mediatek reuse more features
    supported by stmmac_platform.c.

    Signed-off-by: Biao Huang <biao.huang@mediatek.com>
    Acked-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
    ---
    .../ethernet/stmicro/stmmac/dwmac-mediatek.c | 32 +++++++++----------
    1 file changed, 15 insertions(+), 17 deletions(-)

    diff --git a/drivers/net/ethernet/stmicro/stmmac/dwmac-mediatek.c b/drivers/net/ethernet/stmicro/stmmac/dwmac-mediatek.c
    index 0ff57c268dca..8747aa4403e8 100644
    --- a/drivers/net/ethernet/stmicro/stmmac/dwmac-mediatek.c
    +++ b/drivers/net/ethernet/stmicro/stmmac/dwmac-mediatek.c
    @@ -334,22 +334,20 @@ static int mediatek_dwmac_init(struct platform_device *pdev, void *priv)
    const struct mediatek_dwmac_variant *variant = plat->variant;
    int ret;

    - ret = dma_set_mask_and_coherent(plat->dev, DMA_BIT_MASK(variant->dma_bit_mask));
    - if (ret) {
    - dev_err(plat->dev, "No suitable DMA available, err = %d\n", ret);
    - return ret;
    - }
    -
    - ret = variant->dwmac_set_phy_interface(plat);
    - if (ret) {
    - dev_err(plat->dev, "failed to set phy interface, err = %d\n", ret);
    - return ret;
    + if (variant->dwmac_set_phy_interface) {
    + ret = variant->dwmac_set_phy_interface(plat);
    + if (ret) {
    + dev_err(plat->dev, "failed to set phy interface, err = %d\n", ret);
    + return ret;
    + }
    }

    - ret = variant->dwmac_set_delay(plat);
    - if (ret) {
    - dev_err(plat->dev, "failed to set delay value, err = %d\n", ret);
    - return ret;
    + if (variant->dwmac_set_delay) {
    + ret = variant->dwmac_set_delay(plat);
    + if (ret) {
    + dev_err(plat->dev, "failed to set delay value, err = %d\n", ret);
    + return ret;
    + }
    }

    ret = clk_bulk_prepare_enable(plat->num_clks_to_config, plat->clks);
    @@ -422,15 +420,15 @@ static int mediatek_dwmac_probe(struct platform_device *pdev)
    return PTR_ERR(plat_dat);

    plat_dat->interface = priv_plat->phy_mode;
    - plat_dat->has_gmac4 = 1;
    - plat_dat->has_gmac = 0;
    - plat_dat->pmt = 0;
    + plat_dat->use_phy_wol = 1;
    plat_dat->riwt_off = 1;
    plat_dat->maxmtu = ETH_DATA_LEN;
    + plat_dat->addr64 = priv_plat->variant->dma_bit_mask;
    plat_dat->bsp_priv = priv_plat;
    plat_dat->init = mediatek_dwmac_init;
    plat_dat->exit = mediatek_dwmac_exit;
    plat_dat->clks_config = mediatek_dwmac_clks_config;
    +
    mediatek_dwmac_init(pdev, priv_plat);

    ret = stmmac_dvr_probe(&pdev->dev, plat_dat, &stmmac_res);
    --
    2.25.1
    \
     
     \ /
      Last update: 2021-12-16 06:54    [W:4.774 / U:0.080 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site