From patchwork Sat Jun 8 20:48:04 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Petr Cvek X-Patchwork-Id: 1112540 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=lists.openwrt.org (client-ip=2607:7c80:54:e::133; helo=bombadil.infradead.org; envelope-from=openwrt-devel-bounces+incoming=patchwork.ozlabs.org@lists.openwrt.org; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="PoQXn7YX"; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="LDyQTtv5"; dkim-atps=neutral Received: from bombadil.infradead.org (bombadil.infradead.org [IPv6:2607:7c80:54:e::133]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 45Ls270yzBz9sND for ; Sun, 9 Jun 2019 06:49:02 +1000 (AEST) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:Subject:MIME-Version:References: In-Reply-To:Message-Id:Date:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=q4h5F/blmxNVJE7PpfuW+LmluwNgucgnV2/Pk0+Fu/w=; b=PoQXn7YXSa7fBA a68EsGUZfAIkeyih6Y5HAsNyDmQxMTzmEFs1dqxDPQuyS/sBxAYAvqle5K+iLTjr5OyfYJf+h0GaX B0YXRzy5scFltZs+bO2rM4XuMvRHdv1HQazw//nZso9UgxxHTBOkEWBioOB+5nlA5Op50ZNkYXVQD sfB0uwnHYRhBTbEizbIwUZ7i9jPMV491xJIUho+XjQegJ7UzqTp8FAjl/IJDFJyoJBUUXCv6DwGn9 pdmgP2BpJVBYk2jbhXGA6DiaU2qzOopwQZygcgzYbwNRKsenqgB14VjfmZI0a0pGsZCQBH+nfgnw+ HAzRrwyG64DvktR20rIQ==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.92 #3 (Red Hat Linux)) id 1hZiGg-0003pN-01; Sat, 08 Jun 2019 20:48:50 +0000 Received: from mail-wm1-x341.google.com ([2a00:1450:4864:20::341]) by bombadil.infradead.org with esmtps (Exim 4.92 #3 (Red Hat Linux)) id 1hZiGX-0003eX-SY for openwrt-devel@lists.openwrt.org; Sat, 08 Jun 2019 20:48:44 +0000 Received: by mail-wm1-x341.google.com with SMTP id c66so5110167wmf.0 for ; Sat, 08 Jun 2019 13:48:40 -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=UtD9LqGAYakgNOjMfkfswsTmJIWlE3YoJFMFCxDn+fg=; b=LDyQTtv5EX1Jn09YLEnjGaoibpxNYmVNs/c6Or9AmgA5psWHn25QarpfOu70U057TW /WmeEQbB34fTdxXVibQuU7mNbx6W8bFpf7GmXRBr3LwCeLkwvcPULSgYQVg7M6h9vaZ7 upk0Y/8WPgi3TCRwZ/H/qAacNisisuIc+QWr1Bc5wUU7WqWMdoPiuch3g0MpUH/zYPF1 FmwOGrug8CMSrn1PLZiFq5WzofHAlMdD9JBrO9Qu/Q5UiE4mZZjS6oNl/RSV2CUBJGG6 LiG3oBQfnPoM642DFemNgBaTDkHUrFOv2mFmeLg294GU8N+4eexVk2lgUEFdOxhHbUrl sTMQ== 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=UtD9LqGAYakgNOjMfkfswsTmJIWlE3YoJFMFCxDn+fg=; b=jOBVHIoKgiia9ZkrgtV4uPOzNyZYD14orJEet1q3cqwg3vUKdkqt/orxkekz255zg+ Q9Ig1iU7mEkNPvcDXsDcYnK67exKsdCA7r95mLxtXGoL1O8UqN2ti2O4LAkxnhER7Nwd KShwB+aGeQaYUwXxMPmr1bVSAcoJqJ9Zk8zDShz8yhA9OIQzBUcKQuNbUWTAL3KM/nTe mR/qozyLcGDT1eBE7v2czb2XlJrMtEJ6T1FhkmbaVAHdNVk6smC/IeTpFs4Vgi/0ALD/ CGvAg9NdJmuqn8FXmctbTkxRT39YFKsh6Cw/P+rqHCrgy5c0vcRko7ZL3UfIT8Ulu/BI Aydw== X-Gm-Message-State: APjAAAVhRpr7YFL7gfCm0HoFpDUwCkWlsa5jjeI9Ii6rgTNBmQbPW2Nz +t2FAXBzzDG9gi+GI2uhsU0= X-Google-Smtp-Source: APXvYqxA4kIf6JyrcOnsgnkTGYhGsoMyGre6NzWlKmmX+BmpB1xJ+k/RiPFrNwwsEkKRMXiCtCJ6Mw== X-Received: by 2002:a1c:c8:: with SMTP id 191mr8109727wma.6.1560026919473; Sat, 08 Jun 2019 13:48:39 -0700 (PDT) Received: from kontron.lan (2001-1ae9-0ff1-f191-359a-8d64-e90a-f663.ip6.tmcz.cz. [2001:1ae9:ff1:f191:359a:8d64:e90a:f663]) by smtp.gmail.com with ESMTPSA id f204sm4986394wme.18.2019.06.08.13.48.38 (version=TLS1_3 cipher=AEAD-AES256-GCM-SHA384 bits=256/256); Sat, 08 Jun 2019 13:48:39 -0700 (PDT) From: petrcvekcz@gmail.com X-Google-Original-From: petrcvekcz.gmail.com To: hauke@hauke-m.de, john@phrozen.org Date: Sat, 8 Jun 2019 22:48:04 +0200 Message-Id: X-Mailer: git-send-email 2.21.0 In-Reply-To: References: MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20190608_134841_962227_F4CCC257 X-CRM114-Status: UNSURE ( 9.62 ) X-CRM114-Notice: Please train this message. X-Spam-Score: -0.2 (/) X-Spam-Report: SpamAssassin version 3.4.2 on bombadil.infradead.org summary: Content analysis details: (-0.2 points) pts rule name description ---- ---------------------- -------------------------------------------------- -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no trust [2a00:1450:4864:20:0:0:0:341 listed in] [list.dnswl.org] 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (petrcvekcz[at]gmail.com) 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record -0.0 SPF_PASS SPF: sender matches SPF record -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from author's domain 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily valid -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from envelope-from domain -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature Subject: [OpenWrt-Devel] [PATCH v1 1/7] MIPS: lantiq: Move macro directly to iomem function X-BeenThere: openwrt-devel@lists.openwrt.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: pakahmar@hotmail.com, openwrt-devel@lists.openwrt.org, Petr Cvek , linux-mips@vger.kernel.org Sender: "openwrt-devel" Errors-To: openwrt-devel-bounces+incoming=patchwork.ozlabs.org@lists.openwrt.org From: Petr Cvek Using the variable as a temporary holder for the macro of the register offset value is not necessary. Move it directly to the IOMEM read/write call. Signed-off-by: Petr Cvek --- arch/mips/lantiq/irq.c | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) diff --git a/arch/mips/lantiq/irq.c b/arch/mips/lantiq/irq.c index 6549499eb202..fb3e1cc2cf6b 100644 --- a/arch/mips/lantiq/irq.c +++ b/arch/mips/lantiq/irq.c @@ -77,44 +77,42 @@ int ltq_eiu_get_irq(int exin) void ltq_disable_irq(struct irq_data *d) { - u32 ier = LTQ_ICU_IM0_IER; int offset = d->hwirq - MIPS_CPU_IRQ_CASCADE; int im = offset / INT_NUM_IM_OFFSET; offset %= INT_NUM_IM_OFFSET; - ltq_icu_w32(im, ltq_icu_r32(im, ier) & ~BIT(offset), ier); + ltq_icu_w32(im, ltq_icu_r32(im, LTQ_ICU_IM0_IER) & ~BIT(offset), + LTQ_ICU_IM0_IER); } void ltq_mask_and_ack_irq(struct irq_data *d) { - u32 ier = LTQ_ICU_IM0_IER; - u32 isr = LTQ_ICU_IM0_ISR; int offset = d->hwirq - MIPS_CPU_IRQ_CASCADE; int im = offset / INT_NUM_IM_OFFSET; offset %= INT_NUM_IM_OFFSET; - ltq_icu_w32(im, ltq_icu_r32(im, ier) & ~BIT(offset), ier); - ltq_icu_w32(im, BIT(offset), isr); + ltq_icu_w32(im, ltq_icu_r32(im, LTQ_ICU_IM0_IER) & ~BIT(offset), + LTQ_ICU_IM0_IER); + ltq_icu_w32(im, BIT(offset), LTQ_ICU_IM0_ISR); } static void ltq_ack_irq(struct irq_data *d) { - u32 isr = LTQ_ICU_IM0_ISR; int offset = d->hwirq - MIPS_CPU_IRQ_CASCADE; int im = offset / INT_NUM_IM_OFFSET; offset %= INT_NUM_IM_OFFSET; - ltq_icu_w32(im, BIT(offset), isr); + ltq_icu_w32(im, BIT(offset), LTQ_ICU_IM0_ISR); } void ltq_enable_irq(struct irq_data *d) { - u32 ier = LTQ_ICU_IM0_IER; int offset = d->hwirq - MIPS_CPU_IRQ_CASCADE; int im = offset / INT_NUM_IM_OFFSET; offset %= INT_NUM_IM_OFFSET; - ltq_icu_w32(im, ltq_icu_r32(im, ier) | BIT(offset), ier); + ltq_icu_w32(im, ltq_icu_r32(im, LTQ_ICU_IM0_IER) | BIT(offset), + LTQ_ICU_IM0_IER); } static int ltq_eiu_settype(struct irq_data *d, unsigned int type) From patchwork Sat Jun 8 20:48:05 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Petr Cvek X-Patchwork-Id: 1112541 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=lists.openwrt.org (client-ip=2607:7c80:54:e::133; helo=bombadil.infradead.org; envelope-from=openwrt-devel-bounces+incoming=patchwork.ozlabs.org@lists.openwrt.org; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="QjHPnaYO"; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="c8TvX61V"; dkim-atps=neutral Received: from bombadil.infradead.org (bombadil.infradead.org [IPv6:2607:7c80:54:e::133]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 45Ls2F1LH4z9s4Y for ; Sun, 9 Jun 2019 06:49:09 +1000 (AEST) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:Subject:MIME-Version:References: In-Reply-To:Message-Id:Date:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=6q083ImEQoSRHL/cHWzBoJiIcLJfpNbe5U6tFvafj5g=; b=QjHPnaYO1eNFbh GFkQpeSJLXxdfcZmmONooylP/NKX/J0+OasTp8S/QKZDpCJeKdKpOpEdSbHkLuLJF02Khw2EbecRx q9yxsD6fxaEobD35rd+N1abYq2BIjJEwi9JjJU2ipp27PUMPyLyfsly9dP4knnYKCha/C7W9BpjfA YSD1Oq064X2LCFCZoIVYcmyBnF5S2N/oeKo4Ein6OY4QtUzuH0otyobv0m9N/6tiRs7EVzAA4Mpec LCbNUt0H8Psx1c/EMmxNZ522/aeStVB6OrrSzI9npabL2GXFPJLpYawafFLh/tH8xVw7a6MsV2Ug0 Z4dDCIzTrfWwDB13qWhA==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.92 #3 (Red Hat Linux)) id 1hZiGr-00046U-On; Sat, 08 Jun 2019 20:49:01 +0000 Received: from mail-wr1-x441.google.com ([2a00:1450:4864:20::441]) by bombadil.infradead.org with esmtps (Exim 4.92 #3 (Red Hat Linux)) id 1hZiGb-0003hs-79 for openwrt-devel@lists.openwrt.org; Sat, 08 Jun 2019 20:48:46 +0000 Received: by mail-wr1-x441.google.com with SMTP id f9so5394962wre.12 for ; Sat, 08 Jun 2019 13:48:44 -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=aoxEMTXRyZdBW4b695q86IBvL71gam3jAF4D6e1oWYk=; b=c8TvX61Vizh4NM6ZoXVmRU9s6nI/2g6nO3vb76K/l03Tl5OrExY3ge8z9uQb9VOWw7 wcUWMNQT3uxtUcsEuB22tce14SCwZuSh01sT6ZMjAaHmY5fFx/qbgTIAW3UgS+TF/gra 7RHdqwqNxaJOFtOuFh7CrZayFR576YfbsDE9jEEzX5GVSf8+JyoKy2MKD71TQ+kdLecW PjFZ7WXu8wwjafUBprUUaMC8gH2XwrnX8MOszR1Yv+6l1Pqj5wtHVEO6gwwfCk8/2x2Q vw7hbJNFO2mMEzq0OO24bAz3yr8CoGRlgAiuqc+GezYXq4F6mSziqI5ld407IRR4asPy ENhw== 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=aoxEMTXRyZdBW4b695q86IBvL71gam3jAF4D6e1oWYk=; b=qNL9A/ESHHsfitzI27jy/xwmFCdiHp1HRJpUDL2htsYCb9k6nUtoktx4v/QWGxWhqw HUGSGW8V1pUJt83t2TsYsHRMgiJz6kWoENFEjLZKMZu5wq155ape3S70gMk83+fi94tg t/ZsGaXbMqbHQ9vbZjGkxRbRMfIsnkrw0Nj7lQEn4nIGvpTLYoOg+iDFMzuyY9j2OF+m T3yu8ijfkbJyd6PS3ucvcwAbp49OKFjIpm91PNRhSSaQvgVIknCn1Y1MYSSQMiwtGMay 8cr7Ys0iSlsRY1eRJdXS3+OArL2+hlbOx0RuMmoflQEbqWmr6phQZ0sgJ9UNI7B/0xAq P+Cw== X-Gm-Message-State: APjAAAW1qCGIn3FEO5B6sCm6chGRTnFXYYhfS3mX/QKKeanbB279qgcX OpS43NOpkBabzpEArmet5hFKnYRw X-Google-Smtp-Source: APXvYqxxtwgU7Ux7lKkMb2sAx8m9aremOqEvUTaNznM7Ug0pFPHWdrojJhYW4xVECXdNva+oh6dB+g== X-Received: by 2002:a5d:424f:: with SMTP id s15mr10316924wrr.37.1560026923189; Sat, 08 Jun 2019 13:48:43 -0700 (PDT) Received: from kontron.lan (2001-1ae9-0ff1-f191-359a-8d64-e90a-f663.ip6.tmcz.cz. [2001:1ae9:ff1:f191:359a:8d64:e90a:f663]) by smtp.gmail.com with ESMTPSA id f204sm4986394wme.18.2019.06.08.13.48.42 (version=TLS1_3 cipher=AEAD-AES256-GCM-SHA384 bits=256/256); Sat, 08 Jun 2019 13:48:42 -0700 (PDT) From: petrcvekcz@gmail.com X-Google-Original-From: petrcvekcz.gmail.com To: hauke@hauke-m.de, john@phrozen.org Date: Sat, 8 Jun 2019 22:48:05 +0200 Message-Id: <799e71c36228ff077087e2b4545a5e5275e53729.1560024463.git.petrcvekcz@gmail.com> X-Mailer: git-send-email 2.21.0 In-Reply-To: References: MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20190608_134845_265001_15DC59F8 X-CRM114-Status: GOOD ( 11.27 ) X-Spam-Score: -0.2 (/) X-Spam-Report: SpamAssassin version 3.4.2 on bombadil.infradead.org summary: Content analysis details: (-0.2 points) pts rule name description ---- ---------------------- -------------------------------------------------- -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no trust [2a00:1450:4864:20:0:0:0:441 listed in] [list.dnswl.org] 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (petrcvekcz[at]gmail.com) 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record -0.0 SPF_PASS SPF: sender matches SPF record -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from author's domain 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily valid -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from envelope-from domain -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature Subject: [OpenWrt-Devel] [PATCH v1 2/7] MIPS: lantiq: Change variables to the same type as the source X-BeenThere: openwrt-devel@lists.openwrt.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: pakahmar@hotmail.com, openwrt-devel@lists.openwrt.org, Petr Cvek , linux-mips@vger.kernel.org Sender: "openwrt-devel" Errors-To: openwrt-devel-bounces+incoming=patchwork.ozlabs.org@lists.openwrt.org From: Petr Cvek A structure irq_data, irq_desc_get_irq() and irq_linear_revmap() use a different type than defined in the lantiq ICU driver, which is using signed integers. The substracted result should never be negative nor is tested for that situation. Change it to unsigned. Signed-off-by: Petr Cvek --- arch/mips/lantiq/irq.c | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/arch/mips/lantiq/irq.c b/arch/mips/lantiq/irq.c index fb3e1cc2cf6b..ef946eb41439 100644 --- a/arch/mips/lantiq/irq.c +++ b/arch/mips/lantiq/irq.c @@ -77,8 +77,8 @@ int ltq_eiu_get_irq(int exin) void ltq_disable_irq(struct irq_data *d) { - int offset = d->hwirq - MIPS_CPU_IRQ_CASCADE; - int im = offset / INT_NUM_IM_OFFSET; + unsigned long offset = d->hwirq - MIPS_CPU_IRQ_CASCADE; + unsigned long im = offset / INT_NUM_IM_OFFSET; offset %= INT_NUM_IM_OFFSET; ltq_icu_w32(im, ltq_icu_r32(im, LTQ_ICU_IM0_IER) & ~BIT(offset), @@ -87,8 +87,8 @@ void ltq_disable_irq(struct irq_data *d) void ltq_mask_and_ack_irq(struct irq_data *d) { - int offset = d->hwirq - MIPS_CPU_IRQ_CASCADE; - int im = offset / INT_NUM_IM_OFFSET; + unsigned long offset = d->hwirq - MIPS_CPU_IRQ_CASCADE; + unsigned long im = offset / INT_NUM_IM_OFFSET; offset %= INT_NUM_IM_OFFSET; ltq_icu_w32(im, ltq_icu_r32(im, LTQ_ICU_IM0_IER) & ~BIT(offset), @@ -98,8 +98,8 @@ void ltq_mask_and_ack_irq(struct irq_data *d) static void ltq_ack_irq(struct irq_data *d) { - int offset = d->hwirq - MIPS_CPU_IRQ_CASCADE; - int im = offset / INT_NUM_IM_OFFSET; + unsigned long offset = d->hwirq - MIPS_CPU_IRQ_CASCADE; + unsigned long im = offset / INT_NUM_IM_OFFSET; offset %= INT_NUM_IM_OFFSET; ltq_icu_w32(im, BIT(offset), LTQ_ICU_IM0_ISR); @@ -107,8 +107,8 @@ static void ltq_ack_irq(struct irq_data *d) void ltq_enable_irq(struct irq_data *d) { - int offset = d->hwirq - MIPS_CPU_IRQ_CASCADE; - int im = offset / INT_NUM_IM_OFFSET; + unsigned long offset = d->hwirq - MIPS_CPU_IRQ_CASCADE; + unsigned long im = offset / INT_NUM_IM_OFFSET; offset %= INT_NUM_IM_OFFSET; ltq_icu_w32(im, ltq_icu_r32(im, LTQ_ICU_IM0_IER) | BIT(offset), @@ -224,9 +224,9 @@ static struct irq_chip ltq_eiu_type = { static void ltq_hw_irq_handler(struct irq_desc *desc) { - int module = irq_desc_get_irq(desc) - 2; + unsigned int module = irq_desc_get_irq(desc) - 2; u32 irq; - int hwirq; + irq_hw_number_t hwirq; irq = ltq_icu_r32(module, LTQ_ICU_IM0_IOSR); if (irq == 0) From patchwork Sat Jun 8 20:48:06 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Petr Cvek X-Patchwork-Id: 1112542 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=lists.openwrt.org (client-ip=2607:7c80:54:e::133; helo=bombadil.infradead.org; envelope-from=openwrt-devel-bounces+incoming=patchwork.ozlabs.org@lists.openwrt.org; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="P+5Hlmqv"; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="KDDpbTwu"; dkim-atps=neutral Received: from bombadil.infradead.org (bombadil.infradead.org [IPv6:2607:7c80:54:e::133]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 45Ls2T6PBVz9s4Y for ; Sun, 9 Jun 2019 06:49:21 +1000 (AEST) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:Subject:MIME-Version:References: In-Reply-To:Message-Id:Date:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=uqgdXxl/99qssCB+C5ldCYDzLQLxBWgxMXbX8z+GhtQ=; b=P+5Hlmqvp2Vc5p QRrspg0vGaEiFngLQA72E8ONTtMJRfHBHfWNFXO6D1+zqP/w32O4movGIDfAPSrDHUqXKaQXRr7Se xNV1hjeB2P9wBffv7dNdhzFuuFKQxrS1ZSSV4lrJv6HGVGpeKYzdX1/XuFsBOZwEj4HqDT0IPCB7B 58kWu6XU4Bf3NwaEuS76vTv2vWnS/OJroqdVONP+elMsxc2bOBBqPpG2iCE3iaO+QMHjUs6EyApIh tnh8h7dKjYFE1pj+PmWrIj7ICKT4nooU9PMjU5hQLLx7ut2JOgMhqhPHakYc97dC7phO0aFKOHnsU Jc3dAFUvqbY/ysT177XQ==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.92 #3 (Red Hat Linux)) id 1hZiH1-0004Md-9f; Sat, 08 Jun 2019 20:49:11 +0000 Received: from mail-wm1-x341.google.com ([2a00:1450:4864:20::341]) by bombadil.infradead.org with esmtps (Exim 4.92 #3 (Red Hat Linux)) id 1hZiGc-0003kj-GW for openwrt-devel@lists.openwrt.org; Sat, 08 Jun 2019 20:48:47 +0000 Received: by mail-wm1-x341.google.com with SMTP id 22so4844613wmg.2 for ; Sat, 08 Jun 2019 13:48:46 -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=K6XyYBpZYTZIhNAqwvma6CPAxW9A+FG7+THYnS1wA+I=; b=KDDpbTwuwRIEEP8A988qq8gPEsMT3oakGgINblELgjNVwDsBCIsI84f69v/G9/Hmso i6ZaCJvfgqP0F2qVWdaMuu93L+dFTMkrSfSv2bCaVCPlKa5ou4c3UjvjzinTtSQ2vp/I U26JJrjLBP/61HRaZ0mENcpBbHhuHu2tFPijaeyx4TjzJsCdNFgfkNcrGjnFqL6o2M8V rn8MRDh6lVBMWszxOZav845SkST2m1jtqi2TEw7938tBeRblno1F3cmv0LNO/NOnJoBd /NqX8QHuNkBBzH5ZMZxo333Eswj1AC0OnaXm2Dp/lHSaPlsJ3bVt1kFGxx2EqE4A3pY5 9bgQ== 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=K6XyYBpZYTZIhNAqwvma6CPAxW9A+FG7+THYnS1wA+I=; b=TtRGGisGhd7dmZizrjKS6+zCRW8u9Z20Ky+HNwNLLlWS0LSq0tnhyarXqQlkULskhg jF+EMiUclPG2n0ryJjBbRK064PUzBUGJzh4wdCj5f+zpoXQpSXnLOZEHeQgWKbPnNrXA iLPdgL/d+r4IHSPfLFTsyMGM02S7iZ7wkii0eV1mItT8m7u/rQ0MVXgDJNZlBxZtWazZ /tCrL5AOX/YR8AejzI5XmvH8CwDgrCNk+Oya7KHfwQjs3P9ZvgBt3qNx1INfqyLcshCP DJZd4xrUacbPwsrtaRw+924XzW6Eklp9PJ0ov5B0vxQJ9+Dyx4tevbeKTpwu5o0/lfUZ +kEA== X-Gm-Message-State: APjAAAUNl1YDPVB4yStbuqzEwTHNlVpQUiABFhi9QzWk4UeoeP04havb ngZWZ3NEuFTTfnWbOv3yO+w= X-Google-Smtp-Source: APXvYqziyeGiwwN9mxUOB8c3wzr31hYnkEsgES+NJIIOaQXyyThiJZ4wdX0FRah1BBA5LUUd1jL4Dg== X-Received: by 2002:a05:600c:2507:: with SMTP id d7mr7784045wma.2.1560026925293; Sat, 08 Jun 2019 13:48:45 -0700 (PDT) Received: from kontron.lan (2001-1ae9-0ff1-f191-359a-8d64-e90a-f663.ip6.tmcz.cz. [2001:1ae9:ff1:f191:359a:8d64:e90a:f663]) by smtp.gmail.com with ESMTPSA id f204sm4986394wme.18.2019.06.08.13.48.44 (version=TLS1_3 cipher=AEAD-AES256-GCM-SHA384 bits=256/256); Sat, 08 Jun 2019 13:48:44 -0700 (PDT) From: petrcvekcz@gmail.com X-Google-Original-From: petrcvekcz.gmail.com To: hauke@hauke-m.de, john@phrozen.org Date: Sat, 8 Jun 2019 22:48:06 +0200 Message-Id: X-Mailer: git-send-email 2.21.0 In-Reply-To: References: MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20190608_134846_606184_BED60BDE X-CRM114-Status: UNSURE ( 9.69 ) X-CRM114-Notice: Please train this message. X-Spam-Score: -0.2 (/) X-Spam-Report: SpamAssassin version 3.4.2 on bombadil.infradead.org summary: Content analysis details: (-0.2 points) pts rule name description ---- ---------------------- -------------------------------------------------- -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no trust [2a00:1450:4864:20:0:0:0:341 listed in] [list.dnswl.org] 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (petrcvekcz[at]gmail.com) 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record -0.0 SPF_PASS SPF: sender matches SPF record -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from author's domain 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily valid -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from envelope-from domain -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature Subject: [OpenWrt-Devel] [PATCH v1 3/7] MIPS: lantiq: Fix attributes of of_device_id structure X-BeenThere: openwrt-devel@lists.openwrt.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: pakahmar@hotmail.com, openwrt-devel@lists.openwrt.org, Petr Cvek , linux-mips@vger.kernel.org Sender: "openwrt-devel" Errors-To: openwrt-devel-bounces+incoming=patchwork.ozlabs.org@lists.openwrt.org From: Petr Cvek According to the checkpatch the driver structure of_device_id requires to be const and with attribute __initconst. Change it accordingly. Signed-off-by: Petr Cvek --- arch/mips/lantiq/irq.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/mips/lantiq/irq.c b/arch/mips/lantiq/irq.c index ef946eb41439..2df5d37d0a7b 100644 --- a/arch/mips/lantiq/irq.c +++ b/arch/mips/lantiq/irq.c @@ -347,7 +347,7 @@ unsigned int get_c0_compare_int(void) return CP0_LEGACY_COMPARE_IRQ; } -static struct of_device_id __initdata of_irq_ids[] = { +static const struct of_device_id of_irq_ids[] __initconst = { { .compatible = "lantiq,icu", .data = icu_of_init }, {}, }; From patchwork Sat Jun 8 20:48:07 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Petr Cvek X-Patchwork-Id: 1112543 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=lists.openwrt.org (client-ip=2607:7c80:54:e::133; helo=bombadil.infradead.org; envelope-from=openwrt-devel-bounces+incoming=patchwork.ozlabs.org@lists.openwrt.org; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="CtJjMVQC"; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="hNfcyjqh"; dkim-atps=neutral Received: from bombadil.infradead.org (bombadil.infradead.org [IPv6:2607:7c80:54:e::133]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 45Ls2n3qx0z9s4Y for ; Sun, 9 Jun 2019 06:49:37 +1000 (AEST) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:Subject:MIME-Version:References: In-Reply-To:Message-Id:Date:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=zLIgJCgFwqz2/zPOdXYtGlj5w3rxi/IetjIUZK9hrHo=; b=CtJjMVQC/cqa1n cGDNlq/4SiHGLnfoTKlHCOuQnXrCKqVyobn9yZfvQIS5zsEVQtmBEezWowlj0buIylEj3lreSeXpO dgQe7pWrEcqfFJkCYbrjkHEvxcX7Ie+WGVhqFY9mme+UQQ0/VjJg5FgUDq3jEUvCzOyx9XwjBUS4V kk7WpRdlvGU6IUv3vcDYMbGq/Xi0ujj48zkoEn2WFsHdLuREifSkNjd9SosuCU3YnTEwRa1H+zZVa 5cjVmY06bpdPgVOwcgSzoJT9IAwK/51sHWA67eemCap930Ky8xOtGPdK08nxnE14xUQ3CSSBsBkGo WM05VEdCNsaa5STl/7Lg==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.92 #3 (Red Hat Linux)) id 1hZiHG-0004jj-Mx; Sat, 08 Jun 2019 20:49:26 +0000 Received: from mail-wr1-x441.google.com ([2a00:1450:4864:20::441]) by bombadil.infradead.org with esmtps (Exim 4.92 #3 (Red Hat Linux)) id 1hZiGf-0003oK-Ix for openwrt-devel@lists.openwrt.org; Sat, 08 Jun 2019 20:48:50 +0000 Received: by mail-wr1-x441.google.com with SMTP id d18so5416584wrs.5 for ; Sat, 08 Jun 2019 13:48:49 -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=acjgtnfZM5+ljClU7KhpnoMYZUUlOHiWM5nNWs1Eo98=; b=hNfcyjqhuvXJAtaFSSotaRfOcxQ1ZnU9e1QriFcxjibGRhteg9Ucr9TtUqdmKmJX3P S2jW21TiOwDeMcNUxt3BWv/uj6t+NzlUfjSzbjMRr1317ye6mBEyvIMxLXYC4j6CSM01 4LGHE06ttI7Wu+mCdmn7QJR+Vj6/M+tlu8FL9qogBYUBwDKXEZsKRanh1mtPFiuCO7FN QCTMKakHQWIzn5OeVEcpiMDCXgt/Gr9Scbka9erWngAdZHzVs0fyuY5+w07MAckUfBzc nywWVENiEslnTrsBEIxE/PmQM8lQyrFT4yIfbdlKusAJxyTnlPbmzeWknLQ3jwvUEdEL OCwQ== 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=acjgtnfZM5+ljClU7KhpnoMYZUUlOHiWM5nNWs1Eo98=; b=M+ul/BBJaQlsT/tKeI9Pmj1GndZNq/7wENFnUcAHHA/rnN4y+DKDSNhdOy25myLHvD QmFXC9W+e5SE2uV4g0EJTdZDmBhstJKIobY5TcZMfGBLRz81eqtWr4l8LlhsoWRxZ8G7 Zh9Q0fOqRnUidF2rP6O9vVoMtA7AVUpv7fxnKsWN0MK8DNewA7X+Mi14evwqNAY4Wi7/ wnktOpse57NdlS2m30cuQS5lBpSr4A7CSfNIGTq7jtXu2MLPHpOZryppOgwAsC+pWI0V Bnvl3oQBMqSyko/wJ4M4Z8VoEFBmp1+mO3ibEEJoliar0Ry19oEBqrTS6eXn/cC6dDAk ZXdQ== X-Gm-Message-State: APjAAAUOUPTCQwHTBawuBpI46dur+wj9bulu5exfOllLAfqH23TT41lc yzabq4wChwq8Mx3BZTAkoYQ= X-Google-Smtp-Source: APXvYqzcB1B6B8BjfG4zuebkHlw6A/0J7EtIAvsIyA0gCg26GTnBSXxxa7/TM7FMVVg5P1sFeQveUQ== X-Received: by 2002:adf:b447:: with SMTP id v7mr3710307wrd.208.1560026928461; Sat, 08 Jun 2019 13:48:48 -0700 (PDT) Received: from kontron.lan (2001-1ae9-0ff1-f191-359a-8d64-e90a-f663.ip6.tmcz.cz. [2001:1ae9:ff1:f191:359a:8d64:e90a:f663]) by smtp.gmail.com with ESMTPSA id f204sm4986394wme.18.2019.06.08.13.48.47 (version=TLS1_3 cipher=AEAD-AES256-GCM-SHA384 bits=256/256); Sat, 08 Jun 2019 13:48:48 -0700 (PDT) From: petrcvekcz@gmail.com X-Google-Original-From: petrcvekcz.gmail.com To: hauke@hauke-m.de, john@phrozen.org Date: Sat, 8 Jun 2019 22:48:07 +0200 Message-Id: <1ebc11c9588ddf0afcec336b35b50751fe1e89f8.1560024463.git.petrcvekcz@gmail.com> X-Mailer: git-send-email 2.21.0 In-Reply-To: References: MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20190608_134849_658614_92BEA973 X-CRM114-Status: UNSURE ( 7.00 ) X-CRM114-Notice: Please train this message. X-Spam-Score: -0.2 (/) X-Spam-Report: SpamAssassin version 3.4.2 on bombadil.infradead.org summary: Content analysis details: (-0.2 points) pts rule name description ---- ---------------------- -------------------------------------------------- -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no trust [2a00:1450:4864:20:0:0:0:441 listed in] [list.dnswl.org] 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (petrcvekcz[at]gmail.com) 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record -0.0 SPF_PASS SPF: sender matches SPF record -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from author's domain 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily valid -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from envelope-from domain -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature Subject: [OpenWrt-Devel] [PATCH v1 4/7] MIPS: lantiq: Remove unused macros X-BeenThere: openwrt-devel@lists.openwrt.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: pakahmar@hotmail.com, openwrt-devel@lists.openwrt.org, Petr Cvek , linux-mips@vger.kernel.org Sender: "openwrt-devel" Errors-To: openwrt-devel-bounces+incoming=patchwork.ozlabs.org@lists.openwrt.org From: Petr Cvek The last use of both macros was in 4.11. Signed-off-by: Petr Cvek --- arch/mips/lantiq/irq.c | 4 ---- 1 file changed, 4 deletions(-) diff --git a/arch/mips/lantiq/irq.c b/arch/mips/lantiq/irq.c index 2df5d37d0a7b..21ccd580f8f5 100644 --- a/arch/mips/lantiq/irq.c +++ b/arch/mips/lantiq/irq.c @@ -54,10 +54,6 @@ #define ltq_eiu_w32(x, y) ltq_w32((x), ltq_eiu_membase + (y)) #define ltq_eiu_r32(x) ltq_r32(ltq_eiu_membase + (x)) -/* our 2 ipi interrupts for VSMP */ -#define MIPS_CPU_IPI_RESCHED_IRQ 0 -#define MIPS_CPU_IPI_CALL_IRQ 1 - /* we have a cascade of 8 irqs */ #define MIPS_CPU_IRQ_CASCADE 8 From patchwork Sat Jun 8 20:48:08 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Petr Cvek X-Patchwork-Id: 1112544 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=lists.openwrt.org (client-ip=2607:7c80:54:e::133; helo=bombadil.infradead.org; envelope-from=openwrt-devel-bounces+incoming=patchwork.ozlabs.org@lists.openwrt.org; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="WFSBBOly"; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="FckPL98Z"; dkim-atps=neutral Received: from bombadil.infradead.org (bombadil.infradead.org [IPv6:2607:7c80:54:e::133]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 45Ls2z4351z9sND for ; Sun, 9 Jun 2019 06:49:47 +1000 (AEST) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:Subject:MIME-Version:References: In-Reply-To:Message-Id:Date:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=qmCT+nJjjSiqF6EJJV4PENmC63tImO/3M6eXYsOEUxA=; b=WFSBBOly/ZMHRi /mKjfOLdqfk0AttIl2/HWj4n0X2VNbEmFI0wXNzZUjGvedeyGNHupW5zfy8JgpQvqIudsSynA6xTw uo9hi7mV/MX5eFnVJfonh0Ryyp+OWnHP6fJwzn5Kb0mlxQ/QSz03mlOLUZjn0nUtHcTH5EXfrSXvs Ym7+MnPGTTL+uZJlwe197s5GMh3URA3SNc/Ih/7yEpc4yLbDrJdCRAaJ8UEseC+FVXnJL2OcWPBS+ 4vga2r/HSurLlMjZ8PL2aaJfji8igWED5br7lkhjyzKHXgTF3Nzi2XZgvDxRTR1ShyM26vahSY6DV z5n70tSbma3RbePyiVQA==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.92 #3 (Red Hat Linux)) id 1hZiHR-0004zO-CU; Sat, 08 Jun 2019 20:49:37 +0000 Received: from mail-wr1-x442.google.com ([2a00:1450:4864:20::442]) by bombadil.infradead.org with esmtps (Exim 4.92 #3 (Red Hat Linux)) id 1hZiGi-0003rp-L7 for openwrt-devel@lists.openwrt.org; Sat, 08 Jun 2019 20:48:53 +0000 Received: by mail-wr1-x442.google.com with SMTP id v14so5411483wrr.4 for ; Sat, 08 Jun 2019 13:48:51 -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=Nds0LhX8tAhIs/UmD34qgTUz4OBaMwTfQsiXTSUrrtY=; b=FckPL98ZyAAlP2fwiYD5PrZvh+RJJ+ExMIDDKpihDG8xUqewTzo6zY1DoGYJQlzChp KvJrC/F+dgybfJVdqrqgkpJC5xjrlzf1hqE+uEqZuGPT2S9LRZv8M/lWxDEZ8kGv+IbV TX24I3pOic7Nhv8ErCJvo39ygYmRB/VkrzJxrGYeAR39lvf9aUzRsWXjZFlifoWCaGtA aK35GcJh5yqMQKf2WE4JbLv2BAp+nPeL55x60MkYyuWvhXi+twYG18zXPi84eRMOKUOa UyZx8vyqqyoMMGkTD6gf4Fym5o5UUfk0roSOUhWBqVfnwLDcgLH84msBXuq7YxRlz4xL B8wg== 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=Nds0LhX8tAhIs/UmD34qgTUz4OBaMwTfQsiXTSUrrtY=; b=tuIVDJeDFFN4KZhd7o1n91/S/a1L1Hp9UFLBmtsU4SiLuqxps3iANss/7Vsc1c24pZ tyo7iqD9d6cOdiem4DMia8Y+mZeFaGlG0Z7pZvdIZ0h4SMLFwkUpBHnQqlWTL2kFNLLH uwvAZ8JYjvxGeLG5/HSxVpEiQ5RXAmEn+/qClyjMPosapMXlQkjLn5TXmmLTo9Jrgpg8 q9STSnzuEmhztgnIlaMu8nHYME/I1hZK3jXNgwdAtzFajuL/uzdObGAfvA1TOxnK5y9/ oTFNy+eQjKpZKahGol2fP1AZE+QAB5swqdqYGkn43KkIWhvVw15aB2mY+0oOCU+1Xtk0 tcEg== X-Gm-Message-State: APjAAAX7lgTWSMhFiWzjlmM2FOrcD+GC84cRx+m1hxGB+GFMThsGzYsf 6PCmHyu/0mXSc8kB5hCs/tA= X-Google-Smtp-Source: APXvYqxyiqmModKRNJa2gzhqx+MmQaWTzNO58qfJV3yUsY08DwvAS+YcLp6B+FnDI4NsSoEnA58qKw== X-Received: by 2002:adf:ecca:: with SMTP id s10mr22013347wro.168.1560026930311; Sat, 08 Jun 2019 13:48:50 -0700 (PDT) Received: from kontron.lan (2001-1ae9-0ff1-f191-359a-8d64-e90a-f663.ip6.tmcz.cz. [2001:1ae9:ff1:f191:359a:8d64:e90a:f663]) by smtp.gmail.com with ESMTPSA id f204sm4986394wme.18.2019.06.08.13.48.49 (version=TLS1_3 cipher=AEAD-AES256-GCM-SHA384 bits=256/256); Sat, 08 Jun 2019 13:48:49 -0700 (PDT) From: petrcvekcz@gmail.com X-Google-Original-From: petrcvekcz.gmail.com To: hauke@hauke-m.de, john@phrozen.org Date: Sat, 8 Jun 2019 22:48:08 +0200 Message-Id: <478abd4c3d8073e6a20de2eedf22d982b79f2a4d.1560024463.git.petrcvekcz@gmail.com> X-Mailer: git-send-email 2.21.0 In-Reply-To: References: MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20190608_134852_726741_8312871B X-CRM114-Status: UNSURE ( 9.50 ) X-CRM114-Notice: Please train this message. X-Spam-Score: -0.2 (/) X-Spam-Report: SpamAssassin version 3.4.2 on bombadil.infradead.org summary: Content analysis details: (-0.2 points) pts rule name description ---- ---------------------- -------------------------------------------------- -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no trust [2a00:1450:4864:20:0:0:0:442 listed in] [list.dnswl.org] 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (petrcvekcz[at]gmail.com) 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record -0.0 SPF_PASS SPF: sender matches SPF record -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from author's domain 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily valid -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from envelope-from domain -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature Subject: [OpenWrt-Devel] [PATCH v1 5/7] MIPS: lantiq: Fix bitfield masking X-BeenThere: openwrt-devel@lists.openwrt.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: pakahmar@hotmail.com, openwrt-devel@lists.openwrt.org, Petr Cvek , linux-mips@vger.kernel.org Sender: "openwrt-devel" Errors-To: openwrt-devel-bounces+incoming=patchwork.ozlabs.org@lists.openwrt.org From: Petr Cvek The modification of EXIN register doesn't clean the bitfield before the writing of a new value. After a few modifications the bitfield would accumulate only '1's. Signed-off-by: Petr Cvek --- arch/mips/lantiq/irq.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/arch/mips/lantiq/irq.c b/arch/mips/lantiq/irq.c index 21ccd580f8f5..35d7c5f6d159 100644 --- a/arch/mips/lantiq/irq.c +++ b/arch/mips/lantiq/irq.c @@ -150,8 +150,9 @@ static int ltq_eiu_settype(struct irq_data *d, unsigned int type) if (edge) irq_set_handler(d->hwirq, handle_edge_irq); - ltq_eiu_w32(ltq_eiu_r32(LTQ_EIU_EXIN_C) | - (val << (i * 4)), LTQ_EIU_EXIN_C); + ltq_eiu_w32((ltq_eiu_r32(LTQ_EIU_EXIN_C) & + (~(7 << (i * 4)))) | (val << (i * 4)), + LTQ_EIU_EXIN_C); } } From patchwork Sat Jun 8 20:48:09 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Petr Cvek X-Patchwork-Id: 1112545 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=lists.openwrt.org (client-ip=2607:7c80:54:e::133; helo=bombadil.infradead.org; envelope-from=openwrt-devel-bounces+incoming=patchwork.ozlabs.org@lists.openwrt.org; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="TB2ZbxNl"; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="b2sWoyvy"; dkim-atps=neutral Received: from bombadil.infradead.org (bombadil.infradead.org [IPv6:2607:7c80:54:e::133]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 45Ls371w9Qz9s4Y for ; Sun, 9 Jun 2019 06:49:55 +1000 (AEST) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:Subject:MIME-Version:References: In-Reply-To:Message-Id:Date:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=QBK6rLBbhpQJ3mKWFPDPBVXYTa1KKqROU3EIgU/kg0U=; b=TB2ZbxNlR5SnEO TUX/rT10afpJ+aPD/0b5sCFSzfB+n3tW40dV87qx4jCNIkRx8GYois9e9XGjoRtiGxz4bRqd/DIOX G3+QJ6Xwx2CIe9iu1rtYySCPYAtg4Eao4I0vZIZ/hkuS7bUY+X2+ot2V/dfQ3HrDFclKmjWKajMRl 1B4uQg/j2httxXdAtNyXgQcJMKPICxtN8nIoB9Y6S7tUz9qBMVAwpUG8HVzTnOEHZpteT1/dG4N/A o/4wpFKtiQj9vgcn7SlTGVGFPV4or/TnCj3Xi6AIb0BPHto/SKK5C7jbyueSp5+pSnJAmXcN6s29j alnIWsePDrgbDYOjHUag==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.92 #3 (Red Hat Linux)) id 1hZiHZ-0005EJ-Ts; Sat, 08 Jun 2019 20:49:45 +0000 Received: from mail-wr1-x442.google.com ([2a00:1450:4864:20::442]) by bombadil.infradead.org with esmtps (Exim 4.92 #3 (Red Hat Linux)) id 1hZiGj-0003uy-Lm for openwrt-devel@lists.openwrt.org; Sat, 08 Jun 2019 20:48:55 +0000 Received: by mail-wr1-x442.google.com with SMTP id n9so5453095wru.0 for ; Sat, 08 Jun 2019 13:48:53 -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=NDkhvgtD/o0cYL0eRaqTRxOMPTqLlZ8l9oete6cnkdg=; b=b2sWoyvyFLmxT+oY88f/Ny6QzzIZROW+5Dum6y6X09IhNYT1UCGdaeKVWbXOP3Ictk GTdSNc0olhc/TPrc70GdlcH2HBJXi/TW3kNfHU4JpHBpX8qliroBFb3Hl+Cj+5B+trH7 pXeQ5PxfozheKWnYSa5jWVgDaaMmmXk3qSEfdCNE8USw1BtFoGHSCEfAnF4Tlwei7AzO u5hH5GzHSJIpJGexKvTMWkivrhuZF2l6df0N+NvnTA24O/I2f/T8kijcnMvkHPf0Xlw9 IafA6VDydYvrBYBx7SOf5Xf93IhPctIrl7SEH121rs7Cb3dSGmvBcX6ZbrR6TXLXgvsi H7yA== 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=NDkhvgtD/o0cYL0eRaqTRxOMPTqLlZ8l9oete6cnkdg=; b=WgOUOSwkejdDRaKU2efF80C4cLXlfIw734B27vIdcgZb/YOWSEQVm6UWwrLlSPJcmd +ayvjtpTbJA/GFs5JCA7GaWVvJc154vXSwLRViYY5J4Rru0S7auqG21oM/yPNor/wjHv Wew/OxnJED0gc+9LP7pbXjYGj+8l54ZUxmXVRjzeShotVRhjE6ItT+HDhtssLXxOjCaS UljE7qIOv6KpgyIqGKxsWJITj6HIvz0jRj1X3jxNmMVlPM6xE/WLmmTDmOxcB6Jt3ABv xtgqG0LGsD03COvS68FzD9PL0Q4+HvXMEFgyYM3evGGm4bz3rSro8DSc7iGy3gY0Gg0L GJag== X-Gm-Message-State: APjAAAWCGzlWiZTkZKaSu2nTWZoYfiXN3TN78uqUiEeJ0s8mesP9UB0b GYBfklfJANyNUX7CzK13d1g= X-Google-Smtp-Source: APXvYqxrllq2YXhlFbcTSCsE5eJWOW2xflbeXjr/f27HPYjPDsi8g6gG0ubMjJ9KX8tqQneExDtxOA== X-Received: by 2002:adf:ef09:: with SMTP id e9mr24636275wro.79.1560026932396; Sat, 08 Jun 2019 13:48:52 -0700 (PDT) Received: from kontron.lan (2001-1ae9-0ff1-f191-359a-8d64-e90a-f663.ip6.tmcz.cz. [2001:1ae9:ff1:f191:359a:8d64:e90a:f663]) by smtp.gmail.com with ESMTPSA id f204sm4986394wme.18.2019.06.08.13.48.51 (version=TLS1_3 cipher=AEAD-AES256-GCM-SHA384 bits=256/256); Sat, 08 Jun 2019 13:48:52 -0700 (PDT) From: petrcvekcz@gmail.com X-Google-Original-From: petrcvekcz.gmail.com To: hauke@hauke-m.de, john@phrozen.org Date: Sat, 8 Jun 2019 22:48:09 +0200 Message-Id: <430d6780b19250426ad4aa32f8382d62fe7e7dd0.1560024463.git.petrcvekcz@gmail.com> X-Mailer: git-send-email 2.21.0 In-Reply-To: References: MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20190608_134853_861345_4DAEF075 X-CRM114-Status: GOOD ( 10.77 ) X-Spam-Score: -0.2 (/) X-Spam-Report: SpamAssassin version 3.4.2 on bombadil.infradead.org summary: Content analysis details: (-0.2 points) pts rule name description ---- ---------------------- -------------------------------------------------- -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no trust [2a00:1450:4864:20:0:0:0:442 listed in] [list.dnswl.org] 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (petrcvekcz[at]gmail.com) 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record -0.0 SPF_PASS SPF: sender matches SPF record -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from author's domain 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily valid -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from envelope-from domain -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature Subject: [OpenWrt-Devel] [PATCH v1 6/7] MIPS: lantiq: Shorten register names, remove unused macros X-BeenThere: openwrt-devel@lists.openwrt.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: pakahmar@hotmail.com, openwrt-devel@lists.openwrt.org, Petr Cvek , linux-mips@vger.kernel.org Sender: "openwrt-devel" Errors-To: openwrt-devel-bounces+incoming=patchwork.ozlabs.org@lists.openwrt.org From: Petr Cvek The macros LTQ_ICU_IM1_ISR and LTQ_ICU_OFFSET seems to be unused, remove them. Allong with that, remove _IM0 substring from the macro names. The IM (interrupt module) is already defined in IOMEM access and IM0 would be misleading. Signed-off-by: Petr Cvek --- arch/mips/lantiq/irq.c | 34 ++++++++++++++++------------------ 1 file changed, 16 insertions(+), 18 deletions(-) diff --git a/arch/mips/lantiq/irq.c b/arch/mips/lantiq/irq.c index 35d7c5f6d159..b9ca20ff07d5 100644 --- a/arch/mips/lantiq/irq.c +++ b/arch/mips/lantiq/irq.c @@ -22,13 +22,11 @@ #include /* register definitions - internal irqs */ -#define LTQ_ICU_IM0_ISR 0x0000 -#define LTQ_ICU_IM0_IER 0x0008 -#define LTQ_ICU_IM0_IOSR 0x0010 -#define LTQ_ICU_IM0_IRSR 0x0018 -#define LTQ_ICU_IM0_IMR 0x0020 -#define LTQ_ICU_IM1_ISR 0x0028 -#define LTQ_ICU_OFFSET (LTQ_ICU_IM1_ISR - LTQ_ICU_IM0_ISR) +#define LTQ_ICU_ISR 0x0000 +#define LTQ_ICU_IER 0x0008 +#define LTQ_ICU_IOSR 0x0010 +#define LTQ_ICU_IRSR 0x0018 +#define LTQ_ICU_IMR 0x0020 /* register definitions - external irqs */ #define LTQ_EIU_EXIN_C 0x0000 @@ -77,8 +75,8 @@ void ltq_disable_irq(struct irq_data *d) unsigned long im = offset / INT_NUM_IM_OFFSET; offset %= INT_NUM_IM_OFFSET; - ltq_icu_w32(im, ltq_icu_r32(im, LTQ_ICU_IM0_IER) & ~BIT(offset), - LTQ_ICU_IM0_IER); + ltq_icu_w32(im, ltq_icu_r32(im, LTQ_ICU_IER) & ~BIT(offset), + LTQ_ICU_IER); } void ltq_mask_and_ack_irq(struct irq_data *d) @@ -87,9 +85,9 @@ void ltq_mask_and_ack_irq(struct irq_data *d) unsigned long im = offset / INT_NUM_IM_OFFSET; offset %= INT_NUM_IM_OFFSET; - ltq_icu_w32(im, ltq_icu_r32(im, LTQ_ICU_IM0_IER) & ~BIT(offset), - LTQ_ICU_IM0_IER); - ltq_icu_w32(im, BIT(offset), LTQ_ICU_IM0_ISR); + ltq_icu_w32(im, ltq_icu_r32(im, LTQ_ICU_IER) & ~BIT(offset), + LTQ_ICU_IER); + ltq_icu_w32(im, BIT(offset), LTQ_ICU_ISR); } static void ltq_ack_irq(struct irq_data *d) @@ -98,7 +96,7 @@ static void ltq_ack_irq(struct irq_data *d) unsigned long im = offset / INT_NUM_IM_OFFSET; offset %= INT_NUM_IM_OFFSET; - ltq_icu_w32(im, BIT(offset), LTQ_ICU_IM0_ISR); + ltq_icu_w32(im, BIT(offset), LTQ_ICU_ISR); } void ltq_enable_irq(struct irq_data *d) @@ -107,8 +105,8 @@ void ltq_enable_irq(struct irq_data *d) unsigned long im = offset / INT_NUM_IM_OFFSET; offset %= INT_NUM_IM_OFFSET; - ltq_icu_w32(im, ltq_icu_r32(im, LTQ_ICU_IM0_IER) | BIT(offset), - LTQ_ICU_IM0_IER); + ltq_icu_w32(im, ltq_icu_r32(im, LTQ_ICU_IER) | BIT(offset), + LTQ_ICU_IER); } static int ltq_eiu_settype(struct irq_data *d, unsigned int type) @@ -225,7 +223,7 @@ static void ltq_hw_irq_handler(struct irq_desc *desc) u32 irq; irq_hw_number_t hwirq; - irq = ltq_icu_r32(module, LTQ_ICU_IM0_IOSR); + irq = ltq_icu_r32(module, LTQ_ICU_IOSR); if (irq == 0) return; @@ -288,9 +286,9 @@ int __init icu_of_init(struct device_node *node, struct device_node *parent) /* turn off all irqs by default */ for (i = 0; i < MAX_IM; i++) { /* make sure all irqs are turned off by default */ - ltq_icu_w32(i, 0, LTQ_ICU_IM0_IER); + ltq_icu_w32(i, 0, LTQ_ICU_IER); /* clear all possibly pending interrupts */ - ltq_icu_w32(i, ~0, LTQ_ICU_IM0_ISR); + ltq_icu_w32(i, ~0, LTQ_ICU_ISR); } mips_cpu_irq_init(); From patchwork Sat Jun 8 20:48:10 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Petr Cvek X-Patchwork-Id: 1112546 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=lists.openwrt.org (client-ip=2607:7c80:54:e::133; helo=bombadil.infradead.org; envelope-from=openwrt-devel-bounces+incoming=patchwork.ozlabs.org@lists.openwrt.org; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="LX1Wxsx9"; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="Arz2tdFn"; dkim-atps=neutral Received: from bombadil.infradead.org (bombadil.infradead.org [IPv6:2607:7c80:54:e::133]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 45Ls3L5W4Lz9s4Y for ; Sun, 9 Jun 2019 06:50:06 +1000 (AEST) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:Subject:MIME-Version:References: In-Reply-To:Message-Id:Date:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=MwSWQbZn2gJqKUpP/Hth5xFDk1WgvajWLshIy4QLRSc=; b=LX1Wxsx905Ag14 tad5BgvtSlirDD7IJPYC6oj7xi8WS/mEXYeebTgKnp/Jjy1hwrxkgtDDUtHxZWGGSEvw/pZal027c +2NxDatEqOjU00VPi9rPZFje/DOEspDZF4YQ1x4R+G80iFQkqZtRtQ6euRUKKRkg1wK5xfmq7QeZ0 wlPyu217NSxbcGE/ZPnOe7DRqRWE1vXdeUU4IgrLLzt9H84/PgkGisbBt9XZKzvCmnm6vwj6kmfRv GSnnTXRqnP4ZBXoCNGCM5dbulNZXvHYlb+UqrnJMqorArsZSDu99HzaYOzPSpVHTEKlISy1uD5Qae wU8oUeArZDH6EhylOZRw==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.92 #3 (Red Hat Linux)) id 1hZiHi-0005Td-On; Sat, 08 Jun 2019 20:49:54 +0000 Received: from mail-wm1-x343.google.com ([2a00:1450:4864:20::343]) by bombadil.infradead.org with esmtps (Exim 4.92 #3 (Red Hat Linux)) id 1hZiGn-0003yh-3e for openwrt-devel@lists.openwrt.org; Sat, 08 Jun 2019 20:48:59 +0000 Received: by mail-wm1-x343.google.com with SMTP id x15so5111849wmj.3 for ; Sat, 08 Jun 2019 13:48:56 -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=MoZjR9jhSXzyqQW22exJXKfbEIeTd2cihZt9BF+xunE=; b=Arz2tdFnwZAfPn9yvYESN1oHv483tTp0KiFFbGdctYKJluDbAgjPvYgZVerrGVMpB6 bRRbceCOr8K3TDc5awmoDotgRRA1I8zmtppvZf1TfKVLAS5+2Uo1t1JO73U2YZk5n0B8 Gc0jWdFygunwkuORSM5rNXAmTIlZZCbUtqPrvKoVA7vvSUo8xMG2Z1Ycu6ZpVY4smwWY ZRFvsK1CeA2/071J9ad9tGTHAvzY5KyoG6cMBomyJ0PhAZtu8BOV4mAKcxJQKLGfTs16 Qi+3wONNK2aA3jOicGj80DdDjH97rGtmUeZCQMggxl19PDjoYBGhn22qdHctUyP6khB3 atug== 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=MoZjR9jhSXzyqQW22exJXKfbEIeTd2cihZt9BF+xunE=; b=kfuO5fq6DYfS7oqsbaO1tsroLSDW0nKgsKe3JlYuuOXlsNTRt2Rd2jdeUjmnxBVcgu 564PPEG25ePgHGqMvh3yGQFbwQ0eponuPTDiem2Z8OwdeBBaXUBKQcPYHKe0zRou7NdX EGQVMz7CMgmri3wPIuvC5RdEUkog+wISoiZl61qJDazrWmCXULKhCnYeLH2qO19a45fC OBGBx18E69suv8LH8hONUOVrm1mD2NtuW4x6dC7zoPsouCpo0b8/4Tlyd5eKg2TvTrzA 53J+dA77NeswavHrsuNs+9WqMXZ6OU/8TIi6NFeByzpPaLjmEx3s7esqMnIIrOQ7Fc00 uAug== X-Gm-Message-State: APjAAAXawFpICp7FSSAuvcIB4eWw8NswXhEg+ISq3ZbKX19HsuavIPO1 WvPZAx/prIKNfTNfoapMqjs= X-Google-Smtp-Source: APXvYqyqYEpOEfFObllVg2oJn0todAk5ZL6aELmirw4OublJHxWoYN1WJ0i6m3NV5OTdgbFiZTyltw== X-Received: by 2002:a1c:2004:: with SMTP id g4mr7437798wmg.173.1560026935169; Sat, 08 Jun 2019 13:48:55 -0700 (PDT) Received: from kontron.lan (2001-1ae9-0ff1-f191-359a-8d64-e90a-f663.ip6.tmcz.cz. [2001:1ae9:ff1:f191:359a:8d64:e90a:f663]) by smtp.gmail.com with ESMTPSA id f204sm4986394wme.18.2019.06.08.13.48.54 (version=TLS1_3 cipher=AEAD-AES256-GCM-SHA384 bits=256/256); Sat, 08 Jun 2019 13:48:54 -0700 (PDT) From: petrcvekcz@gmail.com X-Google-Original-From: petrcvekcz.gmail.com To: hauke@hauke-m.de, john@phrozen.org Date: Sat, 8 Jun 2019 22:48:10 +0200 Message-Id: <07892acc26ae73c6567254a28faac7a723cedbc3.1560024463.git.petrcvekcz@gmail.com> X-Mailer: git-send-email 2.21.0 In-Reply-To: References: MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20190608_134857_177561_9D0EBD58 X-CRM114-Status: GOOD ( 22.21 ) X-Spam-Score: -0.2 (/) X-Spam-Report: SpamAssassin version 3.4.2 on bombadil.infradead.org summary: Content analysis details: (-0.2 points) pts rule name description ---- ---------------------- -------------------------------------------------- -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no trust [2a00:1450:4864:20:0:0:0:343 listed in] [list.dnswl.org] 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (petrcvekcz[at]gmail.com) 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record -0.0 SPF_PASS SPF: sender matches SPF record -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from author's domain 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily valid -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from envelope-from domain -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature Subject: [OpenWrt-Devel] [PATCH v1 7/7] MIPS: lantiq: Add SMP support for lantiq interrupt controller X-BeenThere: openwrt-devel@lists.openwrt.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: pakahmar@hotmail.com, openwrt-devel@lists.openwrt.org, Petr Cvek , linux-mips@vger.kernel.org Sender: "openwrt-devel" Errors-To: openwrt-devel-bounces+incoming=patchwork.ozlabs.org@lists.openwrt.org From: Petr Cvek Some lantiq devices have two ICU controllers. Both are respectively routed to the individual VPEs. The patch adds the support for the second ICU. The patch changes a register definition of the driver. Instead of an individual IM, the whole ICU is defined. This will only affects openwrt patched kernel (vanilla doesn't have additional .dts files). Also spinlocks has been added, both cores can RMW different bitfields in the same register. Added affinity set function. The new VPE cpumask will take into the action at the irq enable. The driver can rotate the preset VPEs affinity cpumask. Either by an automatic cycling or just by using the first VPE from the affinity cpumask. This can be switched by macro AUTO_AFFINITY_ROTATION. The automatic rotation can be switched off from userspace by limiting the IRQ to only one VPE. The rotation was taken from MIPS loongson64's ht_irqdispatch(). The functionality was tested on 4.14 openwrt kernel and TP-W9980B modem. Signed-off-by: Petr Cvek --- arch/mips/lantiq/irq.c | 155 ++++++++++++++++++++++++++++++++++------- 1 file changed, 131 insertions(+), 24 deletions(-) diff --git a/arch/mips/lantiq/irq.c b/arch/mips/lantiq/irq.c index b9ca20ff07d5..0cdb7e88bfe5 100644 --- a/arch/mips/lantiq/irq.c +++ b/arch/mips/lantiq/irq.c @@ -21,6 +21,15 @@ #include #include +/* + * If defined, every IRQ enable call will switch the interrupt to + * the other VPE. You can limit used VPEs from the userspace. + * + * If not defined, only the first configured VPE from the userspace + * will be used. + */ +#define AUTO_AFFINITY_ROTATION + /* register definitions - internal irqs */ #define LTQ_ICU_ISR 0x0000 #define LTQ_ICU_IER 0x0008 @@ -46,8 +55,11 @@ */ #define LTQ_ICU_EBU_IRQ 22 -#define ltq_icu_w32(m, x, y) ltq_w32((x), ltq_icu_membase[m] + (y)) -#define ltq_icu_r32(m, x) ltq_r32(ltq_icu_membase[m] + (x)) +#define ltq_icu_w32(vpe, m, x, y) \ + ltq_w32((x), ltq_icu_membase[vpe] + m*0x28 + (y)) + +#define ltq_icu_r32(vpe, m, x) \ + ltq_r32(ltq_icu_membase[vpe] + m*0x28 + (x)) #define ltq_eiu_w32(x, y) ltq_w32((x), ltq_eiu_membase + (y)) #define ltq_eiu_r32(x) ltq_r32(ltq_eiu_membase + (x)) @@ -55,11 +67,15 @@ /* we have a cascade of 8 irqs */ #define MIPS_CPU_IRQ_CASCADE 8 +#define MAX_VPES 2 + static int exin_avail; static u32 ltq_eiu_irq[MAX_EIU]; -static void __iomem *ltq_icu_membase[MAX_IM]; +static void __iomem *ltq_icu_membase[MAX_VPES]; static void __iomem *ltq_eiu_membase; static struct irq_domain *ltq_domain; +static DEFINE_SPINLOCK(ltq_eiu_lock); +static DEFINE_RAW_SPINLOCK(ltq_icu_lock); static int ltq_perfcount_irq; int ltq_eiu_get_irq(int exin) @@ -73,45 +89,98 @@ void ltq_disable_irq(struct irq_data *d) { unsigned long offset = d->hwirq - MIPS_CPU_IRQ_CASCADE; unsigned long im = offset / INT_NUM_IM_OFFSET; + unsigned long flags; + int vpe; offset %= INT_NUM_IM_OFFSET; - ltq_icu_w32(im, ltq_icu_r32(im, LTQ_ICU_IER) & ~BIT(offset), - LTQ_ICU_IER); + + raw_spin_lock_irqsave(<q_icu_lock, flags); + for_each_present_cpu(vpe) { + ltq_icu_w32(vpe, im, + ltq_icu_r32(vpe, im, LTQ_ICU_IER) & ~BIT(offset), + LTQ_ICU_IER); + } + raw_spin_unlock_irqrestore(<q_icu_lock, flags); } void ltq_mask_and_ack_irq(struct irq_data *d) { unsigned long offset = d->hwirq - MIPS_CPU_IRQ_CASCADE; unsigned long im = offset / INT_NUM_IM_OFFSET; + unsigned long flags; + int vpe; offset %= INT_NUM_IM_OFFSET; - ltq_icu_w32(im, ltq_icu_r32(im, LTQ_ICU_IER) & ~BIT(offset), - LTQ_ICU_IER); - ltq_icu_w32(im, BIT(offset), LTQ_ICU_ISR); + + raw_spin_lock_irqsave(<q_icu_lock, flags); + for_each_present_cpu(vpe) { + ltq_icu_w32(vpe, im, + ltq_icu_r32(vpe, im, LTQ_ICU_IER) & ~BIT(offset), + LTQ_ICU_IER); + ltq_icu_w32(vpe, im, BIT(offset), LTQ_ICU_ISR); + } + raw_spin_unlock_irqrestore(<q_icu_lock, flags); } static void ltq_ack_irq(struct irq_data *d) { unsigned long offset = d->hwirq - MIPS_CPU_IRQ_CASCADE; unsigned long im = offset / INT_NUM_IM_OFFSET; + unsigned long flags; + int vpe; offset %= INT_NUM_IM_OFFSET; - ltq_icu_w32(im, BIT(offset), LTQ_ICU_ISR); + + raw_spin_lock_irqsave(<q_icu_lock, flags); + for_each_present_cpu(vpe) { + ltq_icu_w32(vpe, im, BIT(offset), LTQ_ICU_ISR); + } + raw_spin_unlock_irqrestore(<q_icu_lock, flags); } void ltq_enable_irq(struct irq_data *d) { unsigned long offset = d->hwirq - MIPS_CPU_IRQ_CASCADE; unsigned long im = offset / INT_NUM_IM_OFFSET; + unsigned long flags; + int vpe; offset %= INT_NUM_IM_OFFSET; - ltq_icu_w32(im, ltq_icu_r32(im, LTQ_ICU_IER) | BIT(offset), + +#if defined(AUTO_AFFINITY_ROTATION) + vpe = cpumask_next(smp_processor_id(), + irq_data_get_effective_affinity_mask(d)); + + /* + * There is a theoretical race condition if affinity gets changed + * meanwhile, but it would only caused a wrong VPE to be used until + * the next IRQ enable. Also the SoC has only 2 VPEs which fits + * the single u32. You can move spinlock before first mask readout + * and add it to ltq_icu_irq_set_affinity. + */ + + if (vpe >= nr_cpu_ids) + vpe = cpumask_first(irq_data_get_effective_affinity_mask(d)); +#else + vpe = cpumask_first(irq_data_get_effective_affinity_mask(d)); +#endif + + /* This shouldn't be even possible, maybe during CPU hotplug spam */ + if (unlikely(vpe >= nr_cpu_ids)) + vpe = smp_processor_id(); + + raw_spin_lock_irqsave(<q_icu_lock, flags); + + ltq_icu_w32(vpe, im, ltq_icu_r32(vpe, im, LTQ_ICU_IER) | BIT(offset), LTQ_ICU_IER); + + raw_spin_unlock_irqrestore(<q_icu_lock, flags); } static int ltq_eiu_settype(struct irq_data *d, unsigned int type) { int i; + unsigned long flags; for (i = 0; i < exin_avail; i++) { if (d->hwirq == ltq_eiu_irq[i]) { @@ -148,9 +217,11 @@ static int ltq_eiu_settype(struct irq_data *d, unsigned int type) if (edge) irq_set_handler(d->hwirq, handle_edge_irq); + spin_lock_irqsave(<q_eiu_lock, flags); ltq_eiu_w32((ltq_eiu_r32(LTQ_EIU_EXIN_C) & (~(7 << (i * 4)))) | (val << (i * 4)), LTQ_EIU_EXIN_C); + spin_unlock_irqrestore(<q_eiu_lock, flags); } } @@ -194,6 +265,21 @@ static void ltq_shutdown_eiu_irq(struct irq_data *d) } } +#if defined(CONFIG_SMP) +static int ltq_icu_irq_set_affinity(struct irq_data *d, + const struct cpumask *cpumask, bool force) +{ + struct cpumask tmask; + + if (!cpumask_and(&tmask, cpumask, cpu_online_mask)) + return -EINVAL; + + irq_data_update_effective_affinity(d, &tmask); + + return IRQ_SET_MASK_OK; +} +#endif + static struct irq_chip ltq_irq_type = { .name = "icu", .irq_enable = ltq_enable_irq, @@ -202,6 +288,9 @@ static struct irq_chip ltq_irq_type = { .irq_ack = ltq_ack_irq, .irq_mask = ltq_disable_irq, .irq_mask_ack = ltq_mask_and_ack_irq, +#if defined(CONFIG_SMP) + .irq_set_affinity = ltq_icu_irq_set_affinity, +#endif }; static struct irq_chip ltq_eiu_type = { @@ -215,6 +304,9 @@ static struct irq_chip ltq_eiu_type = { .irq_mask = ltq_disable_irq, .irq_mask_ack = ltq_mask_and_ack_irq, .irq_set_type = ltq_eiu_settype, +#if defined(CONFIG_SMP) + .irq_set_affinity = ltq_icu_irq_set_affinity, +#endif }; static void ltq_hw_irq_handler(struct irq_desc *desc) @@ -222,8 +314,9 @@ static void ltq_hw_irq_handler(struct irq_desc *desc) unsigned int module = irq_desc_get_irq(desc) - 2; u32 irq; irq_hw_number_t hwirq; + int vpe = smp_processor_id(); - irq = ltq_icu_r32(module, LTQ_ICU_IOSR); + irq = ltq_icu_r32(vpe, module, LTQ_ICU_IOSR); if (irq == 0) return; @@ -244,6 +337,7 @@ static void ltq_hw_irq_handler(struct irq_desc *desc) static int icu_map(struct irq_domain *d, unsigned int irq, irq_hw_number_t hw) { struct irq_chip *chip = <q_irq_type; + struct irq_data *data; int i; if (hw < MIPS_CPU_IRQ_CASCADE) @@ -253,6 +347,10 @@ static int icu_map(struct irq_domain *d, unsigned int irq, irq_hw_number_t hw) if (hw == ltq_eiu_irq[i]) chip = <q_eiu_type; + data = irq_get_irq_data(irq); + + irq_data_update_effective_affinity(data, cpumask_of(0)); + irq_set_chip_and_handler(irq, chip, handle_level_irq); return 0; @@ -267,28 +365,37 @@ int __init icu_of_init(struct device_node *node, struct device_node *parent) { struct device_node *eiu_node; struct resource res; - int i, ret; + int i, ret, vpe; - for (i = 0; i < MAX_IM; i++) { - if (of_address_to_resource(node, i, &res)) - panic("Failed to get icu memory range"); + /* load register regions of available ICUs */ + for_each_possible_cpu(vpe) { + if (of_address_to_resource(node, vpe, &res)) + panic("Failed to get icu%i memory range", vpe); if (!request_mem_region(res.start, resource_size(&res), res.name)) - pr_err("Failed to request icu memory"); + pr_err("Failed to request icu%i memory\n", vpe); - ltq_icu_membase[i] = ioremap_nocache(res.start, + ltq_icu_membase[vpe] = ioremap_nocache(res.start, resource_size(&res)); - if (!ltq_icu_membase[i]) - panic("Failed to remap icu memory"); + + if (!ltq_icu_membase[vpe]) + panic("Failed to remap icu%i memory", vpe); } /* turn off all irqs by default */ - for (i = 0; i < MAX_IM; i++) { - /* make sure all irqs are turned off by default */ - ltq_icu_w32(i, 0, LTQ_ICU_IER); - /* clear all possibly pending interrupts */ - ltq_icu_w32(i, ~0, LTQ_ICU_ISR); + for_each_possible_cpu(vpe) { + for (i = 0; i < MAX_IM; i++) { + /* make sure all irqs are turned off by default */ + ltq_icu_w32(vpe, i, 0, LTQ_ICU_IER); + + /* clear all possibly pending interrupts */ + ltq_icu_w32(vpe, i, ~0, LTQ_ICU_ISR); + ltq_icu_w32(vpe, i, ~0, LTQ_ICU_IMR); + + /* clear resend */ + ltq_icu_w32(vpe, i, 0, LTQ_ICU_IRSR); + } } mips_cpu_irq_init();