No subject


Tue Nov 20 16:43:21 MST 2007


        port = ((unsigned long) d->hpa) + PARPORT_GSC_OFFSET;

        /* 
            some older machines with ASP-chip don't support the enhanced parport modes 
        */
        if (!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);
        } else {
            printk("%s: enhanced parport-modes not supported.\n", __FUNCTION__);
        }

So, I guess it shouldn't have tried to initialise bidirectional-mode
on my old 715/75 with ASP.  If I force that 'if' to fail, then on reboot
I get:

  ASP version 1 at 0xf0800000 found.
  LED (ASP-style) display at f0800020 registered
  Found HIL at 0xf0821000, IRQ 94
  HIL: keyboard found at id 3
  parport_init_chip: enhanced parport-modes not supported.
  parport0: PC-style at 0xf0824800, irq 88 [PCSPP]
  Found i82596 at 0xf0826000, IRQ 87

And the machine boots ok.  I added debug just to check, (port+4) is
0xf0824804.  So is pdc_add_valid() broken, or is that not the right
address to be testing?

Oh, and a simple 'ls / > /dev/lp0' worked too.

Richard






More information about the parisc-linux mailing list