blob: 3cb25ccbe5e68bf95ce13249f15549b7e2582281 [file] [log] [blame]
Greg Kroah-Hartmanb2441312017-11-01 15:07:57 +01001/* SPDX-License-Identifier: GPL-2.0 */
Russell Kingc4c11dd2013-08-14 21:43:30 +02002#ifndef __DRM_I2C_TDA998X_H__
3#define __DRM_I2C_TDA998X_H__
4
Jyri Sarha95db3b22016-08-09 22:00:04 +03005#include <linux/hdmi.h>
Jyri Sarha7e567622016-08-09 22:00:05 +03006#include <dt-bindings/display/tda998x.h>
Jyri Sarha95db3b22016-08-09 22:00:04 +03007
8enum {
9 AFMT_UNUSED = 0,
Jyri Sarha7e567622016-08-09 22:00:05 +030010 AFMT_SPDIF = TDA998x_SPDIF,
11 AFMT_I2S = TDA998x_I2S,
Jyri Sarha95db3b22016-08-09 22:00:04 +030012};
13
14struct tda998x_audio_params {
15 u8 config;
16 u8 format;
17 unsigned sample_width;
18 unsigned sample_rate;
19 struct hdmi_audio_infoframe cea;
20 u8 status[5];
21};
22
Russell Kingc4c11dd2013-08-14 21:43:30 +020023struct tda998x_encoder_params {
24 u8 swap_b:3;
25 u8 mirr_b:1;
26 u8 swap_a:3;
27 u8 mirr_a:1;
28 u8 swap_d:3;
29 u8 mirr_d:1;
30 u8 swap_c:3;
31 u8 mirr_c:1;
32 u8 swap_f:3;
33 u8 mirr_f:1;
34 u8 swap_e:3;
35 u8 mirr_e:1;
36
Jyri Sarha95db3b22016-08-09 22:00:04 +030037 struct tda998x_audio_params audio_params;
Russell Kingc4c11dd2013-08-14 21:43:30 +020038};
39
40#endif