1
0
Fork 0

MLK-18690-3: hdp api: Remove info frame API function

Remove info frame function from CDN API.

Signed-off-by: Sandor Yu <Sandor.yu@nxp.com>
pull/10/head
Sandor Yu 2018-06-26 17:34:52 +08:00 committed by Jason Liu
parent 67622bfcf8
commit f2dfa5381e
7 changed files with 0 additions and 487 deletions

View File

@ -1,188 +0,0 @@
/******************************************************************************
*
* Copyright (C) 2016-2017 Cadence Design Systems, Inc.
* All rights reserved worldwide.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation and/or
* other materials provided with the distribution.
*
* 3. Neither the name of the copyright holder nor the names of its contributors
* may be used to endorse or promote products derived from this software without
* specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
* THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
* ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
* EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
* DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
* OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*
* Copyright 2017 NXP
*
******************************************************************************
*
* API_AVI.c
*
******************************************************************************
*/
#include "API_AVI.h"
#include "API_Infoframe.h"
CDN_API_STATUS CDN_API_Set_AVI(state_struct *state, struct drm_display_mode *mode,
VIC_PXL_ENCODING_FORMAT colorMode,
enum hdmi_colorimetry colorimetry,
enum hdmi_extended_colorimetry ext_colorimetry)
{
u32 active_slot = mode->htotal - mode->hdisplay;
u32 line_width = mode->htotal;
u32 Hactive = line_width - active_slot + 1;
u32 Vactive = mode->hdisplay + 1;
u32 Hactive_l = Hactive - 256 * ((u32) Hactive / 256);
u32 Hactive_h = Hactive / 256;
u32 Vactive_l = Vactive - 256 * ((u32) Vactive / 256);
u32 Vactive_h = Vactive / 256;
u32 packet_type = 0x82;
u32 packet_version = 0x2;
u32 packet_len = 0xD;
u32 packet_Y = 0;
u32 packet_C = 0;
u32 packet_R = 0;
u32 packet_VIC = 0;
u32 packet_PR = 0;
u8 packet[32];
u8 len = sizeof(packet)/sizeof(u32);
u32 packet_HB0 = 0;
u32 packet_HB1 = 0;
u32 packet_HB2 = 0;
u32 packet_PB0 = 0;
u32 packet_PB1 = 0;
u32 packet_PB2 = 0;
u32 packet_PB3 = 0;
u32 packet_PB4 = 0;
u32 packet_PB5 = 0;
u32 packet_PB6 = 0;
u32 packet_PB7 = 0;
u32 packet_PB8 = 0;
u32 packet_PB9 = 0;
u32 packet_PB10 = 0;
u32 packet_PB11 = 0;
u32 packet_PB12 = 0;
u32 packet_PB13 = 0;
u32 PB1_13_chksum = 0;
u32 packet_chksum = 0;
u32 packet_A0 = 1;
u32 packet_B = 0;
u32 packet_S = 0;
/* Picture Scsaling */
u32 packet_SC = 0;
/* Aspect Ratio: Nodata=0 4:3=1 16:9=2 */
u32 packet_M = 0;
/* Quantization Range Default=0 Limited Range=0x1 FullRange=0x2 Reserved 0x3 */
u32 packet_Q = 0;
/* Quantization Range 0=Limited Range FullRange=0x1 Reserved 0x3/2 */
u32 packet_YQ = 0;
/* Extended Colorimetry xvYCC601=0x0 xvYCC709=1 All other Reserved */
u32 packet_EC = 0;
/* IT content nodata=0 ITcontent=1 */
u32 packet_IT = 0;
/* Content Type */
u32 packet_CN = 0;
/* Active Format Aspec Ratio:
* Same As Picture = 0x8 4:3(Center)=0x9 16:9=0xA 14:9=0xB */
if (mode->picture_aspect_ratio == HDMI_PICTURE_ASPECT_4_3)
packet_R = 9;
else if (mode->picture_aspect_ratio == HDMI_PICTURE_ASPECT_16_9)
packet_R = 0xa;
else
packet_R = 8;
/* Video Code (CEA) */
packet_VIC = drm_match_cea_mode(mode);
/* Pixel Repetition 0 ... 9 (1-10) */
packet_PR = 0;
if (colorMode == PXL_RGB)
packet_Y = 0;
else if (colorMode == YCBCR_4_4_4)
packet_Y = 2;
else if (colorMode == YCBCR_4_2_2)
packet_Y = 1;
else if (colorMode == YCBCR_4_2_0)
packet_Y = 3;
packet_C = colorimetry;
packet_EC = ext_colorimetry;
packet_HB0 = packet_type;
packet_HB1 = packet_version;
packet_HB2 = packet_len;
packet_PB1 = 32 * packet_Y + 16 * packet_A0 + 4 * packet_B + packet_S;
packet_PB2 = 64 * packet_C + 16 * packet_M + packet_R;
packet_PB3 =
128 * packet_IT + 16 * packet_EC + 4 * packet_Q + packet_SC;
packet_PB4 = packet_VIC;
packet_PB5 = 64 * packet_YQ + 16 * packet_CN + packet_PR;
packet_PB6 = 0;
packet_PB7 = 0;
packet_PB8 = Vactive_l;
packet_PB9 = Vactive_h;
packet_PB10 = 0;
packet_PB11 = 0;
packet_PB12 = Hactive_l;
packet_PB13 = Hactive_h;
PB1_13_chksum =
(packet_HB0 + packet_HB1 + packet_HB2 + packet_PB1 + packet_PB2 +
packet_PB3 + packet_PB4 + packet_PB5 + packet_PB6 + packet_PB7 +
packet_PB8 + packet_PB9 + packet_PB10 + packet_PB11 + packet_PB12 +
packet_PB13);
packet_chksum =
256 - (PB1_13_chksum - 256 * ((u32) PB1_13_chksum / 256));
packet_PB0 = packet_chksum;
packet[0] = 0;
packet[1] = packet_HB0;
packet[2] = packet_HB1;
packet[3] = packet_HB2;
packet[4] = packet_PB0;
packet[5] = packet_PB1;
packet[6] = packet_PB2;
packet[7] = packet_PB3;
packet[8] = packet_PB4;
packet[9] = packet_PB5;
packet[10] = packet_PB6;
packet[11] = packet_PB7;
packet[12] = packet_PB8;
packet[13] = packet_PB9;
packet[14] = packet_PB10;
packet[15] = packet_PB11;
packet[16] = packet_PB12;
packet[17] = packet_PB13;
CDN_API_InfoframeSet(state, 0, len, (u32 *)&packet[0], packet_type);
return CDN_OK;
}

