mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-23 07:22:33 +00:00
2e715fb4fc
Add support for BCM2712 (Raspberry Pi 5).
3bb5880ab3
Patches were generated from the diff between linux kernel branch linux-6.1.y
and rpi-6.1.y from raspberry pi kernel source:
- git format-patch linux-6.1.y...rpi-6.1.y
Build system: x86_64
Build-tested: bcm2708, bcm2709, bcm2710, bcm2711
Run-tested: bcm2710/RPi3B, bcm2711/RPi4B
Signed-off-by: Marty Jones <mj8263788@gmail.com>
[Remove applied and reverted patches, squash patches and config commits]
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
42 lines
1.3 KiB
Diff
42 lines
1.3 KiB
Diff
From 1216ea56c2e30aee4975b4dcce79ebd199afaf8f Mon Sep 17 00:00:00 2001
|
|
From: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
|
Date: Mon, 9 Oct 2023 16:34:36 +0100
|
|
Subject: [PATCH] drm/fb-helper: Look up preferred fbdev node number from DT
|
|
|
|
For situations where there are multiple DRM cards in a system,
|
|
add a query of DT for "drm_fb" designations for cards to set
|
|
their preferred /dev/fbN designation.
|
|
|
|
Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
|
---
|
|
drivers/gpu/drm/drm_fb_helper.c | 11 ++++++++++-
|
|
1 file changed, 10 insertions(+), 1 deletion(-)
|
|
|
|
--- a/drivers/gpu/drm/drm_fb_helper.c
|
|
+++ b/drivers/gpu/drm/drm_fb_helper.c
|
|
@@ -1932,7 +1932,7 @@ __drm_fb_helper_initial_config_and_unloc
|
|
struct drm_device *dev = fb_helper->dev;
|
|
struct fb_info *info;
|
|
unsigned int width, height;
|
|
- int ret;
|
|
+ int ret, id;
|
|
|
|
width = dev->mode_config.max_width;
|
|
height = dev->mode_config.max_height;
|
|
@@ -1967,6 +1967,15 @@ __drm_fb_helper_initial_config_and_unloc
|
|
* register the fbdev emulation instance in kernel_fb_helper_list. */
|
|
mutex_unlock(&fb_helper->lock);
|
|
|
|
+ id = of_alias_get_highest_id("drm_fb");
|
|
+ if (id >= 0)
|
|
+ fb_set_lowest_dynamic_fb(id + 1);
|
|
+
|
|
+ id = of_alias_get_id(dev->dev->of_node, "drm_fb");
|
|
+ if (id >= 0) {
|
|
+ info->node = id;
|
|
+ info->custom_fb_num = true;
|
|
+ }
|
|
ret = register_framebuffer(info);
|
|
if (ret < 0)
|
|
return ret;
|