Instalando Lihuen GNU/Linux 3 en una Lenovo T550.
Nota: Varios pasos de esta guía requieren estar logueado como root y cierto nivel de experiencia con GNU/Linux, no se recomienda el uso de esta guía por usuarios novatos. Esta guía puede resultar útil a usuarios de Debian Lenny ya que Lihuen 3 está basado en está versión de Debian.
Documentación sobre notebooks
Por defecto Xorg arranca en modo vesa con una resolución no wide, para cambiar esto simplemente hay que forzar el uso del driver intel en Xorg.
El único problema observado con el uso de este driver es que a veces al salir a consola, reiniciar o apagar la máquina la pantalla se queda destellando pero el resto del sistema funciona correctamente.
Para forzar el uso del driver buscar en /etc/X11/xorg.conf la sección device y agregar: Driver "intel"
Por ejemplo la sección debería quedar parecida a la siguiente:
Section "Device" Identifier "Configured Video Device" Driver "intel" EndSection
Hacer funcionar esta placa es un poco complicado ya que requiere un firmware y (al menos con los kernels probados) requiere un parche. Trabajaremos sobre el kernel 2.6.33 (otra versión posiblemente no requiera el parche).
Para hacer todo esto es necesario tener instalado make, gcc, patch, libncurses5-dev y git-svn, todo esto se puede instalar con el comando:
apt-get install build-essential libncurses5-dev git-svn
Debemos además descargar un firmware para esta placa de la siguiente forma (fuente):
Debemos descargar una herramienta b43-fwcutter para generar el firmware desde su repositorio GIT (es necesario que la versión sea descargada por este medio ya que las versiones anteriores no funcionan con esta placa).
Entonces descargamos la herramienta usando git clone y la compilamos:
git clone http://git.bu3sch.de/git/b43-tools.git cd b43-tools/fwcutter make cd ..
http://wireless.kernel.org/en/users/Drivers/b43 dice: "Use version 4.174.64.19 of Broadcom's proprietary driver. (The tarball is mislabeled as "4.178.10.4", but it is actually 4.174.64.19.)"
Así que descargamos el drivers versión 4.174.64.19 del driver propietario de Broadcom (notando que el tar que lo contiene en realidad dice otra cosa) y luego generamos el firmware con b43-fwcutter:
export FIRMWARE_INSTALL_DIR="/lib/firmware" wget http://downloads.openwrt.org/sources/broadcom-wl-4.178.10.4.tar.bz2 tar xjf broadcom-wl-4.178.10.4.tar.bz2 cd broadcom-wl-4.178.10.4/linux ../../fwcutter/b43-fwcutter -w "$FIRMWARE_INSTALL_DIR" wl_apsta.o
Si no quiere saber los detalles de la solución pase a la sección: #Emparchando y compilando el kernel
Según la guía de http://wireless.kernel.org esto ya debería funcionar, pero en nuestra experiencia siguiendo estos pasos con un kernel 2.6.32 la placa es detectada pero no funciona.
Luego de hacer "ifconfig wlan0 up" notamos errores de DMA que se pueden ver al ejecutar dmesg. Al probar un kernel 2.6.33 obtuvimos el mismo error pero con un poco más de detalles donde se indicaba que era necesario configurar el kernel con la opción: CONFIG_B43_FORCE_PIO
Dado que esta opción no existe en esta versión del kernel y al agregarla al .config es ignorada, es necesario emparchar el driver para forzarla, esto es lo que se indica en la siguiente sección
Primero debemos descargar el kernel y el parche:
wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.33.tar.bz2 wget http://lihuen.linti.unlp.edu.ar/bajar/lenovoT550/b43.patch
Luego descomprimimos el kernel y aplicamos el parche:
tar xjf linux-2.6.33.tar.bz2 cd linux-2.6.33 patch -p0 < ../b43.patch
Configuramos el kernel habilitando el driver b43 con make menuconfig y luego compilamos e instalamos:
make menuconfig make modules_install make INSTALL_PATH=/boot install update-update-initramfs -c -k 2.6.33 update-grub
Reiniciamos el equipo seleccionando el nuevo kernel al arrancar y si todo salió bien la placa wireless debería funcionar correctamente.
Luego de suspender la máquina se cuelga...
Cualquier dato o comentario al respecto será bienvenido y puede ser muy útil a otros usuarios. Si sabés algo al respecto (o tenés algún link relevante) te propongo expresarlo en nuestros foros
No se probó.
Cualquier dato o comentario al respecto será bienvenido y puede ser muy útil a otros usuarios. Si sabés algo al respecto (o tenés algún link relevante) te propongo expresarlo en nuestros foros
00:00.0 Host bridge: Intel Corporation Mobile 4 Series Chipset Memory Controller Hub (rev 07) 00:02.0 VGA compatible controller: Intel Corporation Mobile 4 Series Chipset Integrated Graphics Controller (rev 07) 00:02.1 Display controller: Intel Corporation Mobile 4 Series Chipset Integrated Graphics Controller (rev 07) 00:1a.0 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #4 (rev 03) 00:1a.1 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #5 (rev 03) 00:1a.2 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #6 (rev 03) 00:1a.7 USB Controller: Intel Corporation 82801I (ICH9 Family) USB2 EHCI Controller #2 (rev 03) 00:1b.0 Audio device: Intel Corporation 82801I (ICH9 Family) HD Audio Controller (rev 03) 00:1c.0 PCI bridge: Intel Corporation 82801I (ICH9 Family) PCI Express Port 1 (rev 03) 00:1c.1 PCI bridge: Intel Corporation 82801I (ICH9 Family) PCI Express Port 2 (rev 03) 00:1c.2 PCI bridge: Intel Corporation 82801I (ICH9 Family) PCI Express Port 3 (rev 03) 00:1c.3 PCI bridge: Intel Corporation 82801I (ICH9 Family) PCI Express Port 4 (rev 03) 00:1c.5 PCI bridge: Intel Corporation 82801I (ICH9 Family) PCI Express Port 6 (rev 03) 00:1d.0 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #1 (rev 03) 00:1d.1 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #2 (rev 03) 00:1d.2 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #3 (rev 03) 00:1d.7 USB Controller: Intel Corporation 82801I (ICH9 Family) USB2 EHCI Controller #1 (rev 03) 00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev 93) 00:1f.0 ISA bridge: Intel Corporation ICH9M LPC Interface Controller (rev 03) 00:1f.2 SATA controller: Intel Corporation ICH9M/M-E SATA AHCI Controller (rev 03) 00:1f.3 SMBus: Intel Corporation 82801I (ICH9 Family) SMBus Controller (rev 03) 00:1f.6 Signal processing controller: Intel Corporation 82801I (ICH9 Family) Thermal Subsystem (rev 03) 04:00.0 Network controller: Broadcom Corporation BCM4312 802.11b/g (rev 01) 07:00.0 Ethernet controller: Broadcom Corporation NetLink BCM5906M Fast Ethernet PCI Express (rev 02)
00:00.0 Host bridge [0600]: Intel Corporation Mobile 4 Series Chipset Memory Controller Hub [8086:2a40] (rev 07) 00:02.0 VGA compatible controller [0300]: Intel Corporation Mobile 4 Series Chipset Integrated Graphics Controller [8086:2a42] (rev 07) 00:02.1 Display controller [0380]: Intel Corporation Mobile 4 Series Chipset Integrated Graphics Controller [8086:2a43] (rev 07) 00:1a.0 USB Controller [0c03]: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #4 [8086:2937] (rev 03) 00:1a.1 USB Controller [0c03]: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #5 [8086:2938] (rev 03) 00:1a.2 USB Controller [0c03]: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #6 [8086:2939] (rev 03) 00:1a.7 USB Controller [0c03]: Intel Corporation 82801I (ICH9 Family) USB2 EHCI Controller #2 [8086:293c] (rev 03) 00:1b.0 Audio device [0403]: Intel Corporation 82801I (ICH9 Family) HD Audio Controller [8086:293e] (rev 03) 00:1c.0 PCI bridge [0604]: Intel Corporation 82801I (ICH9 Family) PCI Express Port 1 [8086:2940] (rev 03) 00:1c.1 PCI bridge [0604]: Intel Corporation 82801I (ICH9 Family) PCI Express Port 2 [8086:2942] (rev 03) 00:1c.2 PCI bridge [0604]: Intel Corporation 82801I (ICH9 Family) PCI Express Port 3 [8086:2944] (rev 03) 00:1c.3 PCI bridge [0604]: Intel Corporation 82801I (ICH9 Family) PCI Express Port 4 [8086:2946] (rev 03) 00:1c.5 PCI bridge [0604]: Intel Corporation 82801I (ICH9 Family) PCI Express Port 6 [8086:294a] (rev 03) 00:1d.0 USB Controller [0c03]: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #1 [8086:2934] (rev 03) 00:1d.1 USB Controller [0c03]: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #2 [8086:2935] (rev 03) 00:1d.2 USB Controller [0c03]: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #3 [8086:2936] (rev 03) 00:1d.7 USB Controller [0c03]: Intel Corporation 82801I (ICH9 Family) USB2 EHCI Controller #1 [8086:293a] (rev 03) 00:1e.0 PCI bridge [0604]: Intel Corporation 82801 Mobile PCI Bridge [8086:2448] (rev 93) 00:1f.0 ISA bridge [0601]: Intel Corporation ICH9M LPC Interface Controller [8086:2919] (rev 03) 00:1f.2 SATA controller [0106]: Intel Corporation ICH9M/M-E SATA AHCI Controller [8086:2929] (rev 03) 00:1f.3 SMBus [0c05]: Intel Corporation 82801I (ICH9 Family) SMBus Controller [8086:2930] (rev 03) 00:1f.6 Signal processing controller [1180]: Intel Corporation 82801I (ICH9 Family) Thermal Subsystem [8086:2932] (rev 03) 04:00.0 Network controller [0280]: Broadcom Corporation BCM4312 802.11b/g [14e4:4315] (rev 01) 07:00.0 Ethernet controller [0200]: Broadcom Corporation NetLink BCM5906M Fast Ethernet PCI Express [14e4:1713] (rev 02)
Bus 008 Device 002: ID 046d:c016 Logitech, Inc. M-UV69a/HP M-UV96 Optical Wheel Mouse Bus 008 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 007 Device 002: ID 090c:3714 Feiya Technology Corp. Bus 007 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 005 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 001 Device 002: ID 0a5c:2150 Broadcom Corp. BCM2046 Bluetooth Device Bus 001 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
processor : 0 vendor_id : GenuineIntel cpu family : 6 model : 23 model name : Intel(R) Core(TM)2 Duo CPU T6600 @ 2.20GHz stepping : 10 cpu MHz : 2194.935 cache size : 2048 KB physical id : 0 siblings : 2 core id : 0 cpu cores : 2 apicid : 0 initial apicid : 0 fdiv_bug : no hlt_bug : no f00f_bug : no coma_bug : no fpu : yes fpu_exception : yes cpuid level : 13 wp : yes flags : 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 ht tm pbe nx lm constant_tsc arch_perfmon pebs bts aperfmperf pni dtes64 monitor ds_cpl est tm2 ssse3 cx16 xtpr pdcm sse4_1 xsave lahf_lm bogomips : 4389.87 clflush size : 64 cache_alignment : 64 address sizes : 36 bits physical, 48 bits virtual power management: [y se repite para el otro core...]