View File

@ -1,57 +0,0 @@
/******************************************************************************
*
* Copyright (C) 2016-2017 Cadence Design Systems, Inc.
* All rights reserved worldwide.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation and/or
* other materials provided with the distribution.
*
* 3. Neither the name of the copyright holder nor the names of its contributors
* may be used to endorse or promote products derived from this software without
* specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
* THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
* ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
* EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
* DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
* OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*
* Copyright 2017 NXP
*
******************************************************************************
*
* API_AVI.h
*
******************************************************************************
*/
#ifndef API_AVI_H_
#define API_AVI_H_
#include "API_General.h"
CDN_API_STATUS CDN_API_Set_AVI(state_struct *state, struct drm_display_mode *mode,
VIC_PXL_ENCODING_FORMAT colorMode,
enum hdmi_colorimetry colorimetry,
enum hdmi_extended_colorimetry ext_colorimetry);
#endif //API_AVI_H_

View File

@ -46,7 +46,6 @@
#include "address.h"
#include "aif_pckt2smp.h"
#include "API_Audio.h"
#include "API_HDMI_Audio.h"
#include "API_DPTX.h"
#include "API_General.h"
#include "clock_meters.h"
@ -321,16 +320,6 @@ CDN_API_STATUS CDN_API_AudioAutoConfig(state_struct *state,
CDN_API_AudioConfigCore(state, audioType, numOfChannels,
freq, lanes, width);
break;
case 8:
if ((protocol == CDN_HDMITX_TYPHOON)
|| (protocol == CDN_HDMITX_KIRAN)) {
CDN_API_HDMI_AudioSetInfoFrame(state, mode, audioType,
numOfChannels, freq,
lanes, ncts);
}
ret = CDN_OK;
break;
}
if (!state->tmp && ret == CDN_STARTED)
return CDN_STARTED;

View File

