I bought a new Dell laptop -- an Inspiron i17R (N7010) and have loaded Gentoo on it. This model only sold with Windows on it; it is not marketed as being Linux friendly. I selected it because I needed a laptop in short order and I wanted 6 GB of RAM and 17".

I have the audio working. I'm unable to access the web cam and I do not see anything at the manufacturer's site which suggests what brand it is. I had read elsewhere that Dell was pretty good about supporting its laptops for Linux, yet it appears I'm on my own. So I come here for advice on how to determine what hardware I have.

I followed the teachings at http://en.gentoo-wiki.com/wiki/Webcam and activated in a gunshot mode all the video modules in the hope that genkernel would determine what hardware I had and load the appropriate driver. Alas, no luck.

I tried emerging media-video/linux-uvc, but it failed to build. Others appear to not exist:

I spent probably an 1 1/2 hours calling Dell speaking with the tech support and trying to get to the Linux team. Well intentioned technicians could not say with certainty who the manufacturer of the webcam on my Dell Inspiron (N7010) was.

The vendor id, 0c45, matches up on the USB Video Class Linux device driver home with Sonix Technology, and the product ID "6480" did not match. However, I noticed that all of the Sonix Technology web cams are compliant insofar as they have a green check mark next to them. It seems that the Sonix Technology product ids are in ascending order, 63e0, 63ea, 6409, 6415. So I'm guessing that 6480 must be a more recent product release as I'm also guessing that the assignment of product numbers are incremental over time. Sonix's web site is: http://www.sonix.com.tw

In the meantime, it looks like USB Video Class ("UVC") project strives to make a universal driver that devices conform to:

Quote:

The goal of this project is to provide all necessary software components to fully support UVC compliant devices in Linux. This include a V4L2 kernel device driver and patches for user-space tools.

The USB Device Class Definition for Video Devices, or USB Video Class, defines video streaming functionality on the Universal Serial Bus. Much like nearly all mass storage devices (USB flash disks, external SATA disk enclosures, ...) can be managed by a single driver because they conform to the USB Mass Storage specification, UVC compliant peripherals only need a generic driver.

The UVC specification covers webcams, digital camcorders, analog video converters, analog and digital television tuners, and still-image cameras that support video streaming for both video input and output.

The web page also notes:

Quote:

Linux 2.6.26 and newer includes the Linux UVC driver natively. You will not need to download the driver sources manually unless you want to test a newer version or help with development.

Since my version is 2.6.34, the UVC drivers are there and probably just need to be activated.

I noticed my kernel did not include activation of UVC, so i searched while in menuconfig (using the "/" to activate search and using the criteria "USB_VIDEO"):

After recompiling my kernel to contain the drivers referenced above, I started to see the device under /dev/video0. However, /dev/video0 was readable only by root, so I changed permission on it to 777 and then the software tools I used could access the device. I installed the googletalk (after integrating an overlay) and could successfully run a video conference (no mic, yet).

I'll post later more details on what I went through when I have the Inspiron running, but I wanted to announce that the web cam on the Inspiron can be activated and utilized... it just takes some digging around and configuration. Alas, Dell was not of any help in this regard, though their representatives meant to be helpful.

I have an N7010 as well, albeit only the smaller version with 4 GiB RAM. These are the issues I encountered so far:

The webcam is not working properly. VLC gets a couple of frames and then hangs. Other applications (such as Skype) don’t get a picture at all. (USB ID is 0C45:641D)

The wifi card (BCM4313) seems not to be completely supported by the brcm80211 staging driver. Generally it works but every time the card is actually transfering data the computer blocks: the mouse does not move any more, the sound stutters, the display is not updated. (PCI ID is 14E4:4727)

The ethernet card: working but I was surprised to learn it was only 100 MBit.

Card reader: not tried. As it is attached via USB it should work. (USB ID is 0BDA:0138)

Bluetooth: not tried. (USB ID is 413C:8160)

