linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "O.Sezer" <sezeroz@ttnet.net.tr>
To: Marcelo Tosatti <marcelo.tosatti@cyclades.com>
Cc: linux-kernel@vger.kernel.org, malware@t-online.de
Subject: Re: Linux 2.4.28-rc1
Date: Thu, 28 Oct 2004 17:29:49 +0300	[thread overview]
Message-ID: <4181025D.1020600@ttnet.net.tr> (raw)
In-Reply-To: <4180F415.8030409@ttnet.net.tr>

[-- Attachment #1: Type: text/plain, Size: 1899 bytes --]

O.Sezer wrote:
> Marcelo Tosatti wrote:
> 
>> On Wed, Oct 27, 2004 at 03:40:17PM +0300, O.Sezer wrote:
>>
>>> Marcelo Tosatti wrote:
>>>
>>>> Hi,
>>>>
>>>> If you have been suddenly CC'ed to this message please search
>>>> your name below - there is something which concerns you.
>>>>
>>>> Replying only to the list, myself and O.Sezer is appreciated.
>>>>
>>>> On Tue, Oct 26, 2004 at 05:02:44PM +0300, O.Sezer wrote:
>>>>
>>>>
>>>>> There are many lost/forgotten patches posted here on lkml. Since 
>>>>> 2.4.28
>>>>> is near and 2.4 is going into "deep maintainance" mode soon, I 
>>>>> gathered
>>>>> a short list of some of them. 
>>>>
>>>>
>>>>
>>>> Oh it is hard to bookkeep all of this. I hope people check and 
>>>> resend, but
>>>> they dont do that always.
>>>>
>>>>
>>>>
>>>>> There, sure, are many more of them,  but here it goes.
>>>>
>>>>
>>>>
>>>> Please send'em all. I really appreciate your efforts.
>>>
>>>
>>> [...]
>>>
>>>>> - Michael Mueller: opti-viper pci-chipset support
>>>>> (have an updated-for-2.4.23+ patch for this)
>>>>> http://marc.theaimsgroup.com/?t=106698970100002&r=1&w=2
>>>>> http://marc.theaimsgroup.com/?l=linux-kernel&m=106698965700864&w=2
>>>>
>>>>
>>>>
>>>> Should be applied - v2.6 also lacks it AFAICS.
>>>
>>>
>>> Attached is a one that's supposed to apply cleanly to and work
>>> with 2.4.23+ kernels.
>>
>>
>>
>> Ozkan,
>>
>> Someone needs to check v2.6.
>>
>> Can you or Michael do that please?
>>
>> I'll save it to 2.4.29pre.
> 
> 
> 2.6 doesn't have it but I don't know if it needs it (it should, but...)
> I don't have the hardware anymore, so Michael can look after it, I'm
> sure.
> 

OK, out of curiosity, I did a quick re-diff of the patch, applied onto
the correct file, and did a real quick compile test (and nothing more).
Nothing went bad. Can't say anything about functionality (Michael?).
It is attached. Whom to send it? Linus, akpm?

[-- Attachment #2: optiviper_26_test.diff --]
[-- Type: text/plain, Size: 1635 bytes --]

--- linux-2.6.9/arch/i386/pci/irq.c~
+++ linux-2.6.9/arch/i386/pci/irq.c
@@ -250,6 +250,44 @@
 }
 
 /*
+ * OPTI Viper-M/N+: Bit field with 3 bits per entry.
+ * Due to the lack of a specification the information about this chipset
+ * was taken from the NetBSD source code.
+ */
+static int pirq_viper_get(struct pci_dev *router, struct pci_dev *dev, int pirq)
+{
+	static const int viper_irq_decode[] = { 0, 5, 9, 10, 11, 12, 14, 15 };
+	u32 irq;
+
+	pci_read_config_dword(router, 0x40, &irq);
+	irq >>= (pirq-1)*3;
+	irq &= 7;
+
+	return viper_irq_decode[irq];
+}
+
+static int pirq_viper_set(struct pci_dev *router, struct pci_dev *dev, int pirq, int irq)
+{
+	static const int viper_irq_map[] = { -1, -1, -1, -1, -1, 1, -1, -1, -1, 2, 3, 4, 5, -1, 6, 7 };
+	int newval = viper_irq_map[irq];
+	u32 val;
+	u32 mask = 7 << (3*(pirq-1));
+#if 0
+	mask |= 0x10000UL << (pirq-1);	/* edge triggered */
+#endif
+
+	if ( newval == -1 )
+		return 0;
+	
+	pci_read_config_dword(router, 0x40, &val);
+	val &= ~mask;
+	val |= newval << (3*(pirq-1));
+	pci_write_config_dword(router, 0x40, val);
+
+	return 1;
+}
+
+/*
  * Cyrix: nibble offset 0x5C
  * 0x5C bits 7:4 is INTB bits 3:0 is INTA 
  * 0x5D bits 7:4 is INTD bits 3:0 is INTC
@@ -567,9 +605,16 @@
 			r->name = "OPTI";
 			r->get = pirq_opti_get;
 			r->set = pirq_opti_set;
-			return 1;
+			break;
+		case PCI_DEVICE_ID_OPTI_82C558:
+			r->name = "OPTI VIPER";
+			r->get = pirq_viper_get;
+			r->set = pirq_viper_set;
+			break;
+		default:
+			return 0;
 	}
-	return 0;
+	return 1;
 }
 
 static __init int ite_router_probe(struct irq_router *r, struct pci_dev *router, u16 device)

  reply	other threads:[~2004-10-28 14:36 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-10-26 14:02 Linux 2.4.28-rc1 O.Sezer
2004-10-26 20:33 ` Marcelo Tosatti
2004-10-26 23:28   ` Dave Jones
2004-10-27 12:40   ` O.Sezer
2004-10-27 14:29     ` Dave Jones
2004-10-27 15:29       ` O.Sezer
2004-10-27 18:58         ` Dave Jones
2004-10-28  9:54     ` Marcelo Tosatti
2004-10-28 13:28       ` O.Sezer
2004-10-28 14:29         ` O.Sezer [this message]
2004-10-28  1:19   ` Pete Zaitcev
2004-10-28  4:26   ` Jeff Garzik
2004-10-28 12:53   ` Russell King
2004-11-11 18:30   ` Roger Luethi
2004-10-27  2:52 ` Barry K. Nathan
2004-10-28 10:01   ` Marcelo Tosatti
  -- strict thread matches above, loose matches on Subject: below --
2004-10-22 18:59 Marcelo Tosatti
2004-10-22 22:14 ` Jan Engelhardt
2004-10-23 10:43   ` Marcelo Tosatti
2004-10-23 19:54     ` Jan Engelhardt
2004-10-23 13:30 ` Paul Fulghum
2004-10-23 11:39   ` Marcelo Tosatti

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=4181025D.1020600@ttnet.net.tr \
    --to=sezeroz@ttnet.net.tr \
    --cc=linux-kernel@vger.kernel.org \
    --cc=malware@t-online.de \
    --cc=marcelo.tosatti@cyclades.com \
    /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).