Making sense of i2c

Colin McKinnon colin.mckinnon at gmail.com
Sun Jan 15 23:15:44 UTC 2017


Hi Ray,

hwinfo not available in fedora (it seems to be in copr - I'll do a bit more
digging on that one).

lspci, lshw and lspci don't reveal much. Nothing with "touch" in it (even
though the laptop has a touchpad I am currently using as I type this - PS/2
emulation I guess).

[root at annaslaptop anna]# lspci
00:00.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Device 1576
00:00.2 IOMMU: Advanced Micro Devices, Inc. [AMD] Device 1577
00:01.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI]
Device 98e4 (rev c1)
00:01.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Device 15b3
00:02.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Device 157b
00:02.2 PCI bridge: Advanced Micro Devices, Inc. [AMD] Device 157c
00:02.3 PCI bridge: Advanced Micro Devices, Inc. [AMD] Device 157c
00:02.4 PCI bridge: Advanced Micro Devices, Inc. [AMD] Device 157c
00:03.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Device 157b
00:08.0 Encryption controller: Advanced Micro Devices, Inc. [AMD] Device
1578
00:09.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Device 157d
00:09.2 Audio device: Advanced Micro Devices, Inc. [AMD] Device 157a
00:10.0 USB controller: Advanced Micro Devices, Inc. [AMD] FCH USB XHCI
Controller (rev 20)
00:11.0 SATA controller: Advanced Micro Devices, Inc. [AMD] FCH SATA
Controller [AHCI mode] (rev 4b)
00:12.0 USB controller: Advanced Micro Devices, Inc. [AMD] FCH USB EHCI
Controller (rev 49)
00:14.0 SMBus: Advanced Micro Devices, Inc. [AMD] FCH SMBus Controller (rev
4b)
00:14.3 ISA bridge: Advanced Micro Devices, Inc. [AMD] FCH LPC Bridge (rev
11)
00:18.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Device 15b0
00:18.1 Host bridge: Advanced Micro Devices, Inc. [AMD] Device 15b1
00:18.2 Host bridge: Advanced Micro Devices, Inc. [AMD] Device 15b2
00:18.3 Host bridge: Advanced Micro Devices, Inc. [AMD] Device 15b3
00:18.4 Host bridge: Advanced Micro Devices, Inc. [AMD] Device 15b4
00:18.5 Host bridge: Advanced Micro Devices, Inc. [AMD] Device 15b5
01:00.0 Unassigned class [ff00]: Realtek Semiconductor Co., Ltd. RTS5229
PCI Express Card Reader (rev 01)
02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd.
RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 15)
03:00.0 Network controller: Qualcomm Atheros QCA9377 802.11ac Wireless
Network Adapter (rev 30)

[root at annaslaptop anna]# lsusb
Bus 001 Device 004: ID 5986:0711 Acer, Inc
Bus 001 Device 003: ID 0cf3:e360 Atheros Communications, Inc.
Bus 001 Device 002: ID 0438:7900 Advanced Micro Devices, Inc.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub


The Acer device is the camera. Oddly, the accelerometer, on the i2c bus is
detected....

