| 
				     | 
				
| (25 intermediate revisions by 2 users not shown) | 
| Line 1: | 
Line 1: | 
| − | == ThinkPad T43 2687-DDU setup for Debian Sarge ==  | + | == Who is Hmh? ==  | 
|   |  |   |  | 
| − | This is an ongoing, spotty guide for an advanced {{Debian}} setup of a {{T43}}, focused on using absolutely all of its capabilities that can be used.  It is not an installation guide, but rather a configuration guide.  Refer to {{Debian}} for a list of pages with initial installation instructions.
  | + | I am a Debian Developer for quite a few years now, and the current maintainer of [[ibm-acpi]]/[[thinkpad-acpi]], aka "ThinkPad ACPI Extras" Linux kernel driver for ThinkPad laptops.  | 
|   |  |   |  | 
| − | When it is really usable, I will move it to some other far more public place in [[ThinkWiki]].
  | + | I am also involved with the [[tp_smapi]] and [[HDAPS]] Linux drivers, as a beta-tester and power-user.  I don't list myself as a developer for those projects because I have never contributed a single line of code to them, just suggestions and bug reports ;-)  | 
|   |  |   |  | 
| − | === Kernel ===  | + | == My ThinkPads ==  | 
|   |  |   |  | 
| − | Baseline kernel: Debian's latest 2.6.15 (2.6.15.4 with stabilization patches) {{NOTE|Thinkpad support is an ongoing, bleeding edge effort. One ends up needing to apply a ton of patches and to use the latest available kernel, sometimes even kernels not yet released}}
  | + | I own just a simple [[:Category:T43|T43]] model 2687-DDU.  It is a great machine: a very solid ThinkPad, with its own set of annoying quirks just like any other IBM-era ThinkPad.  The SATA-PATA bridge, tg3 noise at full network load, and lack of support for AHCI being the worst ones IMHO.  | 
|   |  |   |  | 
| − | ==== Patches employed ====  | + | == ping ==  | 
| − | * Latest ipw2200 driver and ieee80211 layer:
  |   | 
| − | :There are two ways to go about this: either '''disable''' IEEE 802.11 support (and thus ipw2200) in the kernel and build both modules out-of-tree (failure to do so will break the out-of-tree build), or update the kernel subsystems with more up-to-date files.
  |   | 
| − | :The advantage of updating the kernel drivers instead of doing an out-of-tree build is that should there be any configuration options that require ieee80211 support, those will be available.  On the other hand, it is a bit more difficult, as you will have to mess with Kconfig.
  |   | 
| − | :* copied files over the in-kernel files in {{path|include/net}}, {{path|drivers/net/wireless}}, {{path|Documentation/networking}}, {{path|net/ieee80211}}, thus replacing the old drivers with the new ones.
  |   | 
| − | :* ipw2200 often have extra options you need to enable, look in the toplevel Makefile and add them to {{path|drivers/net/wireless/Kconfig}}. They are usually bool types, so it is trivial to copy, e.g. IPW_DEBUG and rename to the new required options.
  |   | 
| − | * [[Problems with SATA and Linux#Hang on resume from suspend to RAM|SATA power-management]]
  |   | 
| − | * [[HDAPS|freeze-block-queue patch (for HDAPS)]]
  |   | 
| − | * [http://acpi.sourceforge.net/download.html ACPI update patches]
  |   | 
| − | * [[Tp smapi|TP SMAPI support]]
  |   | 
| − | * [[Software Suspend 2]]
  |   | 
| − | * [[Conexant HSF modem drivers#The Linuxant hsf driver|Linuxant Conexant HSF modem driver]]
  |   | 
| − | * [[How to make use of IrDA#ISA PnP patch|nsc-ircc ISA PNP patch]]
  |   | 
|   |  |   |  | 
| − | ==== Kernel setup tasks ====
  | + | This is a ping edit, to let Akw know I am still alive and to not purge my account ;-)  | 
| − | # Make sure the following subsystems are modules (for suspend/resume)
  |   | 
| − | ## USB (especially EHCI_HCD and UHCI_HCD)
  |   | 
| − | ## HDAPS (may work compiled in, as well)
  |   | 
| − | # Make sure the following subsystems are enabled and not modules (safety net)
  |   | 
| − | ## ThinkPad SMAPI
  |   | 
| − | # Place the following modules on /etc/modules:
  |   | 
| − | ## hdaps
  |   | 
| − | ## nsc-ircc
  |   | 
| − | ## tg3
  |   | 
| − | ## ipw2200
  |   | 
| − | # [[How to make use of IrDA#Kernel configuration|Configure IrDA module options]]
  |   | 
| − | # ipw2200 firmware needs to go in {{path|/lib/firmware}}. The module should be given the led=1 module parameter option
  |   | 
|   |  |   |  | 
| − | === Userland ===  | + | == Links ==  | 
|   |  |   |  | 
| − | ==== udev rules ====
  | + | * [[ibm-acpi|The Linux kernel ibm-acpi driver, which I currently maintain]]  | 
| − |    | + | * [http://people.debian.org/~hmh/ My Debian.org homepage with some old stuff]  | 
| − | # udev extended network interface naming needs to be configured, order of tg3/ipw2200 won't be respected if {{path|/etc/modules.conf}} is read after udev did the PCI coldplugging
  |   | 
| − |    |   | 
| − | ==== Debian Sarge software packages ====
  |   | 
| − |    |   | 
| − | Some packages need versions far more up-to-date than those available in Sarge to properly support the new kernels.
  |   | 
| − | {{HINT|Refer to [http://backports.org/instructions.html http://backports.org/instructions.html] for instructions on how to setup apt for the backports.org repository}}
  |   | 
| − |    |   | 
| − | * udev (backports.org), due to Linux kernel 2.6.15+  |   | 
| − | * hibernate (backports.org), due to [[Software Suspend 2]] 2.2+
  |   | 
| − | * wireless-tools (backports.org), due to ipw2200 1.0.12+
  |   | 
| − |    |   | 
| − | ==== Software that needs packaging/backporting ====
  |   | 
| − | {{NOTE|If nobody beats me to it, I will probably package them for official upload to Debian, and official Debian Sarge backports.  This requires that the software be properly licensed first, of course}}
  |   | 
| − | * hdapsd (a bit crude, needs a lot of work still)
  |   | 
| − | * pcmcia tools (verify if not already backported)
  |   | 
| − | * hal (!)
  |   | 
| − | * ipw2200/ieee80211 need adopting, and since they clash terribly with in-kernel support, they will only work right if we either convert them to be patch-based, or to detect that the user built with in-kernel ieee80211/ipw2200 enabled and abort the out-of-tree compilation.
  |   | 
| − |    |   | 
| − | ==== Software that could benefit from re-packaging ====
  |   | 
| − | * hsfmodem: should be easy to build out-of-tree in another machine other than the one it will be installed at
  |   | 
| − |    |   | 
| − | == External Links ==
  |   | 
| − | * [http://backports.org/ Debian Sarge backports repository]  |   | 
| − | * [http://www.debianhelp.co.uk/udev.htm udev interface naming guide]
  |   |