Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    Pfsense Install on Nokia IP390

    Scheduled Pinned Locked Moved Problems Installing or Upgrading pfSense Software
    118 Posts 8 Posters 40.7k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • R
      RBT-RS
      last edited by

      Hmm. Well what I'm planning on doing is testing the readio on ipso, using the the values you gave me. Hopefully the differences in values might be enough so that we can trawl through the data to find the LED io :P

      1 Reply Last reply Reply Quote 0
      • stephenw10S
        stephenw10 Netgate Administrator
        last edited by

        You could try running superiotool to see if it finds something we've not seen.

        Steve

        1 Reply Last reply Reply Quote 0
        • R
          RBT-RS
          last edited by

          Hmm. No luck unfortunately.

          superiotool r
          No Super I/O found
          
          1 Reply Last reply Reply Quote 0
          • stephenw10S
            stephenw10 Netgate Administrator
            last edited by

            Looks like you found a way to load it.  :)
            In case you used something odd. pfSense does support FreeBSD packages it's just that the 8.3 packages have now been archived so you have to specify the path:

            pkg_add -r http://ftp-archive.freebsd.org/pub/FreeBSD-Archive/ports/i386/packages-8.3-release/Latest/superiotool.tbz
            

            Anyway no luck there. It seems they're using the Altera chip for I/O purposes and since it's a programmable device there's no easy way find out what it does.
            Try running superiotool with verbose output (-V). That may give us some clue.

            Steve

            1 Reply Last reply Reply Quote 0
            • R
              RBT-RS
              last edited by

              Alright, here's the output for superiotool -V

              superiotool r
              Probing for ALi Super I/O at 0x3f0...
                Failed. Returned data: id=0xffff, rev=0xff
              Probing for ALi Super I/O at 0x370...
                Failed. Returned data: id=0xffff, rev=0xff
              Probing for Fintek Super I/O at 0x2e...
                Failed. Returned data: vid=0xffff, id=0xffff
              Probing for Fintek Super I/O at 0x4e...
                Failed. Returned data: vid=0x0000, id=0x0000
              Probing for ITE Super I/O (init=standard) at 0x2e...
                Failed. Returned data: id=0xffff, rev=0xf
              Probing for ITE Super I/O (init=it8761e) at 0x2e...
                Failed. Returned data: id=0xffff, rev=0xf
              Probing for ITE Super I/O (init=it8228e) at 0x2e...
                Failed. Returned data: id=0xffff, rev=0xf
              Probing for ITE Super I/O (init=0x87,0x87) at 0x2e...
                Failed. Returned data: id=0xffff, rev=0xf
              Probing for ITE Super I/O (init=standard) at 0x4e...
                Failed. Returned data: id=0x0000, rev=0x0
              Probing for ITE Super I/O (init=it8761e) at 0x4e...
                Failed. Returned data: id=0x0000, rev=0x0
              Probing for ITE Super I/O (init=it8228e) at 0x4e...
                Failed. Returned data: id=0x0000, rev=0x0
              Probing for ITE Super I/O (init=0x87,0x87) at 0x4e...
                Failed. Returned data: id=0x0000, rev=0x0
              Probing for ITE Super I/O (init=legacy/it8661f) at 0x370...
                Failed. Returned data: id=0xffff, rev=0xf
              Probing for ITE Super I/O (init=legacy/it8671f) at 0x370...
                Failed. Returned data: id=0xffff, rev=0xf
              Probing for NSC Super I/O at 0x2e...
                Failed. Returned data: port=0xff, port+1=0xff
              Probing for NSC Super I/O at 0x4e...
                Failed. Returned data: port=0x00, port+1=0x00
              Probing for NSC Super I/O at 0x15c...
                Failed. Returned data: port=0xff, port+1=0xff
              Probing for SMSC Super I/O (idregs=0x20/0x21) at 0x2e...
                Failed. Returned data: id=0xff, rev=0xff
              Probing for SMSC Super I/O (idregs=0x0d/0x0e) at 0x2e...
                Failed. Returned data: id=0xff, rev=0xff
              Probing for SMSC Super I/O (idregs=0x20/0x21) at 0x4e...
                Failed. Returned data: id=0x00, rev=0x00
              Probing for SMSC Super I/O (idregs=0x0d/0x0e) at 0x4e...
                Failed. Returned data: id=0x00, rev=0x00
              Probing for SMSC Super I/O (idregs=0x20/0x21) at 0x162e...
                Failed. Returned data: id=0xff, rev=0xff
              Probing for SMSC Super I/O (idregs=0x0d/0x0e) at 0x162e...
                Failed. Returned data: id=0xff, rev=0xff
              Probing for SMSC Super I/O (idregs=0x20/0x21) at 0x164e...
                Failed. Returned data: id=0xff, rev=0xff
              Probing for SMSC Super I/O (idregs=0x0d/0x0e) at 0x164e...
                Failed. Returned data: id=0xff, rev=0xff
              Probing for SMSC Super I/O (idregs=0x20/0x21) at 0x3f0...
                Failed. Returned data: id=0xff, rev=0xff
              Probing for SMSC Super I/O (idregs=0x0d/0x0e) at 0x3f0...
                Failed. Returned data: id=0xff, rev=0xff
              Probing for SMSC Super I/O (idregs=0x20/0x21) at 0x370...
                Failed. Returned data: id=0xff, rev=0xff
              Probing for SMSC Super I/O (idregs=0x0d/0x0e) at 0x370...
                Failed. Returned data: id=0xff, rev=0xff
              Probing for Winbond Super I/O (init=0x88) at 0x2e...
                Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff
              Probing for Winbond Super I/O (init=0x89) at 0x2e...
                Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff
              Probing for Winbond Super I/O (init=0x86,0x86) at 0x2e...
                Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff
              Probing for Winbond Super I/O (init=0x87,0x87) at 0x2e...
                Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff
              Probing for Winbond Super I/O (init=0x88) at 0x4e...
                Failed. Returned data: id/oldid=0x00/0x00, rev=0x00
              Probing for Winbond Super I/O (init=0x89) at 0x4e...
                Failed. Returned data: id/oldid=0x00/0x00, rev=0x00
              Probing for Winbond Super I/O (init=0x86,0x86) at 0x4e...
                Failed. Returned data: id/oldid=0x00/0x00, rev=0x00
              Probing for Winbond Super I/O (init=0x87,0x87) at 0x4e...
                Failed. Returned data: id/oldid=0x00/0x00, rev=0x00
              Probing for Winbond Super I/O (init=0x88) at 0x3f0...
                Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff
              Probing for Winbond Super I/O (init=0x89) at 0x3f0...
                Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff
              Probing for Winbond Super I/O (init=0x86,0x86) at 0x3f0...
                Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff
              Probing for Winbond Super I/O (init=0x87,0x87) at 0x3f0...
                Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff
              Probing for Winbond Super I/O (init=0x88) at 0x370...
                Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff
              Probing for Winbond Super I/O (init=0x89) at 0x370...
                Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff
              Probing for Winbond Super I/O (init=0x86,0x86) at 0x370...
                Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff
              Probing for Winbond Super I/O (init=0x87,0x87) at 0x370...
                Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff
              Probing for Winbond Super I/O (init=0x88) at 0x250...
                Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff
              Probing for Winbond Super I/O (init=0x89) at 0x250...
                Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff
              Probing for Winbond Super I/O (init=0x86,0x86) at 0x250...
                Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff
              Probing for Winbond Super I/O (init=0x87,0x87) at 0x250...
                Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff
              No Super I/O found
              
              1 Reply Last reply Reply Quote 0
              • stephenw10S
                stephenw10 Netgate Administrator
                last edited by

                No help there. One thing you could do is see if you can trace the connections from the ribbon cable. If they definitely connecting to the ICH we can see what pins are used and hence what GPIOs. It's possible that whatever is happening in IPSO it might be reconfiguring the ICH to enable more GPIOs. I thought that was only possible at boot though.

                Steve

                1 Reply Last reply Reply Quote 0
                • R
                  RBT-RS
                  last edited by

                  Hmm. I think the tracks must be sandwiched in the motherboard, I can't see any tracks on either side..

                  Anyway, following Charliew's suggestion, I downloaded readio onto ipso.. but..

                  How could I get readio working?

                  1 Reply Last reply Reply Quote 0
                  • stephenw10S
                    stephenw10 Netgate Administrator
                    last edited by

                    Yes, I was forgetting it's a BGA package and looking at the sheet most of the GPIO pins are on the inside anyway so it's unlikely you'd be able to see the tracks.

                    You could compile it against FreeBSD 6 (or whatever specific FreeBSD version that is built on). What is the result of:

                    uname -a
                    

                    You could see what libc version you do have and symlink it to so.7. That can work but is bad practise.

                    Steve

                    1 Reply Last reply Reply Quote 0
                    • R
                      RBT-RS
                      last edited by

                      Here's the output for uname -a

                      I believe IPSO runs on FreeBSD version 6.x?

                      1 Reply Last reply Reply Quote 0
                      • stephenw10S
                        stephenw10 Netgate Administrator
                        last edited by

                        Ok, here's readio compiled on FreeBSD 6.2. Just remove the .png extension I had to pout that on because you're only allowed a few file types as attachments. Give that a try. As far as I can find IPSO 6.2 is built on FreeBSD 6.2 but it's hard to get any sort of definitive answer.
                        The MD5 should be 7deed0428bb423bbf803fb41b7d88d0a

                        Steve

                        readio6_2.png

                        1 Reply Last reply Reply Quote 0
                        • C
                          charliem
                          last edited by

                          Could be 6.2 or 6.1, based on the version file I posted earlier (https://forum.pfsense.org/index.php?topic=81292.msg446131#msg446131).  This executable is dynamically linked, so if that doesn't work, you could statically link it.  Personally, I would have broken out the black tape long ago  :)

                          1 Reply Last reply Reply Quote 0
                          • R
                            RBT-RS
                            last edited by

                            Alright, I ran readio on IPSO - here's the results:

                            A lot of ff going on here.

                            1 Reply Last reply Reply Quote 0
                            • stephenw10S
                              stephenw10 Netgate Administrator
                              last edited by

                              Hmm well that's no help at all. In fact it's suspicious that you're seeing only 'ff'. Perhaps the GPIO base isn't the same in IPSO. Try reading it from the pci config like we did earlier in pfSense.

                              Steve

                              1 Reply Last reply Reply Quote 0
                              • R
                                RBT-RS
                                last edited by

                                Here's the result from the pciconf

                                pciconf -l | grep isa
                                isab0@pci0:31:0:        class=0x060100 card=0x00000000 chip=0x25a18086 rev=0x02 hdr=0x00
                                

                                Seems to be identical. In the readio, I did enter a random value to confirm that readio is working, and it did return a different value, maybe all those values are actually ff?

                                1 Reply Last reply Reply Quote 0
                                • stephenw10S
                                  stephenw10 Netgate Administrator
                                  last edited by

                                  We need to read the pci config from the lpc device to see if the gpio base has been changed.

                                  pciconf -r pci0:0:31:0: 0x58
                                  

                                  Steve

                                  1 Reply Last reply Reply Quote 0
                                  • R
                                    RBT-RS
                                    last edited by

                                    Here's the output:

                                    saberhagen[admin]# pciconf -r pci0:31:0: 0x58
                                    00000c81
                                    
                                    1 Reply Last reply Reply Quote 0
                                    • stephenw10S
                                      stephenw10 Netgate Administrator
                                      last edited by

                                      Aha! A different gpio base. Which is interesting in itself, I thought that had to be setup by the bios.
                                      Ok then please read the values:
                                      0xc80 to 0xc87
                                      0xc8c to 0xc8f
                                      0xcb0 to 0xcbb

                                      That should do it.  :)

                                      Steve

                                      1 Reply Last reply Reply Quote 0
                                      • R
                                        RBT-RS
                                        last edited by

                                        Alright, here's the readout:

                                        1 Reply Last reply Reply Quote 0
                                        • stephenw10S
                                          stephenw10 Netgate Administrator
                                          last edited by

                                          Ok, that looks more like it. So lets look at what we have.
                                          GPIO1 Select register
                                          1bbc3180, same as it read under pfSense.
                                          0001 1011 1011 1100 0011 0001 1000 0000

                                          GPIO1 in/out register
                                          1000ffff, same as pfSense.
                                          0001 0000 0000 0000 1111 1111 1111 1111

                                          GPIO1 output levels
                                          1337??00 (You missed 0xc8d but that doesn't matter as those are inputs anyway  ;)). In pfSense these were 1b3f so that's an interesting change.
                                          0001 0011 0011 0111
                                          vs
                                          0001 1011 0011 1111

                                          Two bits that were 1 under pfSense are set as 0 in IPSO. If those do anything they should have shown up under our testing but we may have changed only one bit at at time which didn't show it for example.

                                          GPIO2 Select register
                                          03000e02,  under pfSense it read 03000800
                                          0000 0011 0000 0000 0000 1110 0000 0010
                                          vs
                                          0000 0011 0000 0000 0000 1000 0000 0000
                                          Three pins are additionally set as GPIO in IPSO and, perhaps importantly, two of them are in the special LED output register.

                                          GPIO2 IN/OUT register
                                          00000707, under pfSense it was 00000307
                                          0000 0000 0000 0000 0000 0111 0000 0111
                                          vs
                                          0000 0000 0000 0000 0000 0011 0000 0111
                                          Hmm the pins we were interested in here are set as input so not likely.

                                          GPIO2 level register
                                          00000fff, same as under pfSense
                                          0000 0000 0000 0000 0000 1111 1111 1111

                                          Ok, so it looks like there's only one possibility here and that's the changing of output levels on both GPIO1 pins. The additional GPIOs on GPIO2 are all set as input so can't be driving the leds.

                                          Try these two settings under pfSense:

                                          
                                          ./writeio 0x48e 0x37
                                          ./writeio 0x48f 0x13
                                          
                                          

                                          If that still does nothing we could try changing the state of the LED under IPSO using ipsctl or ledtool abd then re-reading the values to see if anything has changed.

                                          Steve

                                          1 Reply Last reply Reply Quote 0
                                          • R
                                            RBT-RS
                                            last edited by

                                            No luck unfortunately.

                                            On a side note, the box which I run pfsense has a lot of ethernet ports, but only 2 of them work:

                                            Eth4, on the far right of the unit, is the WAN port - em9 to pfsense.
                                            In slot 1, the ethernet port on the left is the LAN port - em0 to pfsense.
                                            How can I get the ports em1 to em8 working as LAN ports? Currently they don't do anything.. I've tried looking up tutorials but all of them are 6 years old and the options aren't even in pfsense any more.

                                            I want all the ports to be on the 192.168.1.0/24 subnet – with pfsense using 192.168.1.1 as the management ip.

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post
                                            Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.