From patchwork Tue Feb 25 14:03:44 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Heiner Kallweit X-Patchwork-Id: 1244312 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (no SPF record) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=linux-pci-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20161025 header.b=ipTJOk/0; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 48Rgm000rWz9sP7 for ; Wed, 26 Feb 2020 01:09:19 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730506AbgBYOIc (ORCPT ); Tue, 25 Feb 2020 09:08:32 -0500 Received: from mail-wr1-f66.google.com ([209.85.221.66]:46641 "EHLO mail-wr1-f66.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1730240AbgBYOIb (ORCPT ); Tue, 25 Feb 2020 09:08:31 -0500 Received: by mail-wr1-f66.google.com with SMTP id j7so2363757wrp.13; Tue, 25 Feb 2020 06:08:30 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:from:to:cc:references:message-id:date:user-agent :mime-version:in-reply-to:content-language:content-transfer-encoding; bh=E9/8+yaqRvrAtgc15Q6xGgpo7ZqTiVPb7l/6H6m7t5Q=; b=ipTJOk/01c3Cv19kwq5xngz+7Q8JLD9W9SwP30kqoDvGgs9mzmSuyVdOp/0x2Z3JBX SouECnpnvqbZiyAORAku+W/U/oRbWRkpCMkrmsn8Xl89YrZge3A/xv42OGXaXRe85vr9 vTJsbKq4CygkV1enEslMKQQAzYJvqW3zZywCr495lv9nYZjlIyDLhhmMutccJIDL3E+D UjcWbnalYMJWIJc1ouJOTNUt8xrvH7VkdxIyKwl0kRhepl8251mAItVW4EnwGN5lCEOU trh3JytS55gxaECU44jYgdM7QwaTh8CoQ0V0QkYq/wyOz2RQYHpyMrLr1mpaw7/QNu2g A+Sg== 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:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=E9/8+yaqRvrAtgc15Q6xGgpo7ZqTiVPb7l/6H6m7t5Q=; b=CI1/BbZxkbVcrdTVwl7COxp1msnv0nYYIXR6m23lgnsoEvDN6jlsr9b4AG6xH7WO3Y H++ZjMfW8t+3nwaWZidaIIJE61XhTrkKuL/U/NOzfM8iuDcvQitP2OA9KoiFE64mPXIP iW8uKVLqFA28RlmwXwl1xw7qNjRp8x5XmtTXab3hRv4Pn9xBITac6D1NVQsBO2aoOOJg 1paeZyyJEAw5M2BhetphKgh84Bz9Vo5VRTndjM/M8HPgfLumOKsYpUjn4RynoLn2Sv72 Da3+QLB6t8nJ1zhL2t7kRvnecYzfu7ZRMYqp+TJBHN/wrWsmdo91s8u6ZwT1r+NGXUKc sURg== X-Gm-Message-State: APjAAAXaLNLa1qtKc4w1GpcQim+cnx1R7qrCPefyR3lj/zEeIrFOO7cO ScaomgeDRiFQSuW82rks+MU= X-Google-Smtp-Source: APXvYqx+DZruNmT8sN2rhRo+8HDVho5gJrgSt8caSfXEUGu9sq6Ub/o8MAgrKTltKV/iaWI8Kpn9HA== X-Received: by 2002:a5d:5183:: with SMTP id k3mr72340713wrv.414.1582639709386; Tue, 25 Feb 2020 06:08:29 -0800 (PST) Received: from ?IPv6:2003:ea:8f29:6000:30a8:e117:ed7d:d145? (p200300EA8F29600030A8E117ED7DD145.dip0.t-ipconnect.de. [2003:ea:8f29:6000:30a8:e117:ed7d:d145]) by smtp.googlemail.com with ESMTPSA id z19sm4286325wmi.35.2020.02.25.06.08.28 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 25 Feb 2020 06:08:28 -0800 (PST) Subject: [PATCH v3 1/8] PCI: add constant PCI_STATUS_ERROR_BITS From: Heiner Kallweit To: Bjorn Helgaas , Realtek linux nic maintainers , David Miller , Mirko Lindner , Stephen Hemminger , Clemens Ladisch , Jaroslav Kysela , Takashi Iwai Cc: "linux-pci@vger.kernel.org" , Linux Kernel Mailing List , "netdev@vger.kernel.org" , alsa-devel@alsa-project.org References: <20ca7c1f-7530-2d89-40a6-d97a65aa25ef@gmail.com> Message-ID: <73dd692e-bbce-35f5-88e9-417fb0f7229e@gmail.com> Date: Tue, 25 Feb 2020 15:03:44 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.5.0 MIME-Version: 1.0 In-Reply-To: <20ca7c1f-7530-2d89-40a6-d97a65aa25ef@gmail.com> Content-Language: en-US Sender: linux-pci-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-pci@vger.kernel.org This constant is used (with different names) in more than one driver, so move it to the PCI core. Signed-off-by: Heiner Kallweit --- drivers/net/ethernet/marvell/skge.h | 6 ------ drivers/net/ethernet/marvell/sky2.h | 6 ------ include/uapi/linux/pci_regs.h | 7 +++++++ 3 files changed, 7 insertions(+), 12 deletions(-) diff --git a/drivers/net/ethernet/marvell/skge.h b/drivers/net/ethernet/marvell/skge.h index 6fa7b6a34..e149bdfe1 100644 --- a/drivers/net/ethernet/marvell/skge.h +++ b/drivers/net/ethernet/marvell/skge.h @@ -15,12 +15,6 @@ #define PCI_VPD_ROM_SZ 7L<<14 /* VPD ROM size 0=256, 1=512, ... */ #define PCI_REV_DESC 1<<2 /* Reverse Descriptor bytes */ -#define PCI_STATUS_ERROR_BITS (PCI_STATUS_DETECTED_PARITY | \ - PCI_STATUS_SIG_SYSTEM_ERROR | \ - PCI_STATUS_REC_MASTER_ABORT | \ - PCI_STATUS_REC_TARGET_ABORT | \ - PCI_STATUS_PARITY) - enum csr_regs { B0_RAP = 0x0000, B0_CTST = 0x0004, diff --git a/drivers/net/ethernet/marvell/sky2.h b/drivers/net/ethernet/marvell/sky2.h index b02b65230..851d8ed34 100644 --- a/drivers/net/ethernet/marvell/sky2.h +++ b/drivers/net/ethernet/marvell/sky2.h @@ -252,12 +252,6 @@ enum { }; -#define PCI_STATUS_ERROR_BITS (PCI_STATUS_DETECTED_PARITY | \ - PCI_STATUS_SIG_SYSTEM_ERROR | \ - PCI_STATUS_REC_MASTER_ABORT | \ - PCI_STATUS_REC_TARGET_ABORT | \ - PCI_STATUS_PARITY) - enum csr_regs { B0_RAP = 0x0000, B0_CTST = 0x0004, diff --git a/include/uapi/linux/pci_regs.h b/include/uapi/linux/pci_regs.h index 543769048..9b84a1278 100644 --- a/include/uapi/linux/pci_regs.h +++ b/include/uapi/linux/pci_regs.h @@ -68,6 +68,13 @@ #define PCI_STATUS_SIG_SYSTEM_ERROR 0x4000 /* Set when we drive SERR */ #define PCI_STATUS_DETECTED_PARITY 0x8000 /* Set on parity error */ +#define PCI_STATUS_ERROR_BITS (PCI_STATUS_DETECTED_PARITY | \ + PCI_STATUS_SIG_SYSTEM_ERROR | \ + PCI_STATUS_REC_MASTER_ABORT | \ + PCI_STATUS_REC_TARGET_ABORT | \ + PCI_STATUS_SIG_TARGET_ABORT | \ + PCI_STATUS_PARITY) + #define PCI_CLASS_REVISION 0x08 /* High 24 bits are class, low 8 revision */ #define PCI_REVISION_ID 0x08 /* Revision ID */ #define PCI_CLASS_PROG 0x09 /* Reg. Level Programming Interface */ From patchwork Tue Feb 25 14:04:23 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Heiner Kallweit X-Patchwork-Id: 1244295 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (no SPF record) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=linux-pci-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20161025 header.b=Q9p7MIr9; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 48Rgl72pMlz9sPk for ; Wed, 26 Feb 2020 01:08:35 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730604AbgBYOId (ORCPT ); Tue, 25 Feb 2020 09:08:33 -0500 Received: from mail-wm1-f68.google.com ([209.85.128.68]:56091 "EHLO mail-wm1-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1730438AbgBYOIc (ORCPT ); Tue, 25 Feb 2020 09:08:32 -0500 Received: by mail-wm1-f68.google.com with SMTP id q9so3130200wmj.5; Tue, 25 Feb 2020 06:08:31 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:from:to:cc:references:message-id:date:user-agent :mime-version:in-reply-to:content-language:content-transfer-encoding; bh=cq/SO7uTxQFQRkUdTESCHn0ibY8lprisVUmHlf5Q8N8=; b=Q9p7MIr9xWRKWE9Ty1ThKuuhqbmR2gydxI1QmC31E4fU6oEw1qyYN13nAuMeBxxFVm qP9hZawDDi+Eicy68neorNTY0QOY7M6KWWfkTcU9o1S/2+L7/Hx3bl4KXYv91B4pqxWC oPlVgUov5Px6vRWuBLchvHgrq4JX00kFqH1zpwGiaJSfRwC8fqNUDteQBJlWLszEkbGA W3wj8eaJHB/EIvuskiezWfTVNgsOAj79LLtQONbkHWfjv6Inm5KtZ02ksnbocfQ2OWwk GByy225FyvRe53ffwWC1fyKV7kI4vl786QMW0Mz9A+dS0kQrgUIdw+LkPUnHuK6EfnBj KH0Q== 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:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=cq/SO7uTxQFQRkUdTESCHn0ibY8lprisVUmHlf5Q8N8=; b=R2wfQhcWWEMuUZploTRZrzOISzwgianFFbv5qA8BVL+O/k3jzZkdt0F/EbgzIFizl0 MOYLS7cxqn1kQZzxD5siWk4OA5CjXv5THrm3eB2RVopQutbaePAhCa+NtXe1ehfM9n/0 9lOBJFReNR94BUVllgtWukKNf4s+fWDhXyNJXlFv48NGXBSmvb6w7t3pS0gKm5VMH/pp n/tqnhPgNxCsmxowYrVEtw/HYyt+S9QTejTpBaVL56c6bSwEG/hFm4rAWUMip+k+lBO1 rN+8ZiMMVy33dVeIAz/EDDuLN+xRendQa38H+VGYTKPiNf9T0SEh+w0HRhtKn7sHuaRn /B7w== X-Gm-Message-State: APjAAAXYhC6h4eSWz2GNAVWfZodN5L4A5+BFx2gkB8TUaiVih3c/Tlch 37k/FZRooC6eEO3raAzt1HD13kBn X-Google-Smtp-Source: APXvYqyUzpStr0QjVTOF5Pg3dDwRXUodZKtEow20iA4KzrQS/+Vr/ncLCrfWCpQ4SyVLIni24lpXSg== X-Received: by 2002:a7b:c450:: with SMTP id l16mr5718352wmi.31.1582639710701; Tue, 25 Feb 2020 06:08:30 -0800 (PST) Received: from ?IPv6:2003:ea:8f29:6000:30a8:e117:ed7d:d145? (p200300EA8F29600030A8E117ED7DD145.dip0.t-ipconnect.de. [2003:ea:8f29:6000:30a8:e117:ed7d:d145]) by smtp.googlemail.com with ESMTPSA id q3sm3868407wrs.1.2020.02.25.06.08.29 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 25 Feb 2020 06:08:30 -0800 (PST) Subject: [PATCH v3 2/8] PCI: add pci_status_get_and_clear_errors From: Heiner Kallweit To: Bjorn Helgaas , Realtek linux nic maintainers , David Miller , Mirko Lindner , Stephen Hemminger , Clemens Ladisch , Jaroslav Kysela , Takashi Iwai Cc: "linux-pci@vger.kernel.org" , Linux Kernel Mailing List , "netdev@vger.kernel.org" , alsa-devel@alsa-project.org References: <20ca7c1f-7530-2d89-40a6-d97a65aa25ef@gmail.com> Message-ID: <45054c7d-cc48-2be0-11fa-4c3ffce8fdd7@gmail.com> Date: Tue, 25 Feb 2020 15:04:23 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.5.0 MIME-Version: 1.0 In-Reply-To: <20ca7c1f-7530-2d89-40a6-d97a65aa25ef@gmail.com> Content-Language: en-US Sender: linux-pci-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-pci@vger.kernel.org Few drivers use the following code sequence: 1. Read PCI_STATUS 2. Mask out non-error bits 3. Action based on error bits set 4. Write back set error bits to clear them As this is a repeated pattern, add a helper to the PCI core. Signed-off-by: Heiner Kallweit --- drivers/pci/pci.c | 23 +++++++++++++++++++++++ include/linux/pci.h | 1 + 2 files changed, 24 insertions(+) diff --git a/drivers/pci/pci.c b/drivers/pci/pci.c index d828ca835..c16b0ba2a 100644 --- a/drivers/pci/pci.c +++ b/drivers/pci/pci.c @@ -173,6 +173,29 @@ unsigned char pci_bus_max_busnr(struct pci_bus *bus) } EXPORT_SYMBOL_GPL(pci_bus_max_busnr); +/** + * pci_status_get_and_clear_errors - return and clear error bits in PCI_STATUS + * @pdev: the PCI device + * + * Returns error bits set in PCI_STATUS and clears them. + */ +int pci_status_get_and_clear_errors(struct pci_dev *pdev) +{ + u16 status; + int ret; + + ret = pci_read_config_word(pdev, PCI_STATUS, &status); + if (ret != PCIBIOS_SUCCESSFUL) + return -EIO; + + status &= PCI_STATUS_ERROR_BITS; + if (status) + pci_write_config_word(pdev, PCI_STATUS, status); + + return status; +} +EXPORT_SYMBOL_GPL(pci_status_get_and_clear_errors); + #ifdef CONFIG_HAS_IOMEM void __iomem *pci_ioremap_bar(struct pci_dev *pdev, int bar) { diff --git a/include/linux/pci.h b/include/linux/pci.h index 3840a541a..7a75aae04 100644 --- a/include/linux/pci.h +++ b/include/linux/pci.h @@ -1203,6 +1203,7 @@ int pci_select_bars(struct pci_dev *dev, unsigned long flags); bool pci_device_is_present(struct pci_dev *pdev); void pci_ignore_hotplug(struct pci_dev *dev); struct pci_dev *pci_real_dma_dev(struct pci_dev *dev); +int pci_status_get_and_clear_errors(struct pci_dev *pdev); int __printf(6, 7) pci_request_irq(struct pci_dev *dev, unsigned int nr, irq_handler_t handler, irq_handler_t thread_fn, void *dev_id, From patchwork Tue Feb 25 14:04:52 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Heiner Kallweit X-Patchwork-Id: 1244310 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (no SPF record) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=linux-pci-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20161025 header.b=Tgejs1Rt; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 48Rglw62LNz9sPk for ; Wed, 26 Feb 2020 01:09:16 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730734AbgBYOJK (ORCPT ); Tue, 25 Feb 2020 09:09:10 -0500 Received: from mail-wm1-f66.google.com ([209.85.128.66]:34245 "EHLO mail-wm1-f66.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1730240AbgBYOIe (ORCPT ); Tue, 25 Feb 2020 09:08:34 -0500 Received: by mail-wm1-f66.google.com with SMTP id i10so1194234wmd.1; Tue, 25 Feb 2020 06:08:32 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:from:to:cc:references:message-id:date:user-agent :mime-version:in-reply-to:content-language:content-transfer-encoding; bh=eyXZbYhJwbPUHpTlxOFb8ilZjqXa8eHWzE7fBgVE9Xk=; b=Tgejs1RtD9lZ+fRHFgFRqCifXvDscbHRfyDTGXGn0LqTsGZFT317qnA7hcWbiFLu8M Lpa/15GZjxT3Jw4gE03oBiGU6A+WHcGTMotw+3umW1XJV7g/mc8QVkemIRLW55Swfsfq 7PoUpdINm7YdDlNtUG1/ntJdzm6A9E80YsVwjY8mfH1Kyso92x9Gt13dqex8C95iZfw7 dfJl4/9+muKn6GE3MAFqWrjvKfwCi7j6FVX0vC8ne9KM082fGmqiFhBw4eQk2hHB+EUd 0P8etoJHwBaGNF8SWxjRpX0ry2OP8PB2mc0D1P0qnIL2BRuZLSkYDLpElkVmpZMyTIw8 d71Q== 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:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=eyXZbYhJwbPUHpTlxOFb8ilZjqXa8eHWzE7fBgVE9Xk=; b=liXk7zhvNNWOko7NXjWU2sRQSujLiMKaSr6Ap7i9qav7exw1Dhb60USuOxO6pAdU3l HZnbsQi0kzvtU55APi8SlnaZQyi+qu9roOZK+d9Qyv7+McbE9uUBIMQEIkA7jLrDbXUl WtbGNRgTRsvt5iTLg193ATeWrvuSuauybIq3JyKUxa0VFNY0rBCnn3XI+Y2tvvyOcCBN kVeR+UStKRUHrgEUxbpRrohV8Whx9IFe5SgWF5Pghn4Hv6AQ1HNkXKq+//0Yrheb44dA /u6qgQXorE4F4J57gKj3FUGAy5d4KsatkAqMdlf+GpuutacpjKK15dMj+WO47c2LfBAT U2gA== X-Gm-Message-State: APjAAAWhJ7HnmlUjlU4RoW1zQEGftRl6ilVJQTz6dMD+5051LdiRqWni o7QDIDSEvOD1Ui4HpCMMvcQ= X-Google-Smtp-Source: APXvYqwXEQTkS3WWQVIpWtCGM/LaodNCg+YS2vwu9PPvca4AxsHvS9RRpsvVW5dKB+nF3MM94zFx3A== X-Received: by 2002:a1c:a1c3:: with SMTP id k186mr5466464wme.179.1582639712042; Tue, 25 Feb 2020 06:08:32 -0800 (PST) Received: from ?IPv6:2003:ea:8f29:6000:30a8:e117:ed7d:d145? (p200300EA8F29600030A8E117ED7DD145.dip0.t-ipconnect.de. [2003:ea:8f29:6000:30a8:e117:ed7d:d145]) by smtp.googlemail.com with ESMTPSA id c9sm4347680wmc.47.2020.02.25.06.08.31 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 25 Feb 2020 06:08:31 -0800 (PST) Subject: [PATCH v3 3/8] r8169: use pci_status_get_and_clear_errors From: Heiner Kallweit To: Bjorn Helgaas , Realtek linux nic maintainers , David Miller , Mirko Lindner , Stephen Hemminger , Clemens Ladisch , Jaroslav Kysela , Takashi Iwai Cc: "linux-pci@vger.kernel.org" , Linux Kernel Mailing List , "netdev@vger.kernel.org" , alsa-devel@alsa-project.org References: <20ca7c1f-7530-2d89-40a6-d97a65aa25ef@gmail.com> Message-ID: Date: Tue, 25 Feb 2020 15:04:52 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.5.0 MIME-Version: 1.0 In-Reply-To: <20ca7c1f-7530-2d89-40a6-d97a65aa25ef@gmail.com> Content-Language: en-US Sender: linux-pci-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-pci@vger.kernel.org Use new helper pci_status_get_and_clear_errors() to simplify the code. Signed-off-by: Heiner Kallweit --- drivers/net/ethernet/realtek/r8169_main.c | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/drivers/net/ethernet/realtek/r8169_main.c b/drivers/net/ethernet/realtek/r8169_main.c index f081007a2..4495a3cf9 100644 --- a/drivers/net/ethernet/realtek/r8169_main.c +++ b/drivers/net/ethernet/realtek/r8169_main.c @@ -4357,13 +4357,15 @@ static void rtl8169_pcierr_interrupt(struct net_device *dev) { struct rtl8169_private *tp = netdev_priv(dev); struct pci_dev *pdev = tp->pci_dev; - u16 pci_status, pci_cmd; + int pci_status_errs; + u16 pci_cmd; pci_read_config_word(pdev, PCI_COMMAND, &pci_cmd); - pci_read_config_word(pdev, PCI_STATUS, &pci_status); - netif_err(tp, intr, dev, "PCI error (cmd = 0x%04x, status = 0x%04x)\n", - pci_cmd, pci_status); + pci_status_errs = pci_status_get_and_clear_errors(pdev); + + netif_err(tp, intr, dev, "PCI error (cmd = 0x%04x, status_errs = 0x%04x)\n", + pci_cmd, pci_status_errs); /* * The recovery sequence below admits a very elaborated explanation: @@ -4380,11 +4382,6 @@ static void rtl8169_pcierr_interrupt(struct net_device *dev) pci_write_config_word(pdev, PCI_COMMAND, pci_cmd); - pci_write_config_word(pdev, PCI_STATUS, - pci_status & (PCI_STATUS_DETECTED_PARITY | - PCI_STATUS_SIG_SYSTEM_ERROR | PCI_STATUS_REC_MASTER_ABORT | - PCI_STATUS_REC_TARGET_ABORT | PCI_STATUS_SIG_TARGET_ABORT)); - rtl_schedule_task(tp, RTL_FLAG_TASK_RESET_PENDING); } From patchwork Tue Feb 25 14:05:19 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Heiner Kallweit X-Patchwork-Id: 1244305 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (no SPF record) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=linux-pci-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20161025 header.b=ggyx+DhJ; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 48Rglg72WKz9sP7 for ; Wed, 26 Feb 2020 01:09:03 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730627AbgBYOIg (ORCPT ); Tue, 25 Feb 2020 09:08:36 -0500 Received: from mail-wm1-f67.google.com ([209.85.128.67]:51586 "EHLO mail-wm1-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1730612AbgBYOIe (ORCPT ); Tue, 25 Feb 2020 09:08:34 -0500 Received: by mail-wm1-f67.google.com with SMTP id t23so3144963wmi.1; Tue, 25 Feb 2020 06:08:33 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:from:to:cc:references:message-id:date:user-agent :mime-version:in-reply-to:content-language:content-transfer-encoding; bh=MXnr7SXWd3sZ9y2GpLG8oulHQdSPNjGvm3z7+mtPRUs=; b=ggyx+DhJDs4IZW2NRQNVlJkJfvaztAI1R7yNUYaMvijzwfWBnKsuacf0Wr4M3vvda0 hiKM6OWN0Y2KCeoEnZU9qeFKYKM3SGmg9i7Fc1mbVfjAO0+4F4falIn7uvGbpY6ZOEio WIwYrgZ1xsfj+xmSeg7fTWcawQ+DHE4fjsi/LweT+1VFdl7W4V++ul3920JT/Qw/HOFk 2nGtxsabeaNMYE3EBRNz6qqV618wKN7rRGt3bM2S8+7EmwPLre1YP1I1OoKNB0REqv4N zTcEp95XvpaOHCe53qkr7JH/oNxBxdroGRJrDbT39NN93XChMPv4W8MgGDM5xaiY+Lqr PI1A== 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:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=MXnr7SXWd3sZ9y2GpLG8oulHQdSPNjGvm3z7+mtPRUs=; b=CpiQyts6DUwW+XExGPx9p/VV7PBR+YDtVby0TB95rk2nzQTDj/+rEJWGRf1z4EeL7F 1lSvneiRn58AV8c6+yPA1AfbWTFTo6rsLovoOMx+BFY9CrC3RGhP3roSvTilyDsS6Qy9 d33TEoMeBBmoMyqr/eLi/lDX7EdZaaeVNvhelwdpo374mC4wfN52czzHCS8cmclu5ZGn gYXxgvzQUvO26tLrpFsTQx7ZQlsPutXx+gR+Zibhq3i63YqkKoI5bvDgBKEGtE1scExM 7uxItkYjT7A6+K2OYP8+KJXGynl/SYExUmArKQ4sZ/UbRCTAb343PMf2AJeNdmHANh05 TAVA== X-Gm-Message-State: APjAAAXpZ3KNYx839Mw2UcrFP+xXNGqtd5YsN/7ZxOYb+s2wnF9GzYAq S13Rs/WAXVIWeZE9+qzstWo= X-Google-Smtp-Source: APXvYqx8olBiiKkdtYFvGn2/zTjsT2GqKL8ObDMkWU8WiL6yR2S5w+lKgH6FdOMBVF7oEsYDFplamQ== X-Received: by 2002:a1c:1f56:: with SMTP id f83mr3243800wmf.101.1582639713263; Tue, 25 Feb 2020 06:08:33 -0800 (PST) Received: from ?IPv6:2003:ea:8f29:6000:30a8:e117:ed7d:d145? (p200300EA8F29600030A8E117ED7DD145.dip0.t-ipconnect.de. [2003:ea:8f29:6000:30a8:e117:ed7d:d145]) by smtp.googlemail.com with ESMTPSA id g14sm14009578wrv.58.2020.02.25.06.08.32 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 25 Feb 2020 06:08:32 -0800 (PST) Subject: [PATCH v3 4/8] net: cassini: use pci_status_get_and_clear_errors From: Heiner Kallweit To: Bjorn Helgaas , Realtek linux nic maintainers , David Miller , Mirko Lindner , Stephen Hemminger , Clemens Ladisch , Jaroslav Kysela , Takashi Iwai Cc: "linux-pci@vger.kernel.org" , Linux Kernel Mailing List , "netdev@vger.kernel.org" , alsa-devel@alsa-project.org References: <20ca7c1f-7530-2d89-40a6-d97a65aa25ef@gmail.com> Message-ID: <58e21232-e3c7-f26a-aebc-f03f27a851d1@gmail.com> Date: Tue, 25 Feb 2020 15:05:19 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.5.0 MIME-Version: 1.0 In-Reply-To: <20ca7c1f-7530-2d89-40a6-d97a65aa25ef@gmail.com> Content-Language: en-US Sender: linux-pci-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-pci@vger.kernel.org Use new helper pci_status_get_and_clear_errors() to simplify the code. Signed-off-by: Heiner Kallweit --- drivers/net/ethernet/sun/cassini.c | 28 ++++++++++------------------ 1 file changed, 10 insertions(+), 18 deletions(-) diff --git a/drivers/net/ethernet/sun/cassini.c b/drivers/net/ethernet/sun/cassini.c index 6ec9163e2..e6d1aa882 100644 --- a/drivers/net/ethernet/sun/cassini.c +++ b/drivers/net/ethernet/sun/cassini.c @@ -1716,34 +1716,26 @@ static int cas_pci_interrupt(struct net_device *dev, struct cas *cp, pr_cont("\n"); if (stat & PCI_ERR_OTHER) { - u16 cfg; + int pci_errs; /* Interrogate PCI config space for the * true cause. */ - pci_read_config_word(cp->pdev, PCI_STATUS, &cfg); - netdev_err(dev, "Read PCI cfg space status [%04x]\n", cfg); - if (cfg & PCI_STATUS_PARITY) + pci_errs = pci_status_get_and_clear_errors(cp->pdev); + + netdev_err(dev, "PCI status errors[%04x]\n", pci_errs); + if (pci_errs & PCI_STATUS_PARITY) netdev_err(dev, "PCI parity error detected\n"); - if (cfg & PCI_STATUS_SIG_TARGET_ABORT) + if (pci_errs & PCI_STATUS_SIG_TARGET_ABORT) netdev_err(dev, "PCI target abort\n"); - if (cfg & PCI_STATUS_REC_TARGET_ABORT) + if (pci_errs & PCI_STATUS_REC_TARGET_ABORT) netdev_err(dev, "PCI master acks target abort\n"); - if (cfg & PCI_STATUS_REC_MASTER_ABORT) + if (pci_errs & PCI_STATUS_REC_MASTER_ABORT) netdev_err(dev, "PCI master abort\n"); - if (cfg & PCI_STATUS_SIG_SYSTEM_ERROR) + if (pci_errs & PCI_STATUS_SIG_SYSTEM_ERROR) netdev_err(dev, "PCI system error SERR#\n"); - if (cfg & PCI_STATUS_DETECTED_PARITY) + if (pci_errs & PCI_STATUS_DETECTED_PARITY) netdev_err(dev, "PCI parity error\n"); - - /* Write the error bits back to clear them. */ - cfg &= (PCI_STATUS_PARITY | - PCI_STATUS_SIG_TARGET_ABORT | - PCI_STATUS_REC_TARGET_ABORT | - PCI_STATUS_REC_MASTER_ABORT | - PCI_STATUS_SIG_SYSTEM_ERROR | - PCI_STATUS_DETECTED_PARITY); - pci_write_config_word(cp->pdev, PCI_STATUS, cfg); } /* For all PCI errors, we should reset the chip. */ From patchwork Tue Feb 25 14:05:47 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Heiner Kallweit X-Patchwork-Id: 1244307 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (no SPF record) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=linux-pci-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20161025 header.b=XpQ6CUy4; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 48Rgln3jblz9sRR for ; Wed, 26 Feb 2020 01:09:09 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730389AbgBYOJD (ORCPT ); Tue, 25 Feb 2020 09:09:03 -0500 Received: from mail-wr1-f65.google.com ([209.85.221.65]:40738 "EHLO mail-wr1-f65.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1730438AbgBYOIg (ORCPT ); Tue, 25 Feb 2020 09:08:36 -0500 Received: by mail-wr1-f65.google.com with SMTP id t3so14871392wru.7; Tue, 25 Feb 2020 06:08:35 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:from:to:cc:references:message-id:date:user-agent :mime-version:in-reply-to:content-language:content-transfer-encoding; bh=4ePoQM9FMGKqv4Tet944qGjHoWr4YdITdi8WCr48XQE=; b=XpQ6CUy4B0PFiqUcCWR4KG3hEvT/x0Lcnjq+gE6xukN6aT+b2mJVFAI5E8t2BKP1fT ZmGr0fynPhH2JLewq2h9lxi0QLix779zBY/9lfQAqF+0pCspm1s3HM3A+YFBOk2Ws2fH 9Ma6td7x2F0gwy7oOAWzkQhgc2MW9bPTMQcBjCJzsgcoZDiEa6jRakzhV5eWAx1UQJdB 4BbsKGzb8S+1tJi+H9vp+IuH2M7b3UD4CQbyeqCFybBpZyvjBfkjTfz3iCBrbvjhPUo/ FW6Qkp+rEb6yOXreDvBPC84kylfdopRBMyHE+5ys4+pxmQwxVMwZN8XfIUEK8PparXsK Ye1A== 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:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=4ePoQM9FMGKqv4Tet944qGjHoWr4YdITdi8WCr48XQE=; b=coKd5ZnslF1bSPHPwurO1vHpT6+b0g8WTHx5zXuC82g1CRFYA9Wez2BjqYu1tgETe+ VLC3hwPKztPLxh5v0HmtwL917UUuaqPujCavNSA3ZE1uRsaB6XeIsT/sj6IPMuV8MmEI zopbem2so3dB7NqjHQOuiU1NAqjPlyzf8Yn8yYaD0ZH50FCLA7um2QunzZnknuRn6oZR 6OzfDwZPOiXWgPhriHpxpGikgKA9DQkVvjkdhn71j7hzM6ML2RcJG7DZLMh4wizeDPaL XNtCSItd0fS6oNPeZxuO/Qhfs+YQs3pTNaI/agaKstnpzrreDzTnHS9qGzzXYNkWYcsV +VFA== X-Gm-Message-State: APjAAAX3+xZ6z1sULYE/+fZ3B2s//qb5zmK+3OoGcmsxru+O7MFdb88S MzFGX/snfCuXsF4XA5WOb3i6RpPc X-Google-Smtp-Source: APXvYqz7xgbDNu/OOcuZuP7PhmhDEKBWzd5vYhy4rP3mhq+YavENk+sOCb4AhtghYWKGJbOUQVvl+g== X-Received: by 2002:a5d:568f:: with SMTP id f15mr10277574wrv.202.1582639714509; Tue, 25 Feb 2020 06:08:34 -0800 (PST) Received: from ?IPv6:2003:ea:8f29:6000:30a8:e117:ed7d:d145? (p200300EA8F29600030A8E117ED7DD145.dip0.t-ipconnect.de. [2003:ea:8f29:6000:30a8:e117:ed7d:d145]) by smtp.googlemail.com with ESMTPSA id a13sm6764537wrt.55.2020.02.25.06.08.33 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 25 Feb 2020 06:08:34 -0800 (PST) Subject: [PATCH v3 5/8] net: sungem: use pci_status_get_and_clear_errors From: Heiner Kallweit To: Bjorn Helgaas , Realtek linux nic maintainers , David Miller , Mirko Lindner , Stephen Hemminger , Clemens Ladisch , Jaroslav Kysela , Takashi Iwai Cc: "linux-pci@vger.kernel.org" , Linux Kernel Mailing List , "netdev@vger.kernel.org" , alsa-devel@alsa-project.org References: <20ca7c1f-7530-2d89-40a6-d97a65aa25ef@gmail.com> Message-ID: <63fd34e0-3f45-762b-804a-4ebacb954842@gmail.com> Date: Tue, 25 Feb 2020 15:05:47 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.5.0 MIME-Version: 1.0 In-Reply-To: <20ca7c1f-7530-2d89-40a6-d97a65aa25ef@gmail.com> Content-Language: en-US Sender: linux-pci-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-pci@vger.kernel.org Use new helper pci_status_get_and_clear_errors() to simplify the code. Signed-off-by: Heiner Kallweit --- drivers/net/ethernet/sun/sungem.c | 30 +++++++++--------------------- 1 file changed, 9 insertions(+), 21 deletions(-) diff --git a/drivers/net/ethernet/sun/sungem.c b/drivers/net/ethernet/sun/sungem.c index 8358064fb..2d392a7b1 100644 --- a/drivers/net/ethernet/sun/sungem.c +++ b/drivers/net/ethernet/sun/sungem.c @@ -545,37 +545,25 @@ static int gem_pci_interrupt(struct net_device *dev, struct gem *gp, u32 gem_sta } if (pci_estat & GREG_PCIESTAT_OTHER) { - u16 pci_cfg_stat; + int pci_errs; /* Interrogate PCI config space for the * true cause. */ - pci_read_config_word(gp->pdev, PCI_STATUS, - &pci_cfg_stat); - netdev_err(dev, "Read PCI cfg space status [%04x]\n", - pci_cfg_stat); - if (pci_cfg_stat & PCI_STATUS_PARITY) + pci_errs = pci_status_get_and_clear_errors(gp->pdev); + netdev_err(dev, "PCI status errors[%04x]\n", pci_errs); + if (pci_errs & PCI_STATUS_PARITY) netdev_err(dev, "PCI parity error detected\n"); - if (pci_cfg_stat & PCI_STATUS_SIG_TARGET_ABORT) + if (pci_errs & PCI_STATUS_SIG_TARGET_ABORT) netdev_err(dev, "PCI target abort\n"); - if (pci_cfg_stat & PCI_STATUS_REC_TARGET_ABORT) + if (pci_errs & PCI_STATUS_REC_TARGET_ABORT) netdev_err(dev, "PCI master acks target abort\n"); - if (pci_cfg_stat & PCI_STATUS_REC_MASTER_ABORT) + if (pci_errs & PCI_STATUS_REC_MASTER_ABORT) netdev_err(dev, "PCI master abort\n"); - if (pci_cfg_stat & PCI_STATUS_SIG_SYSTEM_ERROR) + if (pci_errs & PCI_STATUS_SIG_SYSTEM_ERROR) netdev_err(dev, "PCI system error SERR#\n"); - if (pci_cfg_stat & PCI_STATUS_DETECTED_PARITY) + if (pci_errs & PCI_STATUS_DETECTED_PARITY) netdev_err(dev, "PCI parity error\n"); - - /* Write the error bits back to clear them. */ - pci_cfg_stat &= (PCI_STATUS_PARITY | - PCI_STATUS_SIG_TARGET_ABORT | - PCI_STATUS_REC_TARGET_ABORT | - PCI_STATUS_REC_MASTER_ABORT | - PCI_STATUS_SIG_SYSTEM_ERROR | - PCI_STATUS_DETECTED_PARITY); - pci_write_config_word(gp->pdev, - PCI_STATUS, pci_cfg_stat); } /* For all PCI errors, we should reset the chip. */ From patchwork Tue Feb 25 14:06:17 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Heiner Kallweit X-Patchwork-Id: 1244298 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (no SPF record) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=linux-pci-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20161025 header.b=MZWJuGhS; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 48RglF340Gz9sRR for ; Wed, 26 Feb 2020 01:08:41 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730612AbgBYOIi (ORCPT ); Tue, 25 Feb 2020 09:08:38 -0500 Received: from mail-wr1-f67.google.com ([209.85.221.67]:44621 "EHLO mail-wr1-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1730636AbgBYOIh (ORCPT ); Tue, 25 Feb 2020 09:08:37 -0500 Received: by mail-wr1-f67.google.com with SMTP id m16so14856169wrx.11; Tue, 25 Feb 2020 06:08:36 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:from:to:cc:references:message-id:date:user-agent :mime-version:in-reply-to:content-language:content-transfer-encoding; bh=JL4Q1l1W07XAcq8S0r/D3xLT9kgasro6XokOt1NtSiI=; b=MZWJuGhSP85kFq7spVW+O11aVWt7Xewr+oYPq73Zn+JD71eMwAVPXm96SD2gdNAGJZ 1uqEuPNRjme7Ac18Ghbp/9K0bvBLXE0S0l/2/dO3VQQZxs4aCuxhDhSCFKQq8k55DZeR x5r58FBU/txaSh/cZGJ0KnOFihaNVpZD98mNtEZcnF6SzGEMkaK3nK8b9C4PGsaN1goo PwJ90DzR/4H3SckQI2tetCNgH+GWBb+qhxjV+MGMeFIZPByu6ko6cpkAt7ebZ2f7A7SH D2XvgJ0+uFfilXnxRp7REUQ3T1Gp8mEHOxk83fay7bep2rjiklcBwzO0fO0s2lkspwgS aj5g== 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:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=JL4Q1l1W07XAcq8S0r/D3xLT9kgasro6XokOt1NtSiI=; b=SzZ6c3A4vHY369iaphSRRejz4UoK4d5jtg/taJmRTn9ZCYYPVnVbABXzsnF5nGiLRK MrpgTRnfDx+eHl6roUm40eknZIsaTaeHU7YaHXT5fvHzFj/XEJx2kRhztThN/tTAld4b pIzwM7tuiQETNoUDibhr2JWrrZe4nhXk+aZlLHjdPoWRPzAjeORfJNKKvlFw5IOqcM0B 9faXhGr/WHGeLzm/TeSVo3h0cmRsoPL/w5YU8AIyfPXEby739JvU1rAtCbiu0B7vDpP+ N5UzVq0Q91j1egLSaVJyDumdW3Cd4ZRyPbQyQGbzVbim0zvXjOGEsKd+grpEiW2EMC/L Gqtw== X-Gm-Message-State: APjAAAVQT5RpoLlsO41Sl46S0bj4DIPgTB98QY5mHTmUTcH9C7/TdXi6 ZqZlOUNKSfzXfbP/Y9g8eHM= X-Google-Smtp-Source: APXvYqxaeJdsQZUPEGWE+H0VhtPrOGAnLR724qjByg+055q0tc1L6tghO3BMF3ID4Tp9+RTEOOTWBg== X-Received: by 2002:a05:6000:188:: with SMTP id p8mr72225419wrx.336.1582639715749; Tue, 25 Feb 2020 06:08:35 -0800 (PST) Received: from ?IPv6:2003:ea:8f29:6000:30a8:e117:ed7d:d145? (p200300EA8F29600030A8E117ED7DD145.dip0.t-ipconnect.de. [2003:ea:8f29:6000:30a8:e117:ed7d:d145]) by smtp.googlemail.com with ESMTPSA id m21sm4155888wmi.27.2020.02.25.06.08.34 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 25 Feb 2020 06:08:35 -0800 (PST) Subject: [PATCH v3 6/8] net: skfp: use PCI_STATUS_ERROR_BITS From: Heiner Kallweit To: Bjorn Helgaas , Realtek linux nic maintainers , David Miller , Mirko Lindner , Stephen Hemminger , Clemens Ladisch , Jaroslav Kysela , Takashi Iwai Cc: "linux-pci@vger.kernel.org" , Linux Kernel Mailing List , "netdev@vger.kernel.org" , alsa-devel@alsa-project.org References: <20ca7c1f-7530-2d89-40a6-d97a65aa25ef@gmail.com> Message-ID: Date: Tue, 25 Feb 2020 15:06:17 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.5.0 MIME-Version: 1.0 In-Reply-To: <20ca7c1f-7530-2d89-40a6-d97a65aa25ef@gmail.com> Content-Language: en-US Sender: linux-pci-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-pci@vger.kernel.org Use new constant PCI_STATUS_ERROR_BITS to simplify the code. Signed-off-by: Heiner Kallweit --- drivers/net/fddi/skfp/drvfbi.c | 2 +- drivers/net/fddi/skfp/h/skfbi.h | 5 ----- 2 files changed, 1 insertion(+), 6 deletions(-) diff --git a/drivers/net/fddi/skfp/drvfbi.c b/drivers/net/fddi/skfp/drvfbi.c index 9c8aa3a95..d5937aff5 100644 --- a/drivers/net/fddi/skfp/drvfbi.c +++ b/drivers/net/fddi/skfp/drvfbi.c @@ -112,7 +112,7 @@ static void card_start(struct s_smc *smc) */ outp(ADDR(B0_TST_CTRL), TST_CFG_WRITE_ON) ; /* enable for writes */ word = inpw(PCI_C(PCI_STATUS)) ; - outpw(PCI_C(PCI_STATUS), word | PCI_ERRBITS) ; + outpw(PCI_C(PCI_STATUS), word | PCI_STATUS_ERROR_BITS) ; outp(ADDR(B0_TST_CTRL), TST_CFG_WRITE_OFF) ; /* disable writes */ /* diff --git a/drivers/net/fddi/skfp/h/skfbi.h b/drivers/net/fddi/skfp/h/skfbi.h index 480795681..ccee00b71 100644 --- a/drivers/net/fddi/skfp/h/skfbi.h +++ b/drivers/net/fddi/skfp/h/skfbi.h @@ -33,11 +33,6 @@ */ #define I2C_ADDR_VPD 0xA0 /* I2C address for the VPD EEPROM */ - -#define PCI_ERRBITS (PCI_STATUS_DETECTED_PARITY | PCI_STATUS_SIG_SYSTEM_ERROR | PCI_STATUS_REC_MASTER_ABORT | PCI_STATUS_SIG_TARGET_ABORT | PCI_STATUS_PARITY) - - - /* * Control Register File: * Bank 0 From patchwork Tue Feb 25 14:07:12 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Heiner Kallweit X-Patchwork-Id: 1244297 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (no SPF record) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=linux-pci-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20161025 header.b=Ui6poiqU; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 48RglD3twCz9sPk for ; Wed, 26 Feb 2020 01:08:40 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730657AbgBYOIj (ORCPT ); Tue, 25 Feb 2020 09:08:39 -0500 Received: from mail-wr1-f66.google.com ([209.85.221.66]:34839 "EHLO mail-wr1-f66.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1730644AbgBYOIi (ORCPT ); Tue, 25 Feb 2020 09:08:38 -0500 Received: by mail-wr1-f66.google.com with SMTP id w12so14907967wrt.2; Tue, 25 Feb 2020 06:08:37 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:from:to:cc:references:message-id:date:user-agent :mime-version:in-reply-to:content-language:content-transfer-encoding; bh=uS00F9df3Z8T26CltpV3tuHM711DSQH+xwYM8pFxAPw=; b=Ui6poiqUtcT7NPAd/IJGd2X4oqkVtpNnFjq5pulaPASdrypyJaM6KSHWuoxv3ws3x0 V1Z+ncLQXHDtpv+mgeFBrwBPcfMQaiLdOQx8uU2+E9f6fSafNxkSipQYJfjnp5fH20a+ XmZ+lCXIOHTd4Y+/PuOWp+f0DONjYY7l5O2eeT3B2UmsENnf2ohBJHbz3ReZOOV7OTtA ZQ8ix6SsLVkFDsi7brG+eABUHq8W3vEAnH7a/Ja/sX435b1IIVS1toJ/wBu5bSwiWqUk Jrom1cEK9TIaheIxZw8J1LwxZzeCmhKbmQ8XQ0wv8QjbSnXjVXwup0gE9wYOnarfCp6G ka8w== 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:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=uS00F9df3Z8T26CltpV3tuHM711DSQH+xwYM8pFxAPw=; b=AusAdE42iC+zeyHhloJmd2McWVyavBjnIVJqTRUwDTCWCYAlgcGEfbyYK7Uilws/Wr ICrjlbnI2XZ/XDxNKywsthGSFzv5C4Jr59PDB17K8UAvMoZ2m3/hKTOgTqbDFIXPdt8t dsCpBUs78vHkSPa8k/7uRwdx72c4eCkDQedrzyTL+QJb36CD/k9klrArSzHRimieIXU2 wso8k9K6ijRSxgGAo5jxjFM182uZWyB9yC6iLbp9nXZchCtuEIuv91qkE3B/U7zo329A xoWYEbqeGHGj3kWKUyLM+Mjct3edNjzC3cyTVOJZY7Y6tZdt55Djygo3FignV9SFLM0l eF+w== X-Gm-Message-State: APjAAAX/TfpEQEIn2jlE0Lg542H9gmGqr+H/xZHJJv4O2ahZlmXXoc2v 2UDKg193voPdbooL8zOQ9Zs= X-Google-Smtp-Source: APXvYqwcpV/tnbD0GvKb8+QQLoFm6W5RwS+JPggqwRsi2oXVsP1V9iSAVGcRl1JpCG+3hXcnD5Po2g== X-Received: by 2002:a5d:4289:: with SMTP id k9mr75540376wrq.280.1582639716888; Tue, 25 Feb 2020 06:08:36 -0800 (PST) Received: from ?IPv6:2003:ea:8f29:6000:30a8:e117:ed7d:d145? (p200300EA8F29600030A8E117ED7DD145.dip0.t-ipconnect.de. [2003:ea:8f29:6000:30a8:e117:ed7d:d145]) by smtp.googlemail.com with ESMTPSA id d13sm25185614wrc.64.2020.02.25.06.08.36 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 25 Feb 2020 06:08:36 -0800 (PST) Subject: [PATCH v3 7/8] PCI: pci-bridge-emul: use PCI_STATUS_ERROR_BITS From: Heiner Kallweit To: Bjorn Helgaas , Realtek linux nic maintainers , David Miller , Mirko Lindner , Stephen Hemminger , Clemens Ladisch , Jaroslav Kysela , Takashi Iwai Cc: "linux-pci@vger.kernel.org" , Linux Kernel Mailing List , "netdev@vger.kernel.org" , alsa-devel@alsa-project.org References: <20ca7c1f-7530-2d89-40a6-d97a65aa25ef@gmail.com> Message-ID: Date: Tue, 25 Feb 2020 15:07:12 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.5.0 MIME-Version: 1.0 In-Reply-To: <20ca7c1f-7530-2d89-40a6-d97a65aa25ef@gmail.com> Content-Language: en-US Sender: linux-pci-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-pci@vger.kernel.org Use new constant PCI_STATUS_ERROR_BITS to simplify the code. Signed-off-by: Heiner Kallweit --- v2: - fix typo --- drivers/pci/pci-bridge-emul.c | 14 ++------------ 1 file changed, 2 insertions(+), 12 deletions(-) diff --git a/drivers/pci/pci-bridge-emul.c b/drivers/pci/pci-bridge-emul.c index fffa77093..93d8e8910 100644 --- a/drivers/pci/pci-bridge-emul.c +++ b/drivers/pci/pci-bridge-emul.c @@ -50,12 +50,7 @@ static const struct pci_bridge_reg_behavior pci_regs_behavior[] = { (PCI_STATUS_CAP_LIST | PCI_STATUS_66MHZ | PCI_STATUS_FAST_BACK | PCI_STATUS_DEVSEL_MASK) << 16), .rsvd = GENMASK(15, 10) | ((BIT(6) | GENMASK(3, 0)) << 16), - .w1c = (PCI_STATUS_PARITY | - PCI_STATUS_SIG_TARGET_ABORT | - PCI_STATUS_REC_TARGET_ABORT | - PCI_STATUS_REC_MASTER_ABORT | - PCI_STATUS_SIG_SYSTEM_ERROR | - PCI_STATUS_DETECTED_PARITY) << 16, + .w1c = PCI_STATUS_ERROR_BITS << 16, }, [PCI_CLASS_REVISION / 4] = { .ro = ~0 }, @@ -100,12 +95,7 @@ static const struct pci_bridge_reg_behavior pci_regs_behavior[] = { PCI_STATUS_DEVSEL_MASK) << 16) | GENMASK(11, 8) | GENMASK(3, 0)), - .w1c = (PCI_STATUS_PARITY | - PCI_STATUS_SIG_TARGET_ABORT | - PCI_STATUS_REC_TARGET_ABORT | - PCI_STATUS_REC_MASTER_ABORT | - PCI_STATUS_SIG_SYSTEM_ERROR | - PCI_STATUS_DETECTED_PARITY) << 16, + .w1c = PCI_STATUS_ERROR_BITS << 16, .rsvd = ((BIT(6) | GENMASK(4, 0)) << 16), }, From patchwork Tue Feb 25 14:07:43 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Heiner Kallweit X-Patchwork-Id: 1244301 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (no SPF record) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=linux-pci-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20161025 header.b=PDKxN0RE; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 48RglG11jnz9sRm for ; Wed, 26 Feb 2020 01:08:42 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730670AbgBYOIk (ORCPT ); Tue, 25 Feb 2020 09:08:40 -0500 Received: from mail-wm1-f65.google.com ([209.85.128.65]:54754 "EHLO mail-wm1-f65.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1730656AbgBYOIk (ORCPT ); Tue, 25 Feb 2020 09:08:40 -0500 Received: by mail-wm1-f65.google.com with SMTP id z12so3128591wmi.4; Tue, 25 Feb 2020 06:08:38 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:from:to:cc:references:message-id:date:user-agent :mime-version:in-reply-to:content-language:content-transfer-encoding; bh=ArTAv9akc7/LkDwjVGNvRKjk3sNTR9LtjKLQSrks0NI=; b=PDKxN0RElw9PRyO7fCZpANrOwsGJl2RaUOMlQzrM7ZJK3fzkzEvP3QXaZEMAVDMJSq e+VsxVTXWKfkY29br29pSKRAFu5G4RGnDvBXYjmT6QGx85wCq5n583l5bLfm0+CyOE+q Fze8QB9Ivdwg1/BqVYoOk9rfjbSDtIRovJEOhuMwRB19xdbDU2GLsoQxhLhwPF9LgAVY TtO3bLG+eb+8+c4YNhY/p+iIg8inXXVLUBn3A/luUUVFOidgnsE58riyBV1l/sfgplRe Rv/g+fTbTotfZZCY9WnRzssSwVi9IdWOSCl47M4YnNPz6kpQrHyDQo4j2OHULr7OlRek gXsg== 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:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=ArTAv9akc7/LkDwjVGNvRKjk3sNTR9LtjKLQSrks0NI=; b=XVMnifHkh5KwvGmu1PD3LmKaVf1TJVErxbAYHWFunX2uYQ2BHmYtODAaz05kqATHIN 40NJCkR6Ji2wrGwNDppoTw74UuQhd5jcYHZZMv2AOXK4HzGHNsOBLWQ82es2qHSCzzbx 4PHGwnK6A785fmza8FgbpkUNIALBGhVHM+G0wcdQUN+QTM13L4b+sJ/nNUpdiX1kuipc 9TsLtvpaDC4rsPcmgysZPqRlbMf1wKUG0csPN8mxXRQcqiXBjfyKsYw/TqcJSeb60ibg DMlp+gHr9XyyBNNHz9M7YDU/9xWyn5K/Lfv2T4QwPSd3htf3wypZEmc7AWNJftzk2+Y9 EyNg== X-Gm-Message-State: APjAAAXm4ru3rdBXJ3+Hat/7SK/bYiAuDyGpMoOlHcChusI0aXHBG8v1 6pPyNYK48uxjvisCDGvTuvQ= X-Google-Smtp-Source: APXvYqzd4tD4DjZdUUgUg6ejSYxE3QSi9zi7vDtqJz1qP/UD58J1AlJbu8Ldj1JNBzQ4/T63qUh46Q== X-Received: by 2002:a1c:208a:: with SMTP id g132mr4839399wmg.143.1582639718246; Tue, 25 Feb 2020 06:08:38 -0800 (PST) Received: from ?IPv6:2003:ea:8f29:6000:30a8:e117:ed7d:d145? (p200300EA8F29600030A8E117ED7DD145.dip0.t-ipconnect.de. [2003:ea:8f29:6000:30a8:e117:ed7d:d145]) by smtp.googlemail.com with ESMTPSA id u8sm4315813wmm.15.2020.02.25.06.08.37 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 25 Feb 2020 06:08:37 -0800 (PST) Subject: [PATCH v3 8/8] sound: bt87x: use pci_status_get_and_clear_errors From: Heiner Kallweit To: Bjorn Helgaas , Realtek linux nic maintainers , David Miller , Mirko Lindner , Stephen Hemminger , Clemens Ladisch , Jaroslav Kysela , Takashi Iwai Cc: "linux-pci@vger.kernel.org" , Linux Kernel Mailing List , "netdev@vger.kernel.org" , alsa-devel@alsa-project.org References: <20ca7c1f-7530-2d89-40a6-d97a65aa25ef@gmail.com> Message-ID: <357c0134-c927-6a97-4333-310983b63ed9@gmail.com> Date: Tue, 25 Feb 2020 15:07:43 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.5.0 MIME-Version: 1.0 In-Reply-To: <20ca7c1f-7530-2d89-40a6-d97a65aa25ef@gmail.com> Content-Language: en-US Sender: linux-pci-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-pci@vger.kernel.org Use new helper pci_status_get_and_clear_errors() to simplify the code. Signed-off-by: Heiner Kallweit --- sound/pci/bt87x.c | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/sound/pci/bt87x.c b/sound/pci/bt87x.c index 8c48864c8..656750466 100644 --- a/sound/pci/bt87x.c +++ b/sound/pci/bt87x.c @@ -271,13 +271,8 @@ static void snd_bt87x_free_risc(struct snd_bt87x *chip) static void snd_bt87x_pci_error(struct snd_bt87x *chip, unsigned int status) { - u16 pci_status; + int pci_status = pci_status_get_and_clear_errors(chip->pci); - pci_read_config_word(chip->pci, PCI_STATUS, &pci_status); - pci_status &= PCI_STATUS_PARITY | PCI_STATUS_SIG_TARGET_ABORT | - PCI_STATUS_REC_TARGET_ABORT | PCI_STATUS_REC_MASTER_ABORT | - PCI_STATUS_SIG_SYSTEM_ERROR | PCI_STATUS_DETECTED_PARITY; - pci_write_config_word(chip->pci, PCI_STATUS, pci_status); if (pci_status != PCI_STATUS_DETECTED_PARITY) dev_err(chip->card->dev, "Aieee - PCI error! status %#08x, PCI status %#04x\n",