[parisc-linux] ASP Parallel port driver broken on HP9000/730
Richard Hirst
rhirst@linuxcare.com
Thu, 15 Feb 2001 09:54:54 +0000
On Thu, Feb 15, 2001 at 01:01:35AM +0100, Helge Deller wrote:
> I'm still sure, that this is the correct address to test, but maybe we should
> just disable the initialisation of bidirectional mode for machines which
> - have an ASP chip, or
> - have their parport-chip at address 0xf0824800 (which is the only region
> where the ASP has it's parport), or
> - on machines, where "parisc_get_cpu_type(cpu_data[0]) < pcxt_" (from
> hardware.h and processor.h) [but I'm not sure if pcxt_ is correct. You'll
> need to verify]
That parisc_get_cpu_type() bit isn't quite right, how about:
diff -u -r1.7 parport_gsc.c
--- parport_gsc.c 2001/01/25 00:01:32 1.7
+++ parport_gsc.c 2001/02/15 09:42:08
@@ -482,7 +482,7 @@
/*
some older machines with ASP-chip don't support the enhanced parport modes
*/
- if (!pdc_add_valid( (void *)(port+4))) {
+ if (boot_cpu_data.cpu_type > pcxt && !pdc_add_valid( (void *)(port+4))) {
/* Initialize bidirectional-mode (0x10) & data-tranfer-mode #1 (0x20) */
printk("%s: initialize bidirectional-mode.\n", __FUNCTION__);
parport_writeb ( (0x10 + 0x20), port + 4);
Works on my 715/75, where boot_cpu_data.cpu_type = 2 = pcxt.
Richard