blob: a25483090cd57923d1e375238ff61e3e0ac4e7d6 [file] [log] [blame]
Russell Kingc4c11dd2013-08-14 21:43:30 +02001#ifndef __DRM_I2C_TDA998X_H__
2#define __DRM_I2C_TDA998X_H__
3
Jyri Sarha95db3b22016-08-09 22:00:04 +03004#include <linux/hdmi.h>
Jyri Sarha7e567622016-08-09 22:00:05 +03005#include <dt-bindings/display/tda998x.h>
Jyri Sarha95db3b22016-08-09 22:00:04 +03006
7enum {
8 AFMT_UNUSED = 0,
Jyri Sarha7e567622016-08-09 22:00:05 +03009 AFMT_SPDIF = TDA998x_SPDIF,
10 AFMT_I2S = TDA998x_I2S,
Jyri Sarha95db3b22016-08-09 22:00:04 +030011};
12
13struct tda998x_audio_params {
14 u8 config;
15 u8 format;
16 unsigned sample_width;
17 unsigned sample_rate;
18 struct hdmi_audio_infoframe cea;
19 u8 status[5];
20};
21
Russell Kingc4c11dd2013-08-14 21:43:30 +020022struct tda998x_encoder_params {
23 u8 swap_b:3;
24 u8 mirr_b:1;
25 u8 swap_a:3;
26 u8 mirr_a:1;
27 u8 swap_d:3;
28 u8 mirr_d:1;
29 u8 swap_c:3;
30 u8 mirr_c:1;
31 u8 swap_f:3;
32 u8 mirr_f:1;
33 u8 swap_e:3;
34 u8 mirr_e:1;
35
Jyri Sarha95db3b22016-08-09 22:00:04 +030036 struct tda998x_audio_params audio_params;
Russell Kingc4c11dd2013-08-14 21:43:30 +020037};
38
39#endif