Differences between revisions 43 and 44
Revision 43 as of 2015-10-22 15:18:04
Size: 15760
Editor: devfra
Comment: update "important notes" and "power management" sections
Revision 44 as of 2015-10-22 15:24:05
Size: 15872
Editor: devfra
Comment:
Deletions are marked like this. Additions are marked like this.
Line 111: Line 111:
Check [[http://stackoverflow.com/questions/22482252/how-to-set-intel-idle-max-cstate-0-to-disable-c-states| this post]] for further suggestions and instruction. Check [[http://stackoverflow.com/questions/22482252/how-to-set-intel-idle-max-cstate-0-to-disable-c-states| this post]] for further suggestions and instruction. Please be aware that using this workaround can impact on the battery duration, but it is better than lose data.

Translation(s): none

DebianOn is an effort to document how to install, configure and use Debian on some specific hardware. Therefore potential buyers would know if that hardware is supported and owners would know how get the best out of that hardware.

The purpose is not to duplicate the Debian Official Documentation, but to document how to install Debian on some specific hardware.

If you need help to get Debian running on your hardware, please have a look at our user support channels where you may find specific channels (mailing list, IRC channel) dedicated to certain types of hardware.

Models covered
ASUS Transformer Book T100TA-DK002DH

- CPU: Intel Atom Bay Trail Z3740 (BYT-T)/BGA
- Video card: Intel HD Graphics (Atom Processor Z36xxx/Z37xxx Series Graphics & Display)
- Screen: 10.1" HD SLIM WV(GL,LED-TP)
- Wireless card: Broadcom 43241b4 SDIO
- Disks: eMMC 32 GB (/dev/mmcblk0), internal USB Disk 7.5GB (/dev/sda, hidden, Windows recovery)
- RAM: LPDDR3 1067 2GB (on-board)
- Bluetooth: Broadcom (on-board BCM2035 HCI?)

Overall Status in Debian Stretch (testing)

Core Components

[ATTACH]

Boot Standard Kernel:

{OK}

Detect hard drives:

{OK}

Extra Features

Shutdown

{OK}

Reboot

{OK}

Hibernation

/!\

Sleep / Suspend

/!\

Battery monitor

{OK}

Xorg

{OK}

- OpenGL

{OK}

- Resize-and-Rotate(randr)

{i}

Screen backlight

{X}

Light sensor

{X}

Switch to External Screen (HDMI)

{OK}

Mouse

- Built-in (Touchpad)

{OK} (but no multitouch)

- Built-in (Touchscreen)

{OK} (but no multitouch)

Bluetooth

{i} /!\

Wireless/Wifi

{i} X-(

Keyboard's Hotkeys

[?]

Sound

{i}

MicroSD card reader

{i}

Built-in camera

{X}

Accelerometers

{i}

Legend :
{OK} = OK ; {X} Unsupported(No Driver) ; /!\ = Error (Couldn't get it working); [?] Unknown, Not Test ; [-] Not-applicable
{i} = Configuration Required; X-( = Only works with a non-free driver and or firmware

Important Notes

{i} The T100TA has an hardware similar to that one of the Asus X205TA, informations and procedures regarding these two models can be usefully shared.

/!\ /!\ /!\ There is a grave issue in linux kernel > 3.16 (now available only in Debian Jessie) with CPU C-states which causes instability during mmc data operations, leading possibly to data loss and file system corruption. In linux kernel 4.2 the problem still persists and a workaround is proposed in the Power Management section, make sure to apply it also during the installation.

{i} Before installing Debian, Secure Boot needs to be disabled. Also, if dual-booting with Windows 8 it is recommended to disable its fast boot feature.

{i} Although the Debian Jessie (stable) installer includes all the needed modules and core changes to install and boot on this machine, it is advisable to install Debian Stretch (testing) and keep it up to date due to a lot of components still unsupported.

{i} In order to install Debian using the internet (e.g. with a netinst image) the wifi has to be enabled. See the steps described in the WiFi section, prepare the needed firmware (see also the d-i manual Loading Missing Firmware) and reproduce the steps using a shell during the installation procedure.

{i} The T100TA is a mixed mode EFI system (i.e. a 64-bit CPU combined with a 32-bit EFI) without any legacy BIOS mode. By default, the Jessie i386 installer images should boot on this machine via UEFI and let you install a complete 32-bit (i386) system. If you use the multi-arch amd64/i386 netinst or DVD image, you will also be able to install in 64-bit mode. You might expect slightly better performance that way, but the limited memory on the machine (2 GiB) will become more of an issue. For those installing Debian 64-bit without the d-i, e.g. with debootstrap, chroot to the newly installed Debian partition and install GRUB in this way:

# apt-get install grub-efi-ia32-bin
# grub-install --target i386-efi

Configuration

Power Management

Status, kernel linux >= 4.2

- battery status information is available
- shutdown correctly works
- reboot correctly works
- suspend to RAM doesn't work
- hibernation doesn't work

Suspend to RAM does not work and sends the machine into a state from which one can only recover by forcing the shutdown. Hibernation partially works as it, like the suspend, requires to force the shutdown and at the following boot the system recovers from the hibernation but with some glitches. Some suggestions are discussed in this thread.

CPU C-states issue with the internal eMMC

This issue causes instability during mmc data operations, leading possibly to data loss and file system corruption, and it is discussed in this thread and a patch seems to be already proposed in this discussion. However a proper fix doesn't seem to be yet available. As a workaround it is necessary to boot the system with the kernel parameter:

intel_idle.max_cstate=0

Check this post for further suggestions and instruction. Please be aware that using this workaround can impact on the battery duration, but it is better than lose data.

Touchscreen

Intel Graphics using i915 driver, X.org works. Brightness level cannot be adjusted yet and it is locked at the maximum value, some patches are discussed in this discussion.

Brightness can be adjusted with xrandr --output UNKNOWN1 --brightness 0.5. Is this the same as dimming the backlight - i.e. does this actually reduce power consumption?

The accelerometers are not supported yet, therefore the screen can only be manually rotated using xrandr. However the touchscreen inputs also have to be manually adjusted with xinput to be coherent with the rotations. See the example script ts_rotate.Stretch_ASUS_T100TA.sh.

The accelerometers work as of at least linux-image-4.3.0-rc3-amd64.

The touchscreen is identified as ATML1000:

$ xinput
⎡ Virtual core pointer                          id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ ASUSTek COMPUTER INC. ASUS Base Station(T100)     id=9    [slave  pointer  (2)]
⎜   ↳ ASUSTek COMPUTER INC. ASUS Base Station(T100)     id=10   [slave  pointer  (2)]
⎜   ↳ ATML1000:00 03EB:8C0E                     id=11   [slave  pointer  (2)]
⎣ Virtual core keyboard                         id=3    [master keyboard (2)]
    ↳ Virtual core XTEST keyboard               id=5    [slave  keyboard (3)]
    ↳ Video Bus                                 id=6    [slave  keyboard (3)]
    ↳ Sleep Button                              id=7    [slave  keyboard (3)]
    ↳ ASUSTek COMPUTER INC. ASUS Base Station(T100)     id=8    [slave  keyboard (3)]
    ↳ Asus WMI hotkeys                          id=12   [slave  keyboard (3)]

Audio

The device is an Intel SST Audio / Realtek RT5640.

Sound works under the current stable kernel linux-image-3.16.0-4-amd64, using the firmware and alsa files here https://drive.google.com/folderview?id=0B4s5KNXf2Z36VVJDQnY5NEltdmc&usp=sharing&tid=0B9C1WK1FQhjfcXNrbzN6djQzajg#list, it also works under linux-image-4.3.0-rc3-amd64 with the state file from the previous link and the firmware image from here: https://git.kernel.org/cgit/linux/kernel/git/firmware/linux-firmware.git/tree/intel/fw_sst_0f28.bin-48kHz_i2s_master

WiFi

The wifi device is an on-board SDIO device Broadcom 43241b1, firmware and nvram file need to be installed.

The firmware can be installed with:

# apt-get install firmware-brcm80211

The nvram file can be found under /sys/firmware/efi/efivars/. If the directory is empty, it may need to be (temporarily) mounted first by:

# mount -t efivarfs efivarfs /sys/firmware/efi/efivars

Then the nvram-file needs to be copied and renamed:

# cp /sys/firmware/efi/efivars/nvram-74b00bd9-805a-4d61-b51f-43268123d113 /lib/firmware/brcm/brcmfmac43241b4-sdio.txt

Note that brcmfmac43241b4-sdio.txt then contains a wrong MAC address. However, this is not a problem and does not need to be changed, as the file is only a template.

With linux kernel < 4.1, due to some conflit between sdhci-acpi and brcmfmac (see kernel bug report 88061 and this discussion), a parameter has to be changed for the sdhci-acpi driver. There are several ways to do this, temporarily or permanently. A temporary way, also useful during the installation procedure, is this one:

# echo 'on' | tee /sys/bus/platform/drivers/sdhci-acpi/INT33BB\:00/power/control  > /dev/null

then refresh the networks list in your network manager. In case it doesn't work immediately try to reload the brcmfmac module:

# modprobe -r brcmfmac && modprobe brcmfmac

Otherwise, to make it permanent, install the package sysfsutils and add the following lines in /etc/sysfs.conf:

# Disable SDHCI-ACPI for Wireless, otherwise WLAN doesn't work
bus/platform/drivers/sdhci-acpi/INT33BB:00/power/control = on

then restart the system. In this way at each boot the option is passed before the brcmfmac driver is loaded.

microSD Card Reader

The following action allows the card reader to work:

# echo 'options sdhci debug_quirks=0x8000' | tee /etc/modprobe.d/sdhci.conf > /dev/null
# update-initramfs -u -k all

After a reboot the card reader should be working.

To use the microSD card reader for the installation procedure, or at the first boot of the system, at boot edit the GRUB menu entry and add to the linux line the option sdhci.debug_quirks=0x8000, like this:

setparams 'Debian GNU/Linux'
...
    linux   /boot/vmlinuz-3.16.0-4-amd64 ... quiet sdhci.debug_quirks=0x8000

Built-in camera

The model should be "mt9m114". Further information has to be retrieved.


System Summary

lspci

00:00.0 Host bridge [0600]: Intel Corporation Atom Processor Z36xxx/Z37xxx Series SoC Transaction Register [8086:0f00] (rev 09)
00:02.0 VGA compatible controller [0300]: Intel Corporation Atom Processor Z36xxx/Z37xxx Series Graphics & Display [8086:0f31] (rev 09)
00:14.0 USB controller [0c03]: Intel Corporation Atom Processor Z36xxx/Z37xxx Series USB xHCI [8086:0f35] (rev 09)
00:1a.0 Encryption controller [1080]: Intel Corporation Atom Processor Z36xxx/Z37xxx Series Trusted Execution Engine [8086:0f18] (rev 09)
00:1f.0 ISA bridge [0601]: Intel Corporation Atom Processor Z36xxx/Z37xxx Series Power Control Unit [8086:0f1c] (rev 09)

lsusb

Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 003: ID 0b05:17e0 ASUSTek Computer, Inc. 
Bus 001 Device 002: ID 0b05:17e4 ASUSTek Computer, Inc. 
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Resources

Attachments

Some configuration files and sample outputs.

  • [get | view] (2019-06-23 21:05:34, 42.7 KB) [[attachment:photo.jpg]]
 All files | Selected Files: delete move to page copy to page

Credits