From: Mesih Kilinc <mesihkilinc-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
To: Maxime Ripard <maxime.ripard-LDxbnhwyfcJBDgjK7y7TUQ@public.gmane.org>
Cc: devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org,
linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
linux-clk-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
linux-gpio-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
linux-sunxi-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org,
Chen-Yu Tsai <wens-jdAy2FN1RRM@public.gmane.org>,
Russell King <linux-I+IVW8TIWO2tmTQ+vhA3Yw@public.gmane.org>,
Daniel Lezcano
<daniel.lezcano-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>,
Marc Zyngier <marc.zyngier-5wv7dgnIgG8@public.gmane.org>,
Linus Walleij
<linus.walleij-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>,
Icenowy Zheng <icenowy-h8G6r0blFSE@public.gmane.org>,
Rob Herring <robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>,
Julian Calaby
<julian.calaby-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
Subject: Re: [RFC PATCH v3 05/17] irqchip/sun4i: add support for suniv interrupt controller
Date: Thu, 22 Nov 2018 18:02:00 +0300 [thread overview]
Message-ID: <20181122150200.p6e22sp3v4npb42w@ThinkPad> (raw)
In-Reply-To: <20181122083547.srnopylueqx6p2qj@flea>
On 18/11/22 09:35, Maxime Ripard wrote:
> Hi Mesih,
>
Hi!
> On Wed, Nov 21, 2018 at 09:30:38PM +0300, Mesih Kilinc wrote:
> > The new F-series SoCs (suniv) from Allwinner use an stripped version of
> > the interrupt controller in A10/A13
> >
> > Add support for it in irq-sun4i driver.
> >
> > Signed-off-by: Mesih Kilinc <mesihkilinc-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
> > ---
> > drivers/irqchip/irq-sun4i.c | 104 +++++++++++++++++++++++++++++++-------------
> > 1 file changed, 74 insertions(+), 30 deletions(-)
> >
> > diff --git a/drivers/irqchip/irq-sun4i.c b/drivers/irqchip/irq-sun4i.c
> > index e3e5b91..7ca4a4d 100644
> > --- a/drivers/irqchip/irq-sun4i.c
> > +++ b/drivers/irqchip/irq-sun4i.c
> > @@ -28,11 +28,21 @@
> > #define SUN4I_IRQ_NMI_CTRL_REG 0x0c
> > #define SUN4I_IRQ_PENDING_REG(x) (0x10 + 0x4 * x)
> > #define SUN4I_IRQ_FIQ_PENDING_REG(x) (0x20 + 0x4 * x)
> > -#define SUN4I_IRQ_ENABLE_REG(x) (0x40 + 0x4 * x)
> > -#define SUN4I_IRQ_MASK_REG(x) (0x50 + 0x4 * x)
> > +#define SUN4I_IRQ_ENABLE_REG(x) (irq_ic_data->enable_req_offset + 0x4 * x)
> > +#define SUN4I_IRQ_MASK_REG(x) (irq_ic_data->mask_req_offset + 0x4 * x)
>
> You shouldn't have all the values you use passed as argument, so
> irq_ic_data should be one of them here.
>
Could you elaborate it a little bit?
> > +#define SUN4I_IRQ_ENABLE_REG_OFFSET 0x40
> > +#define SUN4I_IRQ_MASK_REG_OFFSET 0x50
> > +#define SUNIV_IRQ_ENABLE_REG_OFFSET 0x20
> > +#define SUNIV_IRQ_MASK_REG_OFFSET 0x30
> > +
> > +struct sunxi_irq_chip_data{
> ^ a space here
>
> > + void __iomem *irq_base;
> > + struct irq_domain *irq_domain;
> > + u32 enable_req_offset;
> > + u32 mask_req_offset;
>
> s/req/reg/ ?
>
Oops sorry
...
> > +
> > +static int __init suniv_ic_of_init(struct device_node *node,
> > + struct device_node *parent)
> > +{
> > + irq_ic_data = kzalloc(sizeof(struct sunxi_irq_chip_data), GFP_KERNEL);
> > + if (!irq_ic_data) {
> > + pr_err("kzalloc failed!\n");
> > + return -ENOMEM;
> > + }
> > +
> > + irq_ic_data->enable_req_offset = SUNIV_IRQ_ENABLE_REG_OFFSET;
> > + irq_ic_data->mask_req_offset = SUNIV_IRQ_MASK_REG_OFFSET;
> > +
> > + return sun4i_of_init(node, parent);
> > +}
> > +
> > +IRQCHIP_DECLARE(allwinner_sunvi_ic, "allwinner,suniv-f1c100s-ic", suniv_ic_of_init);
>
> You can even split that addition to a new patch as well.
OK. I will do 3 patches. First one will add a struct that holds only
base and domain. Second one will add register offsets to that struct.
Third one will add f1c100s support. Is that ok?
Mesih
next prev parent reply other threads:[~2018-11-22 15:02 UTC|newest]
Thread overview: 39+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-11-21 18:30 [RFC PATCH v3 00/17] initial support for "suniv" Allwinner new ARM9 SoC Mesih Kilinc
2018-11-21 18:30 ` [RFC PATCH v3 01/17] ARM: add CONFIG_ARCH_SUNXI_V7 for differentiate ARMv5/v7 Allwinner SoCs Mesih Kilinc
[not found] ` <267ffcf3b91930a82f20d93e1fad1fceaf8b9b0e.1542824904.git.mesihkilinc-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2018-11-22 8:26 ` Maxime Ripard
2018-11-22 15:07 ` Mesih Kilinc
2018-11-22 15:57 ` Maxime Ripard
2018-11-21 18:30 ` [RFC PATCH v3 02/17] dt-bindings: arm: Add new Allwinner ARMv5 F1C100s SoC Mesih Kilinc
[not found] ` <4c5ee3bf877ba0de233ec400ca27f3a91014a737.1542824904.git.mesihkilinc-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2018-11-22 8:26 ` Maxime Ripard
2018-11-21 18:30 ` [RFC PATCH v3 03/17] ARM: sunxi: add Allwinner ARMv5 SoCs Mesih Kilinc
[not found] ` <731846a31ad2c602ca4fcf1c417deace60c625b8.1542824904.git.mesihkilinc-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2018-11-22 8:27 ` Maxime Ripard
2018-11-21 18:30 ` [RFC PATCH v3 04/17] dt-bindings: interrupt-controller: Add suniv interrupt-controller Mesih Kilinc
[not found] ` <d0942fe5b1bb83646af0fa1f475ac0b468e1612e.1542824904.git.mesihkilinc-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2018-11-22 8:27 ` Maxime Ripard
2018-11-21 18:30 ` [RFC PATCH v3 05/17] irqchip/sun4i: add support for suniv interrupt controller Mesih Kilinc
[not found] ` <08b40429e46626f4caf8e4d2287b5c4d354e3b7f.1542824904.git.mesihkilinc-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2018-11-22 8:35 ` Maxime Ripard
2018-11-22 15:02 ` Mesih Kilinc [this message]
2018-11-22 15:59 ` Maxime Ripard
2018-11-21 18:30 ` [RFC PATCH v3 06/17] dt-bindings: timer: Add Allwinner suniv timer Mesih Kilinc
[not found] ` <9927bde09ef20cadccdf81541fd1f91165508357.1542824904.git.mesihkilinc-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2018-11-22 8:35 ` Maxime Ripard
2018-11-21 18:30 ` [RFC PATCH v3 07/17] clocksource: sun4i: add a compatible for suniv Mesih Kilinc
[not found] ` <60bc70fc43743f664de76abf3ab0a01cd7924458.1542824904.git.mesihkilinc-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2018-11-22 8:36 ` Maxime Ripard
2018-11-22 13:23 ` Daniel Lezcano
2018-11-21 18:30 ` [RFC PATCH v3 08/17] dt-bindings: pinctrl: Add Allwinner suniv F1C100s pinctrl Mesih Kilinc
[not found] ` <70ac024bf3b6623dc41021ac4893c37adb85a97d.1542824904.git.mesihkilinc-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2018-11-22 8:36 ` Maxime Ripard
2018-11-21 18:30 ` [RFC PATCH v3 09/17] pinctrl: sunxi: add support for suniv F1C100s (newer F-series SoCs) Mesih Kilinc
[not found] ` <fc20d96f5531d7d1eb5ce3d5cf920c8bf59cad58.1542824904.git.mesihkilinc-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2018-11-22 8:36 ` Maxime Ripard
2018-11-22 8:45 ` Maxime Ripard
2018-11-21 18:30 ` [RFC PATCH v3 10/17] dt-bindings: clock: Add Allwinner suniv F1C100s CCU Mesih Kilinc
[not found] ` <88a177299386b610d429d4c1eb2566727aef7b17.1542824904.git.mesihkilinc-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2018-11-22 8:37 ` Maxime Ripard
2018-11-21 18:30 ` [RFC PATCH v3 11/17] clk: sunxi-ng: add support for suniv F1C100s SoC Mesih Kilinc
2018-11-22 8:38 ` Maxime Ripard
2018-11-21 18:30 ` [RFC PATCH v3 12/17] dt-bindings: sram: Add Allwinner suniv F1C100s Mesih Kilinc
[not found] ` <37d6119252ea024bdfd19f9c8061bcd16fec8b58.1542824904.git.mesihkilinc-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2018-11-22 8:39 ` Maxime Ripard
2018-11-21 18:30 ` [RFC PATCH v3 13/17] SoC: sunxi: Add support for Allwinner ARMv5 F1C100s sram Mesih Kilinc
[not found] ` <89f6179c17a98f160301fdeef27df35b359847e3.1542824904.git.mesihkilinc-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2018-11-22 8:39 ` Maxime Ripard
2018-11-21 18:30 ` [RFC PATCH v3 14/17] dt-bindings: watchdog: Add Allwinner ARMv5 F1C100s wdt Mesih Kilinc
[not found] ` <713a56409ba6afb4896d3ac9617f1784c7889f0f.1542824904.git.mesihkilinc-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2018-11-22 8:39 ` Maxime Ripard
2018-11-21 18:30 ` [RFC PATCH v3 15/17] watchdog: Add support for " Mesih Kilinc
2018-11-21 18:30 ` [RFC PATCH v3 16/17] ARM: dts: suniv: add initial DTSI file for F1C100s Mesih Kilinc
[not found] ` <05dab577154c72117678c2f49ae85a9663a630e2.1542824904.git.mesihkilinc-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2018-11-22 8:43 ` Maxime Ripard
2018-11-21 18:30 ` [RFC PATCH v3 17/17] ARM: suniv: f1c100s: add device tree for Lichee Pi Nano Mesih Kilinc
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=20181122150200.p6e22sp3v4npb42w@ThinkPad \
--to=mesihkilinc-re5jqeeqqe8avxtiumwx3w@public.gmane.org \
--cc=daniel.lezcano-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org \
--cc=devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=icenowy-h8G6r0blFSE@public.gmane.org \
--cc=julian.calaby-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
--cc=linus.walleij-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org \
--cc=linux-I+IVW8TIWO2tmTQ+vhA3Yw@public.gmane.org \
--cc=linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org \
--cc=linux-clk-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-gpio-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-sunxi-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org \
--cc=marc.zyngier-5wv7dgnIgG8@public.gmane.org \
--cc=maxime.ripard-LDxbnhwyfcJBDgjK7y7TUQ@public.gmane.org \
--cc=robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org \
--cc=wens-jdAy2FN1RRM@public.gmane.org \
/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).