[PATCH] Freescale mpc8315 interrupt chip
From: Juergen Schindele <hidden>
Date: 2017-05-11 12:34:33
Next try to submit two patches for Freescale mpc8315. first one -----------------------------------------------------------------------= ------------ powerpc/ipic: Configure "EDGE" capabilities for IRQ0 too (like IRQ1-7) Signed-off-by: Jurgen Schindele <redacted> The external IRQ0 has the same capabilities as the other IRQ1-7 and is handeled by the same register IPIC_SEPNR. When this register for "ack" is not setup in "ipic_info" you can not configure this IRQ for IRQ_TYPE_EDGE_FALLING. This is probably due to the non-continued number= of IRQ0 in the Freescale hwirq number mapping.
--- linux-4.11/arch/powerpc/sysdev/ipic.c.orig 2017-05-11 13:40:43.874=801534=20 +0200
+++ linux-4.11/arch/powerpc/sysdev/ipic.c 2017-05-11 14:05:06.336=610289=20 +0200
@@ -315,6 +315,7 @@ static struct ipic_info ipic_info[] =3D { .prio_mask =3D 7, }, [48] =3D { + .ack =3D IPIC_SEPNR, .mask =3D IPIC_SEMSR, .prio =3D IPIC_SMPRR_A, .force =3D IPIC_SEFCR,
second one -----------------------------------------------------------------------= ------------------ powerpc/ipic: Precise ERR printk when "ipic_set_irq_type" fails Signed-off-by: Jurgen Schindele <redacted> When you setup an interrupt of a certain type on this interrupt-control= er which is not supported on this hardware you will get an error log but y= ou dont know which interrupt was the cause. With this patch you are able to localize the source of failure.
--- linux-4.11/arch/powerpc/sysdev/ipic.c.orig 2017-05-11 14:08:07.098=824986=20 +0200
+++ linux-4.11/arch/powerpc/sysdev/ipic.c 2017-05-11 14:10:51.010=934755=20 +0200
@@ -611,14 +611,14 @@ static int ipic_set_irq_type(struct irq_ /* ipic supports only low assertion and high-to-low change sens=
es
*/
if (!(flow_type & (IRQ_TYPE_LEVEL_LOW | IRQ_TYPE_EDGE_FALLING))=
) {
- printk(KERN_ERR "ipic: sense type 0x%x not supported\n"=
,
- flow_type);
+ printk(KERN_ERR "ipic: sense type 0x%x not supported on=
"
+ "interrupt %d\n", flow_type, src);
return -EINVAL;
}
/* ipic supports only edge mode on external interrupts */
if ((flow_type & IRQ_TYPE_EDGE_FALLING) && !ipic_info[src].ack)=
{
printk(KERN_ERR "ipic: edge sense not supported on inte=
rnal "
- "interrupts\n");
+ "interrupt %d\n", src);
return -EINVAL;
}
I hope i respected all patch requirements ;-)
Am Donnerstag, 4. Mai 2017, 15:55:28 schrieb Scott Wood:On Thu, 2017-05-04 at 17:06 +0200, Juergen Schindele wrote:quoted
Am Dienstag, 2. Mai 2017, 22:29:34 schrieb Scott Wood:quoted
On Tue, 2017-05-02 at 14:43 +0200, Juergen Schindele wrote:quoted
Dear Scott, sorry for the delay but i am not very familiar with the formati=
ng.
quoted
quoted
quoted
I passed the patch trough checkpatch.pl and there was no more e=
rror.
quoted
quoted
quoted
pease find patch in attached file. Thanks=20 Documentation/process/submitting-patches.rst explains the way to =
format
quoted
quoted
and submit kernel patches. =20 Also, why the unrelated change to a print statement in ipic_set_irq_type()? =20 -Scott=20 The second diff is not completely unrelated because when i was investigating=20 the problem i saw only a message "edge sense not supported" but you=
dont
quoted
know on which interrupt he is complaining about. So i added this to=
find
quoted
out=20 who the suspect is.=20 That's fine but it's still fixing a different problem than "irq0 setu=
p" and
should be a separate patch. =20quoted
Corrected patch=20 Again, please read Documentation/process/submitting-patches.rst. Pat=
ches
should be inline, not attached. The subject line should be something=
like
"powerpc/ipic: Configure "EDGE" capabilities for IRQ0 (like IRQ1-7)" =
and
there should be more description in the body of the changelog. =20 -Scott
Thanks for your hints --=20 i. A. J=FCrgen Schindele Softwareentwicklung PSI Nentec GmbH Greschbachstra=DFe 12 76229 Karlsruhe Deutschland Telefon: +49 721 94249-51 Telefax: +49 721 94249-10 schindele@nentec.de www.nentec.de Gesch=E4ftsf=FChrung: Klaus Becker, Wolfgang Fischer Sitz der Gesellschaft: Karlsruhe Handelsregister: Amtsgericht Mannheim HRB 107658 Diese E-Mail enth=E4lt vertrauliche oder rechtlich gesch=FCtzte Informa= tionen.=20 Wenn Sie nicht der vorgesehene Empf=E4nger sind, informieren Sie bitte = sofort=20 den Absender und l=F6schen Sie diese E-Mail. Das unbefugte Kopieren die= ser E- Mail oder die unbefugte Weitergabe der enthaltenen Informationen ist ni= cht=20 gestattet. The information contained in this message is confidential or protected = by law.=20 If you are not the intended recipient, please contact the sender and de= lete=20 this message. Any unauthorised copying of this message or unauthorised=20= distribution of the information contained herein is prohibited.