Video, Audio, Touchpad, USB, SATA, multimedia keys, power button, all those work without a hitch.

The trickiest part was getting the Broadcom wireless (BCM4313) to work. Some notes: I used the broadcom-sta package from Portage, not any downloadable drivers or firmware or anything, or any Broadcom kernel modules (I tried those other things, but failed). Just follow the errors spewed out from trying to broadcom-sta as to what your kernel settings should be. The hardest part was getting WEXT_PRIV and WIRELESS_EXT to show up in the config. You need to turn on "host AP" in the kernel to make that happen. After emerging and setting up wpa_supplicant (see the Gentoo Wireless documentation) with basic settings, it just worked.

Ethernet driver is atl1c . For the battery indicator to work, ensure hal is emerged with the policykit and laptop USE flags. For the webcam, follow the kernel settings described above in this thread. I haven't figured out how to control screen brightness yet, or if that's even possible from Linux.

The onboard mic seems very weak, even when I play around with alsamixer. Plugging in an external mic provides much better volume and quality.

The kernel I am using with all this is 2.6.36-gentoo-r8 because I could not configure a newer kernel (2.6.38) to work with broadcom-sta .

Emerge x11-drivers/xf86-input-synaptics for touchpad support, and kde-misc/synaptiks if you're on KDE. I don't know how to get multitouch support going. Without synaptics, the touchpad is too sensitive, and the mouse pointer skitters around way too much.

I had to add acpi_sleep=s3_bios to my grub.conf entry to get the laptop to wake up properly after Suspend to RAM. Here's my grub.conf, which also lets me dual boot to Windows 7:

For dual boot, I booted into Windows and used the Disk Management utility to shrink the existing NTFS partition, to make room for Linux. Then, as part of the Gentoo installation, I used fdisk to create an extended partition, in which I added sda5, sda6 and sda7 for boot, swap and root partitions, respectively.

WIN. I'm able to set the backlight brightness at boot time (e.g. at the grub menu), and [now] it keeps that level until the next reboot (which happens very rarely in my case). So, all in all, I'd say the Dell N7010 (Inspiron 17R) is an excellent Linux laptop.

I completely wiped out Windows when I installed Gentoo around October/November 2010.

Now I'm paying dearly for removing Windows as I believe the problem I am encountering with my CD drive and the software grip may be related to the BIOS or firmware. It looks like Dell only supports BIOS upgrades for this model via Windows, so now I am without means to install a BIOS upgrade. I guess now I'll have to re-install Windows -- I hope I can find whatever DVD shipped with this laptop.

About a year a 4 months after purchase, I was able to run my laptop on battery compiling a new kernel (while carpooling) several times for about 80 minutes and I think I was getting close on my battery life. I'm going from memory, I generally avoid battery if at all possible.

I do know from work that you can almost set your watch to the expiration of a battery in a Dell. I don't use batteries for my laptop as I'm either at work or at home, but on the rare occasion I do, I find that after a year, I'm at high risk of not getting much time. My non-use of battery may work against me if the battery suffers from memory problems -- this is something I simply do not know.

I do not know what the estimated time for battery life on my unit was or should be.

My genkernel did not pick up the network card: atl1c, though the installed disk did. I thought they were suppose to be the same, but apparently are not. I also noted discrepancies between what the CD system had and what my genkernel had.

My genkernel did not pick up the network card: atl1c, though the installed disk did. I thought they were suppose to be the same, but apparently are not. I also noted discrepancies between what the CD system had and what my genkernel had.

I started to add " ~amd64" to my /etc/portage/package.keywords because there seemed to be a lot of programs not yet approved for 64 bit, so what the heck. I soon found myself in emerge conflict Hell: one program blocking another and the like. Since I had recently installed this 64 bit system, I simply rem'd out any reference to "~amd64" in my /etc/portage files and then everything starting emerging without conflicts again. Of course, I'll probably run into problems and some of the software I installed may not work, but at least I'm back to a working portage.