← Back to team overview

kernel-packages team mailing list archive

[Bug 1417032] Re: Userspace can't access i2c devices (missing i2c entries in /dev)

 

This bug was fixed in the package linux - 3.19.0-7.7

---------------
linux (3.19.0-7.7) vivid; urgency=low

  [ Andy Whitcroft ]

  * Release Tracking Bug
    - LP: #1426013

  [ Upstream Kernel Changes ]

  * x86/irq: Fix regression caused by commit b568b8601f05
  * cxl: Fix leaking interrupts if attach process fails
    - LP: #1415102
  * cxl: Early return from cxl_handle_fault for a shut down context
    - LP: #1415102
  * cxl: Disable AFU debug flag
    - LP: #1415102
  * cxl: Disable SPAP register when freeing SPA
    - LP: #1415102
  * cxl: remove redundant increment of hwirq
    - LP: #1415102
  * cxl: Add tracepoints
    - LP: #1415102
  * cxl: Update CXL ABI documentation
    - LP: #1415102
  * cxl: Use image state defaults for reloading FPGA
    - LP: #1415102
  * cxl: Add image control to sysfs
    - LP: #1415102
  * cxl: Enable CAPP recovery
    - LP: #1415102
  * cxl: Add ability to reset the card
    - LP: #1415102
  * cxl: Fix device_node reference counting
    - LP: #1415102
  * cxl: Export optional AFU configuration record in sysfs
    - LP: #1415102
  * cxl: Fail AFU initialisation if an invalid configuration record is
    found
    - LP: #1415102
  * cxl: Add missing return statement after handling AFU errror
    - LP: #1415102
  * powerpc/eeh: Introduce flag EEH_PE_REMOVED
    - LP: #1415102
  * powerpc/eeh: Allow to set maximal frozen times
    - LP: #1415102
  * HID: i2c-hid: Limit reads to wMaxInputLength bytes for input events
 -- Andy Whitcroft <apw@xxxxxxxxxxxxx>   Thu, 26 Feb 2015 16:00:18 +0000

** Changed in: linux (Ubuntu)
       Status: Fix Committed => Fix Released

-- 
You received this bug notification because you are a member of Kernel
Packages, which is subscribed to linux in Ubuntu.
https://bugs.launchpad.net/bugs/1417032

Title:
  Userspace can't access i2c devices (missing i2c entries in /dev)

Status in linux package in Ubuntu:
  Fix Released

Bug description:
  SRU justification:

  Impact: userspace code cannot access i2c devices until the i2c-chardev
  module is loaded (and thus people might think they are not
  working/it's a kernel bug)

  Fix: build in i2c-chardev

  Test case: boot a kernel with i2c-chardev compiled in and look for i2c
  entries in /dev:

  [flag@luxor linux]$ ls -la /dev/i2c*
  crw-rw---- 1 root i2c 89, 0 Feb  2 09:33 /dev/i2c-0
  crw-rw---- 1 root i2c 89, 1 Feb  2 09:33 /dev/i2c-1
  crw-rw---- 1 root i2c 89, 2 Feb  2 09:33 /dev/i2c-2
  crw-rw---- 1 root i2c 89, 3 Feb  2 09:33 /dev/i2c-3
  crw-rw---- 1 root i2c 89, 4 Feb  2 09:33 /dev/i2c-4
  crw-rw---- 1 root i2c 89, 5 Feb  2 09:33 /dev/i2c-5
  crw-rw---- 1 root i2c 89, 6 Feb  2 09:33 /dev/i2c-6
  crw-rw---- 1 root i2c 89, 7 Feb  2 09:33 /dev/i2c-7

  --

  My board has an i2c bus (and devices attached to it), but the
  corresponding /dev entries are missing and userspace can't access
  these devices until the i2c-dev module is loaded:

  [flag@luxor ~]$ ls -la /sys/bus/i2c/devices/
  total 0
  drwxr-xr-x 2 root root 0 Feb  2 08:38 .
  drwxr-xr-x 4 root root 0 Feb  2 08:38 ..
  lrwxrwxrwx 1 root root 0 Feb  2 09:28 i2c-0 -> ../../../devices/pci0000:00/0000:00:01.0/0000:01:00.0/i2c-0
  lrwxrwxrwx 1 root root 0 Feb  2 09:28 i2c-1 -> ../../../devices/pci0000:00/0000:00:01.0/0000:01:00.0/i2c-1
  lrwxrwxrwx 1 root root 0 Feb  2 09:28 i2c-2 -> ../../../devices/pci0000:00/0000:00:01.0/0000:01:00.0/i2c-2
  lrwxrwxrwx 1 root root 0 Feb  2 09:28 i2c-3 -> ../../../devices/pci0000:00/0000:00:01.0/0000:01:00.0/i2c-3
  lrwxrwxrwx 1 root root 0 Feb  2 09:28 i2c-4 -> ../../../devices/pci0000:00/0000:00:01.0/0000:01:00.0/i2c-4
  lrwxrwxrwx 1 root root 0 Feb  2 09:28 i2c-5 -> ../../../devices/pci0000:00/0000:00:01.0/0000:01:00.0/i2c-5
  lrwxrwxrwx 1 root root 0 Feb  2 09:28 i2c-6 -> ../../../devices/pci0000:00/0000:00:01.0/0000:01:00.0/i2c-6
  lrwxrwxrwx 1 root root 0 Feb  2 09:28 i2c-7 -> ../../../devices/pci0000:00/0000:00:01.0/0000:01:00.0/i2c-7
  [flag@luxor ~]$ i2cdetect -l
  [flag@luxor ~]$ ls -la /dev/i2c*
  ls: cannot access /dev/i2c*: No such file or directory
  [flag@luxor ~]$

  [flag@luxor ~]$ sudo modprobe i2c-dev
  [flag@luxor ~]$ ls -la /dev/i2c*
  crw-rw---- 1 root i2c 89, 0 Feb  2 09:33 /dev/i2c-0
  crw-rw---- 1 root i2c 89, 1 Feb  2 09:33 /dev/i2c-1
  crw-rw---- 1 root i2c 89, 2 Feb  2 09:33 /dev/i2c-2
  crw-rw---- 1 root i2c 89, 3 Feb  2 09:33 /dev/i2c-3
  crw-rw---- 1 root i2c 89, 4 Feb  2 09:33 /dev/i2c-4
  crw-rw---- 1 root i2c 89, 5 Feb  2 09:33 /dev/i2c-5
  crw-rw---- 1 root i2c 89, 6 Feb  2 09:33 /dev/i2c-6
  crw-rw---- 1 root i2c 89, 7 Feb  2 09:33 /dev/i2c-7
  [flag@luxor ~]$ i2cdetect -l
  i2c-0   unknown         Radeon i2c bit bus 0x90                 N/A
  i2c-1   unknown         Radeon i2c bit bus 0x91                 N/A
  i2c-2   unknown         Radeon i2c bit bus 0x92                 N/A
  i2c-3   unknown         Radeon i2c bit bus 0x93                 N/A
  i2c-4   unknown         Radeon i2c bit bus 0x94                 N/A
  i2c-5   unknown         Radeon i2c bit bus 0x95                 N/A
  i2c-6   unknown         Radeon i2c bit bus 0x96                 N/A
  i2c-7   unknown         Radeon i2c bit bus 0x97                 N/A
  [flag@luxor ~]$

  Since the module is not automatically loaded, and there's no clue to
  load it if i2c devices fail to work (and people reported it as a bug),
  i propose to build it statically (it adds ~8k to the uncompressed
  kernel image).

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1417032/+subscriptions


References