So I figured it out by now. It didn't really work with overlay but using the main .dtsi file worked.
pca9635.dtsi
&i2c {
pca9635@8 {
compatible = "nxp,pca9635";
reg = <0x08>;
#address-cells = <1>;
#size-cells = <0>;
status = "okay";
led@0 {
label = "led0";
reg = <0>;
default-state = "off";
};
led@1 {
label = "led1";
reg = <1>;
default-state = "off";
};
led@2 {
label = "led2";
reg = <2>;
default-state = "off";
};
led@3 {
label = "led3";
reg = <3>;
default-state = "off";
};
led@4 {
label = "led4";
reg = <4>;
default-state = "off";
};
led@5 {
label = "led5";
reg = <5>;
default-state = "off";
};
led@6 {
label = "led6";
reg = <6>;
default-state = "off";
};
led@7 {
label = "led7";
reg = <7>;
default-state = "off";
};
led@8 {
label = "led8";
reg = <8>;
default-state = "off";
};
led@9 {
label = "led9";
reg = <9>;
default-state = "off";
};
led@10 {
label = "led10";
reg = <10>;
default-state = "off";
};
led@11 {
label = "led11";
reg = <11>;
default-state = "off";
};
led@12 {
label = "led12";
reg = <12>;
default-state = "off";
};
led@13 {
label = "led13";
reg = <13>;
default-state = "off";
};
led@14 {
label = "led14";
reg = <14>;
default-state = "off";
};
led@15 {
label = "led15";
reg = <15>;
default-state = "off";
};
};
};
placed in the build folder
/home/thomas/openwrt-wallcontroller/target/linux/ramips/dts
and lastly adding an include to the omega .dtsi
mt7628an_onion_omega2.dtsi
#include "mt7628an.dtsi"
#include "pca9635.dtsi"
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/input/input.h>