@ -1,158 +0,0 @@
/******************************************************************************
*
* Copyright (C) 2016-2017 Cadence Design Systems, Inc.
* All rights reserved worldwide.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation and/or
* other materials provided with the distribution.
*
* 3. Neither the name of the copyright holder nor the names of its contributors
* may be used to endorse or promote products derived from this software without
* specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
* THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
* ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
* EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
* DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
* OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*
* Copyright 2017 NXP
*
******************************************************************************
*
* API_HDMI_Audio.c
*
******************************************************************************
*/
#include "API_HDMI_Audio.h"
#include "API_Infoframe.h"
#include "source_aif_decoder.h"
#include "source_aif_smpl2pckt.h"
#include "dptx_stream.h"
#include "address.h"
#include "util.h"
#include "aif_pckt2smp.h"
#include "dptx_framer.h"
#include "clock_meters.h"
#include "source_car.h"
#include "API_DPTX.h"
#include "mhl_hdtx_top.h"
CDN_API_STATUS CDN_API_HDMI_AudioSetInfoFrame(state_struct *state,
AUDIO_MUTE_MODE mode,
AUDIO_TYPE audioType,
int numOfChannels,
AUDIO_FREQ freq, int lanes,
int ncts)
{
u32 packet_type = 0x84;
u32 packet_version = 0x1;
u32 packet_len = 0xA;
u32 packet_HB0 = packet_type;
u32 packet_HB1 = packet_version;
u32 packet_HB2 = packet_len;
u32 packet_PB0 = 0;
u32 packet_PB1 = numOfChannels - 1;
u32 packet_PB2 = 0;
u32 packet_PB3 = 0;
u32 packet_PB4 = 0;
u32 packet_PB5 = 0;
u32 packet_PB6 = 0;
u32 packet_PB7 = 0;
u32 packet_PB8 = 0;
u32 packet_PB9 = 0;
u32 packet_PB10 = 0;
u32 packet_PB11 = 0;
u32 packet_PB12 = 0;
u32 packet_PB13 = 0;
u32 packet_PB14 = 0;
u32 packet_PB15 = 0;
u32 packet_PB16 = 0;
u32 packet_PB17 = 0;
u32 packet_PB18 = 0;
u32 packet_PB19 = 0;
u32 packet_PB20 = 0;
u32 packet_PB21 = 0;
u32 packet_PB22 = 0;
u32 packet_PB23 = 0;
u32 packet_PB24 = 0;
u32 packet_PB25 = 0;
u32 packet_PB26 = 0;
u32 packet_PB27 = 0;
u32 PB1_13_chksum = 0;
u32 packet_chksum = 0;
u8 packet[32];
if (numOfChannels == 2) {
packet_PB4 = 0;
} else if (numOfChannels == 4) {
packet_PB4 = 0x3;
} else if (numOfChannels == 8) {
packet_PB4 = 0x13;
}
PB1_13_chksum =
(packet_HB0 + packet_HB1 + packet_HB2 + packet_PB1 + packet_PB2 +
packet_PB3 + packet_PB4 + packet_PB5 + packet_PB6 + packet_PB7 +
packet_PB8 + packet_PB9 + packet_PB10);
packet_chksum =
256 - (PB1_13_chksum - 256 * ((u32) PB1_13_chksum / 256));
packet_PB0 = packet_chksum;
packet[0] = 0;
packet[1] = packet_HB0;
packet[2] = packet_HB1;
packet[3] = packet_HB2;
packet[4] = packet_PB0;
packet[5] = packet_PB1;
packet[6] = packet_PB2;
packet[7] = packet_PB3;
packet[8] = packet_PB4;
packet[9] = packet_PB5;
packet[10] = packet_PB6;
packet[11] = packet_PB7;
packet[12] = packet_PB8;
packet[13] = packet_PB9;
packet[14] = packet_PB10;
packet[15] = packet_PB11;
packet[16] = packet_PB12;
packet[17] = packet_PB13;
packet[18] = packet_PB14;
packet[19] = packet_PB15;
packet[20] = packet_PB16;
packet[21] = packet_PB17;
packet[22] = packet_PB18;
packet[23] = packet_PB19;
packet[24] = packet_PB20;
packet[25] = packet_PB21;
packet[26] = packet_PB22;
packet[27] = packet_PB23;
packet[28] = packet_PB24;
packet[29] = packet_PB25;
packet[30] = packet_PB26;
packet[31] = packet_PB27;
CDN_API_InfoframeSet(state, 1, 28, (u32 *) &packet[0], packet_type);
return CDN_OK;
}

View File

@ -1,69 +0,0 @@
/******************************************************************************
*
* Copyright (C) 2016-2017 Cadence Design Systems, Inc.
* All rights reserved worldwide.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation and/or
* other materials provided with the distribution.
*
* 3. Neither the name of the copyright holder nor the names of its contributors
* may be used to endorse or promote products derived from this software without
* specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
* THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
* ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
* EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
* DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
* OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*
* Copyright 2017 NXP
*
******************************************************************************
*
* API_HDMI_Audio.h
*
******************************************************************************
*/
#ifndef API_HDMI_Audio_H_
#define API_HDMI_Audio_H_
#include "API_General.h"
#include "API_Audio.h"
/**
* \addtogroup HDMI_TX_API
* \{
*/
/**
* \brief send audio info frame according to parameters
* \returns status
*/
CDN_API_STATUS CDN_API_HDMI_AudioSetInfoFrame(state_struct *state,
AUDIO_MUTE_MODE mode,
AUDIO_TYPE audioType,
int numOfChannels,
AUDIO_FREQ freq, int lanes,
int ncts);
#endif

View File

@ -1,11 +1,9 @@
obj-$(CONFIG_MX8_HDP) += \
API_Audio.o \
API_AVI.o \
API_AFE.o \
API_General.o \
API_HDCP.o \
API_HDMITX.o \
API_HDMI_Audio.o \
API_Infoframe.o \
API_DPTX.o \
util.o

View File

@ -45,7 +45,6 @@
*/
#include "address.h"
#include "apb_cfg.h"
#include "API_AVI.h"
#include "API_AFE.h"
#include "API_DPTX.h"
#include "API_General.h"
@ -53,7 +52,6 @@
#include "API_Audio.h"
#include "API_HDCP.h"
#include "API_HDMITX.h"
#include "API_HDMI_Audio.h"
#include "dptx_framer.h"
#include "source_car.h"
#include "source_phy.h"