User:Oxore/Draft:Acer Aspire 1 A114-32-C0JL

From Gentoo Wiki
Jump to: navigation, search
Warning
This page is a work in progress by Oxore (talk | contribs). Treat its contents with caution.
Resources

The Acer Aspire 1 model A114-32-C0JL, manufacturer's code NX.GVZER.004, is a cheap and lightwight 14" laptop, based on dual core Celeron N4000 processor with 4GB RAM and 64GB eMMC storage. It has no active cooling system, no discrete graphics card, but has Ethernet port and 14" FullHD TN screen. Comes with pre-installed Windows 10 OS.

Hardware

Standard

Device Make/model Status Bus ID Kernel driver(s) Kernel version Notes
CPU Intel® Celeron® Processor N4000 Works N/A N/A 5.4.48
Video Intel® UHD Graphics 600 Works 00:02.0 i915 5.4.48 Integrated graphics
Audio Realtek ALC255 @ Intel Gemini Lake SoC Works snd_hda_intel 5.4.48
eMMC storage Works 00:1c.0 mmc_core, mmc_block, cqhci, sdhci, sdhci_pci (sdhci-pci.ko) 5.4.48
SD/MMC Card Reader Realtek RTL8411B PCI Express Card Reader Works 02:00.0 rtsx_pci, rtsx_pci_sdmmc, mfd_core 5.4.48
USB Not tested 00:15.0 xhci_hcd 5.4.48 TODO: Test USB3.0
Ethernet Realtek RTL8111/8168/8411 Works 02:00.1 r8169 5.4.48 Gigabit LAN 10/100/1000 Mb/s
Wireless LAN Qualcomm Atheros QCA9377 Works 03:00.0 ath, ath10k_pci, ath10k_core, mac80211, cfg80211, libarc4 5.4.48 802.11ac
Bluetooth Qualcomm Atheros QCA9377 WIP 03:00.0 ath, ath10k_pci, ath10k_core, acer_wmi 5.4.48 bluetothctl still reports "No default controller available"
Camera Works Bus 001 Device 003: ID 04f2:b5e9 uvcvideo, veodev, videobuf2_vmalloc, videobuf2_memops, videobuf2_v4l2, videobuf2_common 5.4.48 0.3 Megapixel
Touchpad ELAN Touchpad 04F3:3093 Works 00:17.0/i2c-ELAN0503:00 i2c_core, i2c_hid, i2c_designware_platform, i2c_designware_core, pinctrl_intel, pinctrl_geminilake, hid_multitouch, intel_lpss, intel_lpss_pci 5.4.48 Complicated device, connected via I2C HID

Installation

Read this to find out how to prepare BIOS for OS installation.

Then the installation is per the Gentoo AMD64 handbook.

Kernel configuration

Most of following kernel options specified as modules, but most of them (not all though) can be selected to be compiled into kernel unconditionally (use * instead of M).

Audio card

KERNEL Enable Intel HD audio and Realtek driver
Device Drivers  --->
    <*> Sound card support  --->
        <*>   Advanced Linux Sound Architecture  --->
            HD-Audio  --->
                <*> HD Audio PCI
                [*] Build hwdep interface for HD-audio driver
                <*> Build Realtek HD-audio codec support

eMMC storage contoller

KERNEL Enable MMC support and SDHCI controller
Device Drivers  --->
    <M> MMC/SD/SDIO card support  --->
        <M>   MMC block device driver
        <M>   Secure Digital Host Controller Interface support
        <M>     SDHCI support on PCI bus
        [*]       Ricoh MMC Controller Disabler (NEW)
        -M-   Command Queue Host Controller Interface support

After that /dev/mmcblk0 (sometimes /dev/mmcblk1) device must be available.

SD/MMC Card Reader

KERNEL Enable SD/MMC Card Reader support - some rtsx drivers
Device Drivers  --->
    Misc devices  --->
        <M> Realtek PCI-E card reader
    <M> MMC/SD/SDIO card support  --->
        <M>   Realtek PCI-E SD/MMC Card Interface Driver

Wireless LAN

Note
ath10k requires firmware, therefore it will not work if compiled into kernel without firmware. Simplest solution is to leave it compiled as a module.
KERNEL Enable ath10k driver modules
Device Drivers  --->
    [*] Network device support  --->
        [*]   Wireless LAN  --->
            [*]   Atheros/Qualcomm devices
            <M>     Atheros 802.11ac wireless cards support
            <M>     Atheros ath10k PCI support

Bluetooth

It probably needs CONFIG_ACER_WMI besides options from the previous Wireless LAN section. And it probably needs some special out-of-tree firmware.[1]

Author is still about to try this out.

Camera

Just works with uvcvideo driver.

KERNEL Enable uvcvideo driver
Device Drivers  --->
    <M> Multimedia support  --->
        [*]   Cameras/video grabbers support
        [*]   Media USB Adapters  --->
            <M>   USB Video Class (UVC)
            [*]     UVC input events device support
        [*]   Autoselect ancillary drivers (tuners, sensors, i2c, spi, frontends)

Touchpad

KERNEL Enable support I2C related drivers used by touchpad
Device Drivers  --->
    I2C support  --->
        I2C Hardware Bus support  --->
                *** I2C system bus drivers (mostly embedded / system-on-chip) ***
            <M> Synopsys DesignWare Platform
    [*] Pin controllers  --->
        <M>   Intel Gemini Lake SoC pinctrl and GPIO driver
    HID support  --->
        Special HID drivers  --->
            <M> HID Multitouch panels
    Multifunction device drivers --->
        <M> Intel Low Power Subsystem support in ACPI mode
        <M> Intel Low Power Subsystem support in PCI mode

External resources

References

  1. Discusstion on forum.libreelec.tv about QCA9377 Bluetooth