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

    Pfsense on a notebook

    Hardware
    4
    17
    8.8k
    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.
    • stephenw10S
      stephenw10 Netgate Administrator
      last edited by

      Are there any laptops that have both Mini PCIe and PCMCIA?

      I would think anything with with m-PCIe would be express card or nothing.

      Steve

      1 Reply Last reply Reply Quote 0
      • R
        rekd0514
        last edited by

        @ScottNJ:

        Why not just use a pcmcia network card? Years ago I ran pFsense on a Pentium III notebook and a d-link 10/100 card.

        Intel NICs are far superior and who still uses non gigabit these days?

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

          Depends on your situation.
          If you are re-using older hardware as a home gateway then you almost certainly don't need gigabit (unless you're living in Korea or Sweden).

          My loadbalanced WAN connections can provide a theoretical maximum of 70Mb/s so there is no need for gigabit ethernet on my box. In fact it does have gigabit interfaces but they are all running at 100Mb/s as that's what's connected to them.

          Steve

          1 Reply Last reply Reply Quote 0
          • R
            rekd0514
            last edited by

            so I ended up doing this on a Thinkpad T60 and it works great. I have a couple questions though.

            How do I get the log from pfsesne booting up? I would like to see that to see if everything is working correctly. When I installed pfsense on Windows 7 this computer was idling at 16W and it is at 23W now with pfsense.

            I read somewhere that the Core 2 Duo CPUs sometimes only enable speedstep on one core? How can I fix this? Thanks!

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

              pfSense will not use any power saving features by default, it doesn't expect to be running on a laptop!
              Have you enabled powerd?
              You will probably have to switch the timecounter to enable powerd.

              16W seems pretty good, 21W doesn't seem too bad.  ;)

              Steve

              1 Reply Last reply Reply Quote 0
              • D
                dreamslacker
                last edited by

                @rekd0514:

                so I ended up doing this on a Thinkpad T60 and it works great. I have a couple questions though.

                How do I get the log from pfsesne booting up? I would like to see that to see if everything is working correctly. When I installed pfsense on Windows 7 this computer was idling at 16W and it is at 23W now with pfsense.

                I read somewhere that the Core 2 Duo CPUs sometimes only enable speedstep on one core? How can I fix this? Thanks!

                pfSense doesn't enable Intel Speedstep (EIST) by default.  Try this:

                Go to System -> Advanced -> Miscellaneous -> Enable PowerD

                Go to Diagnostics -> Edit FIle -> Create /boot/loader.conf.local
                Insert:

                hint.p4tcc.0.disabled=1
                hint.acpi_throttle.0.disabled=1
                est_load="YES"
                

                Reboot for effect.

                1 Reply Last reply Reply Quote 0
                • R
                  rekd0514
                  last edited by

                  pfSense will not use any power saving features by default, it doesn't expect to be running on a laptop!
                  Have you enabled powerd?
                  You will probably have to switch the timecounter to enable powerd.

                  16W seems pretty good, 21W doesn't seem too bad.  Wink
                  ,but
                  Steve

                  Thank you, it would be nice to get it to that 16W though if possible. :) I tested my other gear as well:

                  Dell PowerConnect 2816 Switch - 10W
                  D-Link DIR-655 as AP - 7W

                  , so 16W is pretty good for sure.

                  pfSense doesn't enable Intel Speedstep (EIST) by default.  Try this:

                  Go to System -> Advanced -> Miscellaneous -> Enable PowerD

                  Go to Diagnostics -> Edit FIle -> Create /boot/loader.conf.local
                  Insert:
                  Code:

                  hint.p4tcc.0.disabled=1
                  hint.acpi_throttle.0.disabled=1
                  est_load="YES"

                  I assume this is right?

                  "The powerd utility monitors the system state and sets various power control options accordingly. It offers three modes (maximum, minimum, and adaptive) that can be individually selected while on AC power or batteries. The modes maximum, minimum, and adaptive may be abbreviated max, min, adp. Maximum mode chooses the highest performance values. Minimum mode selects the lowest performance values to get the most power savings. Adaptive mode attempts to strike a balance by degrading performance when the system appears idle and increasing it when the system is busy. It offers a good balance between a small performance loss for greatly increased power savings. The default mode for pfSense is adaptive."

                  • so how/where do I enable the different modes at? I just did the above and restarted. I am at ~20W now and the fan is still going pretty fast, which indicates to me it's not working 100% yet. Thanks for the help!
                  1 Reply Last reply Reply Quote 0
                  • stephenw10S
                    stephenw10 Netgate Administrator
                    last edited by

                    Hmm, ok.
                    You need to check the boot log for powerd messages. It looks like it's not loading correctly. The est driver is compiled into the kernel so there's no need to load it (doesn't hurt though).
                    If it's running correctly you should see on the dashboard next to cpu type a maximum and current frequency.
                    Alternatively you can run powerd -v at the console to see what frequency it's running at.

                    If it isn't running you may have to change the kernel timecounter. See: http://forum.pfsense.org/index.php/topic,20095.msg195755/topicseen.html#msg195755

                    Steve

                    1 Reply Last reply Reply Quote 0
                    • D
                      dreamslacker
                      last edited by

                      @rekd0514:

                      I assume this is right?

                      "The powerd utility monitors the system state and sets various power control options accordingly. It offers three modes (maximum, minimum, and adaptive) that can be individually selected while on AC power or batteries. The modes maximum, minimum, and adaptive may be abbreviated max, min, adp. Maximum mode chooses the highest performance values. Minimum mode selects the lowest performance values to get the most power savings. Adaptive mode attempts to strike a balance by degrading performance when the system appears idle and increasing it when the system is busy. It offers a good balance between a small performance loss for greatly increased power savings. The default mode for pfSense is adaptive."

                      • so how/where do I enable the different modes at? I just did the above and restarted. I am at ~20W now and the fan is still going pretty fast, which indicates to me it's not working 100% yet. Thanks for the help!

                      It looks right.  To verify, go to Diagnostics -> Command Prompt.  Type:
                      sysctl dev.cpu

                      The output of "dev.cpu.0.freq_levels" will list the frequency steps available.  Here's an example output of my setup (Intel Core Solo T1350; 133MHz FSB).  Your Core 2 Duo will have dev.cpu.1.* output as well because of the 2nd core.

                      $ sysctl dev.cpu
                      dev.cpu.0.%desc: ACPI CPU
                      dev.cpu.0.%driver: cpu
                      dev.cpu.0.%location: handle=\_PR_.CPU0
                      dev.cpu.0.%pnpinfo: _HID=none _UID=0
                      dev.cpu.0.%parent: acpi0
                      dev.cpu.0.freq: 800
                      dev.cpu.0.freq_levels: 1867/88000 1600/73000 1333/59000 1067/48000 800/37000
                      dev.cpu.0.cx_supported: C1/0
                      dev.cpu.0.cx_lowest: C1
                      dev.cpu.0.cx_usage: 100.00% last 5000us
                      

                      You can see that the steps are always a multiple of the FSB (133MHz aka 533MHz).  In my case, it's 266MHz (2 x 133MHz) steps.

                      With PowerD but without disabling P4TCC, you will see many more steps in 100MHz steps.

                      For the T60 with a Merom Core 2 Duo, the lowest frequency will be 6 x 166MHz(FSB) = 1GHz.
                      If you have a Core Duo or Core Solo with 133MHz FSB instead, the lowest is 6 x 133 = 800MHz (Same as mine).

                      On the topic of the fan, I don't think there are platform specific ACPI drivers loaded for controlling the onboard fan.  You'll need to enter BIOS (hit the Thinkvantage button on boot) and set the Processor Cooling Policy to Active rather than Passive.  The hardware should handle things on their own from there.

                      1 Reply Last reply Reply Quote 0
                      • R
                        rekd0514
                        last edited by

                        @stephenw10:

                        Hmm, ok.
                        You need to check the boot log for powerd messages. It looks like it's not loading correctly. The est driver is compiled into the kernel so there's no need to load it (doesn't hurt though).
                        If it's running correctly you should see on the dashboard next to cpu type a maximum and current frequency.
                        Alternatively you can run powerd -v at the console to see what frequency it's running at.

                        If it isn't running you may have to change the kernel timecounter. See: http://forum.pfsense.org/index.php/topic,20095.msg195755/topicseen.html#msg195755

                        Steve

                        It does show up now. Here is my dmesg log as well, so you can see if anything is wrong.

                        CPU Type Intel(R) Core(TM)2 CPU T5500 @ 1.66GHz
                                                Current: 1000 MHz, Max: 1667 MHz

                        $ dmesg
                        Copyright © 1992-2010 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 8.1-RELEASE-p4 #0: Tue Sep 13 17:04:54 EDT 2011
                            root@FreeBSD_8.0_pfSense_2.0-AMD64.snaps.pfsense.org:/usr/obj./usr/pfSensesrc/src/sys/pfSense_SMP.8 amd64
                        Timecounter "i8254" frequency 1193182 Hz quality 0
                        CPU: Intel(R) Core(TM)2 CPU        T5500  @ 1.66GHz (1662.51-MHz K8-class CPU)
                          Origin = "GenuineIntel"  Id = 0x6f2  Family = 6  Model = f  Stepping = 2
                          Features=0xbfebfbff <fpu,vme,de,pse,tsc,msr,pae,mce,cx8,apic,sep,mtrr,pge,mca,cmov,pat,pse36,clflush,dts,acpi,mmx,fxsr,sse,sse2,ss,htt,tm,pbe>Features2=0xe3bd <sse3,dtes64,mon,ds_cpl,vmx,est,tm2,ssse3,cx16,xtpr,pdcm>AMD Features=0x20100800 <syscall,nx,lm>AMD Features2=0x1 <lahf>TSC: P-state invariant
                        real memory  = 3221225472 (3072 MB)
                        avail memory = 3087454208 (2944 MB)
                        ACPI APIC Table: <lenovo tp-79 ="">FreeBSD/SMP: Multiprocessor System Detected: 2 CPUs
                        FreeBSD/SMP: 1 package(s) x 2 core(s)
                        cpu0 (BSP): APIC ID:  0
                        cpu1 (AP): APIC ID:  1
                        ACPI Warning: 32/64X length mismatch in Gpe1Block: 0/32 (20100331/tbfadt-625)
                        ACPI Warning: Optional field Gpe1Block has zero address or length: 0x      0    102C/0x0 (20100331/tbfadt-655)
                        ioapic0: Changing APIC ID to 1
                        ioapic0 <version 2.0="">irqs 0-23 on motherboard
                        netisr_init: forcing maxthreads to 1 and bindthreads to 0 for device polling
                        wlan: mac acl policy registered
                        ipw_monitor: You need to read the LICENSE file in /usr/share/doc/legal/intel_ipw/.
                        ipw_monitor: If you agree with the license, set legal.intel_ipw.license_ack=1 in /boot/loader.conf.
                        module_register_init: MOD_LOAD (ipw_monitor_fw, 0xffffffff80470e30, 0) error 1
                        wpi: You need to read the LICENSE file in /usr/share/doc/legal/intel_wpi/.
                        wpi: If you agree with the license, set legal.intel_wpi.license_ack=1 in /boot/loader.conf.
                        module_register_init: MOD_LOAD (wpi_fw, 0xffffffff806548f0, 0) error 1
                        ipw_bss: You need to read the LICENSE file in /usr/share/doc/legal/intel_ipw/.
                        ipw_bss: If you agree with the license, set legal.intel_ipw.license_ack=1 in /boot/loader.conf.
                        module_register_init: MOD_LOAD (ipw_bss_fw, 0xffffffff80470cf0, 0) error 1
                        ipw_ibss: You need to read the LICENSE file in /usr/share/doc/legal/intel_ipw/.
                        ipw_ibss: If you agree with the license, set legal.intel_ipw.license_ack=1 in /boot/loader.conf.
                        module_register_init: MOD_LOAD (ipw_ibss_fw, 0xffffffff80470d90, 0) error 1
                        kbd1 at kbdmux0
                        cryptosoft0: <software crypto="">on motherboard
                        padlock0: No ACE support.
                        acpi0: <lenovo tp-79="">on motherboard
                        CPU0: local APIC error 0x40
                        acpi0: [ITHREAD]
                        acpi_ec0: <embedded controller:="" gpe="" 0x1c,="" ecdt="">port 0x62,0x66 on acpi0
                        acpi0: Power Button (fixed)
                        acpi0: reservation of 0, a0000 (3) failed
                        acpi0: reservation of 100000, bff00000 (3) failed
                        Timecounter "ACPI-fast" frequency 3579545 Hz quality 1000
                        acpi_timer0: <24-bit timer at 3.579545MHz> port 0x1008-0x100b on acpi0
                        cpu0: <acpi cpu="">on acpi0
                        cpu1: <acpi cpu="">on acpi0
                        acpi_hpet0: <high precision="" event="" timer="">iomem 0xfed00000-0xfed003ff on acpi0
                        Timecounter "HPET" frequency 14318180 Hz quality 900
                        acpi_lid0: <control method="" lid="" switch="">on acpi0
                        acpi_button0: <sleep button="">on acpi0
                        pcib0: <acpi host-pci="" bridge="">port 0xcf8-0xcff on acpi0
                        pci0: <acpi pci="" bus="">on pcib0
                        pcib1: <acpi pci-pci="" bridge="">irq 16 at device 1.0 on pci0
                        pci1: <acpi pci="" bus="">on pcib1
                        vgapci0: <vga-compatible display="">port 0x2000-0x20ff mem 0xd8000000-0xdfffffff,0xee100000-0xee10ffff irq 16 at device 0.0 on pci1
                        pci0: <multimedia, hda="">at device 27.0 (no driver attached)
                        pcib2: <acpi pci-pci="" bridge="">irq 20 at device 28.0 on pci0
                        pci2: <acpi pci="" bus="">on pcib2
                        em0: <intel(r) 1000="" pro="" network="" connection="" 7.2.3="">port 0x3000-0x301f mem 0xee000000-0xee01ffff irq 16 at device 0.0 on pci2
                        em0: Using an MSI interrupt
                        em0: [FILTER]
                        pcib3: <acpi pci-pci="" bridge="">irq 21 at device 28.1 on pci0
                        pci3: <acpi pci="" bus="">on pcib3
                        em1: <intel(r) 1000="" pro="" network="" connection="" 7.2.3="">at device 0.0 on pci3
                        em1: Memory Access and/or Bus Master bits were not set!
                        em1: Using MSIX interrupts with 3 vectors
                        em1: [ITHREAD]
                        em1: [ITHREAD]
                        em1: [ITHREAD]
                        pcib4: <acpi pci-pci="" bridge="">irq 22 at device 28.2 on pci0
                        pci4: <acpi pci="" bus="">on pcib4
                        pcib5: <acpi pci-pci="" bridge="">irq 23 at device 28.3 on pci0
                        pci12: <acpi pci="" bus="">on pcib5
                        uhci0: <intel 82801g="" (ich7)="" usb="" controller="" usb-a="">port 0x1800-0x181f irq 16 at device 29.0 on pci0
                        uhci0: [ITHREAD]
                        usbus0: <intel 82801g="" (ich7)="" usb="" controller="" usb-a="">on uhci0
                        uhci1: <intel 82801g="" (ich7)="" usb="" controller="" usb-b="">port 0x1820-0x183f irq 17 at device 29.1 on pci0
                        uhci1: [ITHREAD]
                        usbus1: <intel 82801g="" (ich7)="" usb="" controller="" usb-b="">on uhci1
                        uhci2: <intel 82801g="" (ich7)="" usb="" controller="" usb-c="">port 0x1840-0x185f irq 18 at device 29.2 on pci0
                        uhci2: [ITHREAD]
                        usbus2: <intel 82801g="" (ich7)="" usb="" controller="" usb-c="">on uhci2
                        uhci3: <intel 82801g="" (ich7)="" usb="" controller="" usb-d="">port 0x1860-0x187f irq 19 at device 29.3 on pci0
                        uhci3: [ITHREAD]
                        usbus3: <intel 82801g="" (ich7)="" usb="" controller="" usb-d="">on uhci3
                        ehci0: <intel 82801gb="" r="" (ich7)="" usb="" 2.0="" controller="">mem 0xee404000-0xee4043ff irq 19 at device 29.7 on pci0
                        ehci0: [ITHREAD]
                        usbus4: EHCI version 1.0
                        usbus4: <intel 82801gb="" r="" (ich7)="" usb="" 2.0="" controller="">on ehci0
                        pcib6: <acpi pci-pci="" bridge="">at device 30.0 on pci0
                        pci21: <acpi pci="" bus="">on pcib6
                        cbb0: <ti1510 pci-cardbus="" bridge="">mem 0xe4300000-0xe4300fff irq 16 at device 0.0 on pci21
                        cardbus0: <cardbus bus="">on cbb0
                        pccard0: <16-bit PCCard bus> on cbb0
                        cbb0: [FILTER]
                        isab0: <pci-isa bridge="">at device 31.0 on pci0
                        isa0: <isa bus="">on isab0
                        atapci0: <intel ich7="" udma100="" controller="">port 0x1f0-0x1f7,0x3f6,0x170-0x177,0x376,0x1880-0x188f at device 31.1 on pci0
                        ata0: <ata 0="" channel="">on atapci0
                        ata0: [ITHREAD]
                        atapci1: <intel ich7m="" sata150="" controller="">port 0x18c8-0x18cf,0x18ac-0x18af,0x18c0-0x18c7,0x18a8-0x18ab,0x18b0-0x18bf mem 0xee404400-0xee4047ff irq 16 at device 31.2 on pci0
                        atapci1: [ITHREAD]
                        atapci1: AHCI called from vendor specific driver
                        atapci1: AHCI v1.10 controller with 4 1.5Gbps ports, PM not supported
                        ata2: <ata 0="" channel="">on atapci1
                        ata2: [ITHREAD]
                        pci0: <serial bus,="" smbus="">at device 31.3 (no driver attached)
                        acpi_tz0: <thermal zone="">on acpi0
                        acpi_tz1: <thermal zone="">on acpi0
                        atrtc0: <at realtime="" clock="">port 0x70-0x71 irq 8 on acpi0
                        atkbdc0: <keyboard controller="" (i8042)="">port 0x60,0x64 irq 1 on acpi0
                        atkbd0: <at keyboard="">irq 1 on atkbdc0
                        kbd0 at atkbd0
                        atkbd0: [GIANT-LOCKED]
                        atkbd0: [ITHREAD]
                        psm0: <ps 2="" mouse="">irq 12 on atkbdc0
                        psm0: [GIANT-LOCKED]
                        psm0: [ITHREAD]
                        psm0: model Generic PS/2 mouse, device ID 0
                        battery0: <acpi control="" method="" battery="">on acpi0
                        acpi_acad0: <ac adapter="">on acpi0
                        orm0: <isa option="" roms="">at iomem 0xd0000-0xd0fff,0xd1000-0xd1fff,0xdc000-0xdffff,0xe0000-0xeffff on isa0
                        sc0: <system console="">at flags 0x100 on isa0
                        sc0: VGA <16 virtual consoles, flags=0x300>
                        vga0: <generic isa="" vga="">at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0
                        ppc0: cannot reserve I/O port range
                        est0: <enhanced speedstep="" frequency="" control="">on cpu0
                        est1: <enhanced speedstep="" frequency="" control="">on cpu1
                        Timecounters tick every 1.000 msec
                        IPsec: Initialized Security Association Processing.
                        usbus0: 12Mbps Full Speed USB v1.0
                        usbus1: 12Mbps Full Speed USB v1.0
                        usbus2: 12Mbps Full Speed USB v1.0
                        usbus3: 12Mbps Full Speed USB v1.0
                        usbus4: 480Mbps High Speed USB v2.0
                        ugen0.1: <intel>at usbus0
                        uhub0: <intel 1="" 9="" uhci="" root="" hub,="" class="" 0,="" rev="" 1.00="" 1.00,="" addr="">on usbus0
                        ugen1.1: <intel>at usbus1
                        uhub1: <intel 1="" 9="" uhci="" root="" hub,="" class="" 0,="" rev="" 1.00="" 1.00,="" addr="">on usbus1
                        ugen2.1: <intel>at usbus2
                        uhub2: <intel 1="" 9="" uhci="" root="" hub,="" class="" 0,="" rev="" 1.00="" 1.00,="" addr="">on usbus2
                        ugen3.1: <intel>at usbus3
                        uhub3: <intel 1="" 9="" uhci="" root="" hub,="" class="" 0,="" rev="" 1.00="" 1.00,="" addr="">on usbus3
                        ugen4.1: <intel>at usbus4
                        uhub4: <intel 1="" 9="" ehci="" root="" hub,="" class="" 0,="" rev="" 2.00="" 1.00,="" addr="">on usbus4
                        acd0: CDRW <hl-dt-stcd-rw dvd="" drive="" gcc-4247n="" 1.02="">at ata0-master UDMA33
                        ad4: 15272MB <samsung ssd="" um410="" series="" 2.5"="" 16gb="" vam12d1q="">at ata2-master UDMA100 SATA 1.5Gb/s
                        uhub0: 2 ports with 2 removable, self powered
                        uhub1: 2 ports with 2 removable, self powered
                        uhub2: 2 ports with 2 removable, self powered
                        uhub3: 2 ports with 2 removable, self powered
                        uhub4: 8 ports with 8 removable, self powered
                        ugen3.2: <stmicroelectronics>at usbus3
                        SMP: AP CPU #1 Launched!
                        Trying to mount root from ufs:/dev/ad4s1a
                        pflog0: promiscuous mode enabled
                        em1: link state changed to UP

                        On the topic of the fan, I don't think there are platform specific ACPI drivers loaded for controlling the onboard fan.  You'll need to enter BIOS (hit the Thinkvantage button on boot) and set the Processor Cooling Policy to Active rather than Passive.  The hardware should handle things on their own from there.

                        I will have to see what options are in the BIOS.</stmicroelectronics></samsung></hl-dt-stcd-rw></intel></intel></intel></intel></intel></intel></intel></intel></intel></intel></enhanced></enhanced></generic></system></isa></ac></acpi></ps></at></keyboard></at></thermal></thermal></serial></ata></intel></ata></intel></isa></pci-isa></cardbus></ti1510></acpi></acpi></intel></intel></intel></intel></intel></intel></intel></intel></intel></intel></acpi></acpi></acpi></acpi></intel(r)></acpi></acpi></intel(r)></acpi></acpi></multimedia,></vga-compatible></acpi></acpi></acpi></acpi></sleep></control></high></acpi></acpi></embedded></lenovo></software></version></lenovo></lahf></syscall,nx,lm></sse3,dtes64,mon,ds_cpl,vmx,est,tm2,ssse3,cx16,xtpr,pdcm></fpu,vme,de,pse,tsc,msr,pae,mce,cx8,apic,sep,mtrr,pge,mca,cmov,pat,pse36,clflush,dts,acpi,mmx,fxsr,sse,sse2,ss,htt,tm,pbe>

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

                          Just in terms of reducing the fan noise it is almost certainly worth the effort to clean the fan/heatsink assembly in an old laptop. Even if it looks relatively dust free from the outside.
                          I recently looked at a friends laptop that was running very hot and eventually turned itself off. After blowing out the heatsink with compressed air and remounting the assembly to the cpu with decent quality heatsink compound the idle temperature went from 63°C to 40°C. The fan is barely audible at this temperature.
                          On that Sony Vaio it was relatively easy (surprisingly so) to access the CPU, I realise that most laptops are a PITA to disassemble.

                          Steve

                          1 Reply Last reply Reply Quote 0
                          • R
                            rekd0514
                            last edited by

                            I actually did clean it out and changed the paste when I put the T5500 in it to replace the T2400 it had in it.

                            Thank you for all the help.  :)

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