[root at annaslaptop anna]# lsmod
Module                  Size  Used by
binfmt_misc            20480  1
rfcomm                 77824  2
fuse                  102400  3
ccm                    20480  1
xt_CHECKSUM            16384  1
ipt_MASQUERADE         16384  3
nf_nat_masquerade_ipv4    16384  1 ipt_MASQUERADE
tun                    28672  1
nf_conntrack_netbios_ns    16384  1
nf_conntrack_broadcast    16384  1 nf_conntrack_netbios_ns
xt_CT                  16384  1
ip6t_rpfilter          16384  1
ip6t_REJECT            16384  2
nf_reject_ipv6         16384  1 ip6t_REJECT
xt_conntrack           16384  22
ip_set                 36864  0
nfnetlink              16384  1 ip_set
ebtable_nat            16384  1
ebtable_broute         16384  1
bridge                131072  1 ebtable_broute
ip6table_nat           16384  1
nf_conntrack_ipv6      20480  12
nf_defrag_ipv6         36864  1 nf_conntrack_ipv6
nf_nat_ipv6            16384  1 ip6table_nat
ip6table_raw           16384  1
ip6table_mangle        16384  1
ip6table_security      16384  1
iptable_nat            16384  1
nf_conntrack_ipv4      16384  13
nf_defrag_ipv4         16384  1 nf_conntrack_ipv4
nf_nat_ipv4            16384  1 iptable_nat
nf_nat                 28672  3
nf_nat_ipv6,nf_nat_masquerade_ipv4,nf_nat_ipv4
nf_conntrack          106496  10
nf_conntrack_ipv6,nf_conntrack_ipv4,nf_conntrack_broadcast,nf_conntrack_netbios_ns,xt_CT,nf_nat_ipv6,nf_nat_masquerade_ipv4,xt_conntrack,nf_nat_ipv4,nf_nat
iptable_raw            16384  1
iptable_mangle         16384  1
iptable_security       16384  1
ebtable_filter         16384  1
ebtables               36864  3 ebtable_filter,ebtable_nat,ebtable_broute
ip6table_filter        16384  1
ip6_tables             28672  5
ip6table_mangle,ip6table_filter,ip6table_security,ip6table_raw,ip6table_nat
cmac                   16384  1
bnep                   20480  2
vfat                   20480  1
fat                    65536  1 vfat
uvcvideo               90112  0
videobuf2_vmalloc      16384  1 uvcvideo
videobuf2_memops       16384  1 videobuf2_vmalloc
videobuf2_v4l2         24576  1 uvcvideo
videobuf2_core         40960  2 uvcvideo,videobuf2_v4l2
arc4                   16384  2
kvm                   581632  0
irqbypass              16384  1 kvm
crct10dif_pclmul       16384  0
crc32_pclmul           16384  0
ghash_clmulni_intel    16384  0
videodev              172032  3 uvcvideo,videobuf2_core,videobuf2_v4l2
media                  40960  2 uvcvideo,videodev
btusb                  45056  0
btrtl                  16384  1 btusb
btbcm                  16384  1 btusb
joydev                 20480  0
btintel                16384  1 btusb
bluetooth             524288  31 btrtl,btintel,bnep,btbcm,rfcomm,btusb
snd_hda_codec_generic    73728  1
snd_hda_codec_hdmi     45056  1
snd_hda_intel          36864  12
snd_hda_codec         126976  3
snd_hda_intel,snd_hda_codec_hdmi,snd_hda_codec_generic
ath10k_pci             45056  0
snd_hda_core           81920  4
snd_hda_intel,snd_hda_codec,snd_hda_codec_hdmi,snd_hda_codec_generic
ath10k_core           290816  1 ath10k_pci
sp5100_tco             16384  0
fam15h_power           16384  0
bmc150_accel_spi       16384  0
bmc150_accel_i2c       16384  0
bmc150_accel_core      24576  2 bmc150_accel_spi,bmc150_accel_i2c
industrialio_triggered_buffer    16384  1 bmc150_accel_core
i2c_piix4              24576  0
snd_hwdep              16384  1 snd_hda_codec
kfifo_buf              16384  1 industrialio_triggered_buffer
rtsx_pci_ms            20480  0
memstick               16384  1 rtsx_pci_ms
industrialio           61440  3
bmc150_accel_core,industrialio_triggered_buffer,kfifo_buf
snd_seq                69632  0
snd_seq_device         16384  1 snd_seq
snd_pcm               118784  4
snd_hda_intel,snd_hda_codec,snd_hda_core,snd_hda_codec_hdmi
mac80211              724992  1 ath10k_core
ath                    28672  1 ath10k_core
cfg80211              573440  3 mac80211,ath,ath10k_core
ideapad_laptop         24576  0
sparse_keymap          16384  1 ideapad_laptop
i2c_designware_platform    16384  0
rfkill                 24576  8 bluetooth,ideapad_laptop,cfg80211
wmi                    16384  1 ideapad_laptop
snd_timer              32768  2 snd_seq,snd_pcm
snd                    86016  33
snd_hda_intel,snd_hwdep,snd_seq,snd_hda_codec,snd_timer,snd_hda_codec_hdmi,snd_hda_codec_generic,snd_seq_device,snd_pcm
shpchp                 36864  0
video                  40960  1 ideapad_laptop
i2c_designware_core    20480  1 i2c_designware_platform
tpm_crb                16384  0
soundcore              16384  1 snd
acpi_cpufreq           20480  0
tpm_tis                16384  0
tpm_tis_core           20480  1 tpm_tis
tpm                    45056  3 tpm_tis,tpm_crb,tpm_tis_core
nfsd                  331776  1
auth_rpcgss            61440  1 nfsd
nfs_acl                16384  1 nfsd
lockd                  94208  1 nfsd
grace                  16384  2 nfsd,lockd
sunrpc                323584  7 auth_rpcgss,nfsd,nfs_acl,lockd
i2c_dev                16384  0
amdkfd                139264  1
amd_iommu_v2           20480  1 amdkfd
amdgpu               1200128  13
i2c_algo_bit           16384  1 amdgpu
drm_kms_helper        151552  1 amdgpu
rtsx_pci_sdmmc         24576  0
mmc_core              139264  1 rtsx_pci_sdmmc
ttm                    94208  1 amdgpu
8021q                  32768  0
drm                   344064  12 amdgpu,ttm,drm_kms_helper
garp                   16384  1 8021q
stp                    16384  2 garp,bridge
llc                    16384  3 garp,bridge,stp
mrp                    20480  1 8021q
crc32c_intel           24576  0
serio_raw              16384  0
r8169                  81920  0
mii                    16384  1 r8169
rtsx_pci               57344  2 rtsx_pci_sdmmc,rtsx_pci_ms
fjes                   28672  0
i2c_hid                20480  0
[root at annaslaptop anna]#


