From 8b80245fdc3fdba048330cd7828ac08869d1e3e5 Mon Sep 17 00:00:00 2001 From: luojiale Date: Wed, 28 Sep 2022 19:39:37 +0800 Subject: [PATCH] feat(codec): [cr_id_skip] Support 4mic on sdb 4.0 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Summary: SDB4.0板子支持新做的音频转接板 Test Plan: none Reviewers: yaqiang.li Reviewed By: yaqiang.li Differential Revision: https://cr.hobot.cc/D224601 --- arch/arm64/boot/dts/hobot/hobot-x3-sdb_v4.dts | 56 +++++++++++++++++++ drivers/soc/hobot/iar/hobot_iar.c | 5 -- drivers/video/fbdev/hobot_fb.c | 8 ++- 3 files changed, 61 insertions(+), 8 deletions(-) mode change 100755 => 100644 drivers/soc/hobot/iar/hobot_iar.c mode change 100755 => 100644 drivers/video/fbdev/hobot_fb.c diff --git a/arch/arm64/boot/dts/hobot/hobot-x3-sdb_v4.dts b/arch/arm64/boot/dts/hobot/hobot-x3-sdb_v4.dts index 2f311d8be..4254624ed 100755 --- a/arch/arm64/boot/dts/hobot/hobot-x3-sdb_v4.dts +++ b/arch/arm64/boot/dts/hobot/hobot-x3-sdb_v4.dts @@ -239,6 +239,21 @@ status = "okay"; #address-cells = <1>; #size-cells = <0>; + + es7210_0:es7210_0@0x40 { + compatible = "MicArray_0"; + reg = <0x40>; + #sound-dai-cells = <1>; + }; + es7210_1@0x42{ + compatible = "MicArray_1"; + reg = <0x42>; + }; + es8156:es8156_0@0x08{ + compatible="everest,es8156"; + reg = <0x08>; + #sound-dai-cells = <0>; + }; }; &i2c2 { @@ -541,6 +556,10 @@ status = "okay"; }; +&snd5 { + status = "okay"; +}; + &jpu { status = "okay"; }; @@ -630,4 +649,41 @@ sound-dai = <&i2sidma1>; }; }; +}; + +&snd5 { + model = "hobotsnd5"; + work_mode = <0>; /*0:simple mode; 1:duplex mode*/ + dai-link@0 { + dai-format = "dsp_a"; + bitclock-master; + frame-master; + frame-inversion; + link-name = "hobotdailink0"; + cpu { + sound-dai = <&i2s0>; + }; + codec { + sound-dai = <&es7210_0 0>; + }; + platform { + sound-dai = <&i2sidma0>; + }; + }; + dai-link@1 { + dai-format = "i2s"; + bitclock-master; + frame-master; + //frame-inversion; + link-name = "hobotdailink1"; + cpu { + sound-dai = <&i2s1>; + }; + codec { + sound-dai = <&es8156>; + }; + platform { + sound-dai = <&i2sidma1>; + }; + }; }; \ No newline at end of file diff --git a/drivers/soc/hobot/iar/hobot_iar.c b/drivers/soc/hobot/iar/hobot_iar.c old mode 100755 new mode 100644 index b999e64c0..d53bedd51 --- a/drivers/soc/hobot/iar/hobot_iar.c +++ b/drivers/soc/hobot/iar/hobot_iar.c @@ -4861,13 +4861,8 @@ static int hobot_iar_probe(struct platform_device *pdev) iar_display_cam_no = PIPELINE0; iar_display_addr_type = GDC0; if (need_startup_img) { -#ifdef CONFIG_HOBOT_X3_UBUNTU - stride_copy_bmp(0, 0, embedded_image_0_data, 0, 0, 0, 0, - g_iar_dev->frambuf[IAR_CHANNEL_3].vaddr, 24, 24, 720, 3); -#else stride_copy_bmp(0, 0, embedded_image_0_data, 0, 0, 0, 0, g_iar_dev->frambuf[IAR_CHANNEL_3].vaddr, 24, 24, 720, 4); -#endif } else { display_color_bar(720, 1280, g_iar_dev->frambuf[IAR_CHANNEL_3].vaddr); } diff --git a/drivers/video/fbdev/hobot_fb.c b/drivers/video/fbdev/hobot_fb.c old mode 100755 new mode 100644 index 1b58d63c0..e7e847b4b --- a/drivers/video/fbdev/hobot_fb.c +++ b/drivers/video/fbdev/hobot_fb.c @@ -1266,9 +1266,11 @@ static int hbfb_set_par(struct fb_info *info) value = 17; } hdmi_set_resolution(value); - - if (fbi->fb.var.bits_per_pixel == 32) { - fbi->fb.var.bits_per_pixel = 24; + if (display_type == HDMI_TYPE)//lcd is ARGB format,so bits per pixel is 32,HDMI is RGB format. + { + if (fbi->fb.var.bits_per_pixel == 32) { + fbi->fb.var.bits_per_pixel = 24; + } } #endif return regval;