/dts-v1/;
/plugin/;
/ {
compatible = "allwinner,sun50i-h6";
/* 1. Отключаем дефолтный spidev на CS0, чтобы освободить шину */
fragment@0 {
target = <&spi0>;
__overlay__ {
status = "okay";
#address-cells = <1>;
#size-cells = <0>;
/* Ищем стандартный узел spidev0.0 и выключаем его */
spidev@0 {
reg = <0>;
status = "disabled";
};
};
};
/* 2. Сажаем драйвер SC16IS752 на освободившийся CS0 */
fragment@1 {
target = <&spi0>;
__overlay__ {
sc16is752: sc16is752@0 {
compatible = "nxp,sc16is752";
reg = <0>; /* Выбор канала CS0 (Пин SPI0_CS на гребенке) */
spi-max-frequency = <4000000>; /* Максимальная частота SPI для чипа */
clocks = <&sc16is752_clk>;
/* Настройка прерываний (ОБЯЗАТЕЛЬНО!) */
interrupt-parent = <&pio>;
/* Пример: пин PC7. 2 = Порт C, 7 = Пин 7, 2 = Срабатывание по спаду (Falling edge) */
interrupts = <2 7 2>;
/* Дополнительно объявляем встроенные GPIO чипа (если нужны) */
gpio-controller;
#gpio-cells = <2>;
sc16is752_clk: sc16is752_clk {
compatible = "fixed-clock";
#clock-cells = <0>;
/* Частота вашего кварца. Обычно 14745600 или 14740000 Гц */
clock-frequency = <14745600>;
};
};
};
};
};