dvb: support two si2168(si2151/av2018) [2/3]

PD#SWPL-13198

Problem:
support U212-D814

Solution:
support U212-D814

Verify:
verify at u212-D814

Change-Id: I2c458b36fc2bee08ddd24e2da016a68515bb82da
Signed-off-by: Chuangcheng Peng <chuangcheng.peng@amlogic.com>
This commit is contained in:
Chuangcheng Peng
2019-09-16 14:30:56 +08:00
committed by Jianxin Pan
parent 6ea10b7f83
commit 4deae5939d
2 changed files with 149 additions and 38 deletions

View File

@@ -371,6 +371,69 @@
&clkc CLKID_DOS_PARSER>;
clock-names = "demux", "ahbarb0", "parser_top";
};
/*this just for U212-D814(dual demod)*/
/* dvb {
* compatible = "amlogic, dvb";
* dev_name = "dvb";
* fe0_mode = "external";
* fe0_demod = "Si2168";
* fe0_i2c_adap_id = <&i2c2>;
* fe0_demod_i2c_addr = <0x64>;
* fe0_ts = <1>;
* fe0_reset_value = <0>;
* fe0_reset_gpio = <&gpio GPIOZ_1 GPIO_ACTIVE_HIGH>;
* fe0_tuner0_i2c_addr = <0x61>;//dvb-t addr
* fe0_tuner1_i2c_addr = <0x62>;//dvb-s addr
* fe0_tuner0_code = <0x2151>;
* fe0_tuner1_code = <0xA2018>;
* ts1 = "parallel";
* ts1_control = <0>;
* ts1_invert = <0>;
* fe1_mode = "external";
* fe1_demod = "Si2168-1";
* fe1_i2c_adap_id = <&i2c2>;
* fe1_demod_i2c_addr = <0x67>;
* fe1_ts = <0>;
* fe1_reset_value = <0>;
* fe1_reset_gpio = <&gpio GPIOZ_0 GPIO_ACTIVE_HIGH>;
* fe1_tuner0_i2c_addr = <0x62>;//dvb-t addr
* fe1_tuner1_i2c_addr = <0x63>;//dvb-s addr
* fe1_tuner_code0 = <0x2151>;
* fe1_tuner_code1 = <0xA2018>;
* ts0 = "serial";
* ts0_control = <0x800>;
* ts0_invert = <0>;
* interrupts = <0 23 1
* 0 5 1
* 0 21 1
* 0 19 1
* 0 25 1
* 0 18 1
* 0 24 1>;
* interrupt-names = "demux0_irq",
* "demux1_irq",
* "demux2_irq",
* "dvr0_irq",
* "dvr1_irq",
* "dvrfill0_fill",
* "dvrfill1_flush";
* pinctrl-names = "s_ts0","p_ts1";
* pinctrl-0 = <&dvb_s_ts0_pins>;
* pinctrl-1 = <&dvb_p_ts1_pins>;
* clocks = <&clkc CLKID_DEMUX
* &clkc CLKID_AHB_ARB0
* &clkc CLKID_DOS_PARSER>;
* clock-names = "demux", "ahbarb0", "parser_top";
* };
*/
unifykey{
compatible = "amlogic, unifykey";
status = "ok";
@@ -831,6 +894,9 @@
status = "okay";
};
/*
* it's conflict with TSIN_B reset pin
*/
&i2c0 {
status = "okay";
pinctrl-names="default";
@@ -1251,8 +1317,6 @@
function = "pdm";
};
};
}; /* end of pinctrl_periphs */
&pinctrl_aobus {
/*gpiao_10*/
@@ -1262,6 +1326,17 @@
/* function = "spdif_out_ao";*/
/* }; */
/*}; */
/*dvb_s_ts0_pins: dvb_s_ts0_pins {*/
/* tsin_a{ */
/* groups = "tsin_a_din0_ao",*/
/* "tsin_a_clk_ao", */
/* "tsin_a_sop_ao", */
/* "tsin_a_valid_ao"; */
/* function = "tsin_a_ao"; */
/* }; */
/*}; */
}; /* end of pinctrl_aobus */
&audio_data {
@@ -1294,6 +1369,7 @@
/** 0: normal, 1: otg+dwc3 host only, 2: otg+dwc3 device only*/
controller-type = <1>;
};
&ethmac {
status = "okay";
pinctrl-names = "internal_eth_pins", "internal_gpio_pins";

View File

@@ -335,43 +335,67 @@
cma_mode = <1>;
};
/*dvb {
* compatible = "amlogic, dvb";
* dev_name = "dvb";
*
* fe0_mode = "external";
* fe0_demod = "Atbm8881";
* fe0_i2c_adap_id = <&i2c2>;
* fe0_demod_i2c_addr = <0xc0>;
* fe0_ts = <1>;
* fe0_reset_value = <0>;
* fe0_reset_gpio = <&gpio GPIOZ_1 GPIO_ACTIVE_HIGH>;
*
* ts1 = "parallel";
* ts1_control = <0>;
* ts1_invert = <0>;
* interrupts = <0 23 1
* 0 5 1
* 0 21 1
* 0 19 1
* 0 25 1
* 0 18 1
* 0 24 1>;
* interrupt-names = "demux0_irq",
* "demux1_irq",
* "demux2_irq",
* "dvr0_irq",
* "dvr1_irq",
* "dvrfill0_fill",
* "dvrfill1_flush";
* pinctrl-names = "p_ts1";
* pinctrl-0 = <&dvb_p_ts1_pins>;
* clocks = <&clkc CLKID_DEMUX
* &clkc CLKID_AHB_ARB0
* &clkc CLKID_DOS_PARSER>;
* clock-names = "demux", "ahbarb0", "parser_top";
*};
/* dvb {
* compatible = "amlogic, dvb";
* dev_name = "dvb";
* fe0_mode = "external";
* fe0_demod = "Si2168";
* fe0_i2c_adap_id = <&i2c2>;
* fe0_demod_i2c_addr = <0x64>;
* fe0_ts = <1>;
* fe0_reset_value = <0>;
* fe0_reset_gpio = <&gpio GPIOZ_1 GPIO_ACTIVE_HIGH>;
* fe0_tuner0_i2c_addr = <0x61>;//dvb-t addr
* fe0_tuner1_i2c_addr = <0x62>;//dvb-s addr
* fe0_tuner0_code = <0x2151>;
* fe0_tuner1_code = <0xA2018>;
* ts1 = "parallel";
* ts1_control = <0>;
* ts1_invert = <0>;
* fe1_mode = "external";
* fe1_demod = "Si2168-1";
* fe1_i2c_adap_id = <&i2c2>;
* fe1_demod_i2c_addr = <0x67>;
* fe1_ts = <0>;
* fe1_reset_value = <0>;
* fe1_reset_gpio = <&gpio GPIOZ_0 GPIO_ACTIVE_HIGH>;
* fe1_tuner0_i2c_addr = <0x62>;//dvb-t addr
* fe1_tuner1_i2c_addr = <0x63>;//dvb-s addr
* fe1_tuner_code0 = <0x2151>;
* fe1_tuner_code1 = <0xA2018>;
* ts0 = "serial";
* ts0_control = <0x800>;
* ts0_invert = <0>;
* interrupts = <0 23 1
* 0 5 1
* 0 21 1
* 0 19 1
* 0 25 1
* 0 18 1
* 0 24 1>;
* interrupt-names = "demux0_irq",
* "demux1_irq",
* "demux2_irq",
* "dvr0_irq",
* "dvr1_irq",
* "dvrfill0_fill",
* "dvrfill1_flush";
* pinctrl-names = "s_ts0","p_ts1";
* pinctrl-0 = <&dvb_s_ts0_pins>;
* pinctrl-1 = <&dvb_p_ts1_pins>;
* clocks = <&clkc CLKID_DEMUX
* &clkc CLKID_AHB_ARB0
* &clkc CLKID_DOS_PARSER>;
* clock-names = "demux", "ahbarb0", "parser_top";
* };
*/
unifykey{
compatible = "amlogic, unifykey";
status = "ok";
@@ -1262,6 +1286,17 @@
/* function = "spdif_out_ao";*/
/* }; */
/*}; */
/*dvb_s_ts0_pins: dvb_s_ts0_pins {*/
/* tsin_a{ */
/* groups = "tsin_a_din0_ao",*/
/* "tsin_a_clk_ao", */
/* "tsin_a_sop_ao", */
/* "tsin_a_valid_ao"; */
/* function = "tsin_a_ao"; */
/* }; */
/*}; */
}; /* end of pinctrl_aobus */
&audio_data {