SPI and I2C do not work!

Options
Michael Wachs
Michael Wachs New Member Posts: 19
Hello,

since few weeks I try to get running some I2C (different environment sensors) and SPI (small TFT displays) devices with UP² under linux (Ubilinux, Archlinux) without any success: Both interfaces do not work.
I used peripheral modules, which work under linux on an ARM based platform (Jetson-TK1 with Ubuntu-14.04).

Maybe I do something wrong...
Maybe the decision to by/use an UP² was wrong...
Maybe somebody can help me...

Here are all necessary data:
********************************************************************************
**************************           S P I            **************************
********************************************************************************
Kernel setup:
.config - Linux/x86 4.13.10 Kernel Configuration
 > Device Drivers > SPI support ───────────────────────────────────────────────
  ┌────────────────────────────── SPI support ──────────────────────────────┐
  │  Arrow keys navigate the menu.  <Enter> selects submenus ---> (or empty │  
  │  submenus ----).  Highlighted letters are hotkeys.  Pressing <Y>        │  
  │  includes, <N> excludes, <M> modularizes features.  Press <Esc><Esc> to │  
  │  exit, <?> for Help, </> for Search.  Legend: [*] built-in  [ ]         │  
  │ ┌─────────────────────────────────────────────────────────────────────┐ │  
  │ │    --- SPI support                                                  │ │  
  │ │    [*]   Debug support for SPI drivers                              │ │  
  │ │          *** SPI Master Controller Drivers ***                      │ │  
  │ │    <*>   DesignWare SPI controller core support                     │ │  
  │ │    <*>     PCI interface driver for DW SPI core                     │ │  
  │ │    [*]       DMA support for DW SPI controller on Intel MID platform│ │  
  │ │    <*>     Memory-mapped io interface driver for DW SPI core        │ │  
  │ │    <*>   PXA2xx SSP SPI master                                      │ │  
  │ │          *** SPI Protocol Masters ***                               │ │  
  │ │    [*]   SPI slave protocol handlers                                │ │  
  │ │    <*>     SPI slave handler reporting boot up time                 │ │  
  │ │    <*>     SPI slave handler controlling system state               │ │  
  │ └─────────────────────────────────────────────────────────────────────┘ │  
  ├─────────────────────────────────────────────────────────────────────────┤  
  │        <Select>    < Exit >    < Help >    < Save >    < Load >         │  
  └─────────────────────────────────────────────────────────────────────────┘  

dmesg output:
[ 0.000000] Linux version 4.13.10 (root@erebos) (gcc version 7.2.0 (GCC)) #9 SMP PREEMPT Wed Nov 1 22:21:30 CET 2017
[ 0.000000] Command line: BOOT_IMAGE=/boot/vmlinuz root=/dev/mmcblk0p2 rw acpi_enforce_resources=lax pci=pcie_bus_safe systemd.gpt_auto=0 loglevel=3
...
[ 0.000000] efi: EFI v2.50 by American Megatrends
[ 0.000000] efi: ACPI=0x79c5e000 ACPI 2.0=0x79c5e000 SMBIOS=0x79edd000 SMBIOS 3.0=0x79edc000
[ 0.000000] SMBIOS 3.0.0 present.
[ 0.000000] DMI: AAEON UP-APL01/UP-APL01, BIOS UPA1AM21 09/01/2017
...
[ 0.000000] ACPI: SSDT ACPI table found in initrd [kernel/firmware/acpi/spidev1.1.aml][0xb7]
[ 0.000000] ACPI: SSDT ACPI table found in initrd [kernel/firmware/acpi/spidev1.0.aml][0xb7]
...
[ 0.000000] ACPI: Table Upgrade: install [SSDT- INTEL- SPIDEV1]
[ 0.000000] ACPI: SSDT 0x00000000778C7000 0000B7 (v05 INTEL SPIDEV1 00000001 INTL 20170831)
[ 0.000000] ACPI: Table Upgrade: install [SSDT- INTEL- SPIDEV0]
[ 0.000000] ACPI: SSDT 0x00000000778C70B7 0000B7 (v05 INTEL SPIDEV0 00000001 INTL 20170831)
...
[ 1.733462] pxa2xx-spi pxa2xx-spi.10: registered master spi1
[ 1.733691] spi spi-SPT0001:00: setup mode 0, 8 bits/w, 1000000 Hz max --> 0
[ 1.733804] pxa2xx-spi pxa2xx-spi.10: registered child spi-SPT0001:00
[ 1.733846] spi spi-SPT0001:01: setup mode 0, 8 bits/w, 1000000 Hz max --> 0
[ 1.733911] pxa2xx-spi pxa2xx-spi.10: registered child spi-SPT0001:01
IMPORTANT: No entries in /dev !!!
Test module: TFT-Display "Waveshare 2.8inch HX8347D"
User: root

