lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID:
 <AS8PR04MB8642733D81F0A37FBB70902E87C82@AS8PR04MB8642.eurprd04.prod.outlook.com>
Date: Tue, 4 Mar 2025 12:02:00 +0000
From: Jacky Bai <ping.bai@....com>
To: Thomas Gleixner <tglx@...utronix.de>, "shawnguo@...nel.org"
	<shawnguo@...nel.org>, "s.hauer@...gutronix.de" <s.hauer@...gutronix.de>
CC: "kernel@...gutronix.de" <kernel@...gutronix.de>, "festevam@...il.com"
	<festevam@...il.com>, "linux-kernel@...r.kernel.org"
	<linux-kernel@...r.kernel.org>, "imx@...ts.linux.dev" <imx@...ts.linux.dev>,
	"linux-arm-kernel@...ts.infradead.org"
	<linux-arm-kernel@...ts.infradead.org>, Aisheng Dong <aisheng.dong@....com>,
	Peng Fan <peng.fan@....com>, Frank Li <frank.li@....com>, "S.J. Wang"
	<shengjiu.wang@....com>
Subject: RE: [PATCH] irq: imx-irqsteer: irq_count can larger than registered
 irq

> Subject: Re: [PATCH] irq: imx-irqsteer: irq_count can larger than registered irq
> 
> On Tue, Mar 04 2025 at 17:45, Jacky Bai wrote:
> > From: Shengjiu Wang <shengjiu.wang@....com>
Hi Thomas,

> 
> Please use the proper subsystem prefix as documented:
> 
> 
...

> 
> Also 'irq_count can larger than registered irq' is not a sentence and tells
> absolutely nothing what this patch is about.
> 

My fault, will fix it.

> > The irqsteer IP itself can support up to 5 channels and each channel
> > can support max 960 IRQs per. The actual number of
> 
> Can you please write out words, i.e. interrupts, hardware etc.. This is a
> changelog and not twatter.
> 
> Aside of that: 'per.' does not make any sense. 'per' wants to be followed by a
> noun: '...per $WHAT.'
> 

Thx, will improve and fix in v2.

> > channels and IRQ per channel implemented in HW is SoC related.
> 
> > For previous i.MX SoCs, normally only one channel and max 512 IRQ is
> > implemented, But for i.MX94, the irqsteer HW is implemented for 960
> > IRQs, even it only has 384 IRQs connected.
> >
> > That means on i.MX94, the 'irq_number' is 6 but the 'irq_count' is
> 
> What means irq_number and irq_count here?

For irqsteer, the interrupt inputs are divided into groups, each group has 64 interrupt
Inputs and use one irqsteer's interrupt output line to raise interrupt to parent interrupt controller.

The irq_number means how many interrupt output lines from irqsteer are really
connected to the parent interrupt controller, while the irq_count means the max
interrupt input line groups in the irqsteer instance.

If the irq_count is 15, as each group has 64 interrupts, it means the irqsteer
can support up to 960 interrupt inputs.

> 
> > 15, so we need to increase the CHAN_MAX_OUTPUT_INT to 0xF(960 / 64)
> 
> What kind of math is 0xF(960 / 64) ? And what has this to do with
> irq_number=6 ad irq_count=15?

As mentioned above, if the irqsteer is designed in HW with max 960 interrupt inputs,
It needs 15 interrupt outputs: 960 / 16 = 15. Even if we only 384, 512, or any number of
interrupt inputs less than 960 are actually connected to valid peripheral interrupt.

For i.MX94, In the SoC design, the irqsteer is designed with max 960 interrupt inputs, the
irq_count is 15. But only 384 inputs are really connected in HW. For these 384 interrupts,
it need 6 irqsteer interrupt output(384 / 64 = 6), the irq_number is 6.

In other world, the irq_number means the number of used interrupt outputs, while irq_count
means the max interrupt outputs that can be supported by an irqsteer instance.

I will refine the changelog to make it more clear. Sorry for the confusion,^_^

BR
Jacky
> 
> Thanks,
> 
>         tglx


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