2 Replies Latest reply on Oct 1, 2014 10:10 PM by yuang86

    NUC DE3815TYBE and Linux Support for Custom Solutions Header

    m2pc

      Hello,

       

      I'm trying to get access to the Custom Solutions Header from software under Linux.  I'm currently using Lubuntu (Based on Ubuntu 14.04).

      My main area of interest is the two I2C ports available on pins 13,14,15, and 16 of this header.

       

      I've installed the I2C tools and enabled the "i2c-dev" module on bootup.  I can see the following devices:

       

      /dev/i2c-0

      /dev/i2c-1

      /dev/i2c-2

      /dev/i2c-3

      /dev/i2c-4

      /dev/i2c-5

      /dev/i2c-6

       

      Running the command "i2cdetect -l" shows the following I2C buses:

       

      i2c-0 i2c       i915 gmbus ssc                  I2C adapter

      i2c-1 i2c       i915 gmbus vga                  I2C adapter

      i2c-2 i2c       i915 gmbus panel                I2C adapter

      i2c-3 i2c       i915 gmbus dpc                  I2C adapter

      i2c-4 i2c       i915 gmbus dpb                  I2C adapter

      i2c-5 i2c       i915 gmbus dpd                  I2C adapter

      i2c-6 i2c       DPDDC-B                         I2C adapter

       

      There's no mention of the I2C ports on the Custom Solutions Header.  I did have success connecting an I2C device to the "CLOCK" and "DATA" pins on the VGA connector and querying the "/dev/i2c-1" bus which is from the GPU -> VGA connector, but it's not an elegant solution.

       

      Has anyone had any experience with this?

       

      Thanks much in advance!

        • 1. Re: NUC DE3815TYBE and Linux Support for Custom Solutions Header
          kevin_intel

          Hi m2pc,

           

          I am sorry you are having problems with this but let me guide you.

           

          I would recommend you checking on Linux community for any possible fix or may be any of our users with Linux experience can help you with a comment.

           

          http://www.linux.com/community

           

          Kevin M

          • 2. Re: NUC DE3815TYBE and Linux Support for Custom Solutions Header
            yuang86

            Hi m2pc,

             

            Did you figure out which i2c port maps to the i2c0 and i2c1 on the custom solutions header?

            I don't know why, but I'm also getting an i2c-7 port.

             

            xubuntu@xubuntu:~$ sudo i2cdetect -l

            i2c-0    i2c           i915 gmbus ssc                      I2C adapter

            i2c-1    i2c           i915 gmbus vga                      I2C adapter

            i2c-2    i2c           i915 gmbus panel                    I2C adapter

            i2c-3    i2c           i915 gmbus dpc                      I2C adapter

            i2c-4    i2c           i915 gmbus dpb                      I2C adapter

            i2c-5    i2c           i915 gmbus dpd                      I2C adapter

            i2c-6    i2c           DPDDC-B                             I2C adapter

            i2c-7    i2c           DPDDC-C                             I2C adapter

             

            ----------------

            Edit:

             

            Hi again,

             

            It turns out that the i2c device (address: 0x20) works fine when I connect them to the DATA and CLK on the VGA header.

             

            nuc02@nuc02-desktop:~/test$ sudo i2cdetect -y -r 1

                 0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f

            00:          -- -- -- -- -- -- -- -- -- -- -- -- --

            10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

            20: 20 -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

            30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

            40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

            50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

            60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

            70: -- -- -- -- -- -- -- --

             

            ----------------

            Edit: The story continues..

             

            It turns out to be the UEFI Boot settings in the Intel Visual BIOS.

            There are two settings that affects the i2c ports:

            1) UEFI Boot (Boot>Boot Priority)

            2) OS Selection (Boot>Boot Configuration )

             

            By default: UEFI Boot is enabled and OS Selected is Windows 8.x

             

            I tried a few combinations and test them in Xubuntu:

             

            UEFI boot disabled (9 adapters appeared!)

            OS: Windows 8.x

            nuc02@nuc02-desktop:~$ i2cdetect -l

            i2c-0    unknown       Synopsys DesignWare I2C adapter     N/A

            i2c-1    unknown       Synopsys DesignWare I2C adapter     N/A

            i2c-2    unknown       i915 gmbus ssc                      N/A

            i2c-3    unknown       i915 gmbus vga                      N/A

            i2c-4    unknown       i915 gmbus panel                    N/A

            i2c-5    unknown       i915 gmbus dpc                      N/A

            i2c-6    unknown       i915 gmbus dpb                      N/A

            i2c-7    unknown       i915 gmbus dpd                      N/A

            i2c-8    unknown       DPDDC-B                             N/A

            i2c-9    unknown       DPDDC-C                             N/A

             

            UEFI boot enabled

            OS: Windows Embedded

            nuc02@nuc02-desktop:~$ i2cdetect -l

            i2c-0    unknown       i915 gmbus ssc                      N/A

            i2c-1    unknown       i915 gmbus vga                      N/A

            i2c-2    unknown       i915 gmbus panel                    N/A

            i2c-3    unknown       i915 gmbus dpc                      N/A

            i2c-4    unknown       i915 gmbus dpb                      N/A

            i2c-5    unknown       i915 gmbus dpd                      N/A

            i2c-6    unknown       DPDDC-B                             N/A


            UEFI boot enabled

            OS: Linux

            nuc02@nuc02-desktop:~$ i2cdetect -l

            i2c-0    unknown       i915 gmbus ssc                      N/A

            i2c-1    unknown       i915 gmbus vga                      N/A

            i2c-2    unknown       i915 gmbus panel                    N/A

            i2c-3    unknown       i915 gmbus dpc                      N/A

            i2c-4    unknown       i915 gmbus dpb                      N/A

            i2c-5    unknown       i915 gmbus dpd                      N/A

            i2c-6    unknown       DPDDC-B                             N/A


            UEFI boot disabled

            OS: Linux

            nuc02@nuc02-desktop:~$ i2cdetect -l

            i2c-0    unknown       i915 gmbus ssc                      N/A

            i2c-1    unknown       i915 gmbus vga                      N/A

            i2c-2    unknown       i915 gmbus panel                    N/A

            i2c-3    unknown       i915 gmbus dpc                      N/A

            i2c-4    unknown       i915 gmbus dpb                      N/A

            i2c-5    unknown       i915 gmbus dpd                      N/A

            i2c-6    unknown       DPDDC-B                             N/A

            i2c-7    unknown       DPDDC-C                             N/A


            Two observations:

            DPDDC-C appears only when UEFI boot is disabled.

            The ports on the custom solutions header are labelled "Synopsys DesignWare", and they only appear when the OS selected is Windows 8.x.


            So back to your question m2pc, try using the default BIOS setting and select Windows 8.x as your OS. It will reveal the correct i2c ports to you. (It doesn't matter if you're running Linux.)


            I'll be posting a support request with Intel.


            ----------------

            Edit: Once again


            http://downloadmirror.intel.com/23879/eng/FY_0034_ReleaseNotes2.pdf

            Modified default values associated with OS Selection options.

            o Windows 8.x - xHCI mode is enabled

            o Windows 7 - xHCI mode is set to "smart auto"; Legacy Boot

            is enabled and greyed out; Wake on USB from S4/S5 is

            disabled and greyed out

             

            Selecting Windows 8.x may also be the only mode to enable i2c ports.