Command:
modprobe fbtft_device name=mi0283qt-2 busnum=3 cs=0 gpios=reset:430,dc:404,lcd:468

dmesg output:
[ 1592.741111] fbtft: module is from the staging directory, the quality is unknown, you have been warned.
[ 1592.741873] fbtft_device: module is from the staging directory, the quality is unknown, you have been warned.
[ 1592.742156] spi spi-SPT0001:00: SPT0001 spi-SPT0001:00 1000kHz 8 bits mode=0x00
[ 1592.742159] spi spi-SPT0001:01: SPT0001 spi-SPT0001:01 1000kHz 8 bits mode=0x00
[ 1592.742209] spi spi3.0: setup mode 0, 8 bits/w, 32000000 Hz max --> 0
[ 1592.742266] pxa2xx-spi pxa2xx-spi.11: registered child spi3.0
[ 1592.742267] fbtft_device: GPIOS used by 'mi0283qt-2':
[ 1592.742268] fbtft_device: 'reset' = GPIO430
[ 1592.742269] fbtft_device: 'dc' = GPIO404
[ 1592.742269] fbtft_device: 'led' = GPIO468
[ 1592.742271] spi spi-SPT0001:00: SPT0001 spi-SPT0001:00 1000kHz 8 bits mode=0x00
[ 1592.742273] spi spi-SPT0001:01: SPT0001 spi-SPT0001:01 1000kHz 8 bits mode=0x00
[ 1592.742275] spi spi3.0: fb_hx8347d spi3.0 32000kHz 8 bits mode=0x00
[ 1592.744904] fb_hx8347d: module is from the staging directory, the quality is unknown, you have been warned.
[ 1592.885806] DMAR: Allocating domain for idma64.11 failed
[ 1592.885829] fb_hx8347d spi3.0: write() failed and returned -12
... 33 times both previous lines ...
[ 1592.947126] DMAR: Allocating domain for idma64.11 failed
[ 1592.947127] fb_hx8347d spi3.0: write() failed and returned -12
[ 1592.947136] DMAR: Allocating domain for idma64.11 failed
[ 1592.947138] fb_hx8347d spi3.0: fbtft_update_display: write_vmem failed to update display buffer
[ 1592.947360] graphics fb1: fb_hx8347d frame buffer, 320x240, 150 KiB video memory, 4 KiB buffer memory, fps=20, spi3.0 at 32 MHz
RESULT: No further tests possible without device entries !!!
********************************************************************************
**************************           I 2 C            **************************
********************************************************************************

