Translate
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
IBU 
Consol
 
 | 
 | 
    FreeBSD
    (& now NetBSD) Laptops - Install
    Tricks & Release Status
    
    
    Index
    
    
    
      Based on  
      posting of 2007.06.12 to mobile @@ freebsd.org 
      
       
      
        FreeBSD has
        progressively broken support for 5 of my older laptops. One
        needs massive time reading manuals etc, only then to fail
        anyway, getting beyond FreeBSD-4.11.
        (Only 1 modern laptop here takes FreeBSD-6.2). 
        FreeBSD-4.11 is
        nominally dead, yet on many older laptops is all that
        Works. Newcomers may give up after FreeBSD-6.2 &
        dump FreeBSD, not
        knowing to use FreeBSD-4.11 with
        working { ATA access, Geom / FDISK, PCMCIA (ether &
        cdrom), PLIP }. 
        Developers may use newer laptops or towers, but support
        for older laptops should not be So damaged as now, many
        older laptop are still fine as office X terminals, UPS/PBX
        status monitors etc. 
        Suggestion: A colossal slow_and_safe option in
        loader.conf (like a BIOS has), so at least one can install,
        then until it''s turned off, a grep at boot to mail root
        reporting machine was deliberately slowed to ensure
        install. Then installer can disable slow_and_safe and
        debug- edit on a working platform, not repetitively do 5
        floppy installs typing screeds of "set" magic hopefully to
        loader. 
        I''m analysing broken-ness since FreeBSD-4.11,
        & documenting it here:
        http://www.berklix.org/~jhs/hardware/laptops/ Inc. URL to
        PLIP failure (where I hope to later try back porting FreeBSD-4.11
        PLIP src to FreeBSD-6.2). 
       
      Trend / My opinion
       
       
        FreeBSD
        in last few years has chased more functionality while
        breaking & abandoning some existing support. Others
        will have tried  FreeBSD on some
        older laptops & given up, largely remained silent &
        left  FreeBSD
        developers in blissful ignorance, thinking all is rosey in
        the garden. A visitor pointing at slugs eating the
        strawberries may not be popular, but if no one mentions it,
        damage persists. 
         Some old laptops still run OK, eg Julian Elischer''s
        1999 Dell Inspiron runs fine on 2007.06 -current 
        Current status of some laptops may be found in FreeBSD laptop compatibility
        indexes 
       
     
    
    
    
    
    
    
      Generic
      
        Normal content just:
         userconfig_script_load="YES"
         Live Syntax To Loader 
         
          - hint.acpi.0.disabled=1.
 
          - At first boot on new disc, you must use loader, &
          can''t till later edit /boot/loader.conf, so here is a
          list of syntax options (to be switched on by eg: set
          Earth=Mars.
 
          - Beware spelling mistakes as loader does not check
          & accepts junk, eg set earth=mars.
 
          - Below is sample syntax for /boot/loader.conf once
          installed.
 
         
        Things That May Help Force Old Machines To Boot /
        Install
        
          From Posting: 
           
            Which of those & other options should I add to
            "BootSafeKey" in
            /sys/boot/forth/beastie.4th to help a "Safe" boot ?
            Then I''ll send-pr a diff to
            extend chance of other older laptops booting. &
            will roll new floppies(*) & put up for ftp; (no
            problem, done releases before).
           
          BootSafeKey in 7.0BETA3
          /sys/boot/forth/beastie.4th: 
           
          See Also "Man Tuning" available in 6.2-RELEASE. 
           
            - 
              beastie_disable="yes" 
              
            
 
            - 
              boot_verbose="yes" 
              
            
 
            - 
              verbose_loading="yes" 
              
            
 
            - 
              debug.bootverbose=1 
              
            
 
            - 
              hint.acpi.0.disabled="1"
              
              
                - Boot with acpi completely disabled.
 
                - Referenced by BootSafeKey
 
                - Set by /sys/boot/forth/beastie.4th:BootSafeKey
 
                - 
                man 4 acpi -- Advanced Configuration and Power
                Management support
 
               
             
            - 
              hw.acpi.disable_on_reboot=1 
              
            
 
            - 
              hw.acpi.reset_video=1 
              
            
 
            - 
              hw.acpi.verbose=1 
              
            
 
            - 
              loader.acpi_disabled_by_user=1
              
              
            
 
            - 
              hint.apm.0.disabled="1" 
              
                - Not referenced by BootSafeKey
 
                - Found on host=fire with kenv.
 
               
             
            - 
              hint.apic.0.disabled="1"
              
              
            
 
            - 
              hw.ata.ata_dma=0 
              
                - Referenced by BootSafeKey
 
                - ATA disk DMA mode control
 
                - Needed by Digital HiNote
                Ultra2000
 
                - Needed by Dell Latitude XPi
                P133ST (I have confirmed & so previously
                also said) Ian Freilich 
                , 07.10.2004
 
                - Referenced by BootSafeKey
 
                - 
                  Referenced by 6.2-RELEASE files: 
                  
sbin/atacontrol/atacontrol.c
share/man/man4/ata.4
sys/boot/forth/beastie.4th
sys/dev/aic7xxx/aic79xx.c
sys/dev/aic7xxx/aic79xx.h
sys/dev/aic7xxx/aic79xx_inline.h
sys/dev/aic7xxx/aic7xxx.c
sys/dev/aic7xxx/aic7xxx.h
sys/dev/aic7xxx/aic7xxx_inline.h
sys/dev/amr/amr.c
sys/dev/ata/ata-all.c
sys/dev/ata/ata-all.h
sys/dev/ata/ata-chipset.c
sys/dev/ata/ata-disk.c
sys/dev/ata/ata-dma.c
sys/dev/ata/ata-lowlevel.c
sys/dev/ata/ata-pci.c
sys/dev/ata/ata-pci.h
sys/dev/ata/ata-raid.c
sys/dev/ata/atapi-cam.c
sys/dev/ata/atapi-cd.c
sys/dev/ata/atapi-fd.c
sys/dev/ips/ips.c
sys/dev/ips/ips.h
sys/dev/ips/ips_commands.c
sys/dev/ips/ips_disk.c
sys/dev/isp/isp.c
sys/dev/isp/ispreg.h
sys/dev/isp/ispvar.h
sys/dev/iwi/if_iwi.c
sys/dev/iwi/if_iwivar.h
sys/dev/ral/if_ral.c
sys/dev/ral/if_ralvar.h
sys/dev/sound/pci/maestro3.c
sys/dev/sym/sym_hipd.c
sys/dev/twe/twe_freebsd.c
sys/gnu/dev/sound/pci/maestro3_reg.h
sys/pci/if_ti.c
sys/pci/if_tireg.h
sys/sys/ata.h
tools/tools/sysdoc/tunables.mdoc
 
                   
                 
               
             
            - 
              hw.ata.atapi_dma=0 
              
                - Referenced by BootSafeKey
 
                - ATAPI device DMA mode control, for ATA CD &
                DVD
 
                - Referenced by BootSafeKey
 
                - Setting this to 1 might improve music play back
                direct from physical media. Setting it might also
                reduce the chance of accesing, inc. booting from,
                any cd drive that might be non compliant.
 
               
             
            - 
              hw.ata.wc=0 
              
            
 
            - 
              hw.eisa_slots=0 
              
            
 
            - 
              hint.kbdmux.0.disabled=1
              
              
            
 
            - 
              hw.pci.enable_io_modes=0
              
              
                - Not referenced by BootSafeKey
 
                - Use if boot hangs after AGP
 
               
             
            - 
              hw.pcic.ignore_pci=1 
              
                - Not referenced by BootSafeKey
 
                - ignore pci cardbus bridges
 
               
             
            - 
              hw.pcic.intr_path="1" 
              
                - Not referenced by BootSafeKey
 
                - Normally interrupts for cardbus bridges are
                routed over the PCI bus (2). However, some laptops
                will hang when using PCI interrupts due to bugs in
                this code. Those bugs can be worked around by
                forcing ISA interrupts (1).
 
                - Warner wrote: Libretto-50 and Libretto-70
                machines have only ISA PCMCIA bridges
 
                - Needed by host=lapa
 
               
             
            - 
              hw.pcic.irq="0" 
              
                - Not referenced by BootSafeKey
 
                - Override IRQ configured by system for all pcic
                devices
 
                - Needed by host=lapa
 
               
             
            - 
              hw.pcic.pd6729_intr_path
              
              
                - Not referenced by BootSafeKey
 
                - Determine interrupt path or method for Cirrus
                Logic PD6729 and similar I/O space based pcmcia
                bridge. Chips on a PCI expansion card need a value
                of 2, while chips installed in a laptop need a
                value of 1 (which is also the default). This is
                similar to hw.pcic.intr_path, but separate so that
                it can default to ISA when intr_path defaults to
                PCI.
 
               
             
            - 
              hw.pcic.ti12xx_enable_pci_clock
              
              
                - Not referenced by BootSafeKey
 
                - Some TI-12xx parts need to have the PCI clock
                enabled. These designs do not provide a clock
                themselves. Most of the reference boards have the
                required oscillator parts, so the number of
                machines that needs this to be set is vanishingly
                small.
 
               
             
            - 
              machdep.bios.pci=disable
              
              
            
 
            - 
              machdep.bios.pnp=disable
              
              
            
 
            - 
              machdep.pccard.pcic_irq="0"
              
              
            
 
           
         
        Extra Rescue Hooks
        
          For a better chance of booting an old laptop, try this,
          eg 
 
mdconfig -a -t vnode -f /pub/FreeBSD/releases/i386/ISO-IMAGES/7.0/7.0-BETA4-i386-disc1.iso
mount -t cd9660 -r  /dev/vn0c /mnt
cd /pub/FreeBSD/releases/i386/7.0-RELEASE
(cd /mnt ; tar cf - . ) | tar xf - 
umount /mnt
mdconfig -d -u 0
cd floppies
mdconfig -a -t vnode -f boot.flp
mount /dev/md0 /mnt
cat > /mnt/julian << EOF
set boot_verbose="yes"
set debug.bootverbose=1
set hint.acpi.0.disabled="1"
set hw.acpi.disable_on_reboot=1
set hw.acpi.verbose=1
set loader.acpi_disabled_by_user=1
set verbose_loading="yes"
# Ethernet ?
set if_dc_load="YES"
set hint.apic.0.disabled="1"
set hint.apm.0.disabled="1"
set hw.ata.ata_dma=0
set hw.ata.atapi_dma=0
set hw.ata.wc=0
set hw.eisa_slots=0
set hw.pci.enable_io_modes=0
set hw.pcic.ignore_pci=1 
set hw.pcic.irq="0"
set hw.pcic.pd6729_intr_path
# Debug non working pccard slot:
set hw.cardbus.cis_debug=1
set hw.cardbus.debug=1
set hw.cbb.debug=1
set hw.pccard.cis_debug=1
set hw.pccard.debug=1
set machdep.bios.pci=disable
set machdep.bios.pnp=disable
set machdep.pccard.pcic_irq="0"
EOF
umount /mnt
mdconfig -d -u 0
Boot target host with floppy,
select Escape to loader. Maybe with key 4 ?
include julian
boot -v
 
         
        To allow USB keyboard in single user mode
        
set hint.atkbd.0.flags="0x1"
 
         
        My Host Specific
        
          
          
            with BIOS set to PIO=On # From Jim Mock mij @@
            geekhouse.net 
             
              - hw.pcic.intr_path="1"
 
              - hw.pcic.irq="0"
 
             
           
          
          
          
          
          
          
          
          
            loader.conf
             Test of wifi cards: 
             
# if_acx_load="YES" # now in my kernel so not here
if_ndis_load="YES"
if_t1130_XP_sys_load="YES"
t1130_XP_sys.ko # man kldstat
 
             
           
         
       
      
      
        First appeared in  FreeBSD 5.0 
         Most (all?) drivers don''t probe for the hardware if you
        set the variable hint.[device].[instance].disabled="1". For
        example, to disable probing for p4tcc0,
        hint.p4tcc.0.disabled="1" in /boot/device.hints 
        From 6.1-src/src/sys/i386/conf: 
        
          # AVM A1 or AVM Fritz!Card options AVM_A1
         
        host=park: Has added: 
         
hint.isic.0.at="isa"
hint.isic.0.port="0x340"
hint.isic.0.irq="5"
hint.isic.0.flags="4"
 
         
        host= lapl for 4.10, not used on  FreeBSD-4.11
        
         
# Reassign ep0 from default 5 which only intermittently works, stickily.
hint.ep.0.irq="11"
 
         
       
      
      
host=lapl 4.10
# The system boots with or without this file present
# di bt0
#       dmesg reports for 4.10-RELEASE LAPL kernel: No such device: bt0
# di ata1
#       dmesg reports for 4.10-RELEASE LAPL kernel: Invalid command or syntax.
# di aic0
#       dmesg reports for 4.10-RELEASE LAPL kernel: No such device: aic0
# di aha0
#       dmesg reports for 4.10-RELEASE LAPL kernel: No such device: aha0
# di adv0
#       dmesg reports for 4.10-RELEASE LAPL kernel: No such device: adv0
q
 
       
      
      
        Seems broken on  FreeBSD-5 & 6
        last know working on  FreeBSD-4.11.
          
        Link to thread on mail list. 
         Frozen copy 
         
From owner-freebsd-hackers  @@  freebsd.org Sat Jun  9 23:21:12 2007
X-Original-To: hackers  @@  freebsd.org
Delivered-To: freebsd-hackers  @@  FreeBSD.ORG
Message-Id: <200706091602.l59G2psm042173  @@  fire>
To: ghozzy <ghozzy  @@  gmail.com>
From: "Julian H. Stacey" <jhs  @@  berklix.org>
In-reply-to: Your message of "Fri, 08 Jun 2007 22:59:26 +0400."
<a066eefc0706081159t1929b615j4391d91f48df4acc  @@  mail.gmail.com>
Date: Sat, 09 Jun 2007 18:02:51 +0200
Cc: jhs  @@  berklix.org, hackers  @@  freebsd.org
Subject: Re: FreeBSD-6.2 & PLIP - does it still work ?
Reference:
> From:  ghozzy <ghozzy  @@  gmail.com>
> Date:  Fri, 8 Jun 2007 22:59:26 +0400
> Message-id: \
    <a066eefc0706081159t1929b615j4391d91f48df4acc \
  @@  mail.gmail.com>
ghozzy wrote:
> On 6/8/07, Julian H. Stacey <jhs  @@  berklix.org> wrote:
> > Anyone seen PLIP working on FreeBSD-6.2 release ?
> > I''ve tested my PLIP cable between 2 x 4.11 boxes.  I''m trying to
> > install a laptop with 6.2 boot flops (with failed pcmcia/ether
> > recognition) I cant get that laptop & a 6.2 tower to talk to each
> > other.  Neither will those 2 x 6.2 talk to 4.11.  I haven''t quite
> > done all exhaustive tests, (but am exhausted & seems worth asking :-)
> >
> > Julian
>
> It seems to me PLIP has been broken somewhere after branching RELENG_5.
> Between two RELENG_4 it worked fine (used from about 4.3 to latest 4.11).
> If any end was using RELENG_5 or RELENG_6 it didn''t work any more.
> I thought first, maybe there were some incompatible changes in protocol
> or something, i tried to use the same FreeBSD versions on two ends
> (both RELENG_5 or both RELENG_6), but that was not the case.
>
> My tests were not exhaustive either, but i actually tried to fire it up again
> numerous times, enough for my own assurance.
>
> If anybody could shed some light, i would be curious.
> I could also make tests if needed.
Thanks for confirmation ghozzy,
Can anyone say eg "No it works for me" ?
Or now we know PL-IP is broken, Options:
- Post net  @@  freebsd for specialists,
- Post mobile  @@  freebsd (where it most hurts, as PLIP really needed when
pcmcia slots not recognised on older laptops so cant install FreeBSD).
- Send-pr for manual to declare plip broken.
- Read & compare source of 4.11 & 6.2 Release src/sys/dev/ppbus/if_plip.c
(interesting, but short of time, & others who''ve hacked / broken
it might fix quicker ?)
I viewed with /usr/ports/textproc/mgdiff & diff not that big, eg
diff -c 4.11/usr/src/sys/dev/ppbus/if_plip.c.~1~ \
6.1/usr/src/sys/dev/ppbus/if_plip.c.~1~ | wc
481    1466   11651
         
      
      See Also Dec 2007 ire 7.0BETA4 in base of  
      http://www.berklix.com/~jhs/src/bsd/fixes/FreeBSD/src/gen/share/man/man4/lp.4.REL=ALL.diff
     
    
    
      After an install using SLIP with FreeBSD-7.0BETA4, 
       & subsequent reboot 
       ifconfig -a shows no sl0 interface 
       (although /etc/rc.conf does contain eg This problem or fix
      needs to become a  send-pr
       pro tem I have
       
       
        /etc/start_if.sl0 with /sbin/slattach -a -h -l -s 9600
        /dev/cuad0
       
      & /etc/rc.local with 
       
    /etc/start_if.sl0 
    sleep 5 # next ifconfig does not work without some sort of sleep 
    ifconfig sl0 10.0.0.1 10.0.0.2
       
     
    
    
      Problem Reports for  FreeBSD.org 
      
        - network.c
        Send-PR Sent for Installer to Remove -h from slattach.
        as some cables do not support it.
 
        - Send-PR Soon for /boot/loader.conf: Add for Safe: hw.ata.ata_dma=0 & also
        ..... ?
 
        - Send-PR Soon for PLIP:
 
        - 
        Send-PR Sent Remove CFLAGS += -pipe from sys.mk, (Ok
        this does not fix FreeBSD failing to install but it Does
        prevent old laptops consuming excessive RAM to
        recompile).
 
       
     
    
    
      FreeBSD- 7 PreRelease is sticky playing music (ie music hangs
      periodically) on at least 2 old laptops:  lapd &  lapn, this might
      be to do with a bad lock in moused (Kris diagnosed that)
      Heres a  channel.h
      patch I wrote (failed to make a difference though)
      
 | 
 
 
 |