From patchwork Wed Jan 30 19:56:53 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Mugunthan V N X-Patchwork-Id: 216967 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 084102C0077 for ; Thu, 31 Jan 2013 07:59:27 +1100 (EST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756864Ab3A3T5m (ORCPT ); Wed, 30 Jan 2013 14:57:42 -0500 Received: from arroyo.ext.ti.com ([192.94.94.40]:58623 "EHLO arroyo.ext.ti.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1756792Ab3A3T5k (ORCPT ); Wed, 30 Jan 2013 14:57:40 -0500 Received: from dbdp20.itg.ti.com ([172.24.170.38]) by arroyo.ext.ti.com (8.13.7/8.13.7) with ESMTP id r0UJvaHP004479; Wed, 30 Jan 2013 13:57:36 -0600 Received: from DBDE70.ent.ti.com (localhost [127.0.0.1]) by dbdp20.itg.ti.com (8.13.8/8.13.8) with ESMTP id r0UJvX56025882; Thu, 31 Jan 2013 01:27:33 +0530 (IST) Received: from dbdp32.itg.ti.com (172.24.170.251) by dbde70.ent.ti.com (172.24.170.148) with Microsoft SMTP Server id 14.1.323.3; Thu, 31 Jan 2013 01:27:33 +0530 Received: from psplinux063.india.ti.com (dbdp20.itg.ti.com [172.24.170.38]) by dbdp32.itg.ti.com (8.13.8/8.13.8) with ESMTP id r0UJvU7f004068; Thu, 31 Jan 2013 01:27:31 +0530 From: Mugunthan V N To: CC: , , , , Mugunthan V N Subject: [PATCH 1/1] drivers: net: davinci_cpdma: acknowledge interrupt properly Date: Thu, 31 Jan 2013 01:26:53 +0530 Message-ID: <1359575813-15703-1-git-send-email-mugunthanvnm@ti.com> X-Mailer: git-send-email 1.8.1 MIME-Version: 1.0 Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org CPDMA interrupts are not properly acknowledged which leads to interrupt storm, only cpdma interrupt 0 is acknowledged in Davinci CPDMA driver. Changed cpdma_ctlr_eoi api to acknowledge 1 and 2 interrupts which are used for rx and tx respectively. Reported-by: Pantelis Antoniou Signed-off-by: Mugunthan V N --- drivers/net/ethernet/ti/davinci_cpdma.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/net/ethernet/ti/davinci_cpdma.c b/drivers/net/ethernet/ti/davinci_cpdma.c index f862918..afe14a6 100644 --- a/drivers/net/ethernet/ti/davinci_cpdma.c +++ b/drivers/net/ethernet/ti/davinci_cpdma.c @@ -487,6 +487,8 @@ int cpdma_ctlr_int_ctrl(struct cpdma_ctlr *ctlr, bool enable) void cpdma_ctlr_eoi(struct cpdma_ctlr *ctlr) { dma_reg_write(ctlr, CPDMA_MACEOIVECTOR, 0); + dma_reg_write(ctlr, CPDMA_MACEOIVECTOR, 1); + dma_reg_write(ctlr, CPDMA_MACEOIVECTOR, 2); } struct cpdma_chan *cpdma_chan_create(struct cpdma_ctlr *ctlr, int chan_num,