dvb: Enable dvb demux support for ampere and franklin platform. [1/1]
authorKai Song <kai.song@amlogic.com>
Thu, 28 Feb 2019 07:48:06 +0000 (15:48 +0800)
committerTao Zeng <tao.zeng@amlogic.com>
Sat, 10 Aug 2019 09:29:09 +0000 (02:29 -0700)
PD#SWPL-11209

Problem:
1.Need support widevineCAS with drmplayer.
2.The ampere and franklin debugging platforms do not
  support dvb demux by default, we need to modify the dts
  configuration files.

Solution:
1.Refer to http://scgit.amlogic.com:8080/#/c/59242/
2.Refer to http://scgit.amlogic.com:8080/#/c/59702/3
3.Enable dvb demux support for ampere and franklin platform (arch/arm).

Verify:
Verified by ampere & franklin with android-p.

Change-Id: I0eb9393439b532f88beaf33479bb88da1ef5ea31
Signed-off-by: Kai Song <kai.song@amlogic.com>
arch/arm/boot/dts/amlogic/g12a_s905x2_u212.dts
arch/arm/boot/dts/amlogic/g12a_s905x2_u212_1g.dts
arch/arm/boot/dts/amlogic/gxl_p212_1g.dts
arch/arm/boot/dts/amlogic/gxl_p212_2g.dts

index 3acaaf7..37530fb 100644 (file)
                dev_name = "ionvideo";
                status = "okay";
        };
-       /*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 = "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";
+       };
        unifykey{
                compatible = "amlogic, unifykey";
                status = "ok";
index ad3d5cc..8036f65 100644 (file)
                dev_name = "ionvideo";
                status = "okay";
        };
-       /*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 = "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";
+       };
+
        unifykey{
                compatible = "amlogic, unifykey";
                status = "ok";
index b489abf..b281647 100644 (file)
                        key-permit = "read","write","del";
                };
        };//End unifykey
-
+       dvb {
+               compatible = "amlogic, dvb";
+               dev_name = "dvb";
+
+       //      fe0_mode = "external";
+       //      fe0_demod = "Atbm8881";
+       //      fe0_i2c_adap_id = <&i2c1>;
+       //      fe0_demod_i2c_addr = <0xc0>;
+       //      fe0_ts = <0>;
+       //      fe0_reset_value = <0>;
+       //      fe0_reset_gpio = <&gpio GPIODV_14 GPIO_ACTIVE_HIGH>;
+
+       //      ts0 = "parallel";
+       //      ts0_control = <0>;
+       //      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 = "p_ts0", "s_ts0";
+       //      pinctrl-0 = <&dvb_p_ts0_pins>;
+       //      pinctrl-1 = <&dvb_s_ts0_pins>;
+               clocks = <&clkc CLKID_DEMUX
+               &clkc CLKID_ASYNC_FIFO
+               &clkc CLKID_AHB_ARB0
+               &clkc CLKID_HIU_IFACE>;
+               clock-names = "demux", "asyncfifo", "ahbarb0", "uparsertop";
+       };
 };
 &efuse {
        status = "ok";
 &audio_data{
        status = "okay";
 };
+
 &spicc{
        status = "disabled";
        pinctrl-names = "spicc_pulldown","spicc_pullup";
index 0c65860..839ef9e 100644 (file)
                        key-permit = "read","write","del";
                };
        };//End unifykey
+       dvb {
+               compatible = "amlogic, dvb";
+               dev_name = "dvb";
+
+       //      fe0_mode = "external";
+       //      fe0_demod = "Atbm8881";
+       //      fe0_i2c_adap_id = <&i2c1>;
+       //      fe0_demod_i2c_addr = <0xc0>;
+       //      fe0_ts = <0>;
+       //      fe0_reset_value = <0>;
+       //      fe0_reset_gpio = <&gpio GPIODV_14 GPIO_ACTIVE_HIGH>;
+
+       //      ts0 = "parallel";
+       //      ts0_control = <0>;
+       //      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 = "p_ts0", "s_ts0";
+       //      pinctrl-0 = <&dvb_p_ts0_pins>;
+       //      pinctrl-1 = <&dvb_s_ts0_pins>;
+               clocks = <&clkc CLKID_DEMUX
+               &clkc CLKID_ASYNC_FIFO
+               &clkc CLKID_AHB_ARB0
+               &clkc CLKID_HIU_IFACE>;
+               clock-names = "demux", "asyncfifo", "ahbarb0", "uparsertop";
+       };
+
 };
 &efuse {
        status = "ok";