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

CPU Frequency Scaling

[?]

Shutdown

{OK} (partially)

Reboot

{i}

Hibernation

/!\

Sleep / Suspend

/!\

Battery monitor

{X}

Xorg

{OK}

- OpenGL

{OK}

- Resize-and-Rotate(randr)

{i}

Screen backlight

{X}

Light sensor

{X}

Switch to External Screen (HDMI)

[?]

Mouse

- Built-in (Touchpad)

{OK} (but no gestures/multitouch)

- Built-in (Touchscreen)

{OK} (but no gestures/multitouch)

Bluetooth

{i} /!\

Wireless/Wifi

{i} X-(

Keyboard's Hotkeys

[?]

Sound

{X}

MicroSD card reader

{i}

Built-in camera

{X}

Accelerometers

{X}

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 Note

{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 with CPU C-states which causes instability during mmc data operations, leading possibly to data loss and file system corruption. The issue is discussed in this Ubuntu on T100 thread and a patch seems to be already proposed in this discussion. Perhaps with linux kernel >= 4.1 the issue will be solved, for the moment the linux kernel 3.16 is safe.

{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} Starting with Jessie d-i RC2, the installer includes all needed modules and core changes to install and boot on this machine. Make sure you use this version or later to install, or you'll have to fight with lots of issues and it's not likely to be fun! Besides, due to a lot of components still unsupported, it would be better to install Debian Stretch (testing) and keep it up to date.

{i} Installing Debian with a netinst image, or other means using the internet, requires to enable the wifi. 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

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.

The accelermeters 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 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, it currently doesn't work. Useful informations are discussed in kernel bug report 86581 and in Debian bug report 774914

Here some related sparse messages provided by dmesg:

...
sst-acpi 80860F28:00: firmware: failed to load intel/fw_sst_0f28.bin-i2s_master (-2)
sst-acpi 80860F28:00: Direct firmware load failed with error -2
sst-acpi 80860F28:00: Falling back to user helper
sst-acpi 80860F28:00: Cannot load firmware intel/fw_sst_0f28.bin-i2s_master
...
byt-rt5640 byt-rt5640: ASoC: CPU DAI baytrail-pcm-audio not registered
...
Modules linked in: ... snd_soc_sst_byt_rt5640_mach ... snd_soc_rt5640 snd_soc_rl6231 snd_soc_core ... snd_compress snd_pcm snd_timer ... snd soundcore ... snd_soc_sst_acpi ...

Power Management

Battery status information is not yet available in linux kernel <= 4.0, as the T100TA uses some ACPI 5.0 features that are not yet supported.

Shutdown and reboot partially work as they successfully bring the system to the correct state but then require to force the shutdown by pressing the power button for a long time (~10 seconds).

To make the reboot work 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 reboot=pci,force, like this:

setparams 'Debian GNU/Linux'
...
    linux   /boot/vmlinuz-3.16.0-4-amd64 ... quiet reboot=pci,force

To make the reboot work permanently, edit /etc/default/grub and add reboot=pci,force to the GRUB_CMDLINE_LINUX_DEFAULT line:

...
GRUB_CMDLINE_LINUX_DEFAULT="reboot=pci,force quiet"
...

and then

# update-grub

At the next boot the reboot shoud 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 Ubuntu on T100 thread.

WiFi

The wifi device is an on-board SDIO device Broadcom 43241b1. With linux kernel <= 4.0 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.

Due to some conflit between sdhci-acpi and brcmfmac (see kernel bug report 88061 and this discussion), a parameters 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.

This last step may no longer be necessary for future linux kernel versions (as of 4.0.4 it is still needed).

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


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