I was asking myself why parport freeze my box loading it without parameters and don't do it when I call it with some parameters. I've looked at parport's source code and discoverd that depending on the use of parameters or not parport calls parport_pc_find_ports().
parport_pc_find_ports() calls parport_pc_init_superio().
parport_pc_init_superio() finds all the PCI devices matching parport_pc_pci_tbl and for each of these devices calls the device's probe function (all devices use sio_via_686a_probe() as their probe function).
sio_via_686a_probe() gets the base address, IRQ and DMA values from the pci device config register.
This function reads and writes some configuration registers.
For example:
/*
* unlock super i/o configuration set 0x85_1
*/
pci_read_config_byte(pdev, 0x85, &tmp);
tmp |= (l<<1);
pci_write_config_byte(pdev, 0x85, &tmp);
(What's that for???)
In my card's data sheet this register offsets don't appear. Where are these registers commented?
Ronnie.
-- To unsubscribe, send mail to: linux-parport-request@torque.net --
-- with the single word "unsubscribe" in the body of the message. --
This archive was generated by hypermail 2b29 : Sat May 26 2001 - 12:38:38 EDT