Received: by 2002:ac0:a5b6:0:0:0:0:0 with SMTP id m51-v6csp3953708imm; Tue, 29 May 2018 18:00:33 -0700 (PDT) X-Google-Smtp-Source: ADUXVKK+y4f8yMlwbNLx0tn0jLMU2NDqMZoII1g7QCVmbZsIcmF7fofXC8YF45rh4g0YhZtzhMha X-Received: by 2002:a17:902:bb81:: with SMTP id m1-v6mr644681pls.117.1527642033320; Tue, 29 May 2018 18:00:33 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1527642033; cv=none; d=google.com; s=arc-20160816; b=ONsu7At82jWFj879w0rfONAQlOUpeovHBJw60Yti2HHEG94IrhJ+E5ZIsZuPl0Wb1t GjqRaBP7B2sBOvkls4tHS3tzLoOdf48558Kq1ghicukzEAjc+AKl3Na3/46eOBGVroLo 1eKl/vhw4/0/BT3pF6b0i60SL1zGfSi0oDk9RURpBzGkzV9hb8GiDRPgm1M6EvGDUraK cbGXKWnwxrDuZUr0l4JEFyG4TPJv/o2ttrsJ84OSFPX3qIIsiab/qLESZpGOfRSY9qVK vu4lpx0/vfQoFBcxa8g16z3k6KmbFHab89O59opwzevWXENeKP1pWwI3shgdRlY9s1S0 tlVw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :references:in-reply-to:mime-version:dkim-signature :arc-authentication-results; bh=It/wZ/VSB9xK9Ca6XCN0KvONl8nLvMQONWEE0I/WD+4=; b=vlj2pMkZD1bELGxd5PvV3Yj7YU0Pneaxa4FQwH/hKK1DLhPsSBdi6OkI1OeH8l4ptE ACDrPek70bu5k3n/QX2xP7EESJ2BABzYC27MBqRPh7WINUzVOe4Xf6uO70sKbL5N+8hJ fqFYF8jMd16oZYQeis7Mdsoa0IzAN5TtPFSkV7CXZzn1WDFn7LXatpNoZKGQWcdGhJm8 zSuX8V+Vd7F0c8SfxTLLRWS+77ZGHligkTMy31BadmWXPaVRkSKGkAf+XG61TrPovhlU MnQjX25d/M/wrai6W/Dzhaw6u87LEjBIRz6cFqUsNB3CCCYZr82pfkibu+bWxLLDLCKA 3Akg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=QzU7zsoW; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id 43-v6si34643742plb.511.2018.05.29.18.00.19; Tue, 29 May 2018 18:00:33 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=QzU7zsoW; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S968550AbeE3A7h (ORCPT + 99 others); Tue, 29 May 2018 20:59:37 -0400 Received: from mail-qt0-f171.google.com ([209.85.216.171]:42083 "EHLO mail-qt0-f171.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S968409AbeE3A7f (ORCPT ); Tue, 29 May 2018 20:59:35 -0400 Received: by mail-qt0-f171.google.com with SMTP id c2-v6so21189394qtn.9; Tue, 29 May 2018 17:59:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=It/wZ/VSB9xK9Ca6XCN0KvONl8nLvMQONWEE0I/WD+4=; b=QzU7zsoWGomEb/CVbNzscfd1ycWoTeRrVoXsTPRXlSQ53zmHR2ECXyJWbL9zshDf+9 iImHAfZjVrUCHtlfWf9V6FDPmEBcAohnmV+vgYa+cQsbzFhkYBV/Qu7v08GpGQrp+zH9 ToCgKDuTYgZnA3URdkucJccUj++xl/m90VQsPC6v7OpP7mC3VBcrCvCXlRdq8SRSUHJh 0AwIjnBKLMrhoBfDFsl/Dcl34nu8frTDFY1fREB0yMufuxCvp+QYvfSph69qcBnXzQ/z S7Mi56S9NIjUdPR+Q4vi794i77F8MaYk54+OOpWXrewug6rjChAnL95VM+g4TJb/8uvV ieOA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=It/wZ/VSB9xK9Ca6XCN0KvONl8nLvMQONWEE0I/WD+4=; b=ajKD2tqZ23r9U0QsrlEquaeBsb5+Gcv0QjxrFVFeWqwV9bBJrUQfP7sYOwkGS1GTie X95eLujR64iujFZwz6bsWSgbn4Cv4IxgngZX5eOJnO9MxiRwvg+TUtmUMhv67zIXD5yN qCCTVFeHGJumnQANNtDBs81g6SIU18atyJ+ltXFl94200d+hvxfcWlcQFDH2ixCa1KEQ L36a628cGJ+0ohxXMfQkkI/RRbGAPUpkhQiOe4FsDeM9hRBvOwArZUqVR++/vldKIjDj gXH0Mvv6REgArUXRjDlw7q4ROyONrkGGNS3j0xN6/fHowjWJbmjSLE1YaqGIg+mssvvd tMlg== X-Gm-Message-State: APt69E0ZCFs+lM5GHhuWD4aJhdtcTkHkRtF835ak1aD8HrqZmJnGDH4d txysdOzjmS5Ab83qprAPpwLjy1GQh21QZDxQ02o= X-Received: by 2002:a0c:ae2f:: with SMTP id y44-v6mr619733qvc.157.1527641974184; Tue, 29 May 2018 17:59:34 -0700 (PDT) MIME-Version: 1.0 Received: by 2002:a0c:9896:0:0:0:0:0 with HTTP; Tue, 29 May 2018 17:59:33 -0700 (PDT) In-Reply-To: <1527631130-20045-3-git-send-email-ray.jui@broadcom.com> References: <1527631130-20045-1-git-send-email-ray.jui@broadcom.com> <1527631130-20045-3-git-send-email-ray.jui@broadcom.com> From: Andy Shevchenko Date: Wed, 30 May 2018 03:59:33 +0300 Message-ID: Subject: Re: [PATCH 2/6] PCI: iproc: Add INTx support with better modeling To: Ray Jui Cc: Lorenzo Pieralisi , Bjorn Helgaas , Rob Herring , Mark Rutland , Linux Kernel Mailing List , bcm-kernel-feedback-list , linux-pci@vger.kernel.org, devicetree , linux-arm Mailing List Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, May 30, 2018 at 12:58 AM, Ray Jui wrote: > Add PCIe legacy interrupt INTx support to the iProc PCIe driver by > modeling it with its own IRQ domain. All 4 interrupts INTA, INTB, INTC, > INTD share the same interrupt line connected to the GIC in the system, > while the status of each INTx can be obtained through the INTX CSR > register > + while ((status = iproc_pcie_read_reg(pcie, IPROC_PCIE_INTX_CSR) & > + SYS_RC_INTX_MASK) != 0) { > + for_each_set_bit(bit, &status, PCI_NUM_INTX) { > + virq = irq_find_mapping(pcie->irq_domain, bit + 1); > + if (virq) > + generic_handle_irq(virq); > + else > + dev_err(dev, "unexpected INTx%u\n", bit); > + } > + } do { status = ...; for_each_set_bit() { ... } } while (status); would look slightly better for my opinion. -- With Best Regards, Andy Shevchenko