Kernel setup:
.config - Linux/x86 4.13.10 Kernel Configuration
 > Device Drivers > I2C support ───────────────────────────────────────────────
  ┌────────────────────────────── I2C support ──────────────────────────────┐
  │  Arrow keys navigate the menu.  <Enter> selects submenus ---> (or empty │  
  │  submenus ----).  Highlighted letters are hotkeys.  Pressing <Y>        │  
  │  includes, <N> excludes, <M> modularizes features.  Press <Esc><Esc> to │  
  │  exit, <?> for Help, </> for Search.  Legend: [*] built-in  [ ]         │  
  │ ┌─────────────────────────────────────────────────────────────────────┐ │  
  │ │    -*- I2C support                                                  │ │  
  │ │    [*]   ACPI I2C Operation region support                          │ │  
  │ │    [*]   Enable compatibility bits for old user-space               │ │  
  │ │    <*>   I2C device interface                                       │ │  
  │ │    < >   I2C bus multiplexing support                               │ │  
  │ │    [*]   Autoselect pertinent helper modules                        │ │  
  │ │          I2C Hardware Bus support  --->                             │ │  
  │ │    < >   I2C/SMBus Test Stub                                        │ │  
  │ │    -*-   I2C slave support                                          │ │  
  │ │    < >     I2C eeprom slave driver                                  │ │  
  │ │    [*]   I2C Core debugging messages                                │ │  
  │ │    [*]   I2C Algorithm debugging messages                           │ │  
  │ │    [*]   I2C Bus debugging messages                                 │ │  
  │ └─────────────────────────────────────────────────────────────────────┘ │  
  ├─────────────────────────────────────────────────────────────────────────┤  
  │        <Select>    < Exit >    < Help >    < Save >    < Load >         │  
  └─────────────────────────────────────────────────────────────────────────┘  
    
 .config - Linux/x86 4.13.10 Kernel Configuration
 > Device Drivers > I2C support > I2C Hardware Bus support ────────────────────
  ┌─────────────────────── I2C Hardware Bus support ────────────────────────┐
  │  Arrow keys navigate the menu.  <Enter> selects submenus ---> (or empty │  
  │  submenus ----).  Highlighted letters are hotkeys.  Pressing <Y>        │  
  │  includes, <N> excludes, <M> modularizes features.  Press <Esc><Esc> to │  
  │  exit, <?> for Help, </> for Search.  Legend: [*] built-in  [ ]         │  
  │ ┌─────────────────────────────────────────────────────────────────────┐ │  
  │ │        *** PC SMBus host controller drivers ***                     │ │  
  │ │    <*> Intel 82801 (ICH/PCH)                                        │ │  
  │ │    <*> Intel SCH SMBus 1.0                                          │ │  
  │ │    <*> Intel iSMT SMBus Controller                                  │ │  
  │ │    <*> Intel PIIX4 and compatible (ATI/AMD/Serverworks/Broadcom/SMSC│ │  
  │ │        *** ACPI drivers ***                                         │ │  
  │ │    <*> SMBus Control Method Interface                               │ │  
  │ │        *** I2C system bus drivers (mostly embedded / system-on-chip)│ │  
  │ │    -*- Synopsys DesignWare Platform                                 │ │  
  │ │    [*]   Synopsys DesignWare Slave                                  │ │  
  │ │    <*> Synopsys DesignWare PCI                                      │ │  
  │ │    [*] Intel Baytrail I2C semaphore support                         │ │  
  │ └────┴(+)─────────────────────────────────────────────────────────────┘ │  
  ├─────────────────────────────────────────────────────────────────────────┤  
  │        <Select>    < Exit >    < Help >    < Save >    < Load >         │  
  └─────────────────────────────────────────────────────────────────────────┘  

dmesg output:
[ 0.277083] i2c-core: driver [dummy] registered
...
[ 0.544076] i2c i2c-0: adapter [i915 gmbus dpb] registered
[ 0.544448] i2c i2c-1: adapter [i915 gmbus dpc] registered
[ 0.544487] i2c i2c-2: adapter [i915 gmbus misc] registered
...
[ 1.677286] i2c i2c-3: adapter [DPDDC-B] registered
...
[ 1.700308] idma64 idma64.0: Found Intel integrated DMA 64-bit
[ 1.702721] i2c_designware i2c_designware.0: ACPI slave is not supported yet
[ 1.702742] i2c_designware i2c_designware.0: Standard-mode HCNT:LCNT = 580:730
[ 1.702746] i2c_designware i2c_designware.0: Fast-mode HCNT:LCNT = 100:214
[ 1.702816] i2c i2c-4: adapter [Synopsys DesignWare I2C adapter] registered
[ 1.705504] idma64 idma64.1: Found Intel integrated DMA 64-bit
[ 1.707844] i2c_designware i2c_designware.1: ACPI slave is not supported yet
[ 1.707860] i2c_designware i2c_designware.1: Standard-mode HCNT:LCNT = 580:730
[ 1.707865] i2c_designware i2c_designware.1: Fast-mode HCNT:LCNT = 100:214
[ 1.707930] i2c i2c-5: adapter [Synopsys DesignWare I2C adapter] registered
[ 1.710740] idma64 idma64.2: Found Intel integrated DMA 64-bit
[ 1.713095] i2c_designware i2c_designware.2: ACPI slave is not supported yet
[ 1.713115] i2c_designware i2c_designware.2: Standard-mode HCNT:LCNT = 580:730
[ 1.713119] i2c_designware i2c_designware.2: Fast-mode HCNT:LCNT = 100:214
[ 1.713184] i2c i2c-6: adapter [Synopsys DesignWare I2C adapter] registered
[ 1.715796] idma64 idma64.3: Found Intel integrated DMA 64-bit
[ 1.718271] i2c_designware i2c_designware.3: ACPI slave is not supported yet
[ 1.718290] i2c_designware i2c_designware.3: Standard-mode HCNT:LCNT = 580:730
[ 1.718294] i2c_designware i2c_designware.3: Fast-mode HCNT:LCNT = 100:214
[ 1.718362] i2c i2c-7: adapter [Synopsys DesignWare I2C adapter] registered
[ 1.720156] i2c i2c-1: master_xfer[0] W, addr=0x50, len=1
[ 1.720163] i2c i2c-1: master_xfer[1] R, addr=0x50, len=128
[ 1.721126] idma64 idma64.4: Found Intel integrated DMA 64-bit
[ 1.723517] i2c_designware i2c_designware.4: ACPI slave is not supported yet
[ 1.723537] i2c_designware i2c_designware.4: Standard-mode HCNT:LCNT = 580:730
[ 1.723541] i2c_designware i2c_designware.4: Fast-mode HCNT:LCNT = 100:214
[ 1.723604] i2c i2c-8: adapter [Synopsys DesignWare I2C adapter] registered
[ 1.726392] idma64 idma64.5: Found Intel integrated DMA 64-bit
[ 1.728733] i2c_designware i2c_designware.5: ACPI slave is not supported yet
[ 1.728753] i2c_designware i2c_designware.5: Standard-mode HCNT:LCNT = 580:730
[ 1.728757] i2c_designware i2c_designware.5: Fast-mode HCNT:LCNT = 100:214
[ 1.728823] i2c i2c-9: adapter [Synopsys DesignWare I2C adapter] registered
[ 1.731638] idma64 idma64.6: Found Intel integrated DMA 64-bit
[ 1.734046] i2c_designware i2c_designware.6: ACPI slave is not supported yet
[ 1.734065] i2c_designware i2c_designware.6: Standard-mode HCNT:LCNT = 580:730
[ 1.734069] i2c_designware i2c_designware.6: Fast-mode HCNT:LCNT = 100:214
[ 1.734129] i2c i2c-10: adapter [Synopsys DesignWare I2C adapter] registered
[ 1.736825] idma64 idma64.7: Found Intel integrated DMA 64-bit
[ 1.739213] i2c_designware i2c_designware.7: ACPI slave is not supported yet
[ 1.739234] i2c_designware i2c_designware.7: Standard-mode HCNT:LCNT = 580:730
[ 1.739238] i2c_designware i2c_designware.7: Fast-mode HCNT:LCNT = 100:214
[ 1.739304] i2c i2c-11: adapter [Synopsys DesignWare I2C adapter] registered
...
[ 1.745246] i2c-core: driver [intel_soc_pmic_i2c] registered
[ 1.745295] i2c-core: driver [CHT Whiskey Cove PMIC] registered
...
[ 1.766512] i2c-core: driver [smbus_alert] registered
[ 1.766516] i2c /dev entries driver
[ 1.766610] i2c-dev: adapter [i915 gmbus dpb] registered as minor 0
[ 1.766761] i2c-dev: adapter [i915 gmbus dpc] registered as minor 1
[ 1.766838] i2c-dev: adapter [i915 gmbus misc] registered as minor 2
[ 1.766898] i2c-dev: adapter [DPDDC-B] registered as minor 3
[ 1.766960] i2c-dev: adapter [Synopsys DesignWare I2C adapter] registered as minor 4
[ 1.767028] i2c-dev: adapter [Synopsys DesignWare I2C adapter] registered as minor 5
[ 1.767087] i2c-dev: adapter [Synopsys DesignWare I2C adapter] registered as minor 6
[ 1.767140] i2c-dev: adapter [Synopsys DesignWare I2C adapter] registered as minor 7
[ 1.767239] i2c-dev: adapter [Synopsys DesignWare I2C adapter] registered as minor 8
[ 1.767303] i2c-dev: adapter [Synopsys DesignWare I2C adapter] registered as minor 9
[ 1.767367] i2c-dev: adapter [Synopsys DesignWare I2C adapter] registered as minor 10
[ 1.767428] i2c-dev: adapter [Synopsys DesignWare I2C adapter] registered as minor 11
[ 1.767823] i801_smbus 0000:00:1f.1: can't derive routing for PCI INT A
[ 1.767826] i801_smbus 0000:00:1f.1: PCI INT A: not connected
[ 1.767857] i801_smbus 0000:00:1f.1: SPD Write Disable is set
[ 1.767881] i801_smbus 0000:00:1f.1: Failed to allocate irq -2147483648: -107
[ 1.767884] i801_smbus 0000:00:1f.1: SMBus using polling
[ 1.767982] i2c-dev: adapter [SMBus I801 adapter at f040] registered as minor 12
[ 1.767996] i2c i2c-12: adapter [SMBus I801 adapter at f040] registered

Devices:
crw-rw---- 1 root i2cuser 89, 0 Nov 1 07:53 /dev/i2c-0
crw-rw---- 1 root i2cuser 89, 1 Nov 1 07:53 /dev/i2c-1
crw-rw---- 1 root i2cuser 89, 10 Nov 1 07:53 /dev/i2c-10
crw-rw---- 1 root i2cuser 89, 11 Nov 1 07:53 /dev/i2c-11
crw-rw---- 1 root i2cuser 89, 12 Nov 1 07:53 /dev/i2c-12
crw-rw---- 1 root i2cuser 89, 2 Nov 1 07:53 /dev/i2c-2
crw-rw---- 1 root i2cuser 89, 3 Nov 1 07:53 /dev/i2c-3
crw-rw---- 1 root i2cuser 89, 4 Nov 1 07:53 /dev/i2c-4
crw-rw---- 1 root i2cuser 89, 5 Nov 1 07:53 /dev/i2c-5
crw-rw---- 1 root i2cuser 89, 6 Nov 1 07:53 /dev/i2c-6
crw-rw---- 1 root i2cuser 89, 7 Nov 1 07:53 /dev/i2c-7
crw-rw---- 1 root i2cuser 89, 8 Nov 1 07:53 /dev/i2c-8
crw-rw---- 1 root i2cuser 89, 9 Nov 1 07:53 /dev/i2c-9
Test module: Pressure/Humidity/Temperature sensor "BME280"
User: root

Connections on CN20:
GND - Pin 9
3V3 - Pin 1
SDA - Pin 3
SCL - Pin 5

Command:
echo "bme280 0x77" > /sys/bus/i2c/devices/i2c-6/new_device

dmesg output:
[ 149.689060] i2c_designware i2c_designware.2: Standard-mode HCNT:LCNT = 580:730
[ 149.689068] i2c_designware i2c_designware.2: Fast-mode HCNT:LCNT = 100:214
[ 149.689102] i2c i2c-6: client [bme280] registered with bus id 6-0077
[ 149.689109] i2c i2c-6: new_device: Instantiated device bme280 at 0x77
[ 149.816527] bmp280 6-0077: probe
[ 149.816570] bmp280 6-0077: 6-0077 supply vddd not found, using dummy regulator
[ 149.816589] bmp280 6-0077: 6-0077 supply vdda not found, using dummy regulator
[ 149.818719] i2c i2c-6: master_xfer[0] W, addr=0x77, len=1
[ 149.818724] i2c i2c-6: master_xfer[1] R, addr=0x77, len=1
[ 149.818729] i2c_designware i2c_designware.2: i2c_dw_xfer: msgs: 2
[ 149.818823] i2c_designware i2c_designware.2: enabled=0x1 stat=0x10
[ 149.818899] i2c_designware i2c_designware.2: enabled=0x1 stat=0x750
[ 149.818994] i2c_designware i2c_designware.2: i2c_dw_handle_tx_abort: slave address not acknowledged (7bit mode)
[ 149.823250] bmp280: probe of 6-0077 failed with error -121
[ 149.823320] i2c-core: driver [bmp280] registered

Oscilloscope display:
SCL and SDA: level high (ca. 3.7V, too high!!!), no changes

Result: FAILED
Regards,
Mchael

Comments

  • Michael Wachs
    Michael Wachs New Member Posts: 19
    Options
    Is it possible to get at least an answer as to whether someone is taking care of this problem?
    Or is this gap known from the beginning and kept silent?
    Or is it just like the board schematics a secret that is not talked about?
  • WereCatf
    WereCatf New Member Posts: 201
    Options
    Why are you using 4.13.10? Aaeon/Emutex don't support that, I doubt there is a driver for the FPGA in that kernel in the first place and since GPIO, I2C and SPI go through the FPGA...
  • Michael Wachs
    Michael Wachs New Member Posts: 19
    Options

    Hello,

    Sorry to answer so late... I couldn't do it before!
    Few weeks ago I installed pure ubilinux 4.0 and SPI-enable.

    --------------------------------- I 2 C B U S ---------------------------------
    I've connected a Bosch BME280 sensor via I2C bus,
    which I successfully use under linux with NVidia's Jetson-TK1 and Raspberry Pi Zero W:
    +-----------+----------+
    I Signal I Pin CN20 I
    +-----------+----------+
    I GND I 9 I
    I +3.3V I 1 I
    I SDA I 3 I
    I SCL I 5 I
    +-----------+----------+
    In approximately 19 of 20 "cold" computer starts I get the following result
    Command :
    echo "bme280 0x77" > /sys/bus/i2c/devices/i2c-6/new_device
    Output in dmesg :
    i2c i2c-6: new_device: Instantiated device bme280 at 0x77
    6-0077 supply vddd not found, using dummy regulator
    6-0077 supply vdda not found, using dummy regulator
    bmp280: probe of 6-0077 failed with error -121

    and the device is not usable.

    Error -121 (EREMOTEIO) means "Remote I/O error".

    Between these cold starts I don't change the wiring and don't touch anything.

    --------------------------------- S P I B U S ---------------------------------
    I've connected a small TFT display (Waveshare 2.8", HX8347D, signal voltage 3.3V),
    which I successfully use under linux with NVidia's Jetson-TK1 and Raspberry Pi Zero W:
    +-----------+----------+
    I Signal I Pin CN20 I
    +-----------+----------+
    I GND I 6 I
    I +5V I 1 I
    I MOSI I 19 I
    I MISO I 21 I
    I SCLK I 23 I
    I LCD-CS I 24 I
    I Backlight I 32 I
    I LCD-DC I 31 I
    I LCD-RST I 29 I
    +-----------+----------+

    Here are the settings and the resulting dmesg outputs:
    /etc/modprobe.d/fbtft.conf :
    options fbtft_device name=mi0283qt-2 busnum=0 cs=0 gpios=reset:430,dc:404,led:468 verbose=3
    dmesg output after loading the kernel module 'fbtft_device' :
    spidev spi-SPT0001:00: SPT0001 spi-SPT0001:00 1000kHz 8 bits mode=0x00
    spidev spi-SPT0001:01: SPT0001 spi-SPT0001:01 1000kHz 8 bits mode=0x00
    fbtft_device: spi_busnum_to_master(0) returned NULL
    fbtft_device: failed to register SPI device

    /etc/modprobe.d/fbtft.conf :
    options fbtft_device name=mi0283qt-2 busnum=1 cs=0 gpios=reset:430,dc:404,led:468 verbose=3
    dmesg output after loading the kernel module 'fbtft_device' :
    spidev spi-SPT0001:00: SPT0001 spi-SPT0001:00 1000kHz 8 bits mode=0x00
    spidev spi-SPT0001:01: SPT0001 spi-SPT0001:01 1000kHz 8 bits mode=0x00
    pxa2xx-spi pxa2xx-spi.10: chipselect 0 already in use
    spi_master spi1: spi_new_device() returned NULL
    fbtft_device: failed to register SPI device

    /etc/modprobe.d/fbtft.conf :
    options fbtft_device name=mi0283qt-2 busnum=2 cs=0 gpios=reset:430,dc:404,led:468 verbose=3
    dmesg output after loading the kernel module 'fbtft_device' :
    spidev spi-SPT0001:00: SPT0001 spi-SPT0001:00 1000kHz 8 bits mode=0x00
    spidev spi-SPT0001:01: SPT0001 spi-SPT0001:01 1000kHz 8 bits mode=0x00
    fbtft_device: spi_busnum_to_master(2) returned NULL
    fbtft_device: failed to register SPI device

    /etc/modprobe.d/fbtft.conf :
    options fbtft_device name=mi0283qt-2 busnum=3 cs=0 gpios=reset:430,dc:404,led:468 verbose=3
    dmesg output after loading the kernel module 'fbtft_device' :
    fbtft: module is from the staging directory, the quality is unknown, you have been warned.
    fbtft_device: module is from the staging directory, the quality is unknown, you have been warned.
    spidev spi-SPT0001:00: SPT0001 spi-SPT0001:00 1000kHz 8 bits mode=0x00
    spidev spi-SPT0001:01: SPT0001 spi-SPT0001:01 1000kHz 8 bits mode=0x00
    fbtft_device: GPIOS used by 'mi0283qt-2':
    fbtft_device: 'reset' = GPIO430
    fbtft_device: 'dc' = GPIO404
    fbtft_device: 'led' = GPIO468
    spidev spi-SPT0001:00: SPT0001 spi-SPT0001:00 1000kHz 8 bits mode=0x00
    spidev spi-SPT0001:01: SPT0001 spi-SPT0001:01 1000kHz 8 bits mode=0x00
    spi spi3.0: fb_hx8347d spi3.0 32000kHz 8 bits mode=0x00
    fb_hx8347d: module is from the staging directory, the quality is unknown, you have been warned.
    fb_hx8347d: probe of spi3.0 failed with error -12

    Error -12 (ENOMEM) means "Out of memory".

    --------------------------------- G E N E R A L ---------------------------------
    Overall, I can say that I am infinitely disappointed with Up Squared at all!
    Among the problems with the I2C and SPI busses, the wireless connection is very slow.
    The best achieved transfer rate is about 100 kByte/s using the "RE-UPWFKITEXAR1"!
    Any other box (Intel NUC5PPYH, Jetson-TK1, Raspberry Pi Zero W) on the same place and
    connected to the same Access Point transfer data with a speed of up to 6 MByte/s !!!

    The whole dmesg output is in the attachment.

    Thanks in advance,
    Michael

  • VerticalSpin
    VerticalSpin New Member Posts: 1
    Options

    The SPI speed is defined in ASL code that you have attached to initramfs. As far as I understand it's 1MHz, which would give you approx. 100kbyte/s transfer speed. Besides that it seems the kernel configuration misses SPIDEV option enabled, that's why you have no device nodes. P.S. Ubilinux I'm even not going to look at.

  • DV01D
    DV01D New Member Posts: 13
    Options

    It has been my experience and seems to be from others in this forum that neither the i2c bus nor the SPI bus seem to function correctly. I was able to get i2c to send commands and read them with a logic analyzer, but unfortunately it just won't correctly communicate with any known device via i2c. We've had to resort to adding additional board dedicate for SPI and i2c communication. Unfortunately it seems like emutex/aaeon don't have anything to say about it, and are unwilling to provide support for this board.

  • littleggghost
    littleggghost New Member Posts: 3
    Options

    Hi, @Michael Wachs
    As I know, the newest kernel of ubilinux is 4.9.45, and you use 4.13.10. How did you do that?

  • ccalde
    ccalde New Member Posts: 348 ✭✭✭
    Options

    Hi @Michael Wachs ,

    Please follow the steps to install the official Ubilinux version here in the Wiki:
    https://wiki.up-community.org/Ubilinux