t962x3_ab301: modify dts for WIFI/BT/tuner [1/1]

PD#SWPL-6720

Problem:
WIFI/BT/tuner can not work

Solution:
modify dts for WIFI/BT/tuner

Verify:
verify by t962x3_ab301

Change-Id: I0925a2ebbad2825e4df47cc3957d960cdcab6ac4
Signed-off-by: kieth liu <kieth.liu@amlogic.com>
This commit is contained in:
kieth liu
2019-04-08 07:38:19 -04:00
committed by Jianxiong Pan
parent 606fc899cf
commit 68487523f5
2 changed files with 208 additions and 61 deletions

View File

@@ -1222,7 +1222,7 @@
sd_emmc_b: sdio@ffe05000 {
status = "okay";
compatible = "amlogic, meson-mmc-tm2";
reg = <0xffe05000 0x800>;
reg = <0x0 0xffe05000 0x0 0x800>;
interrupts = <0 190 4>;
pinctrl-names = "sdio_all_pins",
@@ -1694,12 +1694,21 @@
}; /* end of pinctrl_periphs */
&pinctrl_aobus {
spdifout: spdifout {
mux { /* gpiao_10 */
groups = "spdif_out_ao";
function = "spdif_out_ao";
};
};
}; /* end of pinctrl_aobus */
&audio_data{
status = "okay";
};
&i2c2 {
status = "okay";
status = "disabled";
pinctrl-names="default";
pinctrl-0=<&i2c2_z_pins>;
clock-frequency = <400000>;
@@ -1711,17 +1720,25 @@
reg = <0x2d>;
status = "disable";
};
};
&i2c3 {
status = "okay";
pinctrl-names="default";
pinctrl-0=<&i2c3_h1_pins>;
clock-frequency = <400000>;
ad82584f: ad82584f@62 {
compatible = "ESMT, ad82584f";
#sound-dai-cells = <0>;
reg = <0x31>;
status = "okay";
reset_pin = <&gpio_ao GPIOAO_6 0>;
status = "disabled";
reset_pin = <&gpio GPIOH_13 0>;
no_mclk;
};
};
&sd_emmc_c {
status = "okay";
emmc {
@@ -1840,7 +1857,13 @@
&usb3_phy_v2 {
status = "okay";
portnum = <0>;
portnum = <2>;
portconfig-30 = <1>;
portconfig-31 = <1>;
};
&usb_otg {
status = "okay";
otg = <0>;
};
@@ -1850,6 +1873,16 @@
controller-type = <1>;
};
&pcie_A {
reset-gpio = <&gpio_ao GPIOAO_4 GPIO_ACTIVE_HIGH>;
status = "disable";
};
&pcie_B {
/* ab311 only pcie a, no pcie b */
status = "disable";
};
&spicc0 {
status = "okay";
pinctrl-names = "default";
@@ -1870,10 +1903,6 @@
status = "okay";
};
&pwm_cd {
status = "okay";
};
&saradc {
status = "okay";
};
@@ -1917,3 +1946,4 @@
&efuse {
status = "okay";
};

View File

@@ -69,14 +69,12 @@
alloc-ranges = <0x0 0x05000000 0x0 0x400000>;
};
codec_mm_cma:linux,codec_mm_cma {
logo_reserved:linux,meson-fb {
compatible = "shared-dma-pool";
reusable;
/* ion_codec_mm max can alloc size 80M*/
size = <0x0 0x13400000>;
size = <0x0 0x800000>;
alignment = <0x0 0x400000>;
linux,contiguous-region;
alloc-ranges = <0x0 0x30000000 0x0 0x50000000>;
alloc-ranges = <0x0 0x7f800000 0x0 0x800000>;
};
lcd_tcon_reserved:linux,lcd_tcon {
@@ -87,6 +85,15 @@
alloc-ranges = <0x0 0x7ec00000 0x0 0xc00000>;
};
codec_mm_cma:linux,codec_mm_cma {
compatible = "shared-dma-pool";
reusable;
/* ion_codec_mm max can alloc size 80M*/
size = <0x0 0x13400000>;
alignment = <0x0 0x400000>;
linux,contiguous-region;
};
/* codec shared reserved */
codec_mm_reserved:linux,codec_mm_reserved {
compatible = "amlogic, codec-mm-reserved";
@@ -95,19 +102,11 @@
//no-map;
};
logo_reserved:linux,meson-fb {
compatible = "shared-dma-pool";
reusable;
size = <0x0 0x800000>;
alignment = <0x0 0x400000>;
alloc-ranges = <0x0 0x7f800000 0x0 0x800000>;
};
ion_cma_reserved:linux,ion-dev {
compatible = "shared-dma-pool";
reusable;
size = <0x0 0x8000000>;
alignment = <0x0 0x400000>;
size = <0x0 0x2000000>;
alignment = <0x0 0x400000>;
};
/* vdin0 CMA pool */
@@ -257,6 +256,7 @@
reg = <0x0 0xff632000 0x0 0x1c>;
tdmout_index = <0>;
tdmin_index = <0>;
dat1_ch_sel = <1>;
};
aml_dtv_demod {
@@ -475,7 +475,7 @@
};
amlvecm {
compatible = "amlogic, vecm-tl1";
compatible = "amlogic, vecm";
dev_name = "aml_vecm";
status = "okay";
gamma_en = <1>;/*1:enabel ;0:disable*/
@@ -511,7 +511,7 @@
*if support 4K2K-YUV422-8BIT-WR:3840*2160*2*4 ~= 64M
*if support 1080p-YUV422-8BIT-WR:1920*1080*2*4 ~= 16M
*/
cma_size = <190>;
cma_size = <160>;
interrupts = <0 83 1>;
rdma-irq = <2>;
clocks = <&clkc CLKID_FCLK_DIV5>,
@@ -537,7 +537,7 @@
* 0 -- afbce compression-lossy disable
* 1 -- afbce compression-lossy enable
*/
afbce_bit_mode = <0>;
afbce_bit_mode = <0x0>;
};
vdin@1 {
@@ -784,6 +784,21 @@
};
}; /* End unifykey */
amlvideo2_0 {
compatible = "amlogic, amlvideo2";
dev_name = "amlvideo2";
status = "okay";
amlvideo2_id = <0>;
cma_mode = <1>;
};
amlvideo2_1 {
compatible = "amlogic, amlvideo2";
dev_name = "amlvideo2";
status = "okay";
amlvideo2_id = <1>;
cma_mode = <1>;
};
hdmirx {
compatible = "amlogic, hdmirx_tm2";
@@ -1145,8 +1160,8 @@
tuner_name_0 = "mxl661_tuner";
tuner_i2c_adap_0 = <&i2c0>;
tuner_i2c_addr_0 = <0x60>;
tuner_xtal_0 = <0>; /* 0: 16MHz, 1: 24MHz */
tuner_xtal_mode_0 = <0>;
tuner_xtal_0 = <1>; /* 0: 16MHz, 1: 24MHz */
tuner_xtal_mode_0 = <3>;
/* NO_SHARE_XTAL(0)
* SLAVE_XTAL_SHARE(3)
*/
@@ -1168,18 +1183,47 @@
/*default:0x88188832;r840 on haier:0x48188832*/
};
sd_emmc_b: sd@ffe05000 {
bt-dev{
compatible = "amlogic, bt-dev";
status = "okay";
gpio_reset = <&gpio GPIOC_13 GPIO_ACTIVE_HIGH>;
};
wifi{
compatible = "amlogic, aml_wifi";
status = "okay";
interrupt_pin = <&gpio GPIOC_12 GPIO_ACTIVE_HIGH>;
irq_trigger_type = "GPIO_IRQ_LOW";
dhd_static_buf; //dhd_static_buf support
power_on_pin = <&gpio GPIOC_11 GPIO_ACTIVE_HIGH>;
pinctrl-names = "default";
pinctrl-0 = <&pwm_b_pins1>;
pwm_config = <&wifi_pwm_conf>;
};
wifi_pwm_conf:wifi_pwm_conf{
pwm_channel1_conf {
pwms = <&pwm_ab MESON_PWM_1 30541 0>;
duty-cycle = <15270>;
times = <8>;
};
pwm_channel2_conf {
pwms = <&pwm_ab MESON_PWM_3 30500 0>;
duty-cycle = <15250>;
times = <12>;
};
};
sd_emmc_b: sdio@ffe05000 {
status = "okay";
compatible = "amlogic, meson-mmc-tm2";
reg = <0x0 0xffe05000 0x0 0x800>;
interrupts = <0 190 1>;
interrupts = <0 190 4>;
pinctrl-names = "sd_all_pins",
"sd_clk_cmd_pins",
"sd_1bit_pins";
pinctrl-0 = <&sd_all_pins>;
pinctrl-1 = <&sd_clk_cmd_pins>;
pinctrl-2 = <&sd_1bit_pins>;
pinctrl-names = "sdio_all_pins",
"sdio_clk_cmd_pins";
pinctrl-0 = <&sdio_all_pins>;
pinctrl-1 = <&sdio_clk_cmd_pins>;
clocks = <&clkc CLKID_SD_EMMC_B>,
<&clkc CLKID_SD_EMMC_B_P0_COMP>,
@@ -1193,26 +1237,70 @@
cap-mmc-highspeed;
max-frequency = <100000000>;
disable-wp;
sd {
pinname = "sd";
sdio {
pinname = "sdio";
ocr_avail = <0x200080>; /**VDD voltage 3.3 ~ 3.4 */
caps = "MMC_CAP_4_BIT_DATA",
"MMC_CAP_MMC_HIGHSPEED",
"MMC_CAP_SD_HIGHSPEED";
//"MMC_CAP_NONREMOVABLE"; /**ptm debug */
"MMC_CAP_SD_HIGHSPEED",
"MMC_CAP_NONREMOVABLE", /**ptm debug */
"MMC_CAP_UHS_SDR12",
"MMC_CAP_UHS_SDR25",
"MMC_CAP_UHS_SDR50",
"MMC_CAP_UHS_SDR104",
"MMC_PM_KEEP_POWER",
"MMC_CAP_SDIO_IRQ";
f_min = <400000>;
f_max = <200000000>;
max_req_size = <0x20000>; /**128KB*/
no_sduart = <1>;
gpio_dat3 = <&gpio GPIOC_3 GPIO_ACTIVE_HIGH>;
jtag_pin = <&gpio GPIOC_0 GPIO_ACTIVE_HIGH>;
gpio_cd = <&gpio GPIOC_10 GPIO_ACTIVE_HIGH>;
card_type = <5>;
card_type = <3>;
/* 3:sdio device(ie:sdio-wifi),
* 4:SD combo (IO+mem) card
*/
};
};
/* sd_emmc_b: sd@ffe05000 {
* status = "okay";
* compatible = "amlogic, meson-mmc-tm2";
* reg = <0xffe05000 0x800>;
* interrupts = <0 190 1>;
*
* pinctrl-names = "sd_all_pins",
* "sd_clk_cmd_pins",
* "sd_1bit_pins";
* pinctrl-0 = <&sd_all_pins>;
* pinctrl-1 = <&sd_clk_cmd_pins>;
* pinctrl-2 = <&sd_1bit_pins>;
*
* clocks = <&clkc CLKID_SD_EMMC_B>,
* <&clkc CLKID_SD_EMMC_B_P0_COMP>,
* <&clkc CLKID_FCLK_DIV2>,
* <&clkc CLKID_FCLK_DIV5>,
* <&xtal>;
* clock-names = "core", "clkin0", "clkin1", "clkin2", "xtal";
*
* bus-width = <4>;
* cap-sd-highspeed;
* cap-mmc-highspeed;
* max-frequency = <100000000>;
* disable-wp;
* sd {
* pinname = "sd";
* ocr_avail = <0x200080>;
* caps = "MMC_CAP_4_BIT_DATA",
* "MMC_CAP_MMC_HIGHSPEED",
* "MMC_CAP_SD_HIGHSPEED";
* f_min = <400000>;
* f_max = <200000000>;
* max_req_size = <0x20000>;
* no_sduart = <1>;
* gpio_dat3 = <&gpio GPIOC_3 GPIO_ACTIVE_HIGH>;
* jtag_pin = <&gpio GPIOC_0 GPIO_ACTIVE_HIGH>;
* gpio_cd = <&gpio GPIOC_10 GPIO_ACTIVE_HIGH>;
* card_type = <5>;
* };
* };
*/
}; /* end of / */
@@ -1626,7 +1714,7 @@
};
&i2c2 {
status = "okay";
status = "disabled";
pinctrl-names="default";
pinctrl-0=<&i2c2_z_pins>;
clock-frequency = <400000>;
@@ -1635,20 +1723,28 @@
compatible = "ti,tas5805";
#sound-dai-cells = <0>;
codec_name = "tas5805";
reg = <0x0 0x2d>;
reg = <0x2d>;
status = "disable";
};
};
&i2c3 {
status = "okay";
pinctrl-names="default";
pinctrl-0=<&i2c3_h1_pins>;
clock-frequency = <400000>;
ad82584f: ad82584f@62 {
compatible = "ESMT, ad82584f";
#sound-dai-cells = <0>;
reg = <0x0 0x31>;
status = "okay";
reset_pin = <&gpio_ao GPIOAO_6 0>;
reg = <0x31>;
status = "disabled";
reset_pin = <&gpio GPIOH_13 0>;
no_mclk;
};
};
&sd_emmc_c {
status = "okay";
emmc {
@@ -1765,7 +1861,13 @@
&usb3_phy_v2 {
status = "okay";
portnum = <0>;
portnum = <2>;
portconfig-30 = <1>;
portconfig-31 = <1>;
};
&usb_otg {
status = "okay";
otg = <0>;
};
@@ -1775,6 +1877,16 @@
controller-type = <1>;
};
&pcie_A {
reset-gpio = <&gpio_ao GPIOAO_4 GPIO_ACTIVE_HIGH>;
status = "disable";
};
&pcie_B {
/* ab311 only pcie a, no pcie b */
status = "disable";
};
&spicc0 {
status = "okay";
pinctrl-names = "default";
@@ -1795,10 +1907,6 @@
status = "okay";
};
&pwm_cd {
status = "okay";
};
&saradc {
status = "okay";
};
@@ -1812,25 +1920,34 @@
lcd_extern_i2c0: lcd_extern_i2c@0 {
compatible = "lcd_ext, i2c";
dev_name = "i2c_T5800Q";
reg = <0x0 0x1c>;
reg = <0x1c>;
status = "okay";
};
lcd_extern_i2c1: lcd_extern_i2c@1 {
compatible = "lcd_ext, i2c";
dev_name = "i2c_ANX6862";
reg = <0x0 0x20>;
reg = <0x20>;
status = "okay";
};
lcd_extern_i2c2: lcd_extern_i2c@2 {
compatible = "lcd_ext, i2c";
dev_name = "i2c_ANX7911";
reg = <0x0 0x74>;
reg = <0x74>;
status = "okay";
};
};
&pwm_ab {
status = "okay";
};
&pwm_cd {
status = "okay";
};
&efuse {
status = "okay";
};