public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* Complete support PC-9800 for 2.5.64-ac4 (0/11) summary
@ 2003-03-16  0:16 Osamu Tomita
  2003-03-16  1:02 ` Complete support PC-9800 for 2.5.64-ac4 (1/11) console Osamu Tomita
                   ` (10 more replies)
  0 siblings, 11 replies; 19+ messages in thread
From: Osamu Tomita @ 2003-03-16  0:16 UTC (permalink / raw)
  To: Linux Kernel Mailing List; +Cc: Alan Cox

This is the patchset to support NEC PC-9800 subarchitecture
against 2.5.64-ac4.

Thanks for many advices and merging.
PC-9800 works fine with this patchset.
I put archived patchset URL bellow.
http://downloads.sourceforge.jp/linux98/2638/linux98-2.5.64-ac4.patch.tar.bz2

Comments and test reports are wellcome.

Description:
 o console.patch (1/11)
   PC98 Standard console support (without japanese kanji character).

 drivers/video/console/Kconfig  |   14 ++
 drivers/char/Makefile          |    4 
 drivers/char/vt.c              |   63 +++++++--
 drivers/char/console_macros.h  |    4 
 drivers/char/console_pc9800.h  |   14 ++
 drivers/char/consolemap.c      |   58 ++++++++-
 drivers/char/pc9800.uni        |  260 +++++++++++++++++++++++++++++++++++++++++
 drivers/char/vt_ioctl.c        |   19 ++
 include/linux/console.h        |   11 +
 include/linux/console_struct.h |   13 +-
 include/linux/tty.h            |    4 
 include/linux/vt.h             |    1 
 include/linux/vt_buffer.h      |    4 
 13 files changed, 450 insertions(+), 19 deletions(-)

 o core-misc.patch (2/11)
   Small patches for PC98 support core.

 include/asm-i386/io.h     |    6 ++++++
 include/asm-i386/irq.h    |    4 ++++
 include/asm-i386/pc9800.h |   27 +++++++++++++++++++++++++++
 include/linux/kernel.h    |    6 ++++++
 4 files changed, 43 insertions(+)

 o dma.patch (3/11)
   DMA support for PC98.

 include/asm-i386/dma.h         |    7 +
 include/asm-i386/pc9800_dma.h  |  238 +++++++++++++++++++++++++++++++++++++++++
 include/asm-i386/scatterlist.h |    6 +
 kernel/dma.c                   |    3 
 4 files changed, 254 insertions(+)

 o ide.patch (4/11)
   PC98 standard IDE I/F support.

 drivers/ide/ide-disk.c  |   67 ++++++++++++++++++++++++++++++++++++++++++++++++
 drivers/ide/ide.c       |    9 +++++-
 drivers/ide/ide-probe.c |   16 +++++++++--
 include/linux/hdreg.h   |   19 +++++++++++++
 4 files changed, 107 insertions(+), 4 deletions(-)

 o kanji.patch (5/11)
   japanese kanji character support for PC98 console.

 drivers/char/console_macros.h  |   10 +
 drivers/char/vt.c              |  393 +++++++++++++++++++++++++++++++++++------
 drivers/video/console/Kconfig  |    4 
 include/linux/console_struct.h |   12 +
 include/linux/consolemap.h     |    1 
 5 files changed, 369 insertions(+), 51 deletions(-)

 o kconfig.patch (6/11)
   Add selection for CONFIG_X86_PC9800.

 arch/i386/Kconfig |   10 ++++++++--
 1 files changed, 8 insertions(+), 2 deletions(-)

 o network_card.patch (7/11)
   C-bus(PC98's legacy bus like ISA) network cards support.

 drivers/net/8390.h       |    3 
 drivers/net/Makefile.lib |    1 
 drivers/net/ne2k_cbus.h  |  481 +++++++++++++++++++++++++
 drivers/net/Kconfig      |   55 ++
 drivers/net/Space.c      |    2 
 drivers/net/3c509.c      |   44 +-
 drivers/net/Makefile     |    1 
 drivers/net/at1700.c     |  120 +++++-
 drivers/net/ne2k_cbus.c  |  879 +++++++++++++++++++++++++++++++++++++++++++++++
 9 files changed, 1557 insertions(+), 29 deletions(-)

 o parport.patch (8/11)
   Parallel port support.

 drivers/parport/parport_pc.c |   28 +++++++++++++++++++++++++++-
 1 files changed, 27 insertions(+), 1 deletion(-)

 o pci.patch (9/11)
   Small changes for PCI support.

 arch/i386/pci/irq.c    |   27 +++++++++++++++++++++++++++
 drivers/pcmcia/yenta.c |    6 ++++++
 include/asm-i386/pci.h |    4 ++++
 3 files changed, 37 insertions(+)

 o pcmcia.patch (10/11)
   Small change for PCMCIA (16bits) support.

 drivers/pcmcia/i82365.c |    4 ++++
 1 files changed, 4 insertions(+)

 o scsi.patch (11/11)
   SCSI host adapter support.

 drivers/scsi/Kconfig     |    5 
 drivers/scsi/Makefile    |    1 
 drivers/scsi/pc980155.c  |  299 +++++++++++++++++++++++++++++++++++++++++++++++
 drivers/scsi/pc980155.h  |   52 ++++++++
 drivers/scsi/scsi_pc98.c |    2 
 drivers/scsi/sd.c        |    9 +
 drivers/scsi/wd33c93.c   |   49 +++----
 drivers/scsi/wd33c93.h   |    7 -
 8 files changed, 398 insertions(+), 26 deletions(-)


Osamu Tomita <tomita@cinet.co.jp>


^ permalink raw reply	[flat|nested] 19+ messages in thread
* RE: Complete support PC-9800 for 2.5.64-ac4 (11/11) SCSI
@ 2003-03-17  1:22 Osamu Tomita
  0 siblings, 0 replies; 19+ messages in thread
From: Osamu Tomita @ 2003-03-17  1:22 UTC (permalink / raw)
  To: 'James Bottomley '
  Cc: 'linux-scsi@vger.kernel.org',
	'Linux Kernel Mailing List ', 'Alan Cox ',
	'Christoph Hellwig ', 'Geert Uytterhoeven '

Thanks for the comments.

-----Original Message-----
From: James Bottomley
To: Osamu Tomita
Cc: Linux Kernel Mailing List; Alan Cox; Christoph Hellwig; Geert
Uytterhoeven
Sent: 2003/03/17 2:47
Subject: Re: Complete support PC-9800 for 2.5.64-ac4 (11/11) SCSI

> On Sat, 2003-03-15 at 19:15, Osamu Tomita wrote:
> > This is the patch to support NEC PC-9800 subarchitecture
> > against 2.5.64-ac4. (11/11)
> 
> > SCSI host adapter support.
> >  - BIOS parameter change for PC98.
> >  - Add pc980155 driver for old PC98.
> >  - wd33c93.c update error handler for eh_*.
> >  - wd33c93.h register to int for PIO mode.
> 
> I suppose the first thing to point out is that it would be helpful if
> you could send this to linux-scsi@vger.kernel.org.  Although most SCSI
> people also read linux-kernel, it is easy to lose things in the noise.
I see.

> > diff -Nru linux/drivers/scsi/sd.c linux98/drivers/scsi/sd.c
> > --- linux/drivers/scsi/sd.c	2003-03-05 12:29:32.000000000 +0900
> > +++ linux98/drivers/scsi/sd.c	2003-03-08 11:13:28.000000000 +0900
> > @@ -485,6 +485,15 @@
> >  	else
> >  		scsicam_bios_param(bdev, sdkp->capacity, diskinfo);
> >  
> > +#ifdef CONFIG_X86_PC9800
> > +	{
> > +		extern int pc98_bios_param(struct scsi_device *,
> > +					   struct block_device *,
> > +					   sector_t, int *);
> > +		pc98_bios_param(sdp, bdev, sdkp->capacity, diskinfo);
> > +	}
> > +#endif
> > +
> >  	if (put_user(diskinfo[0], &loc->heads))
> >  		return -EFAULT;
> >  	if (put_user(diskinfo[1], &loc->sectors))
> 
> You already have the pc98_bios_param as part of your local driver.  Why
> do you need this in addition?
We need this for other SCSI cards not only wd33c93. For example, we
have cards for PC98 that use aha152x, aic7xxx, advansys and sym53c8xx
drivers. 
PC98 architecture has own boot selector and can boot any of 16 partitions
per 1 drive. The partition table conatins C/H/S geometry. And we can
assign non zero head or sector. Boot selector reads the partition table
and call BIOS by C/H/S parameters on boottime. If geometry is not mach
to BIOS, cannot boot from the partition created on linux. 

> [...]
> >  static inline uchar
> >  read_aux_stat(const wd33c93_regs regs)
> >  {
> > -	return inb(*regs.SASR);
> > +	return inb(regs.SASR);
> >  }
> >  
> >  static inline void
> >  write_wd33c93(const wd33c93_regs regs, uchar reg_num, uchar value)
> >  {
> > -      outb(reg_num, *regs.SASR);
> > -      outb(value, *regs.SCMD);
> > +      outb(reg_num, regs.SASR);
> > +      outb(value, regs.SCMD);
> >  }
> >  
> [...]
> >     /* This is what the 3393 chip looks like to us */
> >  typedef struct {
> > +#ifdef CONFIG_WD33C93_PIO
> > +   unsigned int   SASR;
> > +   unsigned int   SCMD;
> > +#else
> >     volatile unsigned char  *SASR;
> >     volatile unsigned char  *SCMD;
> > +#endif
> >  } wd33c93_regs;
> >  
> 
> This really doesn't look right.  For non PIO (which is all drivers apart
> from yours), they expect to dereference SASR to get the port number (as
> an unsigned char).  If you remove the dereference, don't they all break?
> 
> Perhaps the better thing to do is to make your driver use an unsigned
> int *, so the dereference works in all cases.
> 
> James
I supposed, I use this patch with "#ifdef CONFIG_WD33C93_PIO" in
wd33c98.c. 

