From patchwork Tue Apr 13 06:21:39 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ilya Lipnitskiy X-Patchwork-Id: 12199387 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-15.7 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 4035EC433B4 for ; Tue, 13 Apr 2021 06:22:11 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 23D8D613B2 for ; Tue, 13 Apr 2021 06:22:11 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1344979AbhDMGW2 (ORCPT ); Tue, 13 Apr 2021 02:22:28 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:36644 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1344968AbhDMGW0 (ORCPT ); Tue, 13 Apr 2021 02:22:26 -0400 Received: from mail-pj1-x102b.google.com (mail-pj1-x102b.google.com [IPv6:2607:f8b0:4864:20::102b]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 924DEC061574; Mon, 12 Apr 2021 23:22:06 -0700 (PDT) Received: by mail-pj1-x102b.google.com with SMTP id r13so4141385pjf.2; Mon, 12 Apr 2021 23:22:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=bGHITnvDuBI7eLocJtn/WGLI4BFbWAeRXxC3+WaID6U=; b=kT4XHXdY1RxVydXAGYu6m7tQgIlTecURHKxAGrdXCxrXzSd6KhwbgO5lAF/d6V+PH2 BCwD8VrLgsYtcnzk86gi4xvMu1gQFeqj7Ur/MHYtFg9TefgRkLiZDQbFMMQJt1NIVFX9 eHObDnuRJQO4rP1IUPPkdUpq0CWdnbRxp7L9cgj8driC6jOf+jmvWgxUfcg613Lk333t XZw75VLasjw+bLfiVVafg3LIaYBgiL9AQ0aUbYTJgFA5YOFALHlUZn4ablq2/9VDMH1Z +1GBlyCpMn940sYAZclR7FqyyqH+W9z2N4sG0zus/8ayxV8EkuwZlMqRfx2+BgNNJOZI 0F5Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=bGHITnvDuBI7eLocJtn/WGLI4BFbWAeRXxC3+WaID6U=; b=kLsfd5+Wb4UE1G0FuXHiWoiGs5LhJQZDifC1krJmTihisVKqRpv75F/op47cJufOzO KlG9zaTTQWxQbHRG101JXp6RY0fprfSWXRg72AWfcc2S8mdOMK9hThGdmMuZ1sxtgBS4 KlBDiXnnFBlQeYY9mqxu27IkOTvTDxRIBvxCLs6PW9SzBDZ2SSEmnSzgSu00wxKy0bJe dwFjxcefY1gnxqI7c/bjgvSuhwFyOU+JSk59OJxka8/D4WqG82l0BjRVUmaJ1Ip8/u4i NdlCCYeF89CxjwJyuOQZWyhIOtqAsNv4XQ8VIUJOQCyLHCzZT/SX8Kepbv7xbkk2+wKH IJOw== X-Gm-Message-State: AOAM530IP3205liIYTtnJHmvgmLonxAu4+avwETvCldHN4oLSM5uMBu8 uReY6O1x8Pt0GZSO+IQc5s4xUcLeoRRN9vzd X-Google-Smtp-Source: ABdhPJxv4z5B8EQmt2roPq6uGVtTkl9rhAhRV8RdvYIQl4LE2HPMKmP/5Dgj39V+fX5ftm1cpnMLbw== X-Received: by 2002:a17:902:b943:b029:e8:c0d4:eecf with SMTP id h3-20020a170902b943b02900e8c0d4eecfmr30715868pls.53.1618294926163; Mon, 12 Apr 2021 23:22:06 -0700 (PDT) Received: from z640-arch.lan ([2602:61:7344:f100::678]) by smtp.gmail.com with ESMTPSA id e190sm11453326pfe.3.2021.04.12.23.22.05 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 12 Apr 2021 23:22:05 -0700 (PDT) From: Ilya Lipnitskiy To: Thomas Bogendoerfer , linux-mips@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Ilya Lipnitskiy , Lorenzo Pieralisi , Tobias Wolf , stable@vger.kernel.org Subject: [PATCH 1/8] MIPS: pci-rt2880: fix slot 0 configuration Date: Mon, 12 Apr 2021 23:21:39 -0700 Message-Id: <20210413062146.389690-2-ilya.lipnitskiy@gmail.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210413062146.389690-1-ilya.lipnitskiy@gmail.com> References: <20210413062146.389690-1-ilya.lipnitskiy@gmail.com> MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: linux-mips@vger.kernel.org pci_fixup_irqs() used to call pcibios_map_irq on every PCI device, which for RT2880 included bus 0 slot 0. After pci_fixup_irqs() got removed, only slots/funcs with devices attached would be called. While arguably the right thing, that left no chance for this driver to ever initialize slot 0, effectively bricking PCI and USB on RT2880 devices such as the Belkin F5D8235-4 v1. Slot 0 configuration needs to happen after PCI bus enumeration, but before any device at slot 0x11 (func 0 or 1) is talked to. That was determined empirically by testing on a Belkin F5D8235-4 v1 device. A minimal BAR 0 config write followed by read, then setting slot 0 PCI_COMMAND to MASTER | IO | MEMORY is all that seems to be required for proper functionality. Tested by ensuring that full- and high-speed USB devices get enumerated on the Belkin F5D8235-4 v1 (with an out of tree DTS file from OpenWrt). Fixes: 04c81c7293df ("MIPS: PCI: Replace pci_fixup_irqs() call with host bridge IRQ mapping hooks") Signed-off-by: Ilya Lipnitskiy Cc: Lorenzo Pieralisi Cc: Tobias Wolf Cc: # v4.14+ --- arch/mips/pci/pci-rt2880.c | 50 +++++++++++++++++++++++++------------- 1 file changed, 33 insertions(+), 17 deletions(-) diff --git a/arch/mips/pci/pci-rt2880.c b/arch/mips/pci/pci-rt2880.c index e1f12e398136..19f7860fb28b 100644 --- a/arch/mips/pci/pci-rt2880.c +++ b/arch/mips/pci/pci-rt2880.c @@ -66,9 +66,13 @@ static int rt2880_pci_config_read(struct pci_bus *bus, unsigned int devfn, unsigned long flags; u32 address; u32 data; + int busn = 0; - address = rt2880_pci_get_cfgaddr(bus->number, PCI_SLOT(devfn), - PCI_FUNC(devfn), where); + if (bus) + busn = bus->number; + + address = rt2880_pci_get_cfgaddr(busn, PCI_SLOT(devfn), PCI_FUNC(devfn), + where); spin_lock_irqsave(&rt2880_pci_lock, flags); rt2880_pci_reg_write(address, RT2880_PCI_REG_CONFIG_ADDR); @@ -96,9 +100,13 @@ static int rt2880_pci_config_write(struct pci_bus *bus, unsigned int devfn, unsigned long flags; u32 address; u32 data; + int busn = 0; + + if (bus) + busn = bus->number; - address = rt2880_pci_get_cfgaddr(bus->number, PCI_SLOT(devfn), - PCI_FUNC(devfn), where); + address = rt2880_pci_get_cfgaddr(busn, PCI_SLOT(devfn), PCI_FUNC(devfn), + where); spin_lock_irqsave(&rt2880_pci_lock, flags); rt2880_pci_reg_write(address, RT2880_PCI_REG_CONFIG_ADDR); @@ -180,7 +188,6 @@ static inline void rt2880_pci_write_u32(unsigned long reg, u32 val) int pcibios_map_irq(const struct pci_dev *dev, u8 slot, u8 pin) { - u16 cmd; int irq = -1; if (dev->bus->number != 0) @@ -188,8 +195,6 @@ int pcibios_map_irq(const struct pci_dev *dev, u8 slot, u8 pin) switch (PCI_SLOT(dev->devfn)) { case 0x00: - rt2880_pci_write_u32(PCI_BASE_ADDRESS_0, 0x08000000); - (void) rt2880_pci_read_u32(PCI_BASE_ADDRESS_0); break; case 0x11: irq = RT288X_CPU_IRQ_PCI; @@ -201,16 +206,6 @@ int pcibios_map_irq(const struct pci_dev *dev, u8 slot, u8 pin) break; } - pci_write_config_byte((struct pci_dev *) dev, - PCI_CACHE_LINE_SIZE, 0x14); - pci_write_config_byte((struct pci_dev *) dev, PCI_LATENCY_TIMER, 0xFF); - pci_read_config_word((struct pci_dev *) dev, PCI_COMMAND, &cmd); - cmd |= PCI_COMMAND_MASTER | PCI_COMMAND_IO | PCI_COMMAND_MEMORY | - PCI_COMMAND_INVALIDATE | PCI_COMMAND_FAST_BACK | - PCI_COMMAND_SERR | PCI_COMMAND_WAIT | PCI_COMMAND_PARITY; - pci_write_config_word((struct pci_dev *) dev, PCI_COMMAND, cmd); - pci_write_config_byte((struct pci_dev *) dev, PCI_INTERRUPT_LINE, - dev->irq); return irq; } @@ -251,6 +246,27 @@ static int rt288x_pci_probe(struct platform_device *pdev) int pcibios_plat_dev_init(struct pci_dev *dev) { + static bool slot0_init; + + /* + * Nobody seems to initialize slot 0, but this platform requires it, so + * do it once when some other slot is being enabled. The PCI subsystem + * should configure other slots properly, so no need to do anything + * special for those. + */ + if (!slot0_init) { + u32 cmd; + + slot0_init = true; + + rt2880_pci_write_u32(PCI_BASE_ADDRESS_0, 0x08000000); + (void) rt2880_pci_read_u32(PCI_BASE_ADDRESS_0); + + rt2880_pci_config_read(NULL, 0, PCI_COMMAND, 2, &cmd); + cmd |= PCI_COMMAND_MASTER | PCI_COMMAND_IO | PCI_COMMAND_MEMORY; + rt2880_pci_config_write(NULL, 0, PCI_COMMAND, 2, cmd); + } + return 0; } From patchwork Tue Apr 13 06:21:40 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ilya Lipnitskiy X-Patchwork-Id: 12199385 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-15.7 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 3F126C433ED for ; Tue, 13 Apr 2021 06:22:10 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 1C9E261370 for ; Tue, 13 Apr 2021 06:22:10 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S244468AbhDMGW1 (ORCPT ); Tue, 13 Apr 2021 02:22:27 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:36652 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1344965AbhDMGW0 (ORCPT ); Tue, 13 Apr 2021 02:22:26 -0400 Received: from mail-pj1-x1031.google.com (mail-pj1-x1031.google.com [IPv6:2607:f8b0:4864:20::1031]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 358BAC061756; Mon, 12 Apr 2021 23:22:07 -0700 (PDT) Received: by mail-pj1-x1031.google.com with SMTP id i4so7928205pjk.1; Mon, 12 Apr 2021 23:22:07 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=FtKBAsvc7cP/9k3yGtb2tbU5XcFAujb/4U8g9ZMjXlc=; b=YZ3upqSWzBebTRthDEIPNBTcOnRSB9M7m5Ojkb4A3SuvRLMFSVJ+wfZG7i20LQmjcI IYPrkiecnpC29BCtWvsim39EE6VcyQyyKOvY1/sETJ1ua/9Hci0diqRw2jKu6WDVpBof 0QE4++NYYlWSKBojOAUx7BDtls6bkyneAwpiYRJCWzraoxnzyD29saKVqosTKe4WKwSN PWdwPNog+pqjiTKB0dO4Z0bno8L0IHQb3CktgqyxcXG6J0dK72uMF7RY64gjeWA5B6Uz kxIB0USKLJnPB4o0fug6OWW4+8e4b2WB8ZXNfNGFK1tVxsgqw21e8G7anlZCD3N2780/ Zwgw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=FtKBAsvc7cP/9k3yGtb2tbU5XcFAujb/4U8g9ZMjXlc=; b=eobuS5KMk52ImhcNHfKQN/3ktsNVlBnUUIYmSWA4WRHRrA2epqXwYwPg3kzXQsW8j9 lx5XTyWySZ1RRBie2pAnaQQZrDn/NiPp+m5Kg3FrwEYzQYES6wrfKe1J4df6Ah2m0WRw /hIIFIYkdOx3oXhxHzAW+kAOsUDS9A8loul92hL02drzIDhhTq1H1ilV9LD4ng/2w5Q9 tO/YljMy0CcAU19/0iMvmF/YUbqz+zaVqj2bfv7BOIwFh5RrfdpDM7IwGIYJ79ywZKdT GBJo7CU42q8eFh94ZFAkbcl6Q5D69X7e3UrNp/KHkq8dMisuilwe/ZyK12IbXEXTMf1j sCmg== X-Gm-Message-State: AOAM530V4+kysyuz0ug6ZheXz3LRGOShaYQ/4M1FzZezWZUDuPSl1ihx OhV6GqKTBab1kkwdqnDJVGw= X-Google-Smtp-Source: ABdhPJyQnC+BBsdjOUgQP6rlKPhZD8T0oolxh6oGOm9hXMhj2DlSHkqm2lh6UzRW4ns4pU53X9FfHg== X-Received: by 2002:a17:90a:e28b:: with SMTP id d11mr3198895pjz.53.1618294926838; Mon, 12 Apr 2021 23:22:06 -0700 (PDT) Received: from z640-arch.lan ([2602:61:7344:f100::678]) by smtp.gmail.com with ESMTPSA id e190sm11453326pfe.3.2021.04.12.23.22.06 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 12 Apr 2021 23:22:06 -0700 (PDT) From: Ilya Lipnitskiy To: Thomas Bogendoerfer , linux-mips@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Ilya Lipnitskiy , Sergey Ryazanov Subject: [PATCH 2/8] MIPS: pci-rt2880: remove unneeded locks Date: Mon, 12 Apr 2021 23:21:40 -0700 Message-Id: <20210413062146.389690-3-ilya.lipnitskiy@gmail.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210413062146.389690-1-ilya.lipnitskiy@gmail.com> References: <20210413062146.389690-1-ilya.lipnitskiy@gmail.com> MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: linux-mips@vger.kernel.org Mirror pci-rt3883 fix from commit e5067c718b3a ("MIPS: pci-rt3883: Remove odd locking in PCI config space access code"). pci-rt2880 shares the driver layout with pci-rt3883 and the same reasons apply. Caller (generic PCI code) already does proper locking, so no need to add another one here. Local PCI read/write functions are never called simultaneously, also they do not require synchronization with the PCI controller ops, since they are used before the controller registration. Suggested-by: Sergey Ryazanov Signed-off-by: Ilya Lipnitskiy Reviewed-by: Sergey Ryazanov Reviewed-by: Sergey Ryazanov --- arch/mips/pci/pci-rt2880.c | 13 ------------- 1 file changed, 13 deletions(-) diff --git a/arch/mips/pci/pci-rt2880.c b/arch/mips/pci/pci-rt2880.c index 19f7860fb28b..b4ee07cbcf2a 100644 --- a/arch/mips/pci/pci-rt2880.c +++ b/arch/mips/pci/pci-rt2880.c @@ -41,7 +41,6 @@ #define RT2880_PCI_REG_ARBCTL 0x80 static void __iomem *rt2880_pci_base; -static DEFINE_SPINLOCK(rt2880_pci_lock); static u32 rt2880_pci_reg_read(u32 reg) { @@ -63,7 +62,6 @@ static inline u32 rt2880_pci_get_cfgaddr(unsigned int bus, unsigned int slot, static int rt2880_pci_config_read(struct pci_bus *bus, unsigned int devfn, int where, int size, u32 *val) { - unsigned long flags; u32 address; u32 data; int busn = 0; @@ -74,10 +72,8 @@ static int rt2880_pci_config_read(struct pci_bus *bus, unsigned int devfn, address = rt2880_pci_get_cfgaddr(busn, PCI_SLOT(devfn), PCI_FUNC(devfn), where); - spin_lock_irqsave(&rt2880_pci_lock, flags); rt2880_pci_reg_write(address, RT2880_PCI_REG_CONFIG_ADDR); data = rt2880_pci_reg_read(RT2880_PCI_REG_CONFIG_DATA); - spin_unlock_irqrestore(&rt2880_pci_lock, flags); switch (size) { case 1: @@ -97,7 +93,6 @@ static int rt2880_pci_config_read(struct pci_bus *bus, unsigned int devfn, static int rt2880_pci_config_write(struct pci_bus *bus, unsigned int devfn, int where, int size, u32 val) { - unsigned long flags; u32 address; u32 data; int busn = 0; @@ -108,7 +103,6 @@ static int rt2880_pci_config_write(struct pci_bus *bus, unsigned int devfn, address = rt2880_pci_get_cfgaddr(busn, PCI_SLOT(devfn), PCI_FUNC(devfn), where); - spin_lock_irqsave(&rt2880_pci_lock, flags); rt2880_pci_reg_write(address, RT2880_PCI_REG_CONFIG_ADDR); data = rt2880_pci_reg_read(RT2880_PCI_REG_CONFIG_DATA); @@ -127,7 +121,6 @@ static int rt2880_pci_config_write(struct pci_bus *bus, unsigned int devfn, } rt2880_pci_reg_write(data, RT2880_PCI_REG_CONFIG_DATA); - spin_unlock_irqrestore(&rt2880_pci_lock, flags); return PCIBIOS_SUCCESSFUL; } @@ -159,31 +152,25 @@ static struct pci_controller rt2880_pci_controller = { static inline u32 rt2880_pci_read_u32(unsigned long reg) { - unsigned long flags; u32 address; u32 ret; address = rt2880_pci_get_cfgaddr(0, 0, 0, reg); - spin_lock_irqsave(&rt2880_pci_lock, flags); rt2880_pci_reg_write(address, RT2880_PCI_REG_CONFIG_ADDR); ret = rt2880_pci_reg_read(RT2880_PCI_REG_CONFIG_DATA); - spin_unlock_irqrestore(&rt2880_pci_lock, flags); return ret; } static inline void rt2880_pci_write_u32(unsigned long reg, u32 val) { - unsigned long flags; u32 address; address = rt2880_pci_get_cfgaddr(0, 0, 0, reg); - spin_lock_irqsave(&rt2880_pci_lock, flags); rt2880_pci_reg_write(address, RT2880_PCI_REG_CONFIG_ADDR); rt2880_pci_reg_write(val, RT2880_PCI_REG_CONFIG_DATA); - spin_unlock_irqrestore(&rt2880_pci_lock, flags); } int pcibios_map_irq(const struct pci_dev *dev, u8 slot, u8 pin) From patchwork Tue Apr 13 06:21:41 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ilya Lipnitskiy X-Patchwork-Id: 12199389 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-15.7 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 01D08C43462 for ; Tue, 13 Apr 2021 06:22:12 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id CCD78613B2 for ; Tue, 13 Apr 2021 06:22:11 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1344984AbhDMGW3 (ORCPT ); Tue, 13 Apr 2021 02:22:29 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:36656 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1344970AbhDMGW1 (ORCPT ); Tue, 13 Apr 2021 02:22:27 -0400 Received: from mail-pl1-x635.google.com (mail-pl1-x635.google.com [IPv6:2607:f8b0:4864:20::635]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 025A8C061756; Mon, 12 Apr 2021 23:22:08 -0700 (PDT) Received: by mail-pl1-x635.google.com with SMTP id c2so197383plz.0; Mon, 12 Apr 2021 23:22:07 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=ZPldXdTQoOP+1TJTBeTgMS9EZqu+drw8h+OQ+VsC7Kw=; b=tbCyq37jO+pUK6nJePNYIrHTLb9+rW9bvXJonzy8EIuP7igH3zsV0wQNrJo5I0UWX4 48KTryRD5uuvma/10NPfHuuVdJ8fTpRTWlwV1gT3QRowqXmH9ds96225zB4qNk5lUGQF cDa2LfIE3b8W6eBfyrLb7S6tSGcy29QmCV20BDHD+qgT7K2VguNRsJYxCbXvHgseJT2/ 9Q7pJRn4X+WSIcwsDdK/afgUGTUdVXXDe6QNIzePM1vinzpwjz7srDXs2yAo4JuGaQYQ Oc7OFMAfA8182Iuh9e35ZsxoQIpRAXACA0tqa0RcKnBfDyxrMGSW3xoCKdXIoLDAyfhe swtw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=ZPldXdTQoOP+1TJTBeTgMS9EZqu+drw8h+OQ+VsC7Kw=; b=TnLyF5i4FuHbDyHdFstHN2S/eRJps1BM+ftnzTH43jgmxRqpWtWh5SzwwFjYFT7P2U +5kcnBBJXCEg2fEFX01HsGfp2GWIF4cru08MKGJEqKsWLL3iVw3a1h5nRcbOR74nmGyU rNgdDZHbvNLyKLZDEjXnsg6kPGaxbz48qbB3xz8A2tHkrg3qcDCh9kJxxvUUhgr3DUqX 5ejXzkLISVQ9aCkGQbtCtOBUvO8Wy5lzcM82poHh/t7HeGqcoz7K/X5FfnQ6fZGLJ00U pczB6NG7tWi4DtdagrfqpJY6Cc8XH5hhTmy1qT2fIQJypoSGPfgU26khty8r4MYIcREQ Pedg== X-Gm-Message-State: AOAM531oIsPbvR08iiHxc2HRussCle0/qaEkMEqvGUaDo9u6Pb+R1LU+ OxFNOZVi1Pl+rlGn25jl8+XMAZjl+l2YnrVZ X-Google-Smtp-Source: ABdhPJz+NBHqN5oWHzudEreZd5C8tLZPKwr9I5KlE0vVI/1thn51t0LZuoKO9sBno2ZNotKYh1yI8w== X-Received: by 2002:a17:90a:1b62:: with SMTP id q89mr3305346pjq.54.1618294927409; Mon, 12 Apr 2021 23:22:07 -0700 (PDT) Received: from z640-arch.lan ([2602:61:7344:f100::678]) by smtp.gmail.com with ESMTPSA id e190sm11453326pfe.3.2021.04.12.23.22.06 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 12 Apr 2021 23:22:07 -0700 (PDT) From: Ilya Lipnitskiy To: Thomas Bogendoerfer , linux-mips@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Ilya Lipnitskiy , Sergey Ryazanov , trivial@kernel.org Subject: [PATCH 3/8] MIPS: pci-rt3883: trivial: remove unused variable Date: Mon, 12 Apr 2021 23:21:41 -0700 Message-Id: <20210413062146.389690-4-ilya.lipnitskiy@gmail.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210413062146.389690-1-ilya.lipnitskiy@gmail.com> References: <20210413062146.389690-1-ilya.lipnitskiy@gmail.com> MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: linux-mips@vger.kernel.org Fixes the following compiler warning: warning: unused variable 'flags' [-Wunused-variable] Fixes: e5067c718b3a ("MIPS: pci-rt3883: Remove odd locking in PCI config space access code") Signed-off-by: Ilya Lipnitskiy Cc: Sergey Ryazanov Cc: trivial@kernel.org Acked-by: Sergey Ryazanov --- arch/mips/pci/pci-rt3883.c | 4 ---- 1 file changed, 4 deletions(-) diff --git a/arch/mips/pci/pci-rt3883.c b/arch/mips/pci/pci-rt3883.c index 0ac6346026d0..e422f78db5bc 100644 --- a/arch/mips/pci/pci-rt3883.c +++ b/arch/mips/pci/pci-rt3883.c @@ -100,7 +100,6 @@ static u32 rt3883_pci_read_cfg32(struct rt3883_pci_controller *rpc, unsigned bus, unsigned slot, unsigned func, unsigned reg) { - unsigned long flags; u32 address; u32 ret; @@ -116,7 +115,6 @@ static void rt3883_pci_write_cfg32(struct rt3883_pci_controller *rpc, unsigned bus, unsigned slot, unsigned func, unsigned reg, u32 val) { - unsigned long flags; u32 address; address = rt3883_pci_get_cfgaddr(bus, slot, func, reg); @@ -229,7 +227,6 @@ static int rt3883_pci_config_read(struct pci_bus *bus, unsigned int devfn, int where, int size, u32 *val) { struct rt3883_pci_controller *rpc; - unsigned long flags; u32 address; u32 data; @@ -263,7 +260,6 @@ static int rt3883_pci_config_write(struct pci_bus *bus, unsigned int devfn, int where, int size, u32 val) { struct rt3883_pci_controller *rpc; - unsigned long flags; u32 address; u32 data; From patchwork Tue Apr 13 06:21:42 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ilya Lipnitskiy X-Patchwork-Id: 12199391 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-15.7 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 4C599C43470 for ; Tue, 13 Apr 2021 06:22:12 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 2FC7B613B6 for ; Tue, 13 Apr 2021 06:22:12 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1344992AbhDMGWa (ORCPT ); Tue, 13 Apr 2021 02:22:30 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:36658 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1344971AbhDMGW1 (ORCPT ); Tue, 13 Apr 2021 02:22:27 -0400 Received: from mail-pl1-x62f.google.com (mail-pl1-x62f.google.com [IPv6:2607:f8b0:4864:20::62f]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 84055C06138C; Mon, 12 Apr 2021 23:22:08 -0700 (PDT) Received: by mail-pl1-x62f.google.com with SMTP id k21so1660569pll.10; Mon, 12 Apr 2021 23:22:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=KyKCHbVUuM78DLJQ6iKYbE/8/YHUHid6Z5P0PEZg9RQ=; b=OnyASyqlXj5JoEtAtMMWp3ygvJkTrM+vB+fhRJ3dLFRfRLEo/5C9uBElHhxyXB/SRm q0iY93YjS6GVoookFk/cR1yyux4ogAr13UsQeRt8kVvKAmFiOv4xVg1p4uXnWUk0IcUc zcjLZL6FxDM6X6u5V8UIuU2uxsBv5hqlkSDLBuUwpjG+RmsET+o98JDFefix91eY29rs GvYwSdIiq16iwk55bsLHaRSuyHSFVvOubpsZ49uWztJsZRloiEXsSx12jwNqgj+SJaVv vFaSamUCbRbAckppBtD5LuTX0m+rWB0+9k4rUGzmDCn0mOncIaMojWYHhEJmlyYHH2mQ VQvw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=KyKCHbVUuM78DLJQ6iKYbE/8/YHUHid6Z5P0PEZg9RQ=; b=WYA5In8yaLsdM5kncVlmrJ3JO1W5AbXKvtrUJ00uUeubPi4gwRorCVHujo2IhC3BSu 4KUCV7t+VZMTJSvqSMzYfQUAOxAIJ/B6KbnJMLLE+L728tm1VLcptEvxSGrWBMUkYWdk ykdQsoe+vnKPq8CeIiSEWfIhOmpEr7iWGpEPjipLZ7W1S8o6msCXyx28CIX19ae1Cd87 tybBbjzgcMObPeS+e6ZOuiBPj8dMGBXklHpIqQ8/3vQqXeKwVQHG+KZXpPFsobncyNlC ciWYcrlJk+xVU40zdHaIgymrj7iy27d+3j5dJCwyvyGzBGoBeYRs+5aS4nUbvAdETuSc Ie/g== X-Gm-Message-State: AOAM531LQC8PA86toEWjEtq9e7tSMj0879hhBynzvCe1bQTzK1wsZoKV VcRj2iYbL4WS/mjXG3prNgX80rUPROuz1MZM X-Google-Smtp-Source: ABdhPJznGbxDWXgiJiBVvrPXvfOrv8pyrJ2BlI6zvpf7Gv8WFvjxqzMAWdrkzl5fnsDX5olzjFSQbQ== X-Received: by 2002:a17:902:db01:b029:eb:36ed:36f4 with SMTP id m1-20020a170902db01b02900eb36ed36f4mr202799plx.61.1618294927960; Mon, 12 Apr 2021 23:22:07 -0700 (PDT) Received: from z640-arch.lan ([2602:61:7344:f100::678]) by smtp.gmail.com with ESMTPSA id e190sm11453326pfe.3.2021.04.12.23.22.07 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 12 Apr 2021 23:22:07 -0700 (PDT) From: Ilya Lipnitskiy To: Thomas Bogendoerfer , linux-mips@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Ilya Lipnitskiy Subject: [PATCH 4/8] MIPS: pci-rt3883: more accurate DT error messages Date: Mon, 12 Apr 2021 23:21:42 -0700 Message-Id: <20210413062146.389690-5-ilya.lipnitskiy@gmail.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210413062146.389690-1-ilya.lipnitskiy@gmail.com> References: <20210413062146.389690-1-ilya.lipnitskiy@gmail.com> MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: linux-mips@vger.kernel.org Existing strings do not make sense: one is always NULL and the other refers to the wrong parent node. Signed-off-by: Ilya Lipnitskiy --- arch/mips/pci/pci-rt3883.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/arch/mips/pci/pci-rt3883.c b/arch/mips/pci/pci-rt3883.c index e422f78db5bc..aebd4964ea34 100644 --- a/arch/mips/pci/pci-rt3883.c +++ b/arch/mips/pci/pci-rt3883.c @@ -431,8 +431,7 @@ static int rt3883_pci_probe(struct platform_device *pdev) if (!rpc->intc_of_node) { dev_err(dev, "%pOF has no %s child node", - rpc->intc_of_node, - "interrupt controller"); + np, "interrupt controller"); return -EINVAL; } @@ -446,8 +445,7 @@ static int rt3883_pci_probe(struct platform_device *pdev) if (!rpc->pci_controller.of_node) { dev_err(dev, "%pOF has no %s child node", - rpc->intc_of_node, - "PCI host bridge"); + np, "PCI host bridge"); err = -EINVAL; goto err_put_intc_node; } From patchwork Tue Apr 13 06:21:43 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ilya Lipnitskiy X-Patchwork-Id: 12199393 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-15.7 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 598B7C43600 for ; Tue, 13 Apr 2021 06:22:13 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 3D6EF613B2 for ; Tue, 13 Apr 2021 06:22:13 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1344994AbhDMGWa (ORCPT ); Tue, 13 Apr 2021 02:22:30 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:36664 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1344974AbhDMGW2 (ORCPT ); Tue, 13 Apr 2021 02:22:28 -0400 Received: from mail-pg1-x529.google.com (mail-pg1-x529.google.com [IPv6:2607:f8b0:4864:20::529]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id EBA59C061574; Mon, 12 Apr 2021 23:22:08 -0700 (PDT) Received: by mail-pg1-x529.google.com with SMTP id w10so11202487pgh.5; Mon, 12 Apr 2021 23:22:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=TwYVR02YUIROEysawud1U32OvU6J+qaFmj26Z/Sycfc=; b=X+bDAUy+00SdlM+CAyMblhT7maNTy8m35exxYTZBeyg+ctbq3tevcvC6SaIKIdCC5S kRuCFSiQJtGXRIiv8Cmxnyhf7PHVXdkVZ0GPU08BW7mI5XYuU9pLE2cBG3QCtK09JOCW rmiT+qzf+hvDwvWPXWrg90LPAuZ8Kz3tL6uoll32Ft4q0ywft7xmb+4Tss7QUUcs7IKd hazgPXiQbmbMbwWwPi/rWlpfHq/ddXexaxGe+1SekicOqWNzX5mRFl8E1lrPeV0gJVSs EH60T3AIaLX+8s9RdUQDI+bU560Y/iLyypkh9N32oBJhv5dJkH+Bsk0Rlwdk3XKkuEdf xfVA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=TwYVR02YUIROEysawud1U32OvU6J+qaFmj26Z/Sycfc=; b=l1Dx+CHVAJ+aCEal2SEKv35oenZ+oJfVNRIOfBLV/gJgTcvJtQYWRyAiCWXeni5V2a upAxeBJkPdkR+rgYRZAvcM8EByx+VUzV1siV1fi6tv1BIVj1K/2B47qtBTxPW/OxmvuW /cCQnWcaal7ZTJjncQ5tsboUHKQqkALMRQF2+hZxdsPclGSmHJxOsxrhzKrb+S25yvN8 6EMYkBybPIFSs9XwRxJGdvFZf8N5vdtQs+eVDVXGpeigAowuY9cOZwYU0MbfTzWuwK+B 5GSTGfUusik+BR4KIGUyq+sBWiCIit0HCTYv2X92ICDKFCqLyc8y3K5rxacgkWtsg2yI aKgA== X-Gm-Message-State: AOAM530i55M4sWx/nIV9GsRjW4dbTHJRcVLmkV+NYIqUxBZal+oMvWGK PIm0jIM+IkROJHhaK2W7drU= X-Google-Smtp-Source: ABdhPJw/1LOlptr8bx+KqL9frx8H53syWy5r+fw7Bdi6JJIffPm4LqrAE2ddVvm4Yeg3JUR320B48A== X-Received: by 2002:a62:754c:0:b029:242:22d1:58af with SMTP id q73-20020a62754c0000b029024222d158afmr27274148pfc.11.1618294928535; Mon, 12 Apr 2021 23:22:08 -0700 (PDT) Received: from z640-arch.lan ([2602:61:7344:f100::678]) by smtp.gmail.com with ESMTPSA id e190sm11453326pfe.3.2021.04.12.23.22.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 12 Apr 2021 23:22:08 -0700 (PDT) From: Ilya Lipnitskiy To: Thomas Bogendoerfer , linux-mips@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Ilya Lipnitskiy , Liviu Dudau Subject: [PATCH 5/8] MIPS: pci-legacy: stop using of_pci_range_to_resource Date: Mon, 12 Apr 2021 23:21:43 -0700 Message-Id: <20210413062146.389690-6-ilya.lipnitskiy@gmail.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210413062146.389690-1-ilya.lipnitskiy@gmail.com> References: <20210413062146.389690-1-ilya.lipnitskiy@gmail.com> MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: linux-mips@vger.kernel.org Mirror commit aeba3731b150 ("powerpc/pci: Fix IO space breakage after of_pci_range_to_resource() change"). Most MIPS platforms do not define PCI_IOBASE, nor implement pci_address_to_pio(). Moreover, IO_SPACE_LIMIT is 0xffff for most MIPS platforms. of_pci_range_to_resource passes the _start address_ of the IO range into pci_address_to_pio, which then checks it against IO_SPACE_LIMIT and fails, because for MIPS platforms that use pci-legacy (pci-lantiq, pci-rt3883, pci-mt7620), IO ranges start much higher than 0xffff. In fact, pci-mt7621 in staging already works around this problem, see commit 09dd629eeabb ("staging: mt7621-pci: fix io space and properly set resource limits") So just stop using of_pci_range_to_resource, which does not work for MIPS. Fixes PCI errors like: pci_bus 0000:00: root bus resource [io 0xffffffff] Fixes: 0b0b0893d49b ("of/pci: Fix the conversion of IO ranges into IO resources") Signed-off-by: Ilya Lipnitskiy Cc: Liviu Dudau --- arch/mips/pci/pci-legacy.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/arch/mips/pci/pci-legacy.c b/arch/mips/pci/pci-legacy.c index 39052de915f3..3a909194284a 100644 --- a/arch/mips/pci/pci-legacy.c +++ b/arch/mips/pci/pci-legacy.c @@ -166,8 +166,13 @@ void pci_load_of_ranges(struct pci_controller *hose, struct device_node *node) res = hose->mem_resource; break; } - if (res != NULL) - of_pci_range_to_resource(&range, node, res); + if (res != NULL) { + res->name = node->full_name; + res->flags = range.flags; + res->start = range.cpu_addr; + res->end = range.cpu_addr + range.size - 1; + res->parent = res->child = res->sibling = NULL; + } } } From patchwork Tue Apr 13 06:21:44 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ilya Lipnitskiy X-Patchwork-Id: 12199395 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-15.7 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id B95DCC4360C for ; Tue, 13 Apr 2021 06:22:13 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 90E7261370 for ; Tue, 13 Apr 2021 06:22:13 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S244480AbhDMGWb (ORCPT ); Tue, 13 Apr 2021 02:22:31 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:36658 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1344977AbhDMGW2 (ORCPT ); Tue, 13 Apr 2021 02:22:28 -0400 Received: from mail-pj1-x102d.google.com (mail-pj1-x102d.google.com [IPv6:2607:f8b0:4864:20::102d]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 692FCC061756; Mon, 12 Apr 2021 23:22:09 -0700 (PDT) Received: by mail-pj1-x102d.google.com with SMTP id em21-20020a17090b0155b029014e204a81e6so789378pjb.1; Mon, 12 Apr 2021 23:22:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=MEVWTDjaKURrh58TF/87I+8ZbA6Ugd6pjE5oioMoAPY=; b=sxVlCAtQhSrQmZAIRSM/Jh9aj43J+pzf0KAGxhPwqnb2jyri0uO4p8mN1rN4j6FaQR XymyaJeyjQzmJV98AYGbalxACDRC/fJLKEUCFa76dGa0URTPwzvCOb4k5ETIexMnfsUr uRf5Gqbp22mrWOb3Nsgahkz1nrCw5V+8uyM+9PP0wVIcorniSFzaCLiNRO3ya8uvx0BE BZJyoJLv6Hat3bxT5xOsDgly4o0Be55Y7ztlNUmOQgHTuHCvPomYCorIhYtmJ1H0AgbX BEKt2wx+RDltGbs0Qlf52GWy+mQ/LHixWKP+r/sOpOQxGY1je90m+4QAJMBtFDNiqhg5 r0DQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=MEVWTDjaKURrh58TF/87I+8ZbA6Ugd6pjE5oioMoAPY=; b=A/9d+DUiaAqULK0sdlqVXs532ZLpHcLKEthKIPsdEQzHt36OYAxD4opSmLEu+fAtRe eUHLUSRhGH8l4UJhSDebfW75TAQgZN6I7BuRghX+6JyMYjFz8B0kcu4GjA1XFaAznnNv k4iQfXzgdqduVudXxzmcnHVCm0Q8yXKWsBKjlBz9Jp0IfNPe127xopu39DBIbU5DeCb1 U8Db94esKWvT8KIkOjQaCcYNH0F25LL3SGZEMh8FvdaFP4PE6bVe+Xag+Q+bYWTF7ict jFdLkd/bYJHZZvhyx2mLhiXBLBDukCaFtXmpHrPIcLDsS8tvHb3shM2RP1G2Xv8vt4sD Qp0A== X-Gm-Message-State: AOAM532bTYcib7gte3dI3JPqPa70oeHWOA76cQHLmi2IyIoacYFTBzbw B5QZAYmIquRf0a/y6ppFSTk= X-Google-Smtp-Source: ABdhPJzlKD462hC0hjV6NA6oOmHjVatoLSZcP/j4KdWz5pVSjvkzQAO4LoTgswlPu5k82b8jslbTzQ== X-Received: by 2002:a17:902:aa87:b029:ea:fe2b:e59c with SMTP id d7-20020a170902aa87b02900eafe2be59cmr8486531plr.53.1618294929010; Mon, 12 Apr 2021 23:22:09 -0700 (PDT) Received: from z640-arch.lan ([2602:61:7344:f100::678]) by smtp.gmail.com with ESMTPSA id e190sm11453326pfe.3.2021.04.12.23.22.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 12 Apr 2021 23:22:08 -0700 (PDT) From: Ilya Lipnitskiy To: Thomas Bogendoerfer , linux-mips@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Ilya Lipnitskiy Subject: [PATCH 6/8] MIPS: pci-legacy: remove redundant info messages Date: Mon, 12 Apr 2021 23:21:44 -0700 Message-Id: <20210413062146.389690-7-ilya.lipnitskiy@gmail.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210413062146.389690-1-ilya.lipnitskiy@gmail.com> References: <20210413062146.389690-1-ilya.lipnitskiy@gmail.com> MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: linux-mips@vger.kernel.org Remove the following pci-legacy message: PCI host bridge /pci@440000/host-bridge ranges: MEM 0x0000000020000000..0x000000002fffffff IO 0x0000000000460000..0x000000000046ffff It is followed shortly by the same data from pci_register_host_bridge: PCI host bridge to bus 0000:00 pci_bus 0000:00: root bus resource [mem 0x20000000-0x2fffffff] pci_bus 0000:00: root bus resource [io 0x460000-0x46ffff] Signed-off-by: Ilya Lipnitskiy --- arch/mips/pci/pci-legacy.c | 7 ------- 1 file changed, 7 deletions(-) diff --git a/arch/mips/pci/pci-legacy.c b/arch/mips/pci/pci-legacy.c index 3a909194284a..ec3f52ade72d 100644 --- a/arch/mips/pci/pci-legacy.c +++ b/arch/mips/pci/pci-legacy.c @@ -140,7 +140,6 @@ void pci_load_of_ranges(struct pci_controller *hose, struct device_node *node) struct of_pci_range range; struct of_pci_range_parser parser; - pr_info("PCI host bridge %pOF ranges:\n", node); hose->of_node = node; if (of_pci_range_parser_init(&parser, node)) @@ -151,18 +150,12 @@ void pci_load_of_ranges(struct pci_controller *hose, struct device_node *node) switch (range.flags & IORESOURCE_TYPE_BITS) { case IORESOURCE_IO: - pr_info(" IO 0x%016llx..0x%016llx\n", - range.cpu_addr, - range.cpu_addr + range.size - 1); hose->io_map_base = (unsigned long)ioremap(range.cpu_addr, range.size); res = hose->io_resource; break; case IORESOURCE_MEM: - pr_info(" MEM 0x%016llx..0x%016llx\n", - range.cpu_addr, - range.cpu_addr + range.size - 1); res = hose->mem_resource; break; } From patchwork Tue Apr 13 06:21:45 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ilya Lipnitskiy X-Patchwork-Id: 12199397 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-15.7 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 8811BC433B4 for ; Tue, 13 Apr 2021 06:22:14 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 6D5B3613B2 for ; Tue, 13 Apr 2021 06:22:14 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1344996AbhDMGWc (ORCPT ); Tue, 13 Apr 2021 02:22:32 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:36664 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1344983AbhDMGW3 (ORCPT ); Tue, 13 Apr 2021 02:22:29 -0400 Received: from mail-pl1-x629.google.com (mail-pl1-x629.google.com [IPv6:2607:f8b0:4864:20::629]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 03670C061574; Mon, 12 Apr 2021 23:22:10 -0700 (PDT) Received: by mail-pl1-x629.google.com with SMTP id u7so5836112plr.6; Mon, 12 Apr 2021 23:22:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=FzDdk9WeLMndWaHg27kx8Y0bv03vlpf64XRRJIexZMY=; b=acaWyW4KuwBaMok4UBB3mMF/7fsG3Dm+1yBQ2PgYywhsKIOBLbJM/vmMz6WtDUyrNO QE5kTrudQU4fJA4VTJ/esU59zGS5uYmQjVKYaSwjBbVO70BGWsoJDrvK3ba9K8LMwXKq bny7hy/KCqZtQnhIWMSO5706uDUF0vn96MVircjvLl0ZnpJmnLHW6AkncxcR2OWhr28r UYVC8LAhMNb2PsR4uGeHqP3gepPnshXEeirDgK7Ok87zBYzX4H+RBNtO4IiqA9Lpqa5J Oz5a2H8QK7ogfqEKvRrbk/lxnMnhdluVbHfGIeYMILswZIz5V1/tlNSPS3kHA727Hotk T/Vg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=FzDdk9WeLMndWaHg27kx8Y0bv03vlpf64XRRJIexZMY=; b=rGauQ7VIv3zpdR8L4hgwQLrI5sfmXmsKBhn0Or15EDOH0VVbC0Nfnf9ROwLjqwQe25 OR83hfHTtQNOoexJ7HnGMS1Om5nM5h+ZVv8KXi1b50LxB0/+XKWfNG392UaJW6Ngk5Hj Kt/rSLkjDD5S2Be8woRDqG2x5g2LSEZhYFEfGkzpuMTDJSqlkjRucMRsipeHAjRUZtxu o2dJSHWViCQ+Z3hA1jm0e/SM8aSoaQXdChT5/xpCU+ZFtDfHGB0Sxa/+jRqQF1C11ILb yZSBUDwETiwuj49QLzgyrRv9ia25MH6ii1wIktlyou+Cpfxtu04DtmOmih7BxsVTbAoR RC9Q== X-Gm-Message-State: AOAM530upSqoJSBqNVaHl+OlF7KhDQfExaBrvQXo3Ma41LfJ39oYgtPK iFlctq+tJ6Bj++nzW+C9eYk= X-Google-Smtp-Source: ABdhPJxDyHtOlfdWoQKHS1hCF810J2AfDNrXfRXlyn3c3XsfpvjJT3I/1vnf8S81uOP6QmQYVWOEDw== X-Received: by 2002:a17:902:6b8c:b029:ea:f54f:c330 with SMTP id p12-20020a1709026b8cb02900eaf54fc330mr9502135plk.10.1618294929613; Mon, 12 Apr 2021 23:22:09 -0700 (PDT) Received: from z640-arch.lan ([2602:61:7344:f100::678]) by smtp.gmail.com with ESMTPSA id e190sm11453326pfe.3.2021.04.12.23.22.09 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 12 Apr 2021 23:22:09 -0700 (PDT) From: Ilya Lipnitskiy To: Thomas Bogendoerfer , linux-mips@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Ilya Lipnitskiy , Bjorn Helgaas Subject: [PATCH 7/8] MIPS: pci-legacy: remove busn_resource field Date: Mon, 12 Apr 2021 23:21:45 -0700 Message-Id: <20210413062146.389690-8-ilya.lipnitskiy@gmail.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210413062146.389690-1-ilya.lipnitskiy@gmail.com> References: <20210413062146.389690-1-ilya.lipnitskiy@gmail.com> MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: linux-mips@vger.kernel.org No drivers set the busn_resource field in the pci_controller struct. Commit 7ee214b540d9 ("MIPS: PCI: Remove unused busn_offset") almost removed it over 3 years ago. Remove it for good to free up memory and eliminate messages like: pci_bus 0000:00: root bus resource [??? 0x00000000 flags 0x0] Signed-off-by: Ilya Lipnitskiy Cc: Bjorn Helgaas --- arch/mips/include/asm/pci.h | 1 - arch/mips/pci/pci-legacy.c | 1 - 2 files changed, 2 deletions(-) diff --git a/arch/mips/include/asm/pci.h b/arch/mips/include/asm/pci.h index 6f48649201c5..9ffc8192adae 100644 --- a/arch/mips/include/asm/pci.h +++ b/arch/mips/include/asm/pci.h @@ -38,7 +38,6 @@ struct pci_controller { struct resource *io_resource; unsigned long io_offset; unsigned long io_map_base; - struct resource *busn_resource; #ifndef CONFIG_PCI_DOMAINS_GENERIC unsigned int index; diff --git a/arch/mips/pci/pci-legacy.c b/arch/mips/pci/pci-legacy.c index ec3f52ade72d..78c22987bef0 100644 --- a/arch/mips/pci/pci-legacy.c +++ b/arch/mips/pci/pci-legacy.c @@ -89,7 +89,6 @@ static void pcibios_scanbus(struct pci_controller *hose) hose->mem_resource, hose->mem_offset); pci_add_resource_offset(&resources, hose->io_resource, hose->io_offset); - pci_add_resource(&resources, hose->busn_resource); list_splice_init(&resources, &bridge->windows); bridge->dev.parent = NULL; bridge->sysdata = hose; From patchwork Tue Apr 13 06:21:46 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ilya Lipnitskiy X-Patchwork-Id: 12199399 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-15.7 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 5A848C43461 for ; Tue, 13 Apr 2021 06:22:15 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 3F75E613AE for ; Tue, 13 Apr 2021 06:22:15 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1344998AbhDMGWc (ORCPT ); Tue, 13 Apr 2021 02:22:32 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:36656 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1344988AbhDMGW3 (ORCPT ); Tue, 13 Apr 2021 02:22:29 -0400 Received: from mail-pl1-x629.google.com (mail-pl1-x629.google.com [IPv6:2607:f8b0:4864:20::629]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 8F6C4C061756; Mon, 12 Apr 2021 23:22:10 -0700 (PDT) Received: by mail-pl1-x629.google.com with SMTP id d8so7634243plh.11; Mon, 12 Apr 2021 23:22:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=WdjBbv3W8zOpO+oAoTMTaxs43N139rhZL18fdEB0EnQ=; b=D2yYBGSHV1ar0ltzK0Nq+lwi3hBMgls83vEBeh+MKJJG3BokCS5iDjiHuh94qxASU+ USAtJma2DuynLgwpcKNppc7AbOQk/GzjrGGdfYBbeDjzGY0VoE+PUX3fB7cLwEJSP/9d gqYldt4Tv149+SzK0v6UTk7VWWelg6wbeUdOcwPFekzOkh4JJ7XI8gLKILTju38GeO+F eo2kCBmCkEObvWhhdojbV+4q1OHMlnUesShGLPnfwHATWNX/zlDRL/gDHlb0qInU/86B 3ZCcmUbetqvtHDRCr0c4kCH8lDiNzY2YZNtlvUNLBr5CfiVG1CwyGpkKt+zdCoyoOTVq 9ciQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=WdjBbv3W8zOpO+oAoTMTaxs43N139rhZL18fdEB0EnQ=; b=mZlMPQCV3hGBegzPoOGDi5DtbrMZMfG1DEj/C//GzVH5c52TF7ZkumYzvvzekGyRbw ZGyIkSXTC0+jLNoPuqNlkXicUfOj58sbv8tCQ5h2WGG2nqOvF2TV8jkUGl3gzT97QcS+ U5uujIDvIeeE/dIe2hp9w/Kxql72cP7XIH5F6A8VXLztEDQf92Tj2yDf2rZJ4211wImt gndxQ6Ladp5dlyvoHjL6yiGDmj9UDBWACluTTr40q6lDNGnjxw3kNcmVx88lBs4rD/vR wBly71pZmO1ZnKtPLYkWYA5Byf2psC3l3NUSmkdWBIygq1D4lqaWYK558wiIPl47QYLL RssA== X-Gm-Message-State: AOAM531IreVEn7RqpQDAHJzeaqhsJ5iayzjW3zTcYgAaXrZRulUKQASW HXHDpuALHAqoEnuNY32AUhg= X-Google-Smtp-Source: ABdhPJyuAZzzouB2S51KR//Ovy8FgwhC6NRgjMjWcEEEeeWmHeNQbXZfS6nX8SAnTwsn5MUhiHX6Ng== X-Received: by 2002:a17:902:d104:b029:eb:6d3:1436 with SMTP id w4-20020a170902d104b02900eb06d31436mr7254886plw.1.1618294930190; Mon, 12 Apr 2021 23:22:10 -0700 (PDT) Received: from z640-arch.lan ([2602:61:7344:f100::678]) by smtp.gmail.com with ESMTPSA id e190sm11453326pfe.3.2021.04.12.23.22.09 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 12 Apr 2021 23:22:09 -0700 (PDT) From: Ilya Lipnitskiy To: Thomas Bogendoerfer , linux-mips@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Ilya Lipnitskiy , Bjorn Helgaas Subject: [PATCH 8/8] MIPS: pci-legacy: use generic pci_enable_resources Date: Mon, 12 Apr 2021 23:21:46 -0700 Message-Id: <20210413062146.389690-9-ilya.lipnitskiy@gmail.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210413062146.389690-1-ilya.lipnitskiy@gmail.com> References: <20210413062146.389690-1-ilya.lipnitskiy@gmail.com> MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: linux-mips@vger.kernel.org Follow the reasoning from commit 842de40d93e0 ("PCI: add generic pci_enable_resources()"): The only functional difference from the MIPS version is that the generic one uses "!r->parent" to check for resource collisions instead of "!r->start && r->end". That should have no effect on any pci-legacy driver. Suggested-by: Bjorn Helgaas Signed-off-by: Ilya Lipnitskiy --- arch/mips/pci/pci-legacy.c | 40 ++------------------------------------ 1 file changed, 2 insertions(+), 38 deletions(-) diff --git a/arch/mips/pci/pci-legacy.c b/arch/mips/pci/pci-legacy.c index 78c22987bef0..c24226ea0a6e 100644 --- a/arch/mips/pci/pci-legacy.c +++ b/arch/mips/pci/pci-legacy.c @@ -241,47 +241,11 @@ static int __init pcibios_init(void) subsys_initcall(pcibios_init); -static int pcibios_enable_resources(struct pci_dev *dev, int mask) -{ - u16 cmd, old_cmd; - int idx; - struct resource *r; - - pci_read_config_word(dev, PCI_COMMAND, &cmd); - old_cmd = cmd; - for (idx=0; idx < PCI_NUM_RESOURCES; idx++) { - /* Only set up the requested stuff */ - if (!(mask & (1<resource[idx]; - if (!(r->flags & (IORESOURCE_IO | IORESOURCE_MEM))) - continue; - if ((idx == PCI_ROM_RESOURCE) && - (!(r->flags & IORESOURCE_ROM_ENABLE))) - continue; - if (!r->start && r->end) { - pci_err(dev, - "can't enable device: resource collisions\n"); - return -EINVAL; - } - if (r->flags & IORESOURCE_IO) - cmd |= PCI_COMMAND_IO; - if (r->flags & IORESOURCE_MEM) - cmd |= PCI_COMMAND_MEMORY; - } - if (cmd != old_cmd) { - pci_info(dev, "enabling device (%04x -> %04x)\n", old_cmd, cmd); - pci_write_config_word(dev, PCI_COMMAND, cmd); - } - return 0; -} - int pcibios_enable_device(struct pci_dev *dev, int mask) { - int err; + int err = pci_enable_resources(dev, mask); - if ((err = pcibios_enable_resources(dev, mask)) < 0) + if (err < 0) return err; return pcibios_plat_dev_init(dev);