Commit 88711fa9 authored by Dave Airlie's avatar Dave Airlie

Merge tag 'drm-misc-fixes-2022-04-07' of git://anongit.freedesktop.org/drm/drm-misc into drm-fixes

drm-misc-fixes for v5.18-rc2:
- Fix a crash when booting with nouveau on tegra.
- Don't require input port for MIPI-DSI, and make width/height mandatory.
- Fix unregistering of framebuffers without device.
Signed-off-by: default avatarDave Airlie <airlied@redhat.com>

From: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/58fa2262-3eb6-876d-7157-ab7a135696b7@linux.intel.com
parents 995f7480 1ecc0c09
...@@ -51,7 +51,6 @@ properties: ...@@ -51,7 +51,6 @@ properties:
Video port for MIPI DPI output (panel or connector). Video port for MIPI DPI output (panel or connector).
required: required:
- port@0
- port@1 - port@1
required: required:
......
...@@ -39,7 +39,6 @@ properties: ...@@ -39,7 +39,6 @@ properties:
Video port for MIPI DPI output (panel or connector). Video port for MIPI DPI output (panel or connector).
required: required:
- port@0
- port@1 - port@1
required: required:
......
...@@ -83,6 +83,8 @@ properties: ...@@ -83,6 +83,8 @@ properties:
required: required:
- compatible - compatible
- reg - reg
- width-mm
- height-mm
- panel-timing - panel-timing
unevaluatedProperties: false unevaluatedProperties: false
......
...@@ -216,6 +216,7 @@ gm20b_pmu = { ...@@ -216,6 +216,7 @@ gm20b_pmu = {
.intr = gt215_pmu_intr, .intr = gt215_pmu_intr,
.recv = gm20b_pmu_recv, .recv = gm20b_pmu_recv,
.initmsg = gm20b_pmu_initmsg, .initmsg = gm20b_pmu_initmsg,
.reset = gf100_pmu_reset,
}; };
#if IS_ENABLED(CONFIG_ARCH_TEGRA_210_SOC) #if IS_ENABLED(CONFIG_ARCH_TEGRA_210_SOC)
......
...@@ -23,7 +23,7 @@ ...@@ -23,7 +23,7 @@
*/ */
#include "priv.h" #include "priv.h"
static void void
gp102_pmu_reset(struct nvkm_pmu *pmu) gp102_pmu_reset(struct nvkm_pmu *pmu)
{ {
struct nvkm_device *device = pmu->subdev.device; struct nvkm_device *device = pmu->subdev.device;
......
...@@ -83,6 +83,7 @@ gp10b_pmu = { ...@@ -83,6 +83,7 @@ gp10b_pmu = {
.intr = gt215_pmu_intr, .intr = gt215_pmu_intr,
.recv = gm20b_pmu_recv, .recv = gm20b_pmu_recv,
.initmsg = gm20b_pmu_initmsg, .initmsg = gm20b_pmu_initmsg,
.reset = gp102_pmu_reset,
}; };
#if IS_ENABLED(CONFIG_ARCH_TEGRA_210_SOC) #if IS_ENABLED(CONFIG_ARCH_TEGRA_210_SOC)
......
...@@ -41,6 +41,7 @@ int gt215_pmu_send(struct nvkm_pmu *, u32[2], u32, u32, u32, u32); ...@@ -41,6 +41,7 @@ int gt215_pmu_send(struct nvkm_pmu *, u32[2], u32, u32, u32, u32);
bool gf100_pmu_enabled(struct nvkm_pmu *); bool gf100_pmu_enabled(struct nvkm_pmu *);
void gf100_pmu_reset(struct nvkm_pmu *); void gf100_pmu_reset(struct nvkm_pmu *);
void gp102_pmu_reset(struct nvkm_pmu *pmu);
void gk110_pmu_pgob(struct nvkm_pmu *, bool); void gk110_pmu_pgob(struct nvkm_pmu *, bool);
......
...@@ -1579,7 +1579,14 @@ static void do_remove_conflicting_framebuffers(struct apertures_struct *a, ...@@ -1579,7 +1579,14 @@ static void do_remove_conflicting_framebuffers(struct apertures_struct *a,
* If it's not a platform device, at least print a warning. A * If it's not a platform device, at least print a warning. A
* fix would add code to remove the device from the system. * fix would add code to remove the device from the system.
*/ */
if (dev_is_platform(device)) { if (!device) {
/* TODO: Represent each OF framebuffer as its own
* device in the device hierarchy. For now, offb
* doesn't have such a device, so unregister the
* framebuffer as before without warning.
*/
do_unregister_framebuffer(registered_fb[i]);
} else if (dev_is_platform(device)) {
registered_fb[i]->forced_out = true; registered_fb[i]->forced_out = true;
platform_device_unregister(to_platform_device(device)); platform_device_unregister(to_platform_device(device));
} else { } else {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment