driver over spi. With my dts, the overlay gets loaded, but i dont get any new devices in /dev. With my oscilloscope i can see that nothing happens and that CS is low (Active low, so something is wrong). I dont understand what I am doing wrong. I have the chip connected to a 4Mhz external crystal.
compatible = "ti,beaglebone", "ti,beaglebone-black";
part-number = "BB-MAX14830-01";
/* state the resources this cape uses */
/* the pin header uses */
"P9.25", /* spi irq: gpio3_21 */
"P9.31", /* spi: spi1_sclk */
"P9.29", /* spi: spi1_d0 */
"P9.30", /* spi: spi1_d1 */
"P9.28", /* spi: spi1_cs0 */
/* the hardware IP uses */
fragment@0 {
target = <&am33xx_pinmux>;
__overlay__ {
bone_14830_spi1_pins: pinmux_bone_14830_spi1_pins {
pinctrl-single,pins = <
0x190 0x33 /* mcasp0_aclkx.spi1_sclk, RX_ENABLED | PULLUP | MODE3 */
0x194 0x33 /* mcasp0_fsx.spi1_d0, RX_ENABLED | PULLUP | MODE3 */
0x198 0x13 /* mcasp0_axr0.spi1_d1, OUTPUT_PULLUP | MODE3 */
0x19c 0x13 /* mcasp0_ahclkr.spi1_cs0, OUTPUT_PULLUP | MODE3 */
>;
};
bone_14830_pins: pinmux_bone_14830_pins {
pinctrl-single,pins = <
0x1ac 0x37 /* mcasp0_ahclkx.gpio3_21, RX_ENABLED | PULLUP | MODE7 */
>;
};
};
};
fragment@1 {
target = <&spi1>;
__overlay__ {
#address-cells = <1>;
#size-cells = <0>;
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <&bone_14830_spi1_pins>;
max14830@0 {
compatible = "maxim,max14830";
reg = <0>; /* cs0 */
mode=<0>;
spi-max-frequency=<1000000>;
pinctrl-names="default";
pinctrl-0 = <&bone_14830_pins>;
clocks=<&clk4m>;
clock-names="xtal";
interrupt-parent = <&gpio3>;
interrupts = <21 2>; // Edge Falling
clk4m: clk4m@10 {
compatible = "fixed-clock";
#clock-cells = <0>;
clock-frequency = <4000000>;
};
};
};
};
};