On May 6, 2012, at 1:38 AM, Kirk Wallace wrote: > 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:~$
Thanks Kirk, Actually it looks like the UARTs show up as a separate device: 08:00.0 Serial controller: Oxford Semiconductor Ltd OX16PCI954 (Quad 16950 UART) function 0 (Disabled) (rev 01) (prog-if 06) Subsystem: Oxford Semiconductor Ltd Device 0000 Flags: medium devsel, IRQ 18 I/O ports at c090 [size=8] I/O ports at c080 [size=8] I/O ports at c070 [size=8] I/O ports at c060 [size=8] I/O ports at c020 [size=32] Memory at fb101000 (32-bit, non-prefetchable) [size=4K] Capabilities: <access denied> Kernel driver in use: serial > 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. Looks like it is in SPP mode, here is the output from dmesg: I don't see the extended either? dmesg | grep parp [ 8.761283] parport_pc 0000:08:00.1: PCI INT A -> GSI 18 (level, low) -> IRQ 18 [ 8.761347] parport0: PC-style at 0xc050, irq 18 [PCSPP] [ 8.846838] lp0: using parport0 (interrupt-driven). > 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. I tried pretty much every possible combination of C040, C050 and C00 that I could think of. Here is as you suggest: sudo ./showport C040 C050 e ~~~~~ Base @ 0xc040 Extended @ 0xc050 DPR: 144 DSR: 64 DCR: 149 EPPA: 4 EPPD: 4 CFA: 4 CFB: 238 ECR: 4 ~~~~~ Setting mode to EPP ECR: 4 ~~~~~ That doesn't seem to work as well. Thanks again, Jeshua Lacock Founder/Engineer 3DTOPO Incorporated <http://3DTOPO.com> Phone: 208.462.4171 ------------------------------------------------------------------------------ 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 Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users