Brooklyn/arch/arm/boot/dts/overlays/midi-uart1-overlay.dts

44 lines
796 B
Plaintext

/dts-v1/;
/plugin/;
#include <dt-bindings/clock/bcm2835-aux.h>
/*
* Fake a higher clock rate to get a larger divisor, and thereby a lower
* baudrate. The real clock is 48MHz, which we scale so that requesting
* 38.4kHz results in an actual 31.25kHz.
*
* 48000000*38400/31250 = 58982400
*/
/{
compatible = "brcm,bcm2835";
fragment@0 {
target-path = "/clocks";
__overlay__ {
midi_clk: clock@5 {
compatible = "fixed-factor-clock";
#clock-cells = <0>;
clocks = <&aux BCM2835_AUX_CLOCK_UART>;
clock-mult = <38400>;
clock-div = <31250>;
};
};
};
fragment@1 {
target = <&uart1>;
__overlay__ {
clocks = <&midi_clk>;
};
};
fragment@2 {
target = <&aux>;
__overlay__ {
clock-output-names = "aux_uart", "aux_spi1", "aux_spi2";
};
};
};