mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Osamu Tomita <tomita@cinet.co.jp>
To: Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Subject: [PATCH 2.5.65-ac1] Support PC-9800 subarchitecture (3/14) misc core
Date: Fri, 21 Mar 2003 11:41:51 +0900	[thread overview]
Message-ID: <20030321024151.GC1847@yuzuki.cinet.co.jp> (raw)
In-Reply-To: <20030321022850.GA1767@yuzuki.cinet.co.jp>

This is the patch to support NEC PC-9800 subarchitecture
against 2.5.65-ac1. (3/14)

Small patches for PC98 core support.
io.h: Using ioport 0x5f to wait is recomended by vendor.
irq.h: Cascade IRQ is 7 for PC98 not 2.
pc98*.h: Add macros to access BIOS parameters.
kernel.h: define "pc98" for other files.
I think these are small and clean.

Regards,
Osamu Tomita

diff -Nru linux/include/asm-i386/io.h linux98/include/asm-i386/io.h
--- linux/include/asm-i386/io.h	2002-10-12 13:22:45.000000000 +0900
+++ linux98/include/asm-i386/io.h	2002-10-12 19:25:19.000000000 +0900
@@ -27,6 +27,8 @@
  *		Linus
  */
 
+#include <linux/config.h>
+
  /*
   *  Bit simplified and optimized by Jan Hubicka
   *  Support of BIGMEM added by Gerhard Wichert, Siemens AG, July 1999.
@@ -288,7 +290,11 @@
 #ifdef SLOW_IO_BY_JUMPING
 #define __SLOW_DOWN_IO "jmp 1f; 1: jmp 1f; 1:"
 #else
+#ifdef CONFIG_X86_PC9800
+#define __SLOW_DOWN_IO "outb %%al,$0x5f;"
+#else
 #define __SLOW_DOWN_IO "outb %%al,$0x80;"
+#endif
 #endif
 
 static inline void slow_down_io(void) {
diff -Nru linux/include/asm-i386/irq.h linux98/include/asm-i386/irq.h
--- linux/include/asm-i386/irq.h	2002-09-21 00:20:16.000000000 +0900
+++ linux98/include/asm-i386/irq.h	2002-09-21 07:17:56.000000000 +0900
@@ -17,7 +17,11 @@
 
 static __inline__ int irq_cannonicalize(int irq)
 {
+#ifdef CONFIG_X86_PC9800
+	return ((irq == 7) ? 11 : irq);
+#else
 	return ((irq == 2) ? 9 : irq);
+#endif
 }
 
 extern void disable_irq(unsigned int);
diff -Nru linux/include/asm-i386/pc9800.h linux98/include/asm-i386/pc9800.h
--- linux/include/asm-i386/pc9800.h	1970-01-01 09:00:00.000000000 +0900
+++ linux98/include/asm-i386/pc9800.h	2002-08-17 21:50:18.000000000 +0900
@@ -0,0 +1,27 @@
+/*
+ *  PC-9800 machine types.
+ *
+ *  Copyright (C) 1999	TAKAI Kosuke <tak@kmc.kyoto-u.ac.jp>
+ *			(Linux/98 Project)
+ */
+
+#ifndef _ASM_PC9800_H_
+#define _ASM_PC9800_H_
+
+#include <asm/pc9800_sca.h>
+#include <asm/types.h>
+
+#define __PC9800SCA(type, pa)	(*(type *) phys_to_virt(pa))
+#define __PC9800SCA_TEST_BIT(pa, n)	\
+	((__PC9800SCA(u8, pa) & (1U << (n))) != 0)
+
+#define PC9800_HIGHRESO_P()	__PC9800SCA_TEST_BIT(PC9800SCA_BIOS_FLAG, 3)
+#define PC9800_8MHz_P()		__PC9800SCA_TEST_BIT(PC9800SCA_BIOS_FLAG, 7)
+
+				/* 0x2198 is 98 21 on memory... */
+#define PC9800_9821_P()		(__PC9800SCA(u16, PC9821SCA_ROM_ID) == 0x2198)
+
+/* Note PC9821_...() are valid only when PC9800_9821_P() was true. */
+#define PC9821_IDEIF_DOUBLE_P()	__PC9800SCA_TEST_BIT(PC9821SCA_ROM_FLAG4, 4)
+
+#endif
diff -Nru linux-2.5.65/include/linux/kernel.h linux98-2.5.65/include/linux/kernel.h
--- linux-2.5.65/include/linux/kernel.h	2003-03-18 06:43:37.000000000 +0900
+++ linux98-2.5.65/include/linux/kernel.h	2003-03-20 10:21:22.000000000 +0900
@@ -235,4 +235,10 @@
 #define __FUNCTION__ (__func__)
 #endif
 
+#ifdef CONFIG_X86_PC9800
+#define pc98 1
+#else
+#define pc98 0
+#endif
+
 #endif

  parent reply	other threads:[~2003-03-21  2:31 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-03-21  2:28 [PATCH 2.5.65-ac1] Support PC-9800 subarchitecture (0/14) summary Osamu Tomita
2003-03-21  2:38 ` [PATCH 2.5.65-ac1] Support PC-9800 subarchitecture (1/14) boot98 update Osamu Tomita
2003-03-21  2:40 ` [PATCH 2.5.65-ac1] Support PC-9800 subarchitecture (2/14) console Osamu Tomita
2003-03-21  2:41 ` Osamu Tomita [this message]
2003-03-21  2:44 ` [PATCH 2.5.65-ac1] Support PC-9800 subarchitecture (4/14) DMA Osamu Tomita
2003-03-21  2:45 ` [PATCH 2.5.65-ac1] Support PC-9800 subarchitecture (5/14) floppy update Osamu Tomita
2003-03-21  2:46 ` [PATCH 2.5.65-ac1] Support PC-9800 subarchitecture (6/14) IDE Osamu Tomita
2003-03-21  2:48 ` [PATCH 2.5.65-ac1] Support PC-9800 subarchitecture (7/14) kanji Osamu Tomita
2003-03-21  2:50 ` [PATCH 2.5.65-ac1] Support PC-9800 subarchitecture (8/14) kconfig Osamu Tomita
2003-03-21  2:51 ` [PATCH 2.5.65-ac1] Support PC-9800 subarchitecture (9/14) NIC Osamu Tomita
2003-03-21  4:11   ` Jeff Garzik
2003-03-21  4:35     ` Osamu Tomita
2003-03-21  2:57 ` [PATCH 2.5.65-ac1] Support PC-9800 subarchitecture (10/14) parport Osamu Tomita
2003-03-21  2:59 ` [PATCH 2.5.65-ac1] Support PC-9800 subarchitecture (11/14) PCI Osamu Tomita
2003-03-21  3:00 ` [PATCH 2.5.65-ac1] Support PC-9800 subarchitecture (12/14) PCMCIA Osamu Tomita
2003-03-21  3:02 ` [PATCH 2.5.65-ac1] Support PC-9800 subarchitecture (13/14) SCSI Osamu Tomita
2003-03-21  3:04 ` [PATCH 2.5.65-ac1] Support PC-9800 subarchitecture (14/14) video update 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=20030321024151.GC1847@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®