Parallel port missing in 1.2.3-release



  • Hello

    I´m would like to know, how I can install the parallel ports drivers in pfsense 1.2.3-release.
    Im want to be able to use my HD44780 display with ldcproc over parallel port.

    or is it possible to "just" compile a new kernel with the driver included? if yes, how can I do this ?

    Please help.

    Best regards
    WolfieDK



  • I'm pretty sure pfSense includes some form of parallel port driver but I can't easily test that theory on my own equipment since I've disabled the parallel port in the BIOS.

    If I recall correctly, the parallel port driver in the kernel is for the parallel port as a network device. You might have a challenge getting it to work as a general purpose parallel port or getting a general purpose parallel port driver to override whatever is in the kernel.



  • Run:  dmesg | grep lpt

    If your Parallel port device has a driver loaded, you should see lpt0.



  • Thanks for your quickly reply.

    dreamslacker -> Here is none driver loaded. Thats my main problem. I have read on other threds on this forum that here is no driver loaded in the kernel. That is why I would like to know how I put this driver into my system or "just" recompile my existing kernel  ???

    wallabybob -> If the parallel port is in the kernel as a network device, how can I access it ? I have read a litte about it, but dont understand how I can get it to work.

    Best regards
    & a HAPPY NEW YEAR!  ;D
    WolfieDK



  • @wolfiedk:

    wallabybob -> If the parallel port is in the kernel as a network device, how can I access it ? I have read a litte about it, but dont understand how I can get it to work.

    I don't have any experience with doing what you want to do so I suggest you read the FreeBSD man pages for ppbus, ppc, plip etc

    Please post your startup (dmesg) output so we can see what parallel port devices and drivers are activated on your system.

    Happy new year to you too.



  • Hello wallabybob

    Tanks for your reply. Here you can see my dmesg with all information:

    Copyright (c) 1992-2009 The FreeBSD Project.
    Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
    	The Regents of the University of California. All rights reserved.
    FreeBSD is a registered trademark of The FreeBSD Foundation.
    FreeBSD 7.2-RELEASE-p5 #0: Sun Dec  6 22:57:48 EST 2009
        sullrich@FreeBSD_7.2_pfSense_1.2.3_snaps.pfsense.org:/usr/obj.pfSense/usr/pfSensesrc/src/sys/pfSense.7
    Timecounter "i8254" frequency 1193182 Hz quality 0
    CPU: AMD Athlon(tm) Processor (1145.14-MHz 686-class CPU)
      Origin = "AuthenticAMD"  Id = 0x680  Stepping = 0
      Features=0x183f9ff <fpu,vme,de,pse,tsc,msr,pae,mce,cx8,sep,mtrr,pge,mca,cmov,pat,pse36,mmx,fxsr>AMD Features=0xc0400800 <syscall,mmx+,3dnow!+,3dnow!>real memory  = 536870912 (512 MB)
    avail memory = 511033344 (487 MB)
    wlan: mac acl policy registered
    kbd1 at kbdmux0
    cryptosoft0: <software crypto="">on motherboard
    padlock0: No ACE support.
    pcib0: <host to="" pci="" bridge="">pcibus 0 on motherboard
    pir0: <pci 8="" interrupt="" routing="" table:="" entries="">on motherboard
    pci0: <pci bus="">on pcib0
    agp0: <sis 735="" host="" to="" agp="" bridge="">on hostb0
    pcib1: <pci-pci bridge="">at device 1.0 on pci0
    pci1: <pci bus="">on pcib1
    vgapci0: <vga-compatible display="">port 0x8800-0x88ff mem 0xc0000000-0xc7ffffff,0xcf5f0000-0xcf5fffff irq 5 at device 0.0 on pci1
    isab0: <pci-isa bridge="">at device 2.0 on pci0
    isa0: <isa bus="">on isab0
    ohci0: <sis 5571="" usb="" controller="">mem 0xcfffe000-0xcfffefff irq 11 at device 2.2 on pci0
    ohci0: [GIANT-LOCKED]
    ohci0: [ITHREAD]
    usb0: OHCI version 1.0, legacy support
    usb0: <sis 5571="" usb="" controller="">on ohci0
    usb0: USB revision 1.0
    uhub0: <sis 1="" 9="" ohci="" root="" hub,="" class="" 0,="" rev="" 1.00="" 1.00,="" addr="">on usb0
    uhub0: 3 ports with 3 removable, self powered
    ohci1: <sis 5571="" usb="" controller="">mem 0xcffff000-0xcfffffff irq 12 at device 2.3 on pci0
    ohci1: [GIANT-LOCKED]
    ohci1: [ITHREAD]
    usb1: OHCI version 1.0, legacy support
    usb1: <sis 5571="" usb="" controller="">on ohci1
    usb1: USB revision 1.0
    uhub1: <sis 1="" 9="" ohci="" root="" hub,="" class="" 0,="" rev="" 1.00="" 1.00,="" addr="">on usb1
    uhub1: 3 ports with 3 removable, self powered
    atapci0: <sis 735="" udma100="" controller="">port 0x1f0-0x1f7,0x3f6,0x170-0x177,0x376,0xff00-0xff0f at device 2.5 on pci0
    ata0: <ata 0="" channel="">on atapci0
    ata0: [ITHREAD]
    ata1: <ata 1="" channel="">on atapci0
    ata1: [ITHREAD]
    pci0: <multimedia, audio="">at device 2.7 (no driver attached)
    sis0: <sis 10="" 900="" 100basetx="">port 0xd400-0xd4ff mem 0xcfffd000-0xcfffdfff irq 11 at device 3.0 on pci0
    miibus0: <mii bus="">on sis0
    rlphy0: <rtl8201l 10="" 100="" media="" interface="">PHY 1 on miibus0
    rlphy0:  10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
    sis0: Ethernet address: 00:0a:e6:2b:52:19
    sis0: [ITHREAD]
    rl0: <realtek 10="" 8139="" 100basetx="">port 0xd000-0xd0ff mem 0xcfffcf00-0xcfffcfff irq 5 at device 9.0 on pci0
    miibus1: <mii bus="">on rl0
    rlphy1: <realtek internal="" media="" interface="">PHY 0 on miibus1
    rlphy1:  10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
    rl0: Ethernet address: 00:e0:4c:61:eb:98
    rl0: [ITHREAD]
    em0: <intel(r) 1000="" pro="" network="" connection="" 6.9.6="">port 0xcc00-0xcc3f mem 0xcffa0000-0xcffbffff,0xcff80000-0xcff9ffff irq 11 at device 11.0 on pci0
    em0: [FILTER]
    em0: Ethernet address: 00:1b:21:43:82:36
    fxp0: <intel 100="" 82559="" pro="" ethernet="">port 0xc800-0xc83f mem 0xcfffb000-0xcfffbfff,0xcfe00000-0xcfefffff irq 11 at device 13.0 on pci0
    miibus2: <mii bus="">on fxp0
    inphy0: <i82555 10="" 100="" media="" interface="">PHY 1 on miibus2
    inphy0:  10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
    fxp0: Ethernet address: 00:02:b3:61:65:49
    fxp0: [ITHREAD]
    fxp1: <intel 100="" 82559="" pro="" ethernet="">port 0xc400-0xc43f mem 0xcfffa000-0xcfffafff,0xcfc00000-0xcfcfffff irq 11 at device 15.0 on pci0
    miibus3: <mii bus="">on fxp1
    inphy1: <i82555 10="" 100="" media="" interface="">PHY 1 on miibus3
    inphy1:  10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
    fxp1: Ethernet address: 00:02:b3:61:58:ea
    fxp1: [ITHREAD]
    em1: <intel(r) 1000="" pro="" network="" connection="" 6.9.6="">port 0xc000-0xc03f mem 0xcff40000-0xcff5ffff,0xcff20000-0xcff3ffff irq 11 at device 17.0 on pci0
    em1: [FILTER]
    em1: Ethernet address: 00:1b:21:43:7f:bd
    cpu0 on motherboard
    pmtimer0 on isa0
    orm0: <isa option="" roms="">at iomem 0xc0000-0xccfff,0xcd000-0xcdfff,0xce000-0xcefff,0xcf000-0xcffff,0xd0000-0xd0fff,0xd1000-0xd8fff pnpid ORM0000 on isa0
    atkbdc0: <keyboard controller="" (i8042)="">at port 0x60,0x64 on isa0
    atkbd0: <at keyboard="">irq 1 on atkbdc0
    kbd0 at atkbd0
    atkbd0: [GIANT-LOCKED]
    atkbd0: [ITHREAD]
    sc0: <system console="">at flags 0x100 on isa0
    sc0: VGA <16 virtual consoles, flags=0x300>
    sio0 at port 0x3f8-0x3ff irq 4 flags 0x10 on isa0
    sio0: type 16550A
    sio0: [FILTER]
    sio1 at port 0x2f8-0x2ff irq 3 on isa0
    sio1: type 16550A
    sio1: [FILTER]
    vga0: <generic isa="" vga="">at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0
    unknown: <pnp0c01>can't assign resources (memory)
    unknown: <pnp0303>can't assign resources (port)
    speaker0: <pc speaker="">at port 0x61 pnpid PNP0800 on isa0
    unknown: <pnp0501>can't assign resources (port)
    unknown: <pnp0501>can't assign resources (port)
    Timecounter "TSC" frequency 1145135250 Hz quality 800
    Timecounters tick every 1.000 msec
    IPsec: Initialized Security Association Processing.
    ad0: 38166MB <wdc wd400bb-22jha0="" 05.01c05="">at ata0-master UDMA100
    acd0: CDROM <samsung cd-rom="" sh-152a="" c505="">at ata1-master UDMA33
    Trying to mount root from ufs:/dev/ad0s1a
    pflog0: promiscuous mode enabled
    em0: link state changed to UP
    vlan1: link state changed to UP
    vlan0: link state changed to UP
    rl0: link state changed to UP
    em1: link state changed to UP
    arp: 10.10.10.254 is on sis0 but got reply from 00:1e:ec:18:4a:3c on em1
    arp: 172.0.10.51 moved from 5a:41:1a:32:0e:20 to 56:12:2b:ad:21:2a on vlan0
    arp: 172.0.10.252 moved from 36:d7:f3:81:56:3d to ce:bb:11:b1:31:f9 on vlan0
    arp: 172.0.10.21 moved from 5a:41:1a:32:0e:20 to c2:1b:d3:5d:02:f1 on vlan0
    arp: 172.0.10.21 moved from c2:1b:d3:5d:02:f1 to 5a:41:1a:32:0e:20 on vlan0
    arp: 172.0.10.21 moved from 5a:41:1a:32:0e:20 to c2:1b:d3:5d:02:f1 on vlan0
    arp: 172.0.10.21 moved from c2:1b:d3:5d:02:f1 to 5a:41:1a:32:0e:20 on vlan0
    arp: 172.0.10.21 moved from 5a:41:1a:32:0e:20 to c2:1b:d3:5d:02:f1 on vlan0
    arp: 172.0.10.21 moved from c2:1b:d3:5d:02:f1 to 5a:41:1a:32:0e:20 on vlan0
    arp: 172.0.10.21 moved from 5a:41:1a:32:0e:20 to c2:1b:d3:5d:02:f1 on vlan0
    arp: 172.0.10.21 moved from c2:1b:d3:5d:02:f1 to 5a:41:1a:32:0e:20 on vlan0
    arp: 172.0.10.21 moved from 5a:41:1a:32:0e:20 to c2:1b:d3:5d:02:f1 on vlan0
    arp: 172.0.10.21 moved from c2:1b:d3:5d:02:f1 to 5a:41:1a:32:0e:20 on vlan0
    arp: 172.0.10.21 moved from 5a:41:1a:32:0e:20 to c2:1b:d3:5d:02:f1 on vlan0
    arp: 172.0.10.21 moved from c2:1b:d3:5d:02:f1 to 5a:41:1a:32:0e:20 on vlan0
    arp: 172.0.10.21 moved from 5a:41:1a:32:0e:20 to c2:1b:d3:5d:02:f1 on vlan0
    arp: 172.0.10.21 moved from c2:1b:d3:5d:02:f1 to 5a:41:1a:32:0e:20 on vlan0
    arp: 10.10.10.248 is on sis0 but got reply from 70:5a:b6:8c:c8:e5 on em1
    arp: 10.10.10.248 is on sis0 but got reply from 70:5a:b6:8c:c8:e5 on em1
    arp: 10.10.10.248 is on sis0 but got reply from 70:5a:b6:8c:c8:e5 on em1
    arp: 10.10.10.248 is on sis0 but got reply from 70:5a:b6:8c:c8:e5 on em1
    arp: 10.10.10.248 is on sis0 but got reply from 70:5a:b6:8c:c8:e5 on em1
    arp: 10.100.0.15 moved from d8:d3:85:fb:d5:8c to ce:cf:61:30:19:7f on em1
    arp: 10.100.0.15 moved from ce:cf:61:30:19:7f to d8:d3:85:fb:d5:8c on em1
    arplookup 10.221.117.77 failed: host is not on local network
    arplookup 10.221.115.219 failed: host is not on local network
    arp: 10.100.0.102 moved from 00:50:8b:a1:4e:72 to 00:1a:4b:80:16:d4 on em1
    arp: 10.100.0.102 moved from 00:1a:4b:80:16:d4 to 00:50:8b:a1:4e:72 on em1
    arplookup 169.254.70.57 failed: host is not on local network
    arplookup 169.254.70.57 failed: host is not on local network
    arp: 10.10.10.2 moved from 3c:4a:92:db:ee:90 to 3c:4a:92:db:ee:91 on sis0</samsung></wdc></pnp0501></pnp0501></pc></pnp0303></pnp0c01></generic></system></at></keyboard></isa></intel(r)></i82555></mii></intel></i82555></mii></intel></intel(r)></realtek></mii></realtek></rtl8201l></mii></sis></multimedia,></ata></ata></sis></sis></sis></sis></sis></sis></sis></isa></pci-isa></vga-compatible></pci></pci-pci></sis></pci></pci></host></software></syscall,mmx+,3dnow!+,3dnow!></fpu,vme,de,pse,tsc,msr,pae,mce,cx8,sep,mtrr,pge,mca,cmov,pat,pse36,mmx,fxsr> 
    

    With "dmesg | grep lpt" it returns no data.

    I have read about the plip and pcc, but dont know how to set it up.

    Best regards
    WolfieDK



  • As one of the developers confirmed in another thread, 1.2.x doesn't include parallel port support.  You should be able to copy in the module from a FreeBSD 7.2 kernel and then have it loaded on boot - you'll find many other threads on the subject if you search.



  • @cryhavok:  Seems like it's included in the embedded for 1.2.3?
    http://forum.pfsense.org/index.php?topic=29892.0

    I always assumed that the build had all the drivers from the stock FreeBSD it's based on.


  • Netgate Administrator

    I think in that thread we concluded that it's included in 2.0beta only.
    It is recognised as a device in 1.2.3 but no usable /dev/lpt0 appears.

    Steve



  • Hi stephenw10

    Posted on: Today at 08:40:20 am Posted by: stephenw10
    Insert QuoteI think in that thread we concluded that it's included in 2.0beta only.
    It is recognised as a device in 1.2.3 but no usable /dev/lpt0 appears.

    Steve

    Do you know if it can work in the 1.2.3-release ? And how to get it to work ?

    Best regards
    WolfieDK



  • Hi Cry Havok

    @Cry:

    As one of the developers confirmed in another thread, 1.2.x doesn't include parallel port support.  You should be able to copy in the module from a FreeBSD 7.2 kernel and then have it loaded on boot - you'll find many other threads on the subject if you search.

    Okay, thanks a lot, can you please send me link to how I can do this?

    Best Regards
    WolfieDK



  • Take a look at this post, which covers some of the steps required.

    In short:

    • Install FreeBSD 7.2 somewhere (virtual host?)

    • Extract the required kernel module (possibly named with ppc or lpt in the name)

    • Configure the module to be loaded on boot

    • Test



  • Hi Cry Havok

    @Cry:

    Take a look at this post, which covers some of the steps required.

    In short:

    • Install FreeBSD 7.2 somewhere (virtual host?)

    • Extract the required kernel module (possibly named with ppc or lpt in the name)

    • Configure the module to be loaded on boot

    • Test

    Okay, I will give it a go later todag. Sorry, but i´m no good at installing drivers on linux, but i will try.

    Best regards
    WolfieDK


  • Netgate Administrator

    Reading back through this thread and the other one. I see that on my 1.2.3 box the chipset parallel port is detected and the ppc driver is loaded. It's just the parallel bus and lpt port that isnt. That could be because my box doesn't have a physical port (and maybe not a bus).
    However on your system no chipset is detected so you may have a tougher problem on your hands!

    Steve



  • @wolfiedk:

    Sorry, but i´m no good at installing drivers on linux, but i will try.

    Just as well this isn't Linux then, isn't it ;)



  • As previously pointed out, there doesn't appear to be any kind of parallel port chip detected at startup.

    Does your system have a parallel port connector? (Might be pin header on the motherboard.) Parallel ports are now out of fashion.

    Do you know you have parallel port functionality in your system?  Is the parallel port enabled in the BIOS?

    For a number of reasons you might have to provide some form of parallel port hardware (e.g. PCI card, USB adapter) which might need another driver which might make what you are wanting to do "too hard" compared with, say, a serial interface to a LCD.



  • @Cry:

    @wolfiedk:

    Sorry, but i´m no good at installing drivers on linux, but i will try.

    Just as well this isn't Linux then, isn't it ;)

    Sorry, BSD even  8)



  • @stephenw10:

    Reading back through this thread and the other one. I see that on my 1.2.3 box the chipset parallel port is detected and the ppc driver is loaded. It's just the parallel bus and lpt port that isnt. That could be because my box doesn't have a physical port (and maybe not a bus).
    However on your system no chipset is detected so you may have a tougher problem on your hands!

    Steve

    I have now installed 1.2.3-release on tree other machines, an no one of then detectes the chipset parallel port. But today I will try with the 2.0beta. The Box u are talking about, could this bee a 1.2.3-RC candidate ?

    Best regards
    WolfieDK



  • @wallabybob:

    As previously pointed out, there doesn't appear to be any kind of parallel port chip detected at startup.

    Yearh, i will try with the 2.0beta today.

    @wallabybob:

    Does your system have a parallel port connector? (Might be pin header on the motherboard.) Parallel ports are now out of fashion.

    Yes it does, and the parallel port works fine under M$ Windblows.

    @wallabybob:

    Do you know you have parallel port functionality in your system?  Is the parallel port enabled in the BIOS?

    Yes.

    @wallabybob:

    For a number of reasons you might have to provide some form of parallel port hardware (e.g. PCI card, USB adapter) which might need another driver which might make what you are wanting to do "too hard" compared with, say, a serial interface to a LCD.

    Hmm okay, sorry to hear that. Mabye I have a Parallel PCI card I can try with. But the best solution would bee to get the parallel port existing in the system to work :-) I cant make these LCD´s into seriel so easly.

    Best regards
    WolfieDK


  • Netgate Administrator

    @wolfiedk:

    I have now installed 1.2.3-release on tree other machines, an no one of then detectes the chipset parallel port. But today I will try with the 2.0beta. The Box u are talking about, could this bee a 1.2.3-RC candidate ?

    I am running 1.2.3-release embedded (nanobsd) on a box with an Intel 875 chipset.
    Could it be that only the nanobsd image has ppc support?

    Steve



  • I just upgraded the firmware in my pfSense 2.0 system to the 1-Jan-2011 snapshot build. On reboot I entered the BIOS and (as I expected) the parallel port was disabled. I changed the parallel port setting from Disabled to 378/IRQ7 (first option, others were 278/IRQ5 and 3BC/IRQ7). On reboot I saw in the startup output:

    
    . . .
    ppc0: <parallel port="">port 0x378-0x37f,0x778-0x77b irq 7 drq 3 on acpi0
    ppc0: SMC-like chipset (ECP/EPP/PS2/NIBBLE) in COMPATIBLE mode
    ppc0: FIFO with 16/16/16 bytes threshold
    ppc0: [ITHREAD]
    ppbus0: <parallel port="" bus="">on ppc0
    plip0: <plip network="" interface="">on ppbus0
    plip0: [ITHREAD]
    lpt0: <printer>on ppbus0
    lpt0: [ITHREAD]
    lpt0: Interrupt-driven port
    ppi0: <parallel i="" o="">on ppbus0
     . . .
    
    # ls -l /dev/lpt0
    crw-------  1 root  wheel    0,  49 Jan  3 21:45 /dev/lpt0
    #</parallel></printer></plip></parallel></parallel> 
    

    Perhaps you have a "standard" parallel port but at a non-standard address. Can you find out its address, IRQ and (possibly) DMA channel? Perhaps the BIOS will report that; perhaps the BIOS will allow changing it to use standard port address and IRQ (378/IRQ7)

    You don't seem to be using ACPI. Is there a reason for that? I expect ACPI would tell FreeBSD the parallel port I/O resources. (ACPI is enabled in my system.)

    If you can't use ACPI there are alternate ways of specifying the parallel port i/o resources but it might be best to get the parallel port at the standard address, reboot and see if the startup reports a ppc0.



  • On my pfSense 2.0 box FreeBSD detects the parallel port regardless of which of the three addresses it is assigned and regardless of whether ACPI is enabled or disabled. The parallel port controller is named ppc0 if the port address is 0x378 or 0x3bc and is named ppc1 if the port address is 0x278.

    So what are the port addresses of these parallel ports which aren't detected? Maybe that information can be found in the BIOS. In my system the menu path is Integrated Peripherals -> Onboard SuperIO and from there I can change the parallel port settings.



  • Hello again.

    I have now tryed with the LiveCD pfsense2.0beta snapshot 03-jan-2010 and it detects the parallel port just fine. The error must bee in the 1.2.3-release kernel (or something like that, but i´m only guessing)

    Is is possible to integrate the missing "driveres" into the 1.2.3-release?
    I cant switch to the 2.0 because i´m using the multi-wan setup.

    Best regards
    WolfieDK




  • @wolfiedk:

    Is is possible to integrate the missing "driveres" into the 1.2.3-release?

    See Cry Havok's reply of 1st Jan.

    Perhaps someone else could comment on whether multiWAN works in recent pfSense 2.0 BETA snapshots.



  • Hi wallabybob:

    See Cry Havok's reply of 1st Jan.
    

    Yearh, i´m still searching the net for a step-by-step guide :-P

    Best regards
    WolfieDK


  • Rebel Alliance Developer Netgate

    @wallabybob:

    Perhaps someone else could comment on whether multiWAN works in recent pfSense 2.0 BETA snapshots.

    Works great. Has for months.


  • Netgate Administrator

    @jimp:

    Works great. Has for months.

    Problem solved!  ;D


Locked