* [PATCH v6 1/6] dt-bindings: gpu: v3d: Add BCM2711's compatible
2022-06-03 9:26 [PATCH v6 0/6] Raspberry PI 4 V3D enablement Peter Robinson
@ 2022-06-03 9:26 ` Peter Robinson
2022-06-03 9:26 ` [PATCH v6 2/6] drm/v3d: Get rid of pm code Peter Robinson
` (6 subsequent siblings)
7 siblings, 0 replies; 21+ messages in thread
From: Peter Robinson @ 2022-06-03 9:26 UTC (permalink / raw)
To: Arnd Bergmann, bcm-kernel-feedback-list, Daniel Vetter,
David Airlie, devicetree, dri-devel, Emma Anholt,
Florian Fainelli, javierm, linux-arm-kernel, linux-rpi-kernel,
maxime, Nicolas Saenz Julienne, Rob Herring, Stefan Wahren,
Catalin Marinas, Will Deacon
Cc: Peter Robinson, Nicolas Saenz Julienne, Rob Herring
BCM2711, Raspberry Pi 4's SoC, contains a V3D core. So add its specific
compatible to the bindings.
Signed-off-by: Nicolas Saenz Julienne <nsaenzjulienne@suse.de>
Signed-off-by: Peter Robinson <pbrobinson@gmail.com>
Reviewed-by: Stefan Wahren <stefan.wahren@i2se.com>
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com>
Acked-by: Rob Herring <robh@kernel.org>
---
Changes since v4:
- Change compatible to align downstream and other HW, reorder to suit
Documentation/devicetree/bindings/gpu/brcm,bcm-v3d.yaml | 1 +
1 file changed, 1 insertion(+)
diff --git a/Documentation/devicetree/bindings/gpu/brcm,bcm-v3d.yaml b/Documentation/devicetree/bindings/gpu/brcm,bcm-v3d.yaml
index e6485f7b046f..217c42874f41 100644
--- a/Documentation/devicetree/bindings/gpu/brcm,bcm-v3d.yaml
+++ b/Documentation/devicetree/bindings/gpu/brcm,bcm-v3d.yaml
@@ -16,6 +16,7 @@ properties:
compatible:
enum:
+ - brcm,2711-v3d
- brcm,7268-v3d
- brcm,7278-v3d
--
2.36.1
^ permalink raw reply related [flat|nested] 21+ messages in thread
* [PATCH v6 2/6] drm/v3d: Get rid of pm code
2022-06-03 9:26 [PATCH v6 0/6] Raspberry PI 4 V3D enablement Peter Robinson
2022-06-03 9:26 ` [PATCH v6 1/6] dt-bindings: gpu: v3d: Add BCM2711's compatible Peter Robinson
@ 2022-06-03 9:26 ` Peter Robinson
2022-06-03 11:29 ` Melissa Wen
2022-06-03 9:26 ` [PATCH v6 3/6] drm/v3d: Add support for bcm2711 Peter Robinson
` (5 subsequent siblings)
7 siblings, 1 reply; 21+ messages in thread
From: Peter Robinson @ 2022-06-03 9:26 UTC (permalink / raw)
To: Arnd Bergmann, bcm-kernel-feedback-list, Daniel Vetter,
David Airlie, devicetree, dri-devel, Emma Anholt,
Florian Fainelli, javierm, linux-arm-kernel, linux-rpi-kernel,
maxime, Nicolas Saenz Julienne, Rob Herring, Stefan Wahren,
Catalin Marinas, Will Deacon
Cc: Peter Robinson, Nicolas Saenz Julienne
Runtime PM doesn't seem to work correctly on this driver. On top of
that, commit 8b6864e3e138 ("drm/v3d/v3d_drv: Remove unused static
variable 'v3d_v3d_pm_ops'") hints that it most likely never did as the
driver's PM ops were not hooked-up.
So, in order to support regular operation with V3D on BCM2711 (Raspberry
Pi 4), get rid of the PM code. PM will be reinstated once we figure out
the underlying issues.
Signed-off-by: Nicolas Saenz Julienne <nsaenzjulienne@suse.de>
Signed-off-by: Peter Robinson <pbrobinson@gmail.com>
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com>
---
Changes since v4:
- Rebase
Changes since v3:
- Minor updates for rebase
drivers/gpu/drm/v3d/v3d_debugfs.c | 18 +-----------------
drivers/gpu/drm/v3d/v3d_drv.c | 11 -----------
drivers/gpu/drm/v3d/v3d_gem.c | 12 +-----------
3 files changed, 2 insertions(+), 39 deletions(-)
diff --git a/drivers/gpu/drm/v3d/v3d_debugfs.c b/drivers/gpu/drm/v3d/v3d_debugfs.c
index 29fd13109e43..efbde124c296 100644
--- a/drivers/gpu/drm/v3d/v3d_debugfs.c
+++ b/drivers/gpu/drm/v3d/v3d_debugfs.c
@@ -4,7 +4,6 @@
#include <linux/circ_buf.h>
#include <linux/ctype.h>
#include <linux/debugfs.h>
-#include <linux/pm_runtime.h>
#include <linux/seq_file.h>
#include <linux/string_helpers.h>
@@ -131,11 +130,7 @@ static int v3d_v3d_debugfs_ident(struct seq_file *m, void *unused)
struct drm_device *dev = node->minor->dev;
struct v3d_dev *v3d = to_v3d_dev(dev);
u32 ident0, ident1, ident2, ident3, cores;
- int ret, core;
-
- ret = pm_runtime_get_sync(v3d->drm.dev);
- if (ret < 0)
- return ret;
+ int core;
ident0 = V3D_READ(V3D_HUB_IDENT0);
ident1 = V3D_READ(V3D_HUB_IDENT1);
@@ -188,9 +183,6 @@ static int v3d_v3d_debugfs_ident(struct seq_file *m, void *unused)
(misccfg & V3D_MISCCFG_OVRTMUOUT) != 0);
}
- pm_runtime_mark_last_busy(v3d->drm.dev);
- pm_runtime_put_autosuspend(v3d->drm.dev);
-
return 0;
}
@@ -218,11 +210,6 @@ static int v3d_measure_clock(struct seq_file *m, void *unused)
uint32_t cycles;
int core = 0;
int measure_ms = 1000;
- int ret;
-
- ret = pm_runtime_get_sync(v3d->drm.dev);
- if (ret < 0)
- return ret;
if (v3d->ver >= 40) {
V3D_CORE_WRITE(core, V3D_V4_PCTR_0_SRC_0_3,
@@ -246,9 +233,6 @@ static int v3d_measure_clock(struct seq_file *m, void *unused)
cycles / (measure_ms * 1000),
(cycles / (measure_ms * 100)) % 10);
- pm_runtime_mark_last_busy(v3d->drm.dev);
- pm_runtime_put_autosuspend(v3d->drm.dev);
-
return 0;
}
diff --git a/drivers/gpu/drm/v3d/v3d_drv.c b/drivers/gpu/drm/v3d/v3d_drv.c
index 1afcd54fbbd5..56d5f831e48b 100644
--- a/drivers/gpu/drm/v3d/v3d_drv.c
+++ b/drivers/gpu/drm/v3d/v3d_drv.c
@@ -19,7 +19,6 @@
#include <linux/module.h>
#include <linux/of_platform.h>
#include <linux/platform_device.h>
-#include <linux/pm_runtime.h>
#include <linux/reset.h>
#include <drm/drm_drv.h>
@@ -43,7 +42,6 @@ static int v3d_get_param_ioctl(struct drm_device *dev, void *data,
{
struct v3d_dev *v3d = to_v3d_dev(dev);
struct drm_v3d_get_param *args = data;
- int ret;
static const u32 reg_map[] = {
[DRM_V3D_PARAM_V3D_UIFCFG] = V3D_HUB_UIFCFG,
[DRM_V3D_PARAM_V3D_HUB_IDENT1] = V3D_HUB_IDENT1,
@@ -69,17 +67,12 @@ static int v3d_get_param_ioctl(struct drm_device *dev, void *data,
if (args->value != 0)
return -EINVAL;
- ret = pm_runtime_get_sync(v3d->drm.dev);
- if (ret < 0)
- return ret;
if (args->param >= DRM_V3D_PARAM_V3D_CORE0_IDENT0 &&
args->param <= DRM_V3D_PARAM_V3D_CORE0_IDENT2) {
args->value = V3D_CORE_READ(0, offset);
} else {
args->value = V3D_READ(offset);
}
- pm_runtime_mark_last_busy(v3d->drm.dev);
- pm_runtime_put_autosuspend(v3d->drm.dev);
return 0;
}
@@ -280,10 +273,6 @@ static int v3d_platform_drm_probe(struct platform_device *pdev)
return -ENOMEM;
}
- pm_runtime_use_autosuspend(dev);
- pm_runtime_set_autosuspend_delay(dev, 50);
- pm_runtime_enable(dev);
-
ret = v3d_gem_init(drm);
if (ret)
goto dma_free;
diff --git a/drivers/gpu/drm/v3d/v3d_gem.c b/drivers/gpu/drm/v3d/v3d_gem.c
index 92bc0faee84f..7026214a09f0 100644
--- a/drivers/gpu/drm/v3d/v3d_gem.c
+++ b/drivers/gpu/drm/v3d/v3d_gem.c
@@ -6,7 +6,6 @@
#include <linux/io.h>
#include <linux/module.h>
#include <linux/platform_device.h>
-#include <linux/pm_runtime.h>
#include <linux/reset.h>
#include <linux/sched/signal.h>
#include <linux/uaccess.h>
@@ -367,9 +366,6 @@ v3d_job_free(struct kref *ref)
dma_fence_put(job->irq_fence);
dma_fence_put(job->done_fence);
- pm_runtime_mark_last_busy(job->v3d->drm.dev);
- pm_runtime_put_autosuspend(job->v3d->drm.dev);
-
if (job->perfmon)
v3d_perfmon_put(job->perfmon);
@@ -471,14 +467,10 @@ v3d_job_init(struct v3d_dev *v3d, struct drm_file *file_priv,
job->v3d = v3d;
job->free = free;
- ret = pm_runtime_get_sync(v3d->drm.dev);
- if (ret < 0)
- goto fail;
-
ret = drm_sched_job_init(&job->base, &v3d_priv->sched_entity[queue],
v3d_priv);
if (ret)
- goto fail_job;
+ goto fail;
if (has_multisync) {
if (se->in_sync_count && se->wait_stage == queue) {
@@ -509,8 +501,6 @@ v3d_job_init(struct v3d_dev *v3d, struct drm_file *file_priv,
fail_deps:
drm_sched_job_cleanup(&job->base);
-fail_job:
- pm_runtime_put_autosuspend(v3d->drm.dev);
fail:
kfree(*container);
*container = NULL;
--
2.36.1
^ permalink raw reply related [flat|nested] 21+ messages in thread
* Re: [PATCH v6 2/6] drm/v3d: Get rid of pm code
2022-06-03 9:26 ` [PATCH v6 2/6] drm/v3d: Get rid of pm code Peter Robinson
@ 2022-06-03 11:29 ` Melissa Wen
0 siblings, 0 replies; 21+ messages in thread
From: Melissa Wen @ 2022-06-03 11:29 UTC (permalink / raw)
To: Peter Robinson
Cc: Arnd Bergmann, bcm-kernel-feedback-list, Daniel Vetter,
David Airlie, devicetree, dri-devel, Emma Anholt,
Florian Fainelli, javierm, linux-arm-kernel, linux-rpi-kernel,
maxime, Nicolas Saenz Julienne, Rob Herring, Stefan Wahren,
Catalin Marinas, Will Deacon, Nicolas Saenz Julienne
[-- Attachment #1: Type: text/plain, Size: 6249 bytes --]
On 06/03, Peter Robinson wrote:
> Runtime PM doesn't seem to work correctly on this driver. On top of
> that, commit 8b6864e3e138 ("drm/v3d/v3d_drv: Remove unused static
> variable 'v3d_v3d_pm_ops'") hints that it most likely never did as the
> driver's PM ops were not hooked-up.
>
> So, in order to support regular operation with V3D on BCM2711 (Raspberry
> Pi 4), get rid of the PM code. PM will be reinstated once we figure out
> the underlying issues.
I've spent some time trying to get PM working properly on RPi4, but I
haven´t gotten good results yet, and all attempts ended up disabling the
auto suspend option somehow. Keeping in mind how long this has been
unresolved, I agree to clean it now as we continue to investigate the
issue.
Acked-by: Melissa Wen <mwen@igalia.com>
>
> Signed-off-by: Nicolas Saenz Julienne <nsaenzjulienne@suse.de>
> Signed-off-by: Peter Robinson <pbrobinson@gmail.com>
> Reviewed-by: Javier Martinez Canillas <javierm@redhat.com>
> ---
> Changes since v4:
> - Rebase
>
> Changes since v3:
> - Minor updates for rebase
>
> drivers/gpu/drm/v3d/v3d_debugfs.c | 18 +-----------------
> drivers/gpu/drm/v3d/v3d_drv.c | 11 -----------
> drivers/gpu/drm/v3d/v3d_gem.c | 12 +-----------
> 3 files changed, 2 insertions(+), 39 deletions(-)
>
> diff --git a/drivers/gpu/drm/v3d/v3d_debugfs.c b/drivers/gpu/drm/v3d/v3d_debugfs.c
> index 29fd13109e43..efbde124c296 100644
> --- a/drivers/gpu/drm/v3d/v3d_debugfs.c
> +++ b/drivers/gpu/drm/v3d/v3d_debugfs.c
> @@ -4,7 +4,6 @@
> #include <linux/circ_buf.h>
> #include <linux/ctype.h>
> #include <linux/debugfs.h>
> -#include <linux/pm_runtime.h>
> #include <linux/seq_file.h>
> #include <linux/string_helpers.h>
>
> @@ -131,11 +130,7 @@ static int v3d_v3d_debugfs_ident(struct seq_file *m, void *unused)
> struct drm_device *dev = node->minor->dev;
> struct v3d_dev *v3d = to_v3d_dev(dev);
> u32 ident0, ident1, ident2, ident3, cores;
> - int ret, core;
> -
> - ret = pm_runtime_get_sync(v3d->drm.dev);
> - if (ret < 0)
> - return ret;
> + int core;
>
> ident0 = V3D_READ(V3D_HUB_IDENT0);
> ident1 = V3D_READ(V3D_HUB_IDENT1);
> @@ -188,9 +183,6 @@ static int v3d_v3d_debugfs_ident(struct seq_file *m, void *unused)
> (misccfg & V3D_MISCCFG_OVRTMUOUT) != 0);
> }
>
> - pm_runtime_mark_last_busy(v3d->drm.dev);
> - pm_runtime_put_autosuspend(v3d->drm.dev);
> -
> return 0;
> }
>
> @@ -218,11 +210,6 @@ static int v3d_measure_clock(struct seq_file *m, void *unused)
> uint32_t cycles;
> int core = 0;
> int measure_ms = 1000;
> - int ret;
> -
> - ret = pm_runtime_get_sync(v3d->drm.dev);
> - if (ret < 0)
> - return ret;
>
> if (v3d->ver >= 40) {
> V3D_CORE_WRITE(core, V3D_V4_PCTR_0_SRC_0_3,
> @@ -246,9 +233,6 @@ static int v3d_measure_clock(struct seq_file *m, void *unused)
> cycles / (measure_ms * 1000),
> (cycles / (measure_ms * 100)) % 10);
>
> - pm_runtime_mark_last_busy(v3d->drm.dev);
> - pm_runtime_put_autosuspend(v3d->drm.dev);
> -
> return 0;
> }
>
> diff --git a/drivers/gpu/drm/v3d/v3d_drv.c b/drivers/gpu/drm/v3d/v3d_drv.c
> index 1afcd54fbbd5..56d5f831e48b 100644
> --- a/drivers/gpu/drm/v3d/v3d_drv.c
> +++ b/drivers/gpu/drm/v3d/v3d_drv.c
> @@ -19,7 +19,6 @@
> #include <linux/module.h>
> #include <linux/of_platform.h>
> #include <linux/platform_device.h>
> -#include <linux/pm_runtime.h>
> #include <linux/reset.h>
>
> #include <drm/drm_drv.h>
> @@ -43,7 +42,6 @@ static int v3d_get_param_ioctl(struct drm_device *dev, void *data,
> {
> struct v3d_dev *v3d = to_v3d_dev(dev);
> struct drm_v3d_get_param *args = data;
> - int ret;
> static const u32 reg_map[] = {
> [DRM_V3D_PARAM_V3D_UIFCFG] = V3D_HUB_UIFCFG,
> [DRM_V3D_PARAM_V3D_HUB_IDENT1] = V3D_HUB_IDENT1,
> @@ -69,17 +67,12 @@ static int v3d_get_param_ioctl(struct drm_device *dev, void *data,
> if (args->value != 0)
> return -EINVAL;
>
> - ret = pm_runtime_get_sync(v3d->drm.dev);
> - if (ret < 0)
> - return ret;
> if (args->param >= DRM_V3D_PARAM_V3D_CORE0_IDENT0 &&
> args->param <= DRM_V3D_PARAM_V3D_CORE0_IDENT2) {
> args->value = V3D_CORE_READ(0, offset);
> } else {
> args->value = V3D_READ(offset);
> }
> - pm_runtime_mark_last_busy(v3d->drm.dev);
> - pm_runtime_put_autosuspend(v3d->drm.dev);
> return 0;
> }
>
> @@ -280,10 +273,6 @@ static int v3d_platform_drm_probe(struct platform_device *pdev)
> return -ENOMEM;
> }
>
> - pm_runtime_use_autosuspend(dev);
> - pm_runtime_set_autosuspend_delay(dev, 50);
> - pm_runtime_enable(dev);
> -
> ret = v3d_gem_init(drm);
> if (ret)
> goto dma_free;
> diff --git a/drivers/gpu/drm/v3d/v3d_gem.c b/drivers/gpu/drm/v3d/v3d_gem.c
> index 92bc0faee84f..7026214a09f0 100644
> --- a/drivers/gpu/drm/v3d/v3d_gem.c
> +++ b/drivers/gpu/drm/v3d/v3d_gem.c
> @@ -6,7 +6,6 @@
> #include <linux/io.h>
> #include <linux/module.h>
> #include <linux/platform_device.h>
> -#include <linux/pm_runtime.h>
> #include <linux/reset.h>
> #include <linux/sched/signal.h>
> #include <linux/uaccess.h>
> @@ -367,9 +366,6 @@ v3d_job_free(struct kref *ref)
> dma_fence_put(job->irq_fence);
> dma_fence_put(job->done_fence);
>
> - pm_runtime_mark_last_busy(job->v3d->drm.dev);
> - pm_runtime_put_autosuspend(job->v3d->drm.dev);
> -
> if (job->perfmon)
> v3d_perfmon_put(job->perfmon);
>
> @@ -471,14 +467,10 @@ v3d_job_init(struct v3d_dev *v3d, struct drm_file *file_priv,
> job->v3d = v3d;
> job->free = free;
>
> - ret = pm_runtime_get_sync(v3d->drm.dev);
> - if (ret < 0)
> - goto fail;
> -
> ret = drm_sched_job_init(&job->base, &v3d_priv->sched_entity[queue],
> v3d_priv);
> if (ret)
> - goto fail_job;
> + goto fail;
>
> if (has_multisync) {
> if (se->in_sync_count && se->wait_stage == queue) {
> @@ -509,8 +501,6 @@ v3d_job_init(struct v3d_dev *v3d, struct drm_file *file_priv,
>
> fail_deps:
> drm_sched_job_cleanup(&job->base);
> -fail_job:
> - pm_runtime_put_autosuspend(v3d->drm.dev);
> fail:
> kfree(*container);
> *container = NULL;
> --
> 2.36.1
>
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 21+ messages in thread
* [PATCH v6 3/6] drm/v3d: Add support for bcm2711
2022-06-03 9:26 [PATCH v6 0/6] Raspberry PI 4 V3D enablement Peter Robinson
2022-06-03 9:26 ` [PATCH v6 1/6] dt-bindings: gpu: v3d: Add BCM2711's compatible Peter Robinson
2022-06-03 9:26 ` [PATCH v6 2/6] drm/v3d: Get rid of pm code Peter Robinson
@ 2022-06-03 9:26 ` Peter Robinson
2022-06-03 9:26 ` [PATCH v6 4/6] ARM: dts: bcm2711: Enable V3D Peter Robinson
` (4 subsequent siblings)
7 siblings, 0 replies; 21+ messages in thread
From: Peter Robinson @ 2022-06-03 9:26 UTC (permalink / raw)
To: Arnd Bergmann, bcm-kernel-feedback-list, Daniel Vetter,
David Airlie, devicetree, dri-devel, Emma Anholt,
Florian Fainelli, javierm, linux-arm-kernel, linux-rpi-kernel,
maxime, Nicolas Saenz Julienne, Rob Herring, Stefan Wahren,
Catalin Marinas, Will Deacon
Cc: Peter Robinson, Nicolas Saenz Julienne
Add compatible string and Kconfig options and help for bcm2711.
Signed-off-by: Nicolas Saenz Julienne <nsaenzjulienne@suse.de>
Signed-off-by: Peter Robinson <pbrobinson@gmail.com>
Reviewed-by: Stefan Wahren <stefan.wahren@i2se.com>
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com>
---
Changes since v5:
- Update help text to cover all supported SoCs
Changes since v4:
- Change compatible to align downstream and other HW, reorder to suit
drivers/gpu/drm/v3d/Kconfig | 5 +++--
drivers/gpu/drm/v3d/v3d_drv.c | 1 +
2 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/drivers/gpu/drm/v3d/Kconfig b/drivers/gpu/drm/v3d/Kconfig
index e973ec487484..ce62c5908e1d 100644
--- a/drivers/gpu/drm/v3d/Kconfig
+++ b/drivers/gpu/drm/v3d/Kconfig
@@ -1,7 +1,7 @@
# SPDX-License-Identifier: GPL-2.0-only
config DRM_V3D
tristate "Broadcom V3D 3.x and newer"
- depends on ARCH_BCM || ARCH_BRCMSTB || COMPILE_TEST
+ depends on ARCH_BCM || ARCH_BRCMSTB || ARCH_BCM2835 || COMPILE_TEST
depends on DRM
depends on COMMON_CLK
depends on MMU
@@ -9,4 +9,5 @@ config DRM_V3D
select DRM_GEM_SHMEM_HELPER
help
Choose this option if you have a system that has a Broadcom
- V3D 3.x or newer GPU, such as BCM7268.
+ V3D 3.x or newer GPUs. SoCs supported include the BCM2711,
+ BCM7268 and BCM7278.
diff --git a/drivers/gpu/drm/v3d/v3d_drv.c b/drivers/gpu/drm/v3d/v3d_drv.c
index 56d5f831e48b..8c7f910daa28 100644
--- a/drivers/gpu/drm/v3d/v3d_drv.c
+++ b/drivers/gpu/drm/v3d/v3d_drv.c
@@ -191,6 +191,7 @@ static const struct drm_driver v3d_drm_driver = {
};
static const struct of_device_id v3d_of_match[] = {
+ { .compatible = "brcm,2711-v3d" },
{ .compatible = "brcm,7268-v3d" },
{ .compatible = "brcm,7278-v3d" },
{},
--
2.36.1
^ permalink raw reply related [flat|nested] 21+ messages in thread
* [PATCH v6 4/6] ARM: dts: bcm2711: Enable V3D
2022-06-03 9:26 [PATCH v6 0/6] Raspberry PI 4 V3D enablement Peter Robinson
` (2 preceding siblings ...)
2022-06-03 9:26 ` [PATCH v6 3/6] drm/v3d: Add support for bcm2711 Peter Robinson
@ 2022-06-03 9:26 ` Peter Robinson
2022-06-13 17:07 ` Florian Fainelli
2022-06-03 9:26 ` [PATCH v6 5/6] ARM: configs: Enable DRM_V3D Peter Robinson
` (3 subsequent siblings)
7 siblings, 1 reply; 21+ messages in thread
From: Peter Robinson @ 2022-06-03 9:26 UTC (permalink / raw)
To: Arnd Bergmann, bcm-kernel-feedback-list, Daniel Vetter,
David Airlie, devicetree, dri-devel, Emma Anholt,
Florian Fainelli, javierm, linux-arm-kernel, linux-rpi-kernel,
maxime, Nicolas Saenz Julienne, Rob Herring, Stefan Wahren,
Catalin Marinas, Will Deacon
Cc: Peter Robinson, Nicolas Saenz Julienne
This adds the entry for V3D for bcm2711 (used in the Raspberry Pi 4)
and the associated firmware clock entry.
Signed-off-by: Nicolas Saenz Julienne <nsaenzjulienne@suse.de>
Signed-off-by: Peter Robinson <pbrobinson@gmail.com>
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com>
---
Changes since v5:
- Update the compatible to match the other updated ones
Changes since v4:
- Move the firmware clock to bcm2711-rpi.dtsi
arch/arm/boot/dts/bcm2711-rpi.dtsi | 4 ++++
arch/arm/boot/dts/bcm2711.dtsi | 11 +++++++++++
2 files changed, 15 insertions(+)
diff --git a/arch/arm/boot/dts/bcm2711-rpi.dtsi b/arch/arm/boot/dts/bcm2711-rpi.dtsi
index ca266c5d9f9b..98817a6675b9 100644
--- a/arch/arm/boot/dts/bcm2711-rpi.dtsi
+++ b/arch/arm/boot/dts/bcm2711-rpi.dtsi
@@ -69,6 +69,10 @@ blconfig: nvram@0 {
};
};
+&v3d {
+ clocks = <&firmware_clocks 5>;
+};
+
&vchiq {
interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>;
};
diff --git a/arch/arm/boot/dts/bcm2711.dtsi b/arch/arm/boot/dts/bcm2711.dtsi
index 89af57482bc8..20e6771e8b1f 100644
--- a/arch/arm/boot/dts/bcm2711.dtsi
+++ b/arch/arm/boot/dts/bcm2711.dtsi
@@ -601,6 +601,17 @@ genet_mdio: mdio@e14 {
#size-cells = <0x0>;
};
};
+
+ v3d: gpu@7ec00000 {
+ compatible = "brcm,2711-v3d";
+ reg = <0x0 0x7ec00000 0x4000>,
+ <0x0 0x7ec04000 0x4000>;
+ reg-names = "hub", "core0";
+
+ power-domains = <&pm BCM2835_POWER_DOMAIN_GRAFX_V3D>;
+ resets = <&pm BCM2835_RESET_V3D>;
+ interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>;
+ };
};
};
--
2.36.1
^ permalink raw reply related [flat|nested] 21+ messages in thread
* Re: [PATCH v6 4/6] ARM: dts: bcm2711: Enable V3D
2022-06-03 9:26 ` [PATCH v6 4/6] ARM: dts: bcm2711: Enable V3D Peter Robinson
@ 2022-06-13 17:07 ` Florian Fainelli
0 siblings, 0 replies; 21+ messages in thread
From: Florian Fainelli @ 2022-06-13 17:07 UTC (permalink / raw)
To: bcm-kernel-feedback-list, Peter Robinson, Arnd Bergmann,
Daniel Vetter, David Airlie, devicetree, dri-devel, Emma Anholt,
javierm, linux-arm-kernel, linux-rpi-kernel, maxime,
Nicolas Saenz Julienne, Rob Herring, Stefan Wahren,
Catalin Marinas, Will Deacon
Cc: Nicolas Saenz Julienne
On Fri, 3 Jun 2022 10:26:08 +0100, Peter Robinson <pbrobinson@gmail.com> wrote:
> This adds the entry for V3D for bcm2711 (used in the Raspberry Pi 4)
> and the associated firmware clock entry.
>
> Signed-off-by: Nicolas Saenz Julienne <nsaenzjulienne@suse.de>
> Signed-off-by: Peter Robinson <pbrobinson@gmail.com>
> Reviewed-by: Javier Martinez Canillas <javierm@redhat.com>
> ---
Applied to https://github.com/Broadcom/stblinux/commits/devicetree/next, thanks!
--
Florian
^ permalink raw reply [flat|nested] 21+ messages in thread
* [PATCH v6 5/6] ARM: configs: Enable DRM_V3D
2022-06-03 9:26 [PATCH v6 0/6] Raspberry PI 4 V3D enablement Peter Robinson
` (3 preceding siblings ...)
2022-06-03 9:26 ` [PATCH v6 4/6] ARM: dts: bcm2711: Enable V3D Peter Robinson
@ 2022-06-03 9:26 ` Peter Robinson
2022-06-13 17:08 ` Florian Fainelli
2022-06-03 9:26 ` [PATCH v6 6/6] arm64: config: " Peter Robinson
` (2 subsequent siblings)
7 siblings, 1 reply; 21+ messages in thread
From: Peter Robinson @ 2022-06-03 9:26 UTC (permalink / raw)
To: Arnd Bergmann, bcm-kernel-feedback-list, Daniel Vetter,
David Airlie, devicetree, dri-devel, Emma Anholt,
Florian Fainelli, javierm, linux-arm-kernel, linux-rpi-kernel,
maxime, Nicolas Saenz Julienne, Rob Herring, Stefan Wahren,
Catalin Marinas, Will Deacon
Cc: Peter Robinson, Nicolas Saenz Julienne
BCM2711, the SoC used on the Raspberry Pi 4 has a different 3D
render GPU IP than its predecessors. Enable it it on multi v7
and bcm2835 configs.
Signed-off-by: Nicolas Saenz Julienne <nsaenzjulienne@suse.de>
Signed-off-by: Peter Robinson <pbrobinson@gmail.com>
Reviewed-by: Stefan Wahren <stefan.wahren@i2se.com>
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com>
---
Changes since v4:
- Added to bcm2835_defconfig
arch/arm/configs/bcm2835_defconfig | 1 +
arch/arm/configs/multi_v7_defconfig | 1 +
2 files changed, 2 insertions(+)
diff --git a/arch/arm/configs/bcm2835_defconfig b/arch/arm/configs/bcm2835_defconfig
index a9ed79b7f871..9270512c14ea 100644
--- a/arch/arm/configs/bcm2835_defconfig
+++ b/arch/arm/configs/bcm2835_defconfig
@@ -106,6 +106,7 @@ CONFIG_REGULATOR_GPIO=y
CONFIG_MEDIA_SUPPORT=y
CONFIG_MEDIA_CAMERA_SUPPORT=y
CONFIG_DRM=y
+CONFIG_DRM_V3D=y
CONFIG_DRM_VC4=y
CONFIG_FB_SIMPLE=y
CONFIG_FRAMEBUFFER_CONSOLE=y
diff --git a/arch/arm/configs/multi_v7_defconfig b/arch/arm/configs/multi_v7_defconfig
index d6a6811f0539..e2db5cdc66b7 100644
--- a/arch/arm/configs/multi_v7_defconfig
+++ b/arch/arm/configs/multi_v7_defconfig
@@ -731,6 +731,7 @@ CONFIG_DRM_IMX_PARALLEL_DISPLAY=m
CONFIG_DRM_IMX_TVE=m
CONFIG_DRM_IMX_LDB=m
CONFIG_DRM_IMX_HDMI=m
+CONFIG_DRM_V3D=m
CONFIG_DRM_VC4=m
CONFIG_DRM_ETNAVIV=m
CONFIG_DRM_MXSFB=m
--
2.36.1
^ permalink raw reply related [flat|nested] 21+ messages in thread
* Re: [PATCH v6 5/6] ARM: configs: Enable DRM_V3D
2022-06-03 9:26 ` [PATCH v6 5/6] ARM: configs: Enable DRM_V3D Peter Robinson
@ 2022-06-13 17:08 ` Florian Fainelli
0 siblings, 0 replies; 21+ messages in thread
From: Florian Fainelli @ 2022-06-13 17:08 UTC (permalink / raw)
To: bcm-kernel-feedback-list, Peter Robinson, Arnd Bergmann,
Daniel Vetter, David Airlie, devicetree, dri-devel, Emma Anholt,
javierm, linux-arm-kernel, linux-rpi-kernel, maxime,
Nicolas Saenz Julienne, Rob Herring, Stefan Wahren,
Catalin Marinas, Will Deacon
Cc: Nicolas Saenz Julienne
On Fri, 3 Jun 2022 10:26:09 +0100, Peter Robinson <pbrobinson@gmail.com> wrote:
> BCM2711, the SoC used on the Raspberry Pi 4 has a different 3D
> render GPU IP than its predecessors. Enable it it on multi v7
> and bcm2835 configs.
>
> Signed-off-by: Nicolas Saenz Julienne <nsaenzjulienne@suse.de>
> Signed-off-by: Peter Robinson <pbrobinson@gmail.com>
> Reviewed-by: Stefan Wahren <stefan.wahren@i2se.com>
> Reviewed-by: Javier Martinez Canillas <javierm@redhat.com>
> ---
Applied to https://github.com/Broadcom/stblinux/commits/defconfig/next, thanks!
--
Florian
^ permalink raw reply [flat|nested] 21+ messages in thread
* [PATCH v6 6/6] arm64: config: Enable DRM_V3D
2022-06-03 9:26 [PATCH v6 0/6] Raspberry PI 4 V3D enablement Peter Robinson
` (4 preceding siblings ...)
2022-06-03 9:26 ` [PATCH v6 5/6] ARM: configs: Enable DRM_V3D Peter Robinson
@ 2022-06-03 9:26 ` Peter Robinson
2022-06-13 17:08 ` Florian Fainelli
2022-06-08 9:26 ` [PATCH v6 0/6] Raspberry PI 4 V3D enablement Florian Fainelli
2022-06-08 12:51 ` Melissa Wen
7 siblings, 1 reply; 21+ messages in thread
From: Peter Robinson @ 2022-06-03 9:26 UTC (permalink / raw)
To: Arnd Bergmann, bcm-kernel-feedback-list, Daniel Vetter,
David Airlie, devicetree, dri-devel, Emma Anholt,
Florian Fainelli, javierm, linux-arm-kernel, linux-rpi-kernel,
maxime, Nicolas Saenz Julienne, Rob Herring, Stefan Wahren,
Catalin Marinas, Will Deacon
Cc: Nicolas Saenz Julienne, Peter Robinson
From: Nicolas Saenz Julienne <nsaenzjulienne@suse.de>
BCM2711, the SoC used on the Raspberry Pi 4 has a different GPU than its
predecessors. Enable it.
Signed-off-by: Nicolas Saenz Julienne <nsaenzjulienne@suse.de>
Signed-off-by: Peter Robinson <pbrobinson@gmail.com>
Reviewed-by: Stefan Wahren <stefan.wahren@i2se.com>
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com>
---
arch/arm64/configs/defconfig | 1 +
1 file changed, 1 insertion(+)
diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig
index 50aa3d75ab4f..446bac1ef774 100644
--- a/arch/arm64/configs/defconfig
+++ b/arch/arm64/configs/defconfig
@@ -738,6 +738,7 @@ CONFIG_DRM_I2C_ADV7511_AUDIO=y
CONFIG_DRM_DW_HDMI_AHB_AUDIO=m
CONFIG_DRM_DW_HDMI_CEC=m
CONFIG_DRM_IMX_DCSS=m
+CONFIG_DRM_V3D=m
CONFIG_DRM_VC4=m
CONFIG_DRM_ETNAVIV=m
CONFIG_DRM_HISI_HIBMC=m
--
2.36.1
^ permalink raw reply related [flat|nested] 21+ messages in thread
* Re: [PATCH v6 6/6] arm64: config: Enable DRM_V3D
2022-06-03 9:26 ` [PATCH v6 6/6] arm64: config: " Peter Robinson
@ 2022-06-13 17:08 ` Florian Fainelli
0 siblings, 0 replies; 21+ messages in thread
From: Florian Fainelli @ 2022-06-13 17:08 UTC (permalink / raw)
To: bcm-kernel-feedback-list, Peter Robinson, Arnd Bergmann,
Daniel Vetter, David Airlie, devicetree, dri-devel, Emma Anholt,
javierm, linux-arm-kernel, linux-rpi-kernel, maxime,
Nicolas Saenz Julienne, Rob Herring, Stefan Wahren,
Catalin Marinas, Will Deacon
Cc: Nicolas Saenz Julienne
On Fri, 3 Jun 2022 10:26:10 +0100, Peter Robinson <pbrobinson@gmail.com> wrote:
> From: Nicolas Saenz Julienne <nsaenzjulienne@suse.de>
>
> BCM2711, the SoC used on the Raspberry Pi 4 has a different GPU than its
> predecessors. Enable it.
>
> Signed-off-by: Nicolas Saenz Julienne <nsaenzjulienne@suse.de>
> Signed-off-by: Peter Robinson <pbrobinson@gmail.com>
> Reviewed-by: Stefan Wahren <stefan.wahren@i2se.com>
> Reviewed-by: Javier Martinez Canillas <javierm@redhat.com>
> ---
Applied to https://github.com/Broadcom/stblinux/commits/devicetree-arm64/next, thanks!
--
Florian
^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [PATCH v6 0/6] Raspberry PI 4 V3D enablement
2022-06-03 9:26 [PATCH v6 0/6] Raspberry PI 4 V3D enablement Peter Robinson
` (5 preceding siblings ...)
2022-06-03 9:26 ` [PATCH v6 6/6] arm64: config: " Peter Robinson
@ 2022-06-08 9:26 ` Florian Fainelli
2022-06-08 12:23 ` Javier Martinez Canillas
2022-06-08 12:51 ` Melissa Wen
7 siblings, 1 reply; 21+ messages in thread
From: Florian Fainelli @ 2022-06-08 9:26 UTC (permalink / raw)
To: Peter Robinson, Arnd Bergmann, bcm-kernel-feedback-list,
Daniel Vetter, David Airlie, devicetree, dri-devel, Emma Anholt,
Florian Fainelli, javierm, linux-arm-kernel, linux-rpi-kernel,
maxime, Nicolas Saenz Julienne, Rob Herring, Stefan Wahren,
Catalin Marinas, Will Deacon
On 6/3/2022 11:26 AM, Peter Robinson wrote:
> This is a follow up from my v4 patchset. The power management pieces have
> been split out to a separate independent set of patches by Stefan [1]. This
> version 5 of the DRM patches are independent and given the V3D driver has
> been upstream for some time the two patches to enable it in defconfigs can
> be taken at anytime independent of the enablement for the Raspberry Pi 4.
>
> I've tested this using mesa 22.0.x and Wayland/Gnome on Fedora 36, it's
> more or less stable with basic testing.
>
> Changes since v5:
> - Update the DT compatible to match the others that were updated
> - Adjust the Kconfig help text
> - Add review tags
>
> Changes since v4:
> - Fixes for device tree and bindings
> - Split out the power management changes into an independent set
> - Rebase to 5.18
> - Individual changes in patches
>
> [1] https://www.spinics.net/lists/arm-kernel/msg980342.html
I can take the last 3 patches through the Broadcom ARM SoC pull request,
but the first three should probably go via the DRM tree unless you want
me to merge them all?
--
Florian
^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [PATCH v6 0/6] Raspberry PI 4 V3D enablement
2022-06-08 9:26 ` [PATCH v6 0/6] Raspberry PI 4 V3D enablement Florian Fainelli
@ 2022-06-08 12:23 ` Javier Martinez Canillas
2022-06-08 15:51 ` Melissa Wen
0 siblings, 1 reply; 21+ messages in thread
From: Javier Martinez Canillas @ 2022-06-08 12:23 UTC (permalink / raw)
To: Florian Fainelli, Peter Robinson, Arnd Bergmann,
bcm-kernel-feedback-list, Daniel Vetter, David Airlie, devicetree,
dri-devel, Emma Anholt, linux-arm-kernel, linux-rpi-kernel,
maxime, Nicolas Saenz Julienne, Rob Herring, Stefan Wahren,
Catalin Marinas, Will Deacon
Hello Florian,
On 6/8/22 11:26, Florian Fainelli wrote:
>
>
> On 6/3/2022 11:26 AM, Peter Robinson wrote:
>> This is a follow up from my v4 patchset. The power management pieces have
>> been split out to a separate independent set of patches by Stefan [1]. This
>> version 5 of the DRM patches are independent and given the V3D driver has
>> been upstream for some time the two patches to enable it in defconfigs can
>> be taken at anytime independent of the enablement for the Raspberry Pi 4.
>>
>> I've tested this using mesa 22.0.x and Wayland/Gnome on Fedora 36, it's
>> more or less stable with basic testing.
>>
>> Changes since v5:
>> - Update the DT compatible to match the others that were updated
>> - Adjust the Kconfig help text
>> - Add review tags
>>
>> Changes since v4:
>> - Fixes for device tree and bindings
>> - Split out the power management changes into an independent set
>> - Rebase to 5.18
>> - Individual changes in patches
>>
>> [1] https://www.spinics.net/lists/arm-kernel/msg980342.html
>
> I can take the last 3 patches through the Broadcom ARM SoC pull request,
> but the first three should probably go via the DRM tree unless you want
> me to merge them all?
I can merge the first 3 patches through the drm-misc tree. Can I get
an ack from you for those ?
The changes are independent so there's no need for an immutable branch
or any kind of cross tree coordination.
--
Best regards,
Javier Martinez Canillas
Linux Engineering
Red Hat
^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [PATCH v6 0/6] Raspberry PI 4 V3D enablement
2022-06-08 12:23 ` Javier Martinez Canillas
@ 2022-06-08 15:51 ` Melissa Wen
2022-06-08 16:48 ` Javier Martinez Canillas
0 siblings, 1 reply; 21+ messages in thread
From: Melissa Wen @ 2022-06-08 15:51 UTC (permalink / raw)
To: Javier Martinez Canillas
Cc: Florian Fainelli, Peter Robinson, Arnd Bergmann,
bcm-kernel-feedback-list, Daniel Vetter, David Airlie, devicetree,
dri-devel, Emma Anholt, linux-arm-kernel, linux-rpi-kernel,
maxime, Nicolas Saenz Julienne, Rob Herring, Stefan Wahren,
Catalin Marinas, Will Deacon
[-- Attachment #1: Type: text/plain, Size: 2251 bytes --]
On 06/08, Javier Martinez Canillas wrote:
> Hello Florian,
>
> On 6/8/22 11:26, Florian Fainelli wrote:
> >
> >
> > On 6/3/2022 11:26 AM, Peter Robinson wrote:
> >> This is a follow up from my v4 patchset. The power management pieces have
> >> been split out to a separate independent set of patches by Stefan [1]. This
> >> version 5 of the DRM patches are independent and given the V3D driver has
> >> been upstream for some time the two patches to enable it in defconfigs can
> >> be taken at anytime independent of the enablement for the Raspberry Pi 4.
> >>
> >> I've tested this using mesa 22.0.x and Wayland/Gnome on Fedora 36, it's
> >> more or less stable with basic testing.
> >>
> >> Changes since v5:
> >> - Update the DT compatible to match the others that were updated
> >> - Adjust the Kconfig help text
> >> - Add review tags
> >>
> >> Changes since v4:
> >> - Fixes for device tree and bindings
> >> - Split out the power management changes into an independent set
> >> - Rebase to 5.18
> >> - Individual changes in patches
> >>
> >> [1] https://www.spinics.net/lists/arm-kernel/msg980342.html
> >
> > I can take the last 3 patches through the Broadcom ARM SoC pull request,
> > but the first three should probably go via the DRM tree unless you want
> > me to merge them all?
>
> I can merge the first 3 patches through the drm-misc tree. Can I get
> an ack from you for those ?
>
> The changes are independent so there's no need for an immutable branch
> or any kind of cross tree coordination.
Hi Javier,
I'm not sure if you're suggesting here to apply the entire series as it
is now.
I'm not able to have a functional kernel from arm defconfig, only for
arm64. I'd like to have this issue clarified before merge this serie. I
tried multi_v7_defconfig on raspbian 32-bits and got a kernel panic.
Things work better when using downstream bcm2711_defconfig.
If you have an idea of what is going on, please, let me know. I can try
again and I'll be okay on merging it. Otherwise, let's wait for more
inputs to have a better picture of the situation.
Thanks,
Melissa
>
> --
> Best regards,
>
> Javier Martinez Canillas
> Linux Engineering
> Red Hat
>
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [PATCH v6 0/6] Raspberry PI 4 V3D enablement
2022-06-08 15:51 ` Melissa Wen
@ 2022-06-08 16:48 ` Javier Martinez Canillas
2022-06-10 11:05 ` Melissa Wen
0 siblings, 1 reply; 21+ messages in thread
From: Javier Martinez Canillas @ 2022-06-08 16:48 UTC (permalink / raw)
To: Melissa Wen
Cc: Florian Fainelli, Peter Robinson, Arnd Bergmann,
bcm-kernel-feedback-list, Daniel Vetter, David Airlie, devicetree,
dri-devel, Emma Anholt, linux-arm-kernel, linux-rpi-kernel,
maxime, Nicolas Saenz Julienne, Rob Herring, Stefan Wahren,
Catalin Marinas, Will Deacon
Hello Melissa,
On 6/8/22 17:51, Melissa Wen wrote:
[snip]
>>>
>>> I can take the last 3 patches through the Broadcom ARM SoC pull request,
>>> but the first three should probably go via the DRM tree unless you want
>>> me to merge them all?
>>
>> I can merge the first 3 patches through the drm-misc tree. Can I get
>> an ack from you for those ?
>>
>> The changes are independent so there's no need for an immutable branch
>> or any kind of cross tree coordination.
>
> Hi Javier,
>
> I'm not sure if you're suggesting here to apply the entire series as it
> is now.
>
No. I suggested that could just apply the first 3 patches that were related
to DRM, not the last 3 three since Florian will pick those.
> I'm not able to have a functional kernel from arm defconfig, only for
> arm64. I'd like to have this issue clarified before merge this serie. I
> tried multi_v7_defconfig on raspbian 32-bits and got a kernel panic.
> Things work better when using downstream bcm2711_defconfig.
>
> If you have an idea of what is going on, please, let me know. I can try
Can you please share for info? For example your boot log when it panics,
maybe that could shed some light on what's going on.
> again and I'll be okay on merging it. Otherwise, let's wait for more
> inputs to have a better picture of the situation.
>
Of course I don't plan to push patches that are known to cause issues.
I mentioned that could help merging the DRM changes if needed before
you sent your bug report.
--
Best regards,
Javier Martinez Canillas
Linux Engineering
Red Hat
^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [PATCH v6 0/6] Raspberry PI 4 V3D enablement
2022-06-08 16:48 ` Javier Martinez Canillas
@ 2022-06-10 11:05 ` Melissa Wen
2022-06-10 12:13 ` Javier Martinez Canillas
0 siblings, 1 reply; 21+ messages in thread
From: Melissa Wen @ 2022-06-10 11:05 UTC (permalink / raw)
To: Javier Martinez Canillas
Cc: Florian Fainelli, Peter Robinson, Arnd Bergmann,
bcm-kernel-feedback-list, Daniel Vetter, David Airlie, devicetree,
dri-devel, Emma Anholt, linux-arm-kernel, linux-rpi-kernel,
maxime, Nicolas Saenz Julienne, Rob Herring, Stefan Wahren,
Catalin Marinas, Will Deacon
[-- Attachment #1: Type: text/plain, Size: 2073 bytes --]
On 06/08, Javier Martinez Canillas wrote:
> Hello Melissa,
>
> On 6/8/22 17:51, Melissa Wen wrote:
>
> [snip]
>
> >>>
> >>> I can take the last 3 patches through the Broadcom ARM SoC pull request,
> >>> but the first three should probably go via the DRM tree unless you want
> >>> me to merge them all?
> >>
> >> I can merge the first 3 patches through the drm-misc tree. Can I get
> >> an ack from you for those ?
> >>
> >> The changes are independent so there's no need for an immutable branch
> >> or any kind of cross tree coordination.
> >
> > Hi Javier,
> >
> > I'm not sure if you're suggesting here to apply the entire series as it
> > is now.
> >
>
> No. I suggested that could just apply the first 3 patches that were related
> to DRM, not the last 3 three since Florian will pick those.
>
> > I'm not able to have a functional kernel from arm defconfig, only for
> > arm64. I'd like to have this issue clarified before merge this serie. I
> > tried multi_v7_defconfig on raspbian 32-bits and got a kernel panic.
> > Things work better when using downstream bcm2711_defconfig.
> >
> > If you have an idea of what is going on, please, let me know. I can try
>
> Can you please share for info? For example your boot log when it panics,
> maybe that could shed some light on what's going on.
>
> > again and I'll be okay on merging it. Otherwise, let's wait for more
> > inputs to have a better picture of the situation.
> >
>
> Of course I don't plan to push patches that are known to cause issues.
>
> I mentioned that could help merging the DRM changes if needed before
> you sent your bug report.
Hi Javier,
Thanks for waiting a little.
Stefan guided me to the missing part and I'm okay on this serie.
If there's any r-b missing for drm/v3d, you can add mine:
Reviewed-by: Melissa Wen <mwen@igalia.com>
But if you prefer that I applied them, just let me know.
Best Regards,
Melissa
>
> --
> Best regards,
>
> Javier Martinez Canillas
> Linux Engineering
> Red Hat
>
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [PATCH v6 0/6] Raspberry PI 4 V3D enablement
2022-06-10 11:05 ` Melissa Wen
@ 2022-06-10 12:13 ` Javier Martinez Canillas
2022-06-13 9:30 ` Melissa Wen
0 siblings, 1 reply; 21+ messages in thread
From: Javier Martinez Canillas @ 2022-06-10 12:13 UTC (permalink / raw)
To: Melissa Wen
Cc: Florian Fainelli, Peter Robinson, Arnd Bergmann,
bcm-kernel-feedback-list, Daniel Vetter, David Airlie, devicetree,
dri-devel, Emma Anholt, linux-arm-kernel, linux-rpi-kernel,
maxime, Nicolas Saenz Julienne, Rob Herring, Stefan Wahren,
Catalin Marinas, Will Deacon
Hello Melissa,
On 6/10/22 13:05, Melissa Wen wrote:
> On 06/08, Javier Martinez Canillas wrote:
[snip]
>
> Hi Javier,
>
> Thanks for waiting a little.
>
> Stefan guided me to the missing part and I'm okay on this serie.
>
No worries and thanks for the testing.
> If there's any r-b missing for drm/v3d, you can add mine:
> Reviewed-by: Melissa Wen <mwen@igalia.com>
>
> But if you prefer that I applied them, just let me know.
>
If you can apply them that's even better since you are more involved
with this driver. I was just trying to be helpful and that's why I
volunteered to push, to prevent this effort to get stalled :)
--
Best regards,
Javier Martinez Canillas
Linux Engineering
Red Hat
^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [PATCH v6 0/6] Raspberry PI 4 V3D enablement
2022-06-10 12:13 ` Javier Martinez Canillas
@ 2022-06-13 9:30 ` Melissa Wen
0 siblings, 0 replies; 21+ messages in thread
From: Melissa Wen @ 2022-06-13 9:30 UTC (permalink / raw)
To: Javier Martinez Canillas
Cc: Florian Fainelli, Peter Robinson, Arnd Bergmann,
bcm-kernel-feedback-list, Daniel Vetter, David Airlie, devicetree,
dri-devel, Emma Anholt, linux-arm-kernel, linux-rpi-kernel,
maxime, Nicolas Saenz Julienne, Rob Herring, Stefan Wahren,
Catalin Marinas, Will Deacon
[-- Attachment #1: Type: text/plain, Size: 954 bytes --]
On 06/10, Javier Martinez Canillas wrote:
> Hello Melissa,
>
> On 6/10/22 13:05, Melissa Wen wrote:
> > On 06/08, Javier Martinez Canillas wrote:
>
> [snip]
>
> >
> > Hi Javier,
> >
> > Thanks for waiting a little.
> >
> > Stefan guided me to the missing part and I'm okay on this serie.
> >
>
> No worries and thanks for the testing.
>
> > If there's any r-b missing for drm/v3d, you can add mine:
> > Reviewed-by: Melissa Wen <mwen@igalia.com>
> >
> > But if you prefer that I applied them, just let me know.
> >
>
> If you can apply them that's even better since you are more involved
> with this driver. I was just trying to be helpful and that's why I
> volunteered to push, to prevent this effort to get stalled :)
Hi all,
I applied the first three patches to drm-misc-next yesterday.
Thanks,
Melissa
>
> --
> Best regards,
>
> Javier Martinez Canillas
> Linux Engineering
> Red Hat
>
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [PATCH v6 0/6] Raspberry PI 4 V3D enablement
2022-06-03 9:26 [PATCH v6 0/6] Raspberry PI 4 V3D enablement Peter Robinson
` (6 preceding siblings ...)
2022-06-08 9:26 ` [PATCH v6 0/6] Raspberry PI 4 V3D enablement Florian Fainelli
@ 2022-06-08 12:51 ` Melissa Wen
2022-06-08 22:35 ` Stefan Wahren
7 siblings, 1 reply; 21+ messages in thread
From: Melissa Wen @ 2022-06-08 12:51 UTC (permalink / raw)
To: Peter Robinson
Cc: Arnd Bergmann, bcm-kernel-feedback-list, Daniel Vetter,
David Airlie, devicetree, dri-devel, Emma Anholt,
Florian Fainelli, javierm, linux-arm-kernel, linux-rpi-kernel,
maxime, Nicolas Saenz Julienne, Rob Herring, Stefan Wahren,
Catalin Marinas, Will Deacon
[-- Attachment #1: Type: text/plain, Size: 2300 bytes --]
On 06/03, Peter Robinson wrote:
> This is a follow up from my v4 patchset. The power management pieces have
> been split out to a separate independent set of patches by Stefan [1]. This
> version 5 of the DRM patches are independent and given the V3D driver has
> been upstream for some time the two patches to enable it in defconfigs can
> be taken at anytime independent of the enablement for the Raspberry Pi 4.
Hi Peter,
I was able to check and run some tests on arm64, and it seems ok. But I
was not successful on bringing it up for arm using multi_v7_defconfig +
device_tree=bcm2711-rpi-4-b.dtb.
How can I check this path?
Btw, using the config from rpi downstream kernel works nicely for arm
(on my side)
Best regards,
Melissa
>
> I've tested this using mesa 22.0.x and Wayland/Gnome on Fedora 36, it's
> more or less stable with basic testing.
>
> Changes since v5:
> - Update the DT compatible to match the others that were updated
> - Adjust the Kconfig help text
> - Add review tags
>
> Changes since v4:
> - Fixes for device tree and bindings
> - Split out the power management changes into an independent set
> - Rebase to 5.18
> - Individual changes in patches
>
> [1] https://www.spinics.net/lists/arm-kernel/msg980342.html
>
> Nicolas Saenz Julienne (1):
> arm64: config: Enable DRM_V3D
>
> Peter Robinson (5):
> dt-bindings: gpu: v3d: Add BCM2711's compatible
> drm/v3d: Get rid of pm code
> drm/v3d: Add support for bcm2711
> ARM: dts: bcm2711: Enable V3D
> ARM: configs: Enable DRM_V3D
>
> .../devicetree/bindings/gpu/brcm,bcm-v3d.yaml | 1 +
> arch/arm/boot/dts/bcm2711-rpi.dtsi | 4 ++++
> arch/arm/boot/dts/bcm2711.dtsi | 11 +++++++++++
> arch/arm/configs/bcm2835_defconfig | 1 +
> arch/arm/configs/multi_v7_defconfig | 1 +
> arch/arm64/configs/defconfig | 1 +
> drivers/gpu/drm/v3d/Kconfig | 5 +++--
> drivers/gpu/drm/v3d/v3d_debugfs.c | 18 +-----------------
> drivers/gpu/drm/v3d/v3d_drv.c | 12 +-----------
> drivers/gpu/drm/v3d/v3d_gem.c | 12 +-----------
> 10 files changed, 25 insertions(+), 41 deletions(-)
>
> --
> 2.36.1
>
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [PATCH v6 0/6] Raspberry PI 4 V3D enablement
2022-06-08 12:51 ` Melissa Wen
@ 2022-06-08 22:35 ` Stefan Wahren
2022-06-10 10:39 ` Melissa Wen
0 siblings, 1 reply; 21+ messages in thread
From: Stefan Wahren @ 2022-06-08 22:35 UTC (permalink / raw)
To: Melissa Wen, Peter Robinson
Cc: Arnd Bergmann, bcm-kernel-feedback-list, Daniel Vetter,
David Airlie, devicetree, dri-devel, Emma Anholt,
Florian Fainelli, javierm, linux-arm-kernel, linux-rpi-kernel,
maxime, Nicolas Saenz Julienne, Rob Herring, Catalin Marinas,
Will Deacon
Hi Melissa,
Am 08.06.22 um 14:51 schrieb Melissa Wen:
> On 06/03, Peter Robinson wrote:
>> This is a follow up from my v4 patchset. The power management pieces have
>> been split out to a separate independent set of patches by Stefan [1]. This
>> version 5 of the DRM patches are independent and given the V3D driver has
>> been upstream for some time the two patches to enable it in defconfigs can
>> be taken at anytime independent of the enablement for the Raspberry Pi 4.
> Hi Peter,
>
> I was able to check and run some tests on arm64, and it seems ok. But I
> was not successful on bringing it up for arm using multi_v7_defconfig +
> device_tree=bcm2711-rpi-4-b.dtb.
for Raspberry Pi 4 you also need to enable CONFIG_ARM_LPAE, which is not
enabled in multi_v7_defconfig.
Best regards
>
> How can I check this path?
>
> Btw, using the config from rpi downstream kernel works nicely for arm
> (on my side)
>
> Best regards,
>
> Melissa
>> I've tested this using mesa 22.0.x and Wayland/Gnome on Fedora 36, it's
>> more or less stable with basic testing.
>>
>> Changes since v5:
>> - Update the DT compatible to match the others that were updated
>> - Adjust the Kconfig help text
>> - Add review tags
>>
>> Changes since v4:
>> - Fixes for device tree and bindings
>> - Split out the power management changes into an independent set
>> - Rebase to 5.18
>> - Individual changes in patches
>>
>> [1] https://www.spinics.net/lists/arm-kernel/msg980342.html
>>
>> Nicolas Saenz Julienne (1):
>> arm64: config: Enable DRM_V3D
>>
>> Peter Robinson (5):
>> dt-bindings: gpu: v3d: Add BCM2711's compatible
>> drm/v3d: Get rid of pm code
>> drm/v3d: Add support for bcm2711
>> ARM: dts: bcm2711: Enable V3D
>> ARM: configs: Enable DRM_V3D
>>
>> .../devicetree/bindings/gpu/brcm,bcm-v3d.yaml | 1 +
>> arch/arm/boot/dts/bcm2711-rpi.dtsi | 4 ++++
>> arch/arm/boot/dts/bcm2711.dtsi | 11 +++++++++++
>> arch/arm/configs/bcm2835_defconfig | 1 +
>> arch/arm/configs/multi_v7_defconfig | 1 +
>> arch/arm64/configs/defconfig | 1 +
>> drivers/gpu/drm/v3d/Kconfig | 5 +++--
>> drivers/gpu/drm/v3d/v3d_debugfs.c | 18 +-----------------
>> drivers/gpu/drm/v3d/v3d_drv.c | 12 +-----------
>> drivers/gpu/drm/v3d/v3d_gem.c | 12 +-----------
>> 10 files changed, 25 insertions(+), 41 deletions(-)
>>
>> --
>> 2.36.1
>>
>>
>> _______________________________________________
>> linux-arm-kernel mailing list
>> linux-arm-kernel@lists.infradead.org
>> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [PATCH v6 0/6] Raspberry PI 4 V3D enablement
2022-06-08 22:35 ` Stefan Wahren
@ 2022-06-10 10:39 ` Melissa Wen
0 siblings, 0 replies; 21+ messages in thread
From: Melissa Wen @ 2022-06-10 10:39 UTC (permalink / raw)
To: Stefan Wahren
Cc: Peter Robinson, Arnd Bergmann, bcm-kernel-feedback-list,
Daniel Vetter, David Airlie, devicetree, dri-devel, Emma Anholt,
Florian Fainelli, javierm, linux-arm-kernel, linux-rpi-kernel,
maxime, Nicolas Saenz Julienne, Rob Herring, Catalin Marinas,
Will Deacon
[-- Attachment #1: Type: text/plain, Size: 3227 bytes --]
On 06/09, Stefan Wahren wrote:
> Hi Melissa,
>
> Am 08.06.22 um 14:51 schrieb Melissa Wen:
> > On 06/03, Peter Robinson wrote:
> > > This is a follow up from my v4 patchset. The power management pieces have
> > > been split out to a separate independent set of patches by Stefan [1]. This
> > > version 5 of the DRM patches are independent and given the V3D driver has
> > > been upstream for some time the two patches to enable it in defconfigs can
> > > be taken at anytime independent of the enablement for the Raspberry Pi 4.
> > Hi Peter,
> >
> > I was able to check and run some tests on arm64, and it seems ok. But I
> > was not successful on bringing it up for arm using multi_v7_defconfig +
> > device_tree=bcm2711-rpi-4-b.dtb.
>
> for Raspberry Pi 4 you also need to enable CONFIG_ARM_LPAE, which is not
> enabled in multi_v7_defconfig.
Hi Stefan,
Thanks for pointing it out.
I've checked again and it's fine. I think some bits are missing (maybe
from my side) to handle glx stuff on arm, but I can take a look later.
Thanks for this work!
Melissa
>
> Best regards
>
> >
> > How can I check this path?
> >
> > Btw, using the config from rpi downstream kernel works nicely for arm
> > (on my side)
> >
> > Best regards,
> >
> > Melissa
> > > I've tested this using mesa 22.0.x and Wayland/Gnome on Fedora 36, it's
> > > more or less stable with basic testing.
> > >
> > > Changes since v5:
> > > - Update the DT compatible to match the others that were updated
> > > - Adjust the Kconfig help text
> > > - Add review tags
> > >
> > > Changes since v4:
> > > - Fixes for device tree and bindings
> > > - Split out the power management changes into an independent set
> > > - Rebase to 5.18
> > > - Individual changes in patches
> > >
> > > [1] https://www.spinics.net/lists/arm-kernel/msg980342.html
> > >
> > > Nicolas Saenz Julienne (1):
> > > arm64: config: Enable DRM_V3D
> > >
> > > Peter Robinson (5):
> > > dt-bindings: gpu: v3d: Add BCM2711's compatible
> > > drm/v3d: Get rid of pm code
> > > drm/v3d: Add support for bcm2711
> > > ARM: dts: bcm2711: Enable V3D
> > > ARM: configs: Enable DRM_V3D
> > >
> > > .../devicetree/bindings/gpu/brcm,bcm-v3d.yaml | 1 +
> > > arch/arm/boot/dts/bcm2711-rpi.dtsi | 4 ++++
> > > arch/arm/boot/dts/bcm2711.dtsi | 11 +++++++++++
> > > arch/arm/configs/bcm2835_defconfig | 1 +
> > > arch/arm/configs/multi_v7_defconfig | 1 +
> > > arch/arm64/configs/defconfig | 1 +
> > > drivers/gpu/drm/v3d/Kconfig | 5 +++--
> > > drivers/gpu/drm/v3d/v3d_debugfs.c | 18 +-----------------
> > > drivers/gpu/drm/v3d/v3d_drv.c | 12 +-----------
> > > drivers/gpu/drm/v3d/v3d_gem.c | 12 +-----------
> > > 10 files changed, 25 insertions(+), 41 deletions(-)
> > >
> > > --
> > > 2.36.1
> > >
> > >
> > > _______________________________________________
> > > linux-arm-kernel mailing list
> > > linux-arm-kernel@lists.infradead.org
> > > http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 21+ messages in thread