Thursday, November 3, 2011

Lenovo G570 and Fedora 15 (Linux)

Hello world again.
Just reporting on a laptop I bought's compatibility with Linux, specifically Fedora 15 64 bit.
It's a Lenovo G570 with 4GB of RAM, specifically this one: http://www.newegg.com/Product/Product.aspx?Item=N82E16834246128

Summary
Wireless does not work out of the box in Fedora 15 but does in Linux Mint 11. Rpmfusion has the Fedora driver.
SD Card does not work out of the box in Fedora 15 nor Linux Mint 11.
Everything else looks good in Fedora 15.
The default partitioning is a pain if you want to dual boot without deleting the recovery partitions.



Yay! New Laptop
First off, I was disappointed I was unable to get the laptop to boot from the built-in SD card slot as I didn't want to repartition the hard drive yet. The bios would not present it as an option after I used the Fedora LiveUSB Creator tool on another PC with the SD card. I had to give up on that.
Booting from USB was no problem though. I had Linux Mint 11 (DVD version) on a USB drive and I was able to start that up. Everything seemed to work except the SD card. I switched back to Fedora, but wasn't as lucky. This laptop uses a Broadcom chipset for the wireless that required some driver hunting. I installed the rpmfusion-free and nonfree repo's and then installed broadcom-wl. After a reboot, wireless has been working just fine. Just installing Fedora was an issue though.

Partitioning
I didn't want to remove the existing partitions but the default layout used all the primary partitions and the extended partition was tiny. First I shrunk the Windows partition by about half using the Windows's built in disk management I didn't have to use that but I was running Windows at that point anyway. Then I used gparted from one of the Linux LiveUSB's I made and then moved the start of the extended partition (sda3) to the end of the windows one (sda2). It was then: sda1 (small) sda2 (~225GB) sda3 (~225GB) then sda4 (15GB). In sda3 there was about 200 GB of unused space with sda5 (30GB) at the end.
Then I ran the Fedora installer. Told it I wanted a custom layout. Added the 500MB /boot first then made the rest an LVM volume and in that I put about 6 GB of swap, 150GB of /home and 55 GB of /
Then grub got installed in sda, and edited the label for Windows 7 at sda1. I know Windows is installed on sda2 but the bootmgr for Windows is on the first partition.

The SD Card
Getting SD card took the longest but after I figured out it's hardware id, it was easy enough to ask Google for the answer. This particular laptop uses a Realtek USB 2.0 Card Reader (as reported in Windows) with the ID 0bda:0139. The forum posting over at http://ubuntuforums.org/showpost.php?p=11065709&postcount=7 led me to the answer. The http://ubuntuone.com/p/153B/ link downloads the source for the kernel module. The file will be called rts5139.tar.bz2. I unpacked it with tar -jxf rts5139.tar.bz2 which made a similarly named folder in which you make && sudo make install && sudo depmod. Then sudo modprobe rts5139 loaded the device and it showed up in the file browser. Unfortunately it probably won't be so easy for others. I already had a bunch of dev tools install so at the least you'll have to install kernel-headers (maybe kernel-devel, I don't remember.)  If I reinstall I'll make better record. One problem with this though is when the kernel version changes I'll have to recompile and install this driver. I need a dkms package for it but I don't know how to make it yet.

And that's just about it. I'll post the output to lspci and lsusb below for the search engines.

Hardware list
# lspci
00:00.0 Host bridge: Intel Corporation 2nd Generation Core Processor Family DRAM Controller (rev 09)
00:02.0 VGA compatible controller: Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller (rev 09)
00:16.0 Communication controller: Intel Corporation 6 Series/C200 Series Chipset Family MEI Controller #1 (rev 04)
00:1a.0 USB Controller: Intel Corporation 6 Series/C200 Series Chipset Family USB Enhanced Host Controller #2 (rev 05)
00:1b.0 Audio device: Intel Corporation 6 Series/C200 Series Chipset Family High Definition Audio Controller (rev 05)
00:1c.0 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 1 (rev b5)
00:1c.1 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 2 (rev b5)
00:1d.0 USB Controller: Intel Corporation 6 Series/C200 Series Chipset Family USB Enhanced Host Controller #1 (rev 05)
00:1f.0 ISA bridge: Intel Corporation HM65 Express Chipset Family LPC Controller (rev 05)
00:1f.2 SATA controller: Intel Corporation 6 Series/C200 Series Chipset Family 6 port SATA AHCI Controller (rev 05)
00:1f.3 SMBus: Intel Corporation 6 Series/C200 Series Chipset Family SMBus Controller (rev 05)
01:00.0 Ethernet controller: Atheros Communications AR8152 v2.0 Fast Ethernet (rev c1)
02:00.0 Network controller: Broadcom Corporation BCM4313 802.11b/g/n Wireless LAN Controller (rev 01)

# lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 003: ID 0bda:0139 Realtek Semiconductor Corp.
Bus 002 Device 003: ID 5986:0292 Acer, Inc 

# cat /proc/cpuinfo 
processor    : 0
vendor_id    : GenuineIntel
cpu family    : 6
model        : 42
model name    : Intel(R) Pentium(R) CPU B940 @ 2.00GHz
stepping    : 7
cpu MHz        : 800.000
cache size    : 2048 KB
physical id    : 0
siblings    : 2
core id        : 0
cpu cores    : 2
apicid        : 0
initial apicid    : 0
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 syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl est tm2 ssse3 cx16 xtpr pdcm sse4_1 sse4_2 x2apic popcnt xsave lahf_lm arat epb xsaveopt pln pts dts
bogomips    : 3991.03
clflush size    : 64
cache_alignment    : 64
address sizes    : 36 bits physical, 48 bits virtual
power management:

processor    : 1
vendor_id    : GenuineIntel
cpu family    : 6
model        : 42
model name    : Intel(R) Pentium(R) CPU B940 @ 2.00GHz
stepping    : 7
cpu MHz        : 800.000
cache size    : 2048 KB
physical id    : 0
siblings    : 2
core id        : 1
cpu cores    : 2
apicid        : 2
initial apicid    : 2
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 syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl est tm2 ssse3 cx16 xtpr pdcm sse4_1 sse4_2 x2apic popcnt xsave lahf_lm arat epb xsaveopt pln pts dts
bogomips    : 3990.43
clflush size    : 64
cache_alignment    : 64
address sizes    : 36 bits physical, 48 bits virtual
power management:

4 comments:

Gorel said...

Thanks for the instructions to make the SD card reader work!

qwars said...

Thanks, thanks, thanks for the instructions to make the SD card reader work!

Ljubinka Davidovska blog said...

Thank you for the great article that help user of Lenovo G570 use Fedora and Mint.

SD card worked for me and almost all other mentioned issues are there in Fedora 16 also.

After some kernel update, SD card was also gone.

Worth to note is that on module rts5139 install, this commands:
make && sudo make install && sudo depmod
should be run as root. As regular user with sudo privileges there are errors.

Ununumium said...

Thank you for the great article:) I was googlingit about 3 hours until your blog save me...