MAX14830 on i2C in devicetree

Hello,

I’m trying to implement a component MAX14830 in the devicetree on i2C bus with the driver associated, but it does not work. I use i.MX6 processor. These are the hardware specs:

Converter reference: I2C / serial : MAX14830 (MAXIM IC)
Quad UART I2C, with 16 GPIO ;
Bus I2C : I2C3 ;
Interruption : IT_GPIO6, ->MX6QDL_PAD_GPIO_19__GPIO4_IO05
Adresses :
o UART0 and GPIO0 to GPIO3 @ 0x6C ;
o UART1 and GPIO4 to GPIO7 @ 0x5C ;
o UART2 and GPIO8 to GPIO11 @ 0x2C ;
o UART3 et GPIO12 to GPIO15 @ 0x1C.
Caractéristics :
Baudrate min : 600
Baudrate max : 460800
clock: 20Mhz

The componant creates four i2C adresses in i2c3 bus : (0x6c, 0x5c,0x2c,0x1c).
So, I have activated the driver in the kernel. And the following features in the devicetree:

clocks{
max14830_clock: clkmax14830{
compatible = “fixed-clock”;
#clock-cells = <0>;
clock-frequency = <20000000>;
};
};
&i2c3 {
max14830: max14830@0 {
compatible = “maxim,max14830”;
reg = <0x6c 0x5c 0x2c 0x1c>;// I don’t know if it’s correct
clocks = <&max14830_clock>;
clock-names = “osc”;// i don’t know if i have to use osc or mclk
interrupt-parent = <&gpio4>;// I think it’s gpio4
interrupts = <5 IRQ_TYPE_LEVEL_LOW>;//I think it’s IO 5
gpio-controller;
#gpio-cells = <2>;
};
};

kernel and devicetree compile, but in the operating system, driver and description seems to don’t work.
I based my devicetree on https://kernel.googlesource.com/pub/scm/linux/kernel/git/stable/linux-stable/+/v4.1-rc3/Documentation/devicetree/bindings/serial/maxim,max310x.txt

But in this doc, the componant max 14830 is only describe in spi bus. And nothing about how to declare it in i2c. If you have any idea, thanks ;-). Kind reguards.

It appears that the driver only implements SPI, so you’re either going to write the I2C support for the driver yourself, or use SPI, or give up.