On Sat, 2012-05-05 at 23:06 -0600, jeshua wrote: > On May 5, 2012, at 8:14 PM, jeshua wrote: > > > 'pcils -v' reveals: > > > > 08:00.1 Non-VGA unclassified device: Oxford Semiconductor Ltd OX16PCI954 > > (Quad 16950 UART) function 1 (parallel port) (rev 01) > > Subsystem: Oxford Semiconductor Ltd Device 0000 > > Flags: medium devsel, IRQ 18 > > I/O ports at c050 [size=8] > > I/O ports at c040 [size=8] > > I/O ports at c000 [size=32] > > I am looking at the data sheet for that chip: > > http://www.datasheetarchive.com/OX16PCI952-datasheet.html# > > It states on page 52: > > To use the Enhanced Parallel Port (‘EPP’) mode, the mode > field of the Extended Control Register (ECR[7:5]) must be > set to ‘100’ using the negotiation steps as defined by the > IEEE1284 specification > > … > > The register set is compatible with the Microsoft(R) register > definition. Assuming that the upper block is located 400h > above the lower block, the EPP registers are found at > offset 000-007h and 400-402h. > > > Does anyone know what that actually means? Its a bit over my head.
My experience has been that the lspci output lists the base and extended address for the parallel port, plus any other addresses for other features. You have UART's on your card, so my guess is that they are accessed through one address, maybe C000. Then the parallel port base at C040 and the extended register at C050, or some other order of the same addresses. I've found the dmesg command can help sort the addresses out. Here is what I get on the PC I'm typing on: kwallace@neptune:~$ dmesg | grep parp [ 8.614499] parport_pc 00:0c: reported by Plug and Play ACPI [ 8.614529] parport0: PC-style at 0x378, irq 7 [PCSPP,TRISTATE,EPP] [ 8.724443] lp0: using parport0 (interrupt-driven). kwallace@neptune:~$ grep filters the dmesg output to show only the lines with "parp" in them. You can run dmesg again without grep to see the lines close to these lines. The above shows that the module parport_pc found a port at base address 378. Your dmesg should list a port with one of the addresses from your lspci output. The extended address show also show up next to the base address but presented in parentheses. From the above dmesg, the available modes are listed within the "[...]", but my example shows the extended found wasn't found (because no address in "(...)") because none of the extended features was selected, in this case from the BIOS because it is a motherboard port. For showport enter the base and extended address options with the mode option letter next, such as: "sudo ./showport C040 C050 n" "sudo" is needed because we need root privileges to access the parallel port. "./" is often needed because I usually run showport from the directory where showport resides (./ is a Linux trick to run local files). I'm guessing at the addresses, and "n" makes no change. Replace the "n" with an "e" to get EPP, or as you found, place a "100" in the top three bits of the mode register. "s" puts the port into SPP mode. It might be better to have options for all the modes available, but that was as far as I got with the program to get what I needed at the time. If this doesn't work, posting your showport output may help. Good luck. -- Kirk Wallace http://www.wallacecompany.com/machine_shop/ http://www.wallacecompany.com/E45/index.html California, USA ------------------------------------------------------------------------------ Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ _______________________________________________ Emc-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/emc-users
