From 6fb4edf5fa05aac1baf03d285da34de217ce3069 Mon Sep 17 00:00:00 2001 From: Abhishek Pandit-Subedi Date: Tue, 26 Nov 2019 08:17:32 +0100 Subject: [PATCH 01/16] Bluetooth: hci_bcm: Support pcm params in dts commit eb762b94111b646b4f116ebfdbfcadbad14e12b3 upstream. BCM chips may require configuration of PCM to operate correctly and there is a vendor specific HCI command to do this. Add support in the hci_bcm driver to parse this from devicetree and configure the chip. Signed-off-by: Abhishek Pandit-Subedi Signed-off-by: Marcel Holtmann Signed-off-by: Johan Hedberg --- drivers/bluetooth/hci_bcm.c | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/drivers/bluetooth/hci_bcm.c b/drivers/bluetooth/hci_bcm.c index 84a32c5..4f21b60 100644 --- a/drivers/bluetooth/hci_bcm.c +++ b/drivers/bluetooth/hci_bcm.c @@ -123,6 +123,7 @@ struct bcm_device { bool is_suspended; #endif bool no_early_set_baudrate; + u8 pcm_int_params[5]; }; /* generic bcm uart resources */ @@ -597,6 +598,16 @@ static int bcm_setup(struct hci_uart *hu) host_set_baudrate(hu, speed); } + /* PCM parameters if provided */ + if (bcm->dev && bcm->dev->pcm_int_params[0] != 0xff) { + struct bcm_set_pcm_int_params params; + + btbcm_read_pcm_int_params(hu->hdev, ¶ms); + + memcpy(¶ms, bcm->dev->pcm_int_params, 5); + btbcm_write_pcm_int_params(hu->hdev, ¶ms); + } + finalize: release_firmware(fw); @@ -1134,6 +1145,8 @@ static int bcm_acpi_probe(struct bcm_device *dev) static int bcm_of_probe(struct bcm_device *bdev) { device_property_read_u32(bdev->dev, "max-speed", &bdev->oper_speed); + device_property_read_u8_array(bdev->dev, "brcm,bt-pcm-int-params", + bdev->pcm_int_params, 5); return 0; } @@ -1149,6 +1162,9 @@ static int bcm_probe(struct platform_device *pdev) dev->dev = &pdev->dev; dev->irq = platform_get_irq(pdev, 0); + /* Initialize routing field to an unused value */ + dev->pcm_int_params[0] = 0xff; + if (has_acpi_companion(&pdev->dev)) { ret = bcm_acpi_probe(dev); if (ret) @@ -1409,6 +1425,9 @@ static int bcm_serdev_probe(struct serdev_device *serdev) bcmdev->serdev_hu.serdev = serdev; serdev_device_set_drvdata(serdev, bcmdev); + /* Initialize routing field to an unused value */ + bcmdev->pcm_int_params[0] = 0xff; + if (has_acpi_companion(&serdev->dev)) err = bcm_acpi_probe(bcmdev); else -- 2.7.4 From 7068c047c91015620466b98d8333d79c2befe070 Mon Sep 17 00:00:00 2001 From: Stefan Wahren Date: Wed, 1 Jan 2020 15:01:34 +0100 Subject: [PATCH 02/16] Bluetooth: hci_bcm: Drive RTS only for BCM43438 MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit commit e601daed271e9eb1b923972a0a1af65f8c7bb77b upstream. The commit 3347a80965b3 ("Bluetooth: hci_bcm: Fix RTS handling during startup") is causing at least a regression for AP6256 on Orange Pi 3. So do the RTS line handing during startup only on the necessary platform. Fixes: 3347a80965b3 ("Bluetooth: hci_bcm: Fix RTS handling during startup") Reported-by: Ondřej Jirman Signed-off-by: Stefan Wahren Signed-off-by: Marcel Holtmann --- drivers/bluetooth/hci_bcm.c | 21 +++++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) diff --git a/drivers/bluetooth/hci_bcm.c b/drivers/bluetooth/hci_bcm.c index 4f21b60..de05b14 100644 --- a/drivers/bluetooth/hci_bcm.c +++ b/drivers/bluetooth/hci_bcm.c @@ -53,6 +53,7 @@ */ struct bcm_device_data { bool no_early_set_baudrate; + bool drive_rts_on_open; }; /** @@ -123,6 +124,7 @@ struct bcm_device { bool is_suspended; #endif bool no_early_set_baudrate; + bool drive_rts_on_open; u8 pcm_int_params[5]; }; @@ -459,7 +461,9 @@ static int bcm_open(struct hci_uart *hu) out: if (bcm->dev) { - hci_uart_set_flow_control(hu, true); + if (bcm->dev->drive_rts_on_open) + hci_uart_set_flow_control(hu, true); + hu->init_speed = bcm->dev->init_speed; /* If oper_speed is set, ldisc/serdev will set the baudrate @@ -469,7 +473,10 @@ out: hu->oper_speed = bcm->dev->oper_speed; err = bcm_gpio_set_power(bcm->dev, true); - hci_uart_set_flow_control(hu, false); + + if (bcm->dev->drive_rts_on_open) + hci_uart_set_flow_control(hu, false); + if (err) goto err_unset_hu; } @@ -1450,8 +1457,10 @@ static int bcm_serdev_probe(struct serdev_device *serdev) dev_err(&serdev->dev, "Failed to power down\n"); data = device_get_match_data(bcmdev->dev); - if (data) + if (data) { bcmdev->no_early_set_baudrate = data->no_early_set_baudrate; + bcmdev->drive_rts_on_open = data->drive_rts_on_open; + } return hci_uart_register_device(&bcmdev->serdev_hu, &bcm_proto); } @@ -1468,11 +1477,15 @@ static struct bcm_device_data bcm4354_device_data = { .no_early_set_baudrate = true, }; +static struct bcm_device_data bcm43438_device_data = { + .drive_rts_on_open = true, +}; + static const struct of_device_id bcm_bluetooth_of_match[] = { { .compatible = "brcm,bcm20702a1" }, { .compatible = "brcm,bcm4345c5" }, { .compatible = "brcm,bcm4330-bt" }, - { .compatible = "brcm,bcm43438-bt" }, + { .compatible = "brcm,bcm43438-bt", .data = &bcm43438_device_data }, { .compatible = "brcm,bcm43540-bt", .data = &bcm4354_device_data }, { .compatible = "brcm,bcm4335a0" }, { }, -- 2.7.4 From f1bcdb25f262bdf2428bb42c9fa1c5a41021559d Mon Sep 17 00:00:00 2001 From: Seung-Woo Kim Date: Fri, 10 Jul 2020 18:02:01 +0900 Subject: [PATCH 03/16] ARM: dts: bcm2711-rpi-4-b: Add cts, rts pin setting for bt uart For high speed uart on bluetooth, it needs to add cts & rts pins. Add cts, rts pin setting for bluetooth uart. Change-Id: Ib12ceab8edd682107c19c07d891fab5d1440e9be Signed-off-by: Seung-Woo Kim --- arch/arm/boot/dts/bcm2711-rpi-4-b.dts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/arm/boot/dts/bcm2711-rpi-4-b.dts b/arch/arm/boot/dts/bcm2711-rpi-4-b.dts index e806aca..043eda0 100644 --- a/arch/arm/boot/dts/bcm2711-rpi-4-b.dts +++ b/arch/arm/boot/dts/bcm2711-rpi-4-b.dts @@ -303,7 +303,7 @@ }; &uart0 { - pinctrl-0 = <&uart0_pins &bt_pins>; + pinctrl-0 = <&uart0_pins &bt_pins &uart0_ctsrts_gpio30>; status = "okay"; }; -- 2.7.4 From 3b742d8107d6cc3308d5704f111f39a201e4f387 Mon Sep 17 00:00:00 2001 From: Seung-Woo Kim Date: Wed, 22 Jul 2020 17:15:09 +0900 Subject: [PATCH 04/16] ARM: configs: tizen_bcm2711_defconfig: Enable FUSE_FS Tizen requires CONFIG_FUSE_FS for user space filesystem. Enable the option. Change-Id: I75e19bf429e0c551053f37a7c05d9907c9f957b6 Signed-off-by: Seung-Woo Kim --- arch/arm/configs/tizen_bcm2711_defconfig | 1 + 1 file changed, 1 insertion(+) diff --git a/arch/arm/configs/tizen_bcm2711_defconfig b/arch/arm/configs/tizen_bcm2711_defconfig index 679d619..aa2d982 100644 --- a/arch/arm/configs/tizen_bcm2711_defconfig +++ b/arch/arm/configs/tizen_bcm2711_defconfig @@ -438,6 +438,7 @@ CONFIG_BTRFS_FS_POSIX_ACL=y CONFIG_F2FS_FS=y CONFIG_FANOTIFY=y CONFIG_AUTOFS4_FS=y +CONFIG_FUSE_FS=y CONFIG_FSCACHE=y CONFIG_FSCACHE_STATS=y CONFIG_FSCACHE_HISTOGRAM=y -- 2.7.4 From a9f8f393b616940faf190f0402f15814d53a6471 Mon Sep 17 00:00:00 2001 From: Jaehoon Chung Date: Wed, 22 Jul 2020 17:16:16 +0900 Subject: [PATCH 05/16] ARM: configs: tizen_bcm2711_defconfig: Enable Crypto extension configs Enable Crypto exntension configs. - CONFIG_CRYPTO_SHA1_ARM_NEON - CONFIG_CRYPTO_SHA2_ARM_CE After enabled these configs, verity is used from "sha256-generic" to "sha256-neon". Change-Id: I0d8f6335e6ee678130ea1219f539148e99fc4ac6 Signed-off-by: Jaehoon Chung --- arch/arm/configs/tizen_bcm2711_defconfig | 2 ++ 1 file changed, 2 insertions(+) diff --git a/arch/arm/configs/tizen_bcm2711_defconfig b/arch/arm/configs/tizen_bcm2711_defconfig index aa2d982..9b21d75 100644 --- a/arch/arm/configs/tizen_bcm2711_defconfig +++ b/arch/arm/configs/tizen_bcm2711_defconfig @@ -58,6 +58,8 @@ CONFIG_KERNEL_MODE_NEON=y CONFIG_PM=y CONFIG_RASPBERRYPI_FIRMWARE=y CONFIG_ARM_CRYPTO=y +CONFIG_CRYPTO_SHA1_ARM_NEON=y +CONFIG_CRYPTO_SHA2_ARM_CE=y CONFIG_CRYPTO_AES_ARM_BS=y CONFIG_KPROBES=y CONFIG_JUMP_LABEL=y -- 2.7.4 From b2200f9e2b97c575ec73c2dd813e53a210cb8f07 Mon Sep 17 00:00:00 2001 From: Andrey Grodzovsky Date: Tue, 29 Oct 2019 11:03:05 -0400 Subject: [PATCH 06/16] drm/sched: Fix passing zero to 'PTR_ERR' warning v2 MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Fix a static code checker warning. v2: Drop PTR_ERR_OR_ZERO. Signed-off-by: Andrey Grodzovsky Reviewed-by: Emily Deng Reviewed-by: Christian König Signed-off-by: Alex Deucher [hoegeun.kwon: backport mainline commit d7c5782acd35 drm/sched: Fix passing zero to 'PTR_ERR' warning v2] Change-Id: Idf3993133edb062275df2378ea69b2002667893e Signed-off-by: Seung-Woo Kim Signed-off-by: Hoegeun Kwon --- drivers/gpu/drm/scheduler/sched_main.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/scheduler/sched_main.c b/drivers/gpu/drm/scheduler/sched_main.c index dfb29e6..30c5ddd 100644 --- a/drivers/gpu/drm/scheduler/sched_main.c +++ b/drivers/gpu/drm/scheduler/sched_main.c @@ -496,8 +496,10 @@ void drm_sched_resubmit_jobs(struct drm_gpu_scheduler *sched) fence = sched->ops->run_job(s_job); if (IS_ERR_OR_NULL(fence)) { + if (IS_ERR(fence)) + dma_fence_set_error(&s_fence->finished, PTR_ERR(fence)); + s_job->s_fence->parent = NULL; - dma_fence_set_error(&s_fence->finished, PTR_ERR(fence)); } else { s_job->s_fence->parent = fence; } @@ -748,8 +750,9 @@ static int drm_sched_main(void *param) r); dma_fence_put(fence); } else { + if (IS_ERR(fence)) + dma_fence_set_error(&s_fence->finished, PTR_ERR(fence)); - dma_fence_set_error(&s_fence->finished, PTR_ERR(fence)); drm_sched_process_job(NULL, &sched_job->cb); } -- 2.7.4 From 947484396a7b693e9d1d9da08b7d908147032e18 Mon Sep 17 00:00:00 2001 From: Jaehoon Chung Date: Thu, 23 Jul 2020 19:09:13 +0900 Subject: [PATCH 07/16] ARM: dts: bcm2711-rpi-4-b: add non-removable property about sd-card Add non-removable property about sd-card. Tizen doesn't consider about booting to other device. It can be assumed that SD-card is non-removable storage. When broken-cd is enabled, it's always polling to check SD-card. - Remove broken-cd property. Change-Id: I269e39f708362e03f219632eba592701907b71aa Signed-off-by: Jaehoon Chung --- arch/arm/boot/dts/bcm2711-rpi-4-b.dts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/arm/boot/dts/bcm2711-rpi-4-b.dts b/arch/arm/boot/dts/bcm2711-rpi-4-b.dts index 043eda0..3edc927 100644 --- a/arch/arm/boot/dts/bcm2711-rpi-4-b.dts +++ b/arch/arm/boot/dts/bcm2711-rpi-4-b.dts @@ -281,7 +281,6 @@ clocks = <&clocks BCM2711_CLOCK_EMMC2>; reg = <0x0 0x7e340000 0x100>; vqmmc-supply = <&sd_io_1v8_reg>; - broken-cd; }; }; @@ -592,6 +591,7 @@ &emmc2 { vmmc-supply = <&sd_vcc_reg>; + non-removable; }; &phy1 { -- 2.7.4 From 7910ee05e9639da886002cfc93a5513c3b568db8 Mon Sep 17 00:00:00 2001 From: Jim Quinlan Date: Mon, 16 Dec 2019 18:08:02 -0500 Subject: [PATCH 08/16] spi: bcm2835: no dev_err() on clk_get() -EPROBE_DEFER Use dev_dbg() on -EPROBE_DEFER and dev_err() on all other errors. Signed-off-by: Jim Quinlan Reviewed-by: Florian Fainelli Reviewed-by: Nicolas Saenz Julienne Link: https://lore.kernel.org/r/20191216230802.45715-2-jquinlan@broadcom.com Signed-off-by: Mark Brown [sw0312.kim: cherry-pick mainline commit f4dc4abdce4c to remove unnecessary message] Signed-off-by: Seung-Woo Kim Change-Id: I43fda55a507e6f1371ed1fe33756d6fe823cfd2a --- drivers/spi/spi-bcm2835.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/drivers/spi/spi-bcm2835.c b/drivers/spi/spi-bcm2835.c index 6899558..6afb653 100644 --- a/drivers/spi/spi-bcm2835.c +++ b/drivers/spi/spi-bcm2835.c @@ -1309,7 +1309,10 @@ static int bcm2835_spi_probe(struct platform_device *pdev) bs->clk = devm_clk_get(&pdev->dev, NULL); if (IS_ERR(bs->clk)) { err = PTR_ERR(bs->clk); - dev_err(&pdev->dev, "could not get clk: %d\n", err); + if (err == -EPROBE_DEFER) + dev_dbg(&pdev->dev, "could not get clk: %d\n", err); + else + dev_err(&pdev->dev, "could not get clk: %d\n", err); goto out_controller_put; } -- 2.7.4 From bab3442070cb551d36da1519e243bbe07523053b Mon Sep 17 00:00:00 2001 From: Seung-Woo Kim Date: Fri, 24 Jul 2020 13:11:08 +0900 Subject: [PATCH 09/16] ASoC: bcm2835: Silence clk_get() error on -EPROBE_DEFER Silence clk_get() error with dev_dbg() on -EPROBE_DEFER. Signed-off-by: Seung-Woo Kim [sw0312.kim: post on mainline, https://patchwork.kernel.org/patch/11687251/ and apply] Change-Id: I770815bd80af8ee0fa856f14d5d075d9471208c7 --- sound/soc/bcm/bcm2835-i2s.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/sound/soc/bcm/bcm2835-i2s.c b/sound/soc/bcm/bcm2835-i2s.c index e6a12e2..66b895e 100644 --- a/sound/soc/bcm/bcm2835-i2s.c +++ b/sound/soc/bcm/bcm2835-i2s.c @@ -841,9 +841,12 @@ static int bcm2835_i2s_probe(struct platform_device *pdev) dev->clk_prepared = false; dev->clk = devm_clk_get(&pdev->dev, NULL); if (IS_ERR(dev->clk)) { - dev_err(&pdev->dev, "could not get clk: %ld\n", - PTR_ERR(dev->clk)); - return PTR_ERR(dev->clk); + ret = PTR_ERR(dev->clk); + if (ret == -EPROBE_DEFER) + dev_dbg(&pdev->dev, "could not get clk: %d\n", ret); + else + dev_err(&pdev->dev, "could not get clk: %d\n", ret); + return ret; } /* Request ioarea */ -- 2.7.4 From 00945145fed698562446a5cbbd64234a1d231c3c Mon Sep 17 00:00:00 2001 From: Hoegeun Kwon Date: Mon, 27 Jul 2020 21:35:01 +0900 Subject: [PATCH 10/16] clk: rpi: Add register to control pixel bvb clk To use QHD or higher, we need to modify the pixel_bvb_clk value. So add register to control this clock. Change-Id: Ie6a37bba8b6872f8007ab20a370f268f3766711f Signed-off-by: Hoegeun Kwon --- drivers/clk/bcm/clk-raspberrypi.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/clk/bcm/clk-raspberrypi.c b/drivers/clk/bcm/clk-raspberrypi.c index cb87980..42db560 100644 --- a/drivers/clk/bcm/clk-raspberrypi.c +++ b/drivers/clk/bcm/clk-raspberrypi.c @@ -273,6 +273,7 @@ static int raspberrypi_discover_clocks(struct raspberrypi_clk *rpi, case RPI_FIRMWARE_CORE_CLK_ID: case RPI_FIRMWARE_M2MC_CLK_ID: case RPI_FIRMWARE_V3D_CLK_ID: + case RPI_FIRMWARE_PIXEL_BVB_CLK_ID: hw = raspberrypi_clk_register(rpi, clks->parent, clks->id); if (IS_ERR(hw)) -- 2.7.4 From 09b743aae749e6b012e1f64454b63d265a20e5d0 Mon Sep 17 00:00:00 2001 From: Hoegeun Kwon Date: Mon, 27 Jul 2020 21:36:02 +0900 Subject: [PATCH 11/16] ARM: dts: bcm2711: Add bvb clock for hdmi-pixel It is necessary to control the hdmi pixel bvb clock. Add bvb clock. Change-Id: I8d8eedd31eb6b3ceabc5ef98c2312c28664f9046 Signed-off-by: Hoegeun Kwon --- arch/arm/boot/dts/bcm2711.dtsi | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/arch/arm/boot/dts/bcm2711.dtsi b/arch/arm/boot/dts/bcm2711.dtsi index 9cff3f6..c979b10 100644 --- a/arch/arm/boot/dts/bcm2711.dtsi +++ b/arch/arm/boot/dts/bcm2711.dtsi @@ -333,8 +333,8 @@ "cec", "hd", "intr2"; - clocks = <&firmware_clocks 13>; - clock-names = "hdmi"; + clocks = <&firmware_clocks 13>, <&firmware_clocks 14>; + clock-names = "hdmi", "bvb"; resets = <&dvp 0>; ddc = <&ddc0>; dmas = <&dma 10>; @@ -374,8 +374,8 @@ "hd", "intr2"; ddc = <&ddc1>; - clocks = <&firmware_clocks 13>; - clock-names = "hdmi"; + clocks = <&firmware_clocks 13>, <&firmware_clocks 14>; + clock-names = "hdmi", "bvb"; resets = <&dvp 1>; interrupts = ; status = "disabled"; -- 2.7.4 From 397e4fff9aba5b168a20e6dc9132ab7d999a08aa Mon Sep 17 00:00:00 2001 From: Hoegeun Kwon Date: Mon, 27 Jul 2020 21:37:18 +0900 Subject: [PATCH 12/16] drm/vc4: hdmi: Add pixel bvb clock control There is a problem that the output does not work at a resolution exceeding FHD. To solve this, we need to adjust the bvb clock at a resolution exceeding FHD. Change-Id: I488cbf5c9ec90e6429833edd94f8fe7e5e57bfdf Signed-off-by: Hoegeun Kwon --- drivers/gpu/drm/vc4/vc4_hdmi.c | 25 +++++++++++++++++++++++++ drivers/gpu/drm/vc4/vc4_hdmi.h | 1 + 2 files changed, 26 insertions(+) diff --git a/drivers/gpu/drm/vc4/vc4_hdmi.c b/drivers/gpu/drm/vc4/vc4_hdmi.c index 200f30b..da9fce5 100644 --- a/drivers/gpu/drm/vc4/vc4_hdmi.c +++ b/drivers/gpu/drm/vc4/vc4_hdmi.c @@ -81,6 +81,7 @@ #define CEC_CLOCK_FREQ 40000 #define VC4_HSM_CLOCK 163682864 +#define VC4_HSM_MID_CLOCK 149985000 static int vc4_hdmi_debugfs_regs(struct seq_file *m, void *unused) { @@ -393,6 +394,7 @@ static void vc4_hdmi_encoder_disable(struct drm_encoder *encoder) HDMI_WRITE(HDMI_VID_CTL, HDMI_READ(HDMI_VID_CTL) & ~VC4_HD_VID_CTL_ENABLE); + clk_disable_unprepare(vc4_hdmi->pixel_bvb_clock); clk_disable_unprepare(vc4_hdmi->hsm_clock); clk_disable_unprepare(vc4_hdmi->pixel_clock); @@ -618,6 +620,23 @@ static void vc4_hdmi_encoder_enable(struct drm_encoder *encoder) return; } + ret = clk_set_rate(vc4_hdmi->pixel_bvb_clock, + (hsm_rate > VC4_HSM_MID_CLOCK ? 150000000 : 75000000)); + if (ret) { + DRM_ERROR("Failed to set pixel bvb clock rate: %d\n", ret); + clk_disable_unprepare(vc4_hdmi->hsm_clock); + clk_disable_unprepare(vc4_hdmi->pixel_clock); + return; + } + + ret = clk_prepare_enable(vc4_hdmi->pixel_bvb_clock); + if (ret) { + DRM_ERROR("Failed to turn on pixel bvb clock: %d\n", ret); + clk_disable_unprepare(vc4_hdmi->hsm_clock); + clk_disable_unprepare(vc4_hdmi->pixel_clock); + return; + } + if (vc4_hdmi->variant->reset) vc4_hdmi->variant->reset(vc4_hdmi); @@ -1651,6 +1670,12 @@ static int vc5_hdmi_init_resources(struct vc4_hdmi *vc4_hdmi) return PTR_ERR(vc4_hdmi->reset); } + vc4_hdmi->pixel_bvb_clock = devm_clk_get(dev, "bvb"); + if (IS_ERR(vc4_hdmi->pixel_bvb_clock)) { + DRM_ERROR("Failed to get pixel bvb clock\n"); + return PTR_ERR(vc4_hdmi->pixel_bvb_clock); + } + return 0; } diff --git a/drivers/gpu/drm/vc4/vc4_hdmi.h b/drivers/gpu/drm/vc4/vc4_hdmi.h index c3125587..9970e53 100644 --- a/drivers/gpu/drm/vc4/vc4_hdmi.h +++ b/drivers/gpu/drm/vc4/vc4_hdmi.h @@ -160,6 +160,7 @@ struct vc4_hdmi { struct clk *pixel_clock; struct clk *hsm_clock; + struct clk *pixel_bvb_clock; struct reset_control *reset; -- 2.7.4 From 884289734e9e1a63edb16ef5c502e85c6307a1b3 Mon Sep 17 00:00:00 2001 From: Seung-Woo Kim Date: Tue, 28 Jul 2020 18:38:42 +0900 Subject: [PATCH 13/16] ARM: configs: tizen_bcm2711_defconfig: Disable unused dwcotg In rpi4, usb dwc2 is used for usb peripheral port. Disable unused dwcotg driver. Change-Id: I89196a59929c1e5dedcf31dd81acaef3c07f2043 Signed-off-by: Seung-Woo Kim --- arch/arm/configs/tizen_bcm2711_defconfig | 1 - 1 file changed, 1 deletion(-) diff --git a/arch/arm/configs/tizen_bcm2711_defconfig b/arch/arm/configs/tizen_bcm2711_defconfig index 9b21d75..7557de2 100644 --- a/arch/arm/configs/tizen_bcm2711_defconfig +++ b/arch/arm/configs/tizen_bcm2711_defconfig @@ -370,7 +370,6 @@ CONFIG_USB=y CONFIG_USB_ANNOUNCE_NEW_DEVICES=y CONFIG_USB_XHCI_HCD=y CONFIG_USB_XHCI_PLATFORM=y -CONFIG_USB_DWCOTG=y CONFIG_USB_ACM=m CONFIG_USB_STORAGE=y CONFIG_USB_UAS=y -- 2.7.4 From d9cb37a2980ba3fdef90fc46de3a14ea1d8d33e9 Mon Sep 17 00:00:00 2001 From: Seung-Woo Kim Date: Tue, 28 Jul 2020 18:40:06 +0900 Subject: [PATCH 14/16] ARM64: configs: tizen_bcm2711_defconfig: Disable unused dwcotg In rpi4, usb dwc2 is used for usb peripheral port. Disable unused dwcotg driver. Change-Id: I3488508db5925f28d95dc2687814f061f2430622 Signed-off-by: Seung-Woo Kim --- arch/arm64/configs/tizen_bcm2711_defconfig | 1 - 1 file changed, 1 deletion(-) diff --git a/arch/arm64/configs/tizen_bcm2711_defconfig b/arch/arm64/configs/tizen_bcm2711_defconfig index 1f4c5c1..e3bf4a0 100644 --- a/arch/arm64/configs/tizen_bcm2711_defconfig +++ b/arch/arm64/configs/tizen_bcm2711_defconfig @@ -353,7 +353,6 @@ CONFIG_USB=y CONFIG_USB_ANNOUNCE_NEW_DEVICES=y CONFIG_USB_XHCI_HCD=y CONFIG_USB_XHCI_PLATFORM=y -CONFIG_USB_DWCOTG=y CONFIG_USB_ACM=m CONFIG_USB_STORAGE=y CONFIG_USB_UAS=y -- 2.7.4 From 3bb0bab7350e9d3e46ed164e179f0b69fbba7cc1 Mon Sep 17 00:00:00 2001 From: Jaehoon Chung Date: Mon, 3 Aug 2020 14:45:35 +0900 Subject: [PATCH 15/16] Revert "brcmfmac: move configuration of probe request IEs" This reverts commit bd99a3013bdc00f8fc7534c657b39616792b4467. It doesn't find any p2p-device with wpa_supplicant on Tizen. - After reverted this, it's working fine. Change-Id: I5fa0924e888b91fef17ac3d174ee2a2e49d5e5a6 Signed-off-by: Jaehoon Chung --- drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c | 5 ----- drivers/net/wireless/broadcom/brcm80211/brcmfmac/p2p.c | 6 ++++-- 2 files changed, 4 insertions(+), 7 deletions(-) diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c index 2b725af..8eb56d9 100644 --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c @@ -1129,11 +1129,6 @@ brcmf_cfg80211_scan(struct wiphy *wiphy, struct cfg80211_scan_request *request) if (err) goto scan_out; - err = brcmf_vif_set_mgmt_ie(vif, BRCMF_VNDR_IE_PRBREQ_FLAG, - request->ie, request->ie_len); - if (err) - goto scan_out; - err = brcmf_do_escan(vif->ifp, request); if (err) goto scan_out; diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/p2p.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/p2p.c index 1f5deea..4421bf6 100644 --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/p2p.c +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/p2p.c @@ -872,7 +872,7 @@ int brcmf_p2p_scan_prep(struct wiphy *wiphy, { struct brcmf_cfg80211_info *cfg = wiphy_to_cfg(wiphy); struct brcmf_p2p_info *p2p = &cfg->p2p; - int err; + int err = 0; if (brcmf_p2p_scan_is_p2p_request(request)) { /* find my listen channel */ @@ -895,7 +895,9 @@ int brcmf_p2p_scan_prep(struct wiphy *wiphy, /* override .run_escan() callback. */ cfg->escan_info.run = brcmf_p2p_run_escan; } - return 0; + err = brcmf_vif_set_mgmt_ie(vif, BRCMF_VNDR_IE_PRBREQ_FLAG, + request->ie, request->ie_len); + return err; } -- 2.7.4 From f643c9fa8706284868003f2f376d51dd0383b4b3 Mon Sep 17 00:00:00 2001 From: Hoegeun Kwon Date: Mon, 3 Aug 2020 14:28:50 +0900 Subject: [PATCH 16/16] ARM: dts: bcm2711-rpi-4-b: Fix CMA size to 512M Increase cma size to 512 for use 4k GL on tizen platform. When using RPI4 1GB model + 4k UHD, reclaim occurs a lot and it is slow. Change-Id: I672b5be8df8d51a47e50eea04e445529568474ff Signed-off-by: Hoegeun Kwon --- arch/arm/boot/dts/bcm2711-rpi-4-b.dts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/arm/boot/dts/bcm2711-rpi-4-b.dts b/arch/arm/boot/dts/bcm2711-rpi-4-b.dts index 3edc927..e57ed05 100644 --- a/arch/arm/boot/dts/bcm2711-rpi-4-b.dts +++ b/arch/arm/boot/dts/bcm2711-rpi-4-b.dts @@ -704,7 +704,7 @@ }; &cma { - size = <0x10000000>; /* 256MB */ + size = <0x20000000>; /* 512MB */ }; / { -- 2.7.4