linux/include/dt-bindings/media/tda1997x.h

/* SPDX-License-Identifier: GPL-2.0 */
/*
 * Copyright (C) 2017 Gateworks Corporation
 */
#ifndef _DT_BINDINGS_MEDIA_TDA1997X_H
#define _DT_BINDINGS_MEDIA_TDA1997X_H

/* TDA19973 36bit Video Port control registers */
#define TDA1997X_VP36_35_32
#define TDA1997X_VP36_31_28
#define TDA1997X_VP36_27_24
#define TDA1997X_VP36_23_20
#define TDA1997X_VP36_19_16
#define TDA1997X_VP36_15_12
#define TDA1997X_VP36_11_08
#define TDA1997X_VP36_07_04
#define TDA1997X_VP36_03_00

/* TDA19971 24bit Video Port control registers */
#define TDA1997X_VP24_V23_20
#define TDA1997X_VP24_V19_16
#define TDA1997X_VP24_V15_12
#define TDA1997X_VP24_V11_08
#define TDA1997X_VP24_V07_04
#define TDA1997X_VP24_V03_00

/* Pin groups */
#define TDA1997X_VP_OUT_EN
#define TDA1997X_VP_HIZ
#define TDA1997X_VP_SWP
#define TDA1997X_R_CR_CBCR_3_0
#define TDA1997X_R_CR_CBCR_7_4
#define TDA1997X_R_CR_CBCR_11_8
#define TDA1997X_B_CB_3_0
#define TDA1997X_B_CB_7_4
#define TDA1997X_B_CB_11_8
#define TDA1997X_G_Y_3_0
#define TDA1997X_G_Y_7_4
#define TDA1997X_G_Y_11_8
/* pinswapped groups */
#define TDA1997X_R_CR_CBCR_3_0_S
#define TDA1997X_R_CR_CBCR_7_4_S
#define TDA1997X_R_CR_CBCR_11_8_S
#define TDA1997X_B_CB_3_0_S
#define TDA1997X_B_CB_7_4_S
#define TDA1997X_B_CB_11_8_S
#define TDA1997X_G_Y_3_0_S
#define TDA1997X_G_Y_7_4_S
#define TDA1997X_G_Y_11_8_S

/* Audio bus DAI format */
#define TDA1997X_I2S16
#define TDA1997X_I2S32
#define TDA1997X_SPDIF
#define TDA1997X_OBA
#define TDA1997X_DST
#define TDA1997X_I2S16_HBR
#define TDA1997X_I2S16_HBR_DEMUX
#define TDA1997X_I2S32_HBR_DEMUX
#define TDA1997X_SPDIF_HBR_DEMUX

/* Audio bus channel layout */
#define TDA1997X_LAYOUT0
#define TDA1997X_LAYOUT1

/* Audio bus clock */
#define TDA1997X_ACLK_16FS
#define TDA1997X_ACLK_32FS
#define TDA1997X_ACLK_64FS
#define TDA1997X_ACLK_128FS
#define TDA1997X_ACLK_256FS
#define TDA1997X_ACLK_512FS

#endif /* _DT_BINDINGS_MEDIA_TDA1997X_H */