From: Bartosz Golaszewski <bgolaszewski@baylibre.com>
To: Sekhar Nori <nsekhar@ti.com>
Cc: David Lechner <david@lechnology.com>,
Bartosz Golaszewski <brgl@bgdev.pl>,
Kevin Hilman <khilman@kernel.org>,
Thomas Gleixner <tglx@linutronix.de>,
Jason Cooper <jason@lakedaemon.net>,
Marc Zyngier <marc.zyngier@arm.com>,
LKML <linux-kernel@vger.kernel.org>,
arm-soc <linux-arm-kernel@lists.infradead.org>
Subject: Re: [PATCH 05/35] ARM: davinci: drop irq defines from default_priorites
Date: Wed, 6 Feb 2019 14:32:06 +0100 [thread overview]
Message-ID: <CAMpxmJWU6WRK70xNN72Ke2kXi6F-uLWrCpF+K-+qKX3DcRy7uw@mail.gmail.com> (raw)
In-Reply-To: <21c3d8cd-f767-04bc-f4d8-3001405ffd1d@ti.com>
śr., 6 lut 2019 o 14:03 Sekhar Nori <nsekhar@ti.com> napisał(a):
>
> On 05/02/19 3:51 AM, David Lechner wrote:
> > On 1/31/19 7:38 AM, Bartosz Golaszewski wrote:
> >> From: Bartosz Golaszewski <bgolaszewski@baylibre.com>
> >>
> >> In order to select SPARSE_IRQ we need to make the interrupt numbers
> >> dynamic (at least at build-time for the top-level controller). The
> >> interrupt numbers are used as array indexes for irq priorities.
> >>
> >> Drop the defines and just initialize the arrays in a linear manner.
> >>
> >> Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
> >> ---
> >
> > ...
> >
> >> -static u8 dm355_default_priorities[DAVINCI_N_AINTC_IRQ] = {
> >> - [IRQ_DM355_CCDC_VDINT0] = 2,
> >> - [IRQ_DM355_CCDC_VDINT1] = 6,
> >> - [IRQ_DM355_CCDC_VDINT2] = 6,
> >> - [IRQ_DM355_IPIPE_HST] = 6,
> >> - [IRQ_DM355_H3AINT] = 6,
> >> - [IRQ_DM355_IPIPE_SDR] = 6,
> >> - [IRQ_DM355_IPIPEIFINT] = 6,
> >> - [IRQ_DM355_OSDINT] = 7,
> >> - [IRQ_DM355_VENCINT] = 6,
> >> - [IRQ_ASQINT] = 6,
> >> - [IRQ_IMXINT] = 6,
> >> - [IRQ_USBINT] = 4,
> >> - [IRQ_DM355_RTOINT] = 4,
> >> - [IRQ_DM355_UARTINT2] = 7,
> >> - [IRQ_DM355_TINT6] = 7,
> >> - [IRQ_CCINT0] = 5, /* dma */
> >> - [IRQ_CCERRINT] = 5, /* dma */
> >> - [IRQ_TCERRINT0] = 5, /* dma */
> >> - [IRQ_TCERRINT] = 5, /* dma */
> >> - [IRQ_DM355_SPINT2_1] = 7,
> >> - [IRQ_DM355_TINT7] = 4,
> >> - [IRQ_DM355_SDIOINT0] = 7,
> >> - [IRQ_MBXINT] = 7,
> >> - [IRQ_MBRINT] = 7,
> >> - [IRQ_MMCINT] = 7,
> >> - [IRQ_DM355_MMCINT1] = 7,
> >> - [IRQ_DM355_PWMINT3] = 7,
> >> - [IRQ_DDRINT] = 7,
> >> - [IRQ_AEMIFINT] = 7,
> >> - [IRQ_DM355_SDIOINT1] = 4,
> >> - [IRQ_TINT0_TINT12] = 2, /* clockevent */
> >> - [IRQ_TINT0_TINT34] = 2, /* clocksource */
> >> - [IRQ_TINT1_TINT12] = 7, /* DSP timer */
> >> - [IRQ_TINT1_TINT34] = 7, /* system tick */
> >> - [IRQ_PWMINT0] = 7,
> >> - [IRQ_PWMINT1] = 7,
> >> - [IRQ_PWMINT2] = 7,
> >> - [IRQ_I2C] = 3,
> >> - [IRQ_UARTINT0] = 3,
> >> - [IRQ_UARTINT1] = 3,
> >> - [IRQ_DM355_SPINT0_0] = 3,
> >> - [IRQ_DM355_SPINT0_1] = 3,
> >> - [IRQ_DM355_GPIO0] = 3,
> >> - [IRQ_DM355_GPIO1] = 7,
> >> - [IRQ_DM355_GPIO2] = 4,
> >> - [IRQ_DM355_GPIO3] = 4,
> >> - [IRQ_DM355_GPIO4] = 7,
> >> - [IRQ_DM355_GPIO5] = 7,
> >> - [IRQ_DM355_GPIO6] = 7,
> >> - [IRQ_DM355_GPIO7] = 7,
> >> - [IRQ_DM355_GPIO8] = 7,
> >> - [IRQ_DM355_GPIO9] = 7,
> >> - [IRQ_DM355_GPIOBNK0] = 7,
> >> - [IRQ_DM355_GPIOBNK1] = 7,
> >> - [IRQ_DM355_GPIOBNK2] = 7,
> >> - [IRQ_DM355_GPIOBNK3] = 7,
> >> - [IRQ_DM355_GPIOBNK4] = 7,
> >> - [IRQ_DM355_GPIOBNK5] = 7,
> >> - [IRQ_DM355_GPIOBNK6] = 7,
> >> - [IRQ_COMMTX] = 7,
> >> - [IRQ_COMMRX] = 7,
> >> - [IRQ_EMUINT] = 7,
> >> +static u8 dm355_aintc_prios[] = {
> >> + 2, 6, 6, 6, 6, 6, 6, 7,
> >> + 6, 6, 6, 4, 4, 7, 7, 5,
> >> + 5, 5, 5, 7, 4, 7, 7, 7,
> >> + 7, 7, 7, 7, 7, 4, 2, 2,
> >> + 7, 7, 7, 7, 7, 3, 3, 3,
> >> + 3, 3, 3, 7, 4, 4, 7, 7,
> >> + 7, 7, 7, 7, 7, 7, 7, 7,
> >> + 7, 7, 7, 7, 7, 7, 0, 0,
> >> };
> >
> > Hmm... this makes it harder to see what is going on here.
> > You can no longer see which priority corresponds to which
> > IRQ without consulting a manual.
>
> I agree with David here. The interrupt numbers are dynamic, but the
> interrupt number offset from hardware point-of-view is fixed. So can
> these macros be re-purposed to represent the hardware offset (eventually
> you would pass them to DAVINCI_INTC_IRQ())?
>
> Thanks,
> Sekhar
Should we keep the mach/irqs.h header then? While working on patches
for supporting the multi_v5_defconfig build I noticed the mach/*
headers tend to cause build problems in certain drivers that use them.
Most machines have gotten rid of them. Should we maybe create a local
header in mach-davinci/?
Bart
next prev parent reply other threads:[~2019-02-06 13:32 UTC|newest]
Thread overview: 97+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-01-31 13:38 [PATCH 00/35] ARM: davinci: modernize the irq support Bartosz Golaszewski
2019-01-31 13:38 ` [PATCH 01/35] ARM: davinci: remove intc_host_map from davinci_soc_info struct Bartosz Golaszewski
2019-02-04 21:50 ` David Lechner
2019-02-06 8:32 ` Sekhar Nori
2019-01-31 13:38 ` [PATCH 02/35] ARM: davinci: select GENERIC_IRQ_MULTI_HANDLER Bartosz Golaszewski
2019-02-04 22:02 ` David Lechner
2019-02-06 12:39 ` Sekhar Nori
2019-02-07 15:49 ` Bartosz Golaszewski
2019-02-08 8:59 ` Sekhar Nori
2019-01-31 13:38 ` [PATCH 03/35] ARM: davinci: remove davinci_intc_type Bartosz Golaszewski
2019-02-04 22:04 ` David Lechner
2019-01-31 13:38 ` [PATCH 04/35] ARM: davinci: pull davinci_intc_base into the respective intc drivers Bartosz Golaszewski
2019-02-04 22:06 ` David Lechner
2019-01-31 13:38 ` [PATCH 05/35] ARM: davinci: drop irq defines from default_priorites Bartosz Golaszewski
2019-02-04 22:21 ` David Lechner
2019-02-06 13:03 ` Sekhar Nori
2019-02-06 13:32 ` Bartosz Golaszewski [this message]
2019-02-06 14:50 ` Sekhar Nori
2019-02-05 0:20 ` David Lechner
2019-02-05 16:16 ` Bartosz Golaszewski
2019-01-31 13:38 ` [PATCH 06/35] ARM: davinci: wrap interrupt definitions with a macro for SPARSE_IRQ Bartosz Golaszewski
2019-02-04 22:32 ` David Lechner
2019-02-05 16:17 ` Bartosz Golaszewski
2019-01-31 13:39 ` [PATCH 07/35] ARM: davinci: aintc: use irq domain Bartosz Golaszewski
2019-02-04 22:42 ` David Lechner
2019-02-05 16:29 ` Bartosz Golaszewski
2019-02-06 15:08 ` Sekhar Nori
2019-01-31 13:39 ` [PATCH 08/35] ARM: davinci: select SPARSE_IRQ Bartosz Golaszewski
2019-02-04 22:46 ` David Lechner
2019-01-31 13:39 ` [PATCH 09/35] ARM: davinci: aintc: drop GPL license boilerplate Bartosz Golaszewski
2019-01-31 13:39 ` [PATCH 10/35] ARM: davinci: aintc: wrap davinci_irq_init() with a helper Bartosz Golaszewski
2019-02-04 22:51 ` David Lechner
2019-01-31 13:39 ` [PATCH 11/35] ARM: davinci: aintc: use a common prefix for symbols in the driver Bartosz Golaszewski
2019-02-04 22:54 ` David Lechner
2019-01-31 13:39 ` [PATCH 12/35] ARM: davinci: aintc: drop the 00 prefix from register offsets Bartosz Golaszewski
2019-02-04 22:56 ` David Lechner
2019-01-31 13:39 ` [PATCH 13/35] ARM: davinci: aintc: add a new config structure Bartosz Golaszewski
2019-02-04 23:02 ` David Lechner
2019-02-07 13:33 ` Sekhar Nori
2019-01-31 13:39 ` [PATCH 14/35] ARM: davinci: aintc: use the new irqchip config structure in dm* SoCs Bartosz Golaszewski
2019-02-04 23:09 ` David Lechner
2019-01-31 13:39 ` [PATCH 15/35] ARM: davinci: aintc: use the new config structure Bartosz Golaszewski
2019-02-04 23:29 ` David Lechner
2019-01-31 13:39 ` [PATCH 16/35] ARM: davinci: aintc: move timer-specific irq_set_handler() out of irq.c Bartosz Golaszewski
2019-02-04 23:36 ` David Lechner
2019-02-07 12:21 ` Sekhar Nori
2019-01-31 13:39 ` [PATCH 17/35] ARM: davinci: aintc: remove unnecessary includes Bartosz Golaszewski
2019-02-04 23:37 ` David Lechner
2019-01-31 13:39 ` [PATCH 18/35] irqchip: davinci-aintc: move the driver to drivers/irqchip Bartosz Golaszewski
2019-02-04 23:43 ` David Lechner
2019-02-08 16:03 ` Bartosz Golaszewski
2019-01-31 13:39 ` [PATCH 19/35] ARM: davinci: cp-intc: remove cp_intc.h Bartosz Golaszewski
2019-02-04 23:48 ` David Lechner
2019-01-31 13:39 ` [PATCH 20/35] ARM: davinci: cp-intc: add a wrapper around cp_intc_init() Bartosz Golaszewski
2019-02-04 23:50 ` David Lechner
2019-01-31 13:39 ` [PATCH 21/35] ARM: davinci: cp-intc: add a new config structure Bartosz Golaszewski
2019-02-04 23:54 ` David Lechner
2019-01-31 13:39 ` [PATCH 22/35] ARM: davinci: cp-intc: add the new config structures for da8xx SoCs Bartosz Golaszewski
2019-02-04 23:58 ` David Lechner
2019-02-07 13:35 ` Sekhar Nori
2019-01-31 13:39 ` [PATCH 23/35] ARM: davinci: cp-intc: use a common prefix for all symbols Bartosz Golaszewski
2019-02-05 0:01 ` David Lechner
2019-02-07 13:43 ` Sekhar Nori
2019-01-31 13:39 ` [PATCH 24/35] ARM: davinci: cp-intc: convert all hex numbers to lowercase Bartosz Golaszewski
2019-02-05 0:04 ` David Lechner
2019-01-31 13:39 ` [PATCH 25/35] ARM: davinci: cp-intc: use the new-style config structure Bartosz Golaszewski
2019-02-05 0:29 ` David Lechner
2019-02-08 16:27 ` Bartosz Golaszewski
2019-02-07 13:59 ` Sekhar Nori
2019-01-31 13:39 ` [PATCH 26/35] ARM: davinci: cp-intc: improve coding style Bartosz Golaszewski
2019-02-05 0:35 ` David Lechner
2019-01-31 13:39 ` [PATCH 27/35] ARM: davinci: cp-intc: unify error handling Bartosz Golaszewski
2019-02-05 0:37 ` David Lechner
2019-01-31 13:39 ` [PATCH 28/35] ARM: davinci: cp-intc: remove unneeded include Bartosz Golaszewski
2019-02-05 0:39 ` David Lechner
2019-01-31 13:39 ` [PATCH 29/35] ARM: davinci: cp-intc: drop GPL license boilerplate Bartosz Golaszewski
2019-02-05 0:41 ` David Lechner
2019-01-31 13:39 ` [PATCH 30/35] ARM: davinci: cp-intc: remove redundant comments Bartosz Golaszewski
2019-02-05 0:42 ` David Lechner
2019-01-31 13:39 ` [PATCH 31/35] irqchip: davinci-cp-intc: move the driver to drivers/irqchip Bartosz Golaszewski
2019-02-05 0:44 ` David Lechner
2019-01-31 13:39 ` [PATCH 32/35] ARM: davinci: remove intc related fields from davinci_soc_info Bartosz Golaszewski
2019-02-05 0:48 ` David Lechner
2019-02-07 14:04 ` Sekhar Nori
2019-02-08 16:41 ` Bartosz Golaszewski
2019-01-31 13:39 ` [PATCH 33/35] ARM: davinci: prepare to remove mach/irqs.h Bartosz Golaszewski
2019-02-07 14:07 ` Sekhar Nori
2019-01-31 13:39 ` [PATCH 34/35] ARM: davinci: stop using defines from mach/irqs.h Bartosz Golaszewski
2019-02-05 1:05 ` David Lechner
2019-01-31 13:39 ` [PATCH 35/35] ARM: davinci: remove mach/irqs.h Bartosz Golaszewski
2019-02-05 1:06 ` David Lechner
2019-02-04 21:49 ` [PATCH 00/35] ARM: davinci: modernize the irq support David Lechner
2019-02-05 16:11 ` Bartosz Golaszewski
2019-02-08 11:43 ` Sekhar Nori
2019-02-08 12:27 ` Bartosz Golaszewski
2019-02-08 12:29 ` Sekhar Nori
2019-02-07 15:24 ` Sekhar Nori
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=CAMpxmJWU6WRK70xNN72Ke2kXi6F-uLWrCpF+K-+qKX3DcRy7uw@mail.gmail.com \
--to=bgolaszewski@baylibre.com \
--cc=brgl@bgdev.pl \
--cc=david@lechnology.com \
--cc=jason@lakedaemon.net \
--cc=khilman@kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=marc.zyngier@arm.com \
--cc=nsekhar@ti.com \
--cc=tglx@linutronix.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).