C.

On 15 January 2017 at 19:27, rayH <rayH at engineering-intelligence.net> wrote:

> On Sunday, 15 January 2017 11:58:38 GMT Colin McKinnon via Scottish wrote:
>
> > I bought my daughter a Lenovo Yoga 510-14AST for Christmas. Everything
>
> > works in Linux (Fedora 25) except for the touchscreen.
>
>
>
> Hi Colin,
>
>
>
> I have a Yoga 3 Pro running openSUSE Tumbleweed. I know that it's
> different hardware, but this might give a clue where to look.
>
>
>
> _______________________________________________
>
> y3:~ # hwinfo |grep -C1  "touch"
>  hid-sensor-hub: module = hid_sensor_hub
>  hid-multitouch: /devices/pci0000:00/INT3433:
> 00/i2c-6/i2c-ATML1000:00/0018:03EB:8A10.0002
>  hid-multitouch: module = hid_multitouch
>        rtc_cmos: /devices/pnp0/00:02
> --
>  hid-sensor-hub: module = hid_sensor_hub
>  hid-multitouch: /devices/pci0000:00/INT3433:
> 00/i2c-6/i2c-ATML1000:00/0018:03EB:8A10.0002
>  hid-multitouch: module = hid_multitouch
>        rtc_cmos: /devices/pnp0/00:02
> --
>    dev = 13:74
>    input device: bus = hid, bus_id = 0018:03EB:8A10.0002 driver = hid-multi
> touch
>      path = /devices/pci0000:00/INT3433:00/i2c-6/i2c-ATML1000:00/0018:03EB:8A10.0002
>
> --
>    dev = 13:32
>    input device: bus = hid, bus_id = 0018:03EB:8A10.0002 driver = hid-multi
> touch
>      path = /devices/pci0000:00/INT3433:00/i2c-6/i2c-ATML1000:00/0018:03EB:8A10.0002
>
> --
>  E: DEVPATH=/devices/pci0000:00/INT3433:00/i2c-6/i2c-ATML1000:00/0018:03EB:8A10.0002
>
>  E: DRIVER=hid-multitouch
>  E: HID_ID=0018:000003EB:00008A10
> --
>  joydev 20480 0 - Live 0xffffffffc0dcb000
>  hid_multitouch 20480 0 - Live 0xffffffffc0f3d000
>  hid_rmi 24576 0 - Live 0xffffffffc0d2a000
> y3:~ #
>
>
>
> y3:~ # lsmod |grep "multitouch"
> hid_multitouch         20480  0
> y3:~ #
>
>
> y3:~ #
> y3:~ # locate multitouch
> /lib/modules/4.9.0-1-default/kernel/drivers/hid/hid-multitouch.ko
> /lib/modules/4.9.0-2-default/kernel/drivers/hid/hid-multitouch.ko
> /usr/src/linux-4.9.0-2-obj/x86_64/default/include/config/hid/multitouch.h
> y3:~ #
> _______________________________________________
>
>
>
> In "lsusb -t" you are looking for:
>
> “Human Interface Device, Driver=usbhid”v
>
>
>
> The only thing that I had not working out of the box was screen rotation
> in “tent mode”, but I understand that even that works in some distros.
>
>
>
>
>
> --
>
> slàinte,
>
> rayH
>
>
>



-- 
-----BEGIN GEEK CODE BLOCK-----
Version: 3.1
GCM d s+:+ a+ C+++(---)$ UL+++ P+(--) L+++ E--- W+++ N++ w-- PS++(+++())
t+ 5+ X R- tv-- b++ DI++ D e+++ h----
------END GEEK CODE BLOCK------


More information about the Scottish mailing list