From patchwork Fri May 18 18:31:28 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sergei Shtylyov X-Patchwork-Id: 10411821 X-Patchwork-Delegate: geert@linux-m68k.org Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 24B85602CB for ; Fri, 18 May 2018 18:31:35 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 131A128867 for ; Fri, 18 May 2018 18:31:35 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 07C3B28A86; Fri, 18 May 2018 18:31:35 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.9 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID, MAILING_LIST_MULTI, RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 7813828867 for ; Fri, 18 May 2018 18:31:34 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751488AbeERSbd (ORCPT ); Fri, 18 May 2018 14:31:33 -0400 Received: from mail-lf0-f68.google.com ([209.85.215.68]:44136 "EHLO mail-lf0-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751542AbeERSbc (ORCPT ); Fri, 18 May 2018 14:31:32 -0400 Received: by mail-lf0-f68.google.com with SMTP id h197-v6so15290870lfg.11 for ; Fri, 18 May 2018 11:31:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cogentembedded-com.20150623.gappssmtp.com; s=20150623; h=subject:from:to:cc:references:organization:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=CUC2iSut3jF4/lWp8gYaECfjB1UUfBndQRL8iXxN6Gs=; b=Bjizk7tpd4TFfzN8mhCLnpU7KkgxDzKADNJD1zjqN/DZRc5B9nRaCSrvbg+h8KkrCk 9CloecYfB8c3UrqpWfOITxsCWMuCJEGoDxu70Gi3EE8yR1Z3K1k6axOkIBpES6VsOxIk c+cx4UEyjnwD8YSBjfpsYhwT8IFEUsIc/i+FvgW3BNqAmwdut+4NujCI0DYQ9kIK999I DHLr9NPRoZNcx/Kc9lOytFY2Y+IUkUNHo1j8eE1piASy40pDgDJ1iiBTZHEy+EJjq4yA 7abT76Qw+hdMKWyrL6+ecsJNaPJCTS5WbdlxbUbXNA5ELm/T5n0gs7+FXS3RFZsE7akQ m6CA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:from:to:cc:references:organization :message-id:date:user-agent:mime-version:in-reply-to :content-language:content-transfer-encoding; bh=CUC2iSut3jF4/lWp8gYaECfjB1UUfBndQRL8iXxN6Gs=; b=l5pbCUzX3/Q3sE0AdPhOCZAGDYhx4kHqewl9CzvWm6eiS9St00/DuYRrx8gE96WEUg sJQYnm1W1i5QJnvYt7G4dQOk3jyUr+6vQQGHVIUcGKlcx+/xFbsQGY8RScthQQCHBotI mKixMYYAPu5M8KzX4FWyCAGKugYZGvT9xt57EEHnhEov73HH/97mYXhXhH1Sk9lc2du8 7L2T75FaoDwRzJVrXdNvfHmeVMN68Cuv71W+Lz7sxRX0YXjcr5X4iuZ7z7cJcbxbNrZ7 AJ2F/hoyGpFXJ1Co7vx+TeO4JhjC2EUhQCi97xphHiMiVCEZb7hJ6nzXXC8ySTgS4nlh 0oDg== X-Gm-Message-State: ALKqPwean//2X9iybPly+tKBZNTQIPbbM/FYLmhxARUhMo9x5bZPjXvN frf7TP6NPV/GHBmnJwRVtRhPYTkJK10= X-Google-Smtp-Source: AB8JxZo2iiq1sQZKqT4UlOMSFGC+tEFlg2n9MrZ4OvEUDrXqMzrKZg8QViHwkZBXxEtMLtbv/Ra27w== X-Received: by 2002:a2e:8456:: with SMTP id u22-v6mr6414517ljh.80.1526668290623; Fri, 18 May 2018 11:31:30 -0700 (PDT) Received: from wasted.cogentembedded.com ([31.173.86.87]) by smtp.gmail.com with ESMTPSA id j15-v6sm1336615lji.89.2018.05.18.11.31.29 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 18 May 2018 11:31:29 -0700 (PDT) Subject: [PATCH v2 2/3] sh_eth: add EDMR.NBST support From: Sergei Shtylyov To: netdev@vger.kernel.org, devicetree@vger.kernel.org, "David S. Miller" , Rob Herring Cc: Mark Rutland , linux-renesas-soc@vger.kernel.org References: Organization: Cogent Embedded Message-ID: <6dc30bc4-04f4-7ac3-e9e9-de86f2eee99f@cogentembedded.com> Date: Fri, 18 May 2018 21:31:28 +0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.2.1 MIME-Version: 1.0 In-Reply-To: Content-Language: en-MW Sender: linux-renesas-soc-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-renesas-soc@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP The R-Car V3H (AKA R8A77980) GEther controller adds the DMA burst mode bit (NBST) in EDMR and the manual tells to always set it before doing any DMA. Based on the original (and large) patch by Vladimir Barinov. Signed-off-by: Vladimir Barinov Signed-off-by: Sergei Shtylyov Reviewed-by: Simon Horman --- Changes in version 2: - added Simon's tag. drivers/net/ethernet/renesas/sh_eth.c | 4 ++++ drivers/net/ethernet/renesas/sh_eth.h | 2 ++ 2 files changed, 6 insertions(+) Index: net-next/drivers/net/ethernet/renesas/sh_eth.c =================================================================== --- net-next.orig/drivers/net/ethernet/renesas/sh_eth.c +++ net-next/drivers/net/ethernet/renesas/sh_eth.c @@ -1434,6 +1434,10 @@ static int sh_eth_dev_init(struct net_de sh_eth_write(ndev, mdp->cd->trscer_err_mask, TRSCER); + /* DMA transfer burst mode */ + if (mdp->cd->nbst) + sh_eth_modify(ndev, EDMR, EDMR_NBST, EDMR_NBST); + if (mdp->cd->bculr) sh_eth_write(ndev, 0x800, BCULR); /* Burst sycle set */ Index: net-next/drivers/net/ethernet/renesas/sh_eth.h =================================================================== --- net-next.orig/drivers/net/ethernet/renesas/sh_eth.h +++ net-next/drivers/net/ethernet/renesas/sh_eth.h @@ -184,6 +184,7 @@ enum GECMR_BIT { /* EDMR */ enum DMAC_M_BIT { + EDMR_NBST = 0x80, EDMR_EL = 0x40, /* Litte endian */ EDMR_DL1 = 0x20, EDMR_DL0 = 0x10, EDMR_SRST_GETHER = 0x03, @@ -505,6 +506,7 @@ struct sh_eth_cpu_data { unsigned bculr:1; /* EtherC have BCULR */ unsigned tsu:1; /* EtherC have TSU */ unsigned hw_swap:1; /* E-DMAC have DE bit in EDMR */ + unsigned nbst:1; /* E-DMAC has NBST bit in EDMR */ unsigned rpadir:1; /* E-DMAC have RPADIR */ unsigned no_trimd:1; /* E-DMAC DO NOT have TRIMD */ unsigned no_ade:1; /* E-DMAC DO NOT have ADE bit in EESR */