Regards,
Osamu Tomita

^ permalink raw reply	[flat|nested] 19+ messages in thread

end of thread, other threads:[~2003-03-17 10:15 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2003-03-16  0:16 Complete support PC-9800 for 2.5.64-ac4 (0/11) summary Osamu Tomita
2003-03-16  1:02 ` Complete support PC-9800 for 2.5.64-ac4 (1/11) console Osamu Tomita
2003-03-16  1:03 ` Complete support PC-9800 for 2.5.64-ac4 (2/11) misc core Osamu Tomita
2003-03-16  1:04 ` Complete support PC-9800 for 2.5.64-ac4 (3/11) DMA Osamu Tomita
2003-03-16  1:04 ` Complete support PC-9800 for 2.5.64-ac4 (4/11) IDE Osamu Tomita
2003-03-16  1:05 ` Complete support PC-9800 for 2.5.64-ac4 (5/11) kanji Osamu Tomita
2003-03-16  1:06 ` Complete support PC-9800 for 2.5.64-ac4 (6/11) Kconfig Osamu Tomita
2003-03-16  1:11 ` Complete support PC-9800 for 2.5.64-ac4 (7/11) NIC Osamu Tomita
2003-03-16  1:12 ` Complete support PC-9800 for 2.5.64-ac4 (8/11) parport Osamu Tomita
2003-03-16  1:13 ` Complete support PC-9800 for 2.5.64-ac4 (9/11) PCI Osamu Tomita
2003-03-16  1:14 ` Complete support PC-9800 for 2.5.64-ac4 (10/11) PCMCIA Osamu Tomita
2003-03-16  1:15 ` Complete support PC-9800 for 2.5.64-ac4 (11/11) SCSI Osamu Tomita
2003-03-16 17:47   ` James Bottomley
2003-03-16 18:36     ` Geert Uytterhoeven
2003-03-16 18:54       ` James Bottomley
2003-03-16 20:00         ` Geert Uytterhoeven
2003-03-16 22:26           ` James Bottomley
2003-03-17 10:25             ` Geert Uytterhoeven
  -- strict thread matches above, loose matches on Subject: below --
2003-03-17  1:22 Osamu Tomita

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox