From: Osamu Tomita <tomita@cinet.co.jp>
To: Alan Cox <alan@lxorguk.ukuu.org.uk>
Cc: Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Subject: [PATCH 2.5.66-ac2] PC-9800 sub architecture support (7/9) PCI
Date: Mon, 7 Apr 2003 12:55:42 +0900 [thread overview]
Message-ID: <20030407035542.GG4840@yuzuki.cinet.co.jp> (raw)
In-Reply-To: <20030407033627.GA4798@yuzuki.cinet.co.jp>
This is the patch to support NEC PC-9800 subarchitecture
against 2.5.66-ac2. (7/9)
Small changes for PCI support.
Fix for difference of IRQ numbers and IO addresses.
Regards,
Osamu Tomita
diff -Nru linux/arch/i386/pci/irq.c linux98/arch/i386/pci/irq.c
--- linux/arch/i386/pci/irq.c 2002-10-12 13:22:46.000000000 +0900
+++ linux98/arch/i386/pci/irq.c 2002-10-12 14:18:52.000000000 +0900
@@ -5,6 +5,7 @@
*/
#include <linux/config.h>
+#include <linux/pci_ids.h>
#include <linux/types.h>
#include <linux/kernel.h>
#include <linux/pci.h>
@@ -25,6 +26,7 @@
static struct irq_routing_table *pirq_table;
+#ifndef CONFIG_X86_PC9800
/*
* Never use: 0, 1, 2 (timer, keyboard, and cascade)
* Avoid using: 13, 14 and 15 (FP error and IDE).
@@ -36,6 +38,20 @@
1000000, 1000000, 1000000, 1000, 1000, 0, 1000, 1000,
0, 0, 0, 0, 1000, 100000, 100000, 100000
};
+#else
+/*
+ * Never use: 0, 1, 2, 7 (timer, keyboard, CRT VSYNC and cascade)
+ * Avoid using: 8, 9 and 15 (FP error and IDE).
+ * Penalize: 4, 5, 11, 12, 13, 14 (known ISA uses: serial, floppy, sound, mouse
+ * and parallel)
+ */
+unsigned int pcibios_irq_mask = 0xff78;
+
+static int pirq_penalty[16] = {
+ 1000000, 1000000, 1000000, 0, 1000, 1000, 0, 1000000,
+ 100000, 100000, 0, 1000, 1000, 1000, 1000, 100000
+};
+#endif
struct irq_router {
char *name;
@@ -612,6 +628,17 @@
r->set(pirq_router_dev, dev, pirq, 11);
}
+#ifdef CONFIG_X86_PC9800
+ if ((dev->class >> 8) == PCI_CLASS_BRIDGE_CARDBUS) {
+ if (pci_find_device(PCI_VENDOR_ID_INTEL,
+ PCI_DEVICE_ID_INTEL_82439TX, NULL) != NULL) {
+ if (mask & 0x0040) {
+ mask &= 0x0040; /* assign IRQ 6 only */
+ printk("pci-irq: Use IRQ6 for CardBus controller\n");
+ }
+ }
+ }
+#endif
/*
* Find the best IRQ to assign: use the one
* reported by the device if possible.
diff -Nru linux-2.5.66-ac1/drivers/pcmcia/yenta.c linux98-2.5.66-ac1/drivers/pcmcia/yenta.c
--- linux-2.5.66-ac1/drivers/pcmcia/yenta.c 2003-03-28 08:40:15.000000000 +0900
+++ linux98-2.5.66-ac1/drivers/pcmcia/yenta.c 2003-03-28 08:48:50.000000000 +0900
@@ -8,6 +8,7 @@
* Dynamically adjust the size of the bridge resource
*
*/
+#include <linux/config.h>
#include <linux/init.h>
#include <linux/pci.h>
#include <linux/sched.h>
@@ -452,6 +453,7 @@
add_timer(&socket->poll_timer);
}
+#ifndef CONFIG_X86_PC9800
/*
* Only probe "regular" interrupts, don't
* touch dangerous spots like the mouse irq,
@@ -462,6 +464,10 @@
* Default to 11, 10, 9, 7, 6, 5, 4, 3.
*/
static u32 isa_interrupts = 0x0ef8;
+#else
+/* Default to 12, 10, 6, 5, 3. */
+static u32 isa_interrupts = 0x1468;
+#endif
static unsigned int yenta_probe_irq(pci_socket_t *socket, u32 isa_irq_mask)
{
diff -Nru linux/include/asm-i386/pci.h linux98/include/asm-i386/pci.h
--- linux/include/asm-i386/pci.h 2002-06-09 14:29:24.000000000 +0900
+++ linux98/include/asm-i386/pci.h 2002-06-10 20:49:15.000000000 +0900
@@ -17,7 +17,11 @@
#endif
extern unsigned long pci_mem_start;
+#ifdef CONFIG_X86_PC9800
+#define PCIBIOS_MIN_IO 0x4000
+#else
#define PCIBIOS_MIN_IO 0x1000
+#endif
#define PCIBIOS_MIN_MEM (pci_mem_start)
void pcibios_config_init(void);
next prev parent reply other threads:[~2003-04-07 3:46 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-04-07 3:36 [PATCH 2.5.66-ac2] PC-9800 sub architecture support (0/9) summary Osamu Tomita
2003-04-07 3:45 ` [PATCH 2.5.66-ac2] PC-9800 sub architecture support (1/9) kconfig Osamu Tomita
2003-04-07 3:48 ` [PATCH 2.5.66-ac2] PC-9800 sub architecture support (2/9) console Osamu Tomita
2003-04-07 3:49 ` [PATCH 2.5.66-ac2] PC-9800 sub architecture support (3/9) core Osamu Tomita
2003-04-07 3:50 ` [PATCH 2.5.66-ac2] PC-9800 sub architecture support (4/9) DMA Osamu Tomita
2003-04-07 3:52 ` [PATCH 2.5.66-ac2] PC-9800 sub architecture support (5/9) IDE Osamu Tomita
2003-04-07 11:32 ` Alan Cox
2003-04-07 12:36 ` Osamu Tomita
2003-04-07 3:54 ` [PATCH 2.5.66-ac2] PC-9800 sub architecture support (6/9) japanese "kanji" Osamu Tomita
2003-04-07 3:55 ` Osamu Tomita [this message]
2003-04-07 3:56 ` [PATCH 2.5.66-ac2] PC-9800 sub architecture support (8/9) PCMCIA Osamu Tomita
2003-04-07 4:03 ` [PATCH 2.5.66-ac2] PC-9800 sub architecture support (9/9) SCSI Osamu Tomita
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=20030407035542.GG4840@yuzuki.cinet.co.jp \
--to=tomita@cinet.co.jp \
--cc=alan@lxorguk.ukuu.org.uk \
--cc=linux-kernel@vger.kernel.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
all inboxes | Powered by JetHome®