This is yet another simple but odd driver for the audio block of the g12a and sm1 SoC families. For TDMOUT's sclk to be properly inverted, bit 29 of AUDIO_CLK_TDMOUT_x_CTRL should be the inverse of bit 28. IOW bit28 == !bit29 at all times This setting is automatically applied on axg and the manual setting was added on g12a. Signed-off-by: Jerome Brunet <jbrunet@baylibre.com> Link: https://lore.kernel.org/r/20200729154359.1983085-2-jbrunet@baylibre.com
33 lines
638 B
C
33 lines
638 B
C
/* SPDX-License-Identifier: GPL-2.0 */
|
|
/*
|
|
* Copyright (c) 2019 BayLibre, SAS.
|
|
* Author: Jerome Brunet <jbrunet@baylibre.com>
|
|
*/
|
|
|
|
#ifndef __MESON_CLK_PHASE_H
|
|
#define __MESON_CLK_PHASE_H
|
|
|
|
#include <linux/clk-provider.h>
|
|
#include "parm.h"
|
|
|
|
struct meson_clk_phase_data {
|
|
struct parm ph;
|
|
};
|
|
|
|
struct meson_clk_triphase_data {
|
|
struct parm ph0;
|
|
struct parm ph1;
|
|
struct parm ph2;
|
|
};
|
|
|
|
struct meson_sclk_ws_inv_data {
|
|
struct parm ph;
|
|
struct parm ws;
|
|
};
|
|
|
|
extern const struct clk_ops meson_clk_phase_ops;
|
|
extern const struct clk_ops meson_clk_triphase_ops;
|
|
extern const struct clk_ops meson_sclk_ws_inv_ops;
|
|
|
|
#endif /* __MESON_CLK_PHASE_H */
|