Commit 9a49bf09 authored by Maxime Ripard's avatar Maxime Ripard

drm/vc4: crtc: Provide a CRTC name

It's fairly hard to figure out the instance of the CRTC affected by an
atomic change using the default name.

Since we can provide our own to the CRTC initialization functions, let's
do so to make the debugging sessions easier.
Reviewed-by: default avatarJavier Martinez Canillas <javierm@redhat.com>
Signed-off-by: default avatarMaxime Ripard <maxime@cerno.tech>
Link: https://patchwork.freedesktop.org/patch/msgid/20221123-rpi-kunit-tests-v1-20-051a0bb60a16@cerno.tech
parent 3f98076f
...@@ -1133,6 +1133,7 @@ static const struct drm_crtc_helper_funcs vc4_crtc_helper_funcs = { ...@@ -1133,6 +1133,7 @@ static const struct drm_crtc_helper_funcs vc4_crtc_helper_funcs = {
static const struct vc4_pv_data bcm2835_pv0_data = { static const struct vc4_pv_data bcm2835_pv0_data = {
.base = { .base = {
.name = "pixelvalve-0",
.debugfs_name = "crtc0_regs", .debugfs_name = "crtc0_regs",
.hvs_available_channels = BIT(0), .hvs_available_channels = BIT(0),
.hvs_output = 0, .hvs_output = 0,
...@@ -1147,6 +1148,7 @@ static const struct vc4_pv_data bcm2835_pv0_data = { ...@@ -1147,6 +1148,7 @@ static const struct vc4_pv_data bcm2835_pv0_data = {
static const struct vc4_pv_data bcm2835_pv1_data = { static const struct vc4_pv_data bcm2835_pv1_data = {
.base = { .base = {
.name = "pixelvalve-1",
.debugfs_name = "crtc1_regs", .debugfs_name = "crtc1_regs",
.hvs_available_channels = BIT(2), .hvs_available_channels = BIT(2),
.hvs_output = 2, .hvs_output = 2,
...@@ -1161,6 +1163,7 @@ static const struct vc4_pv_data bcm2835_pv1_data = { ...@@ -1161,6 +1163,7 @@ static const struct vc4_pv_data bcm2835_pv1_data = {
static const struct vc4_pv_data bcm2835_pv2_data = { static const struct vc4_pv_data bcm2835_pv2_data = {
.base = { .base = {
.name = "pixelvalve-2",
.debugfs_name = "crtc2_regs", .debugfs_name = "crtc2_regs",
.hvs_available_channels = BIT(1), .hvs_available_channels = BIT(1),
.hvs_output = 1, .hvs_output = 1,
...@@ -1175,6 +1178,7 @@ static const struct vc4_pv_data bcm2835_pv2_data = { ...@@ -1175,6 +1178,7 @@ static const struct vc4_pv_data bcm2835_pv2_data = {
static const struct vc4_pv_data bcm2711_pv0_data = { static const struct vc4_pv_data bcm2711_pv0_data = {
.base = { .base = {
.name = "pixelvalve-0",
.debugfs_name = "crtc0_regs", .debugfs_name = "crtc0_regs",
.hvs_available_channels = BIT(0), .hvs_available_channels = BIT(0),
.hvs_output = 0, .hvs_output = 0,
...@@ -1189,6 +1193,7 @@ static const struct vc4_pv_data bcm2711_pv0_data = { ...@@ -1189,6 +1193,7 @@ static const struct vc4_pv_data bcm2711_pv0_data = {
static const struct vc4_pv_data bcm2711_pv1_data = { static const struct vc4_pv_data bcm2711_pv1_data = {
.base = { .base = {
.name = "pixelvalve-1",
.debugfs_name = "crtc1_regs", .debugfs_name = "crtc1_regs",
.hvs_available_channels = BIT(0) | BIT(1) | BIT(2), .hvs_available_channels = BIT(0) | BIT(1) | BIT(2),
.hvs_output = 3, .hvs_output = 3,
...@@ -1203,6 +1208,7 @@ static const struct vc4_pv_data bcm2711_pv1_data = { ...@@ -1203,6 +1208,7 @@ static const struct vc4_pv_data bcm2711_pv1_data = {
static const struct vc4_pv_data bcm2711_pv2_data = { static const struct vc4_pv_data bcm2711_pv2_data = {
.base = { .base = {
.name = "pixelvalve-2",
.debugfs_name = "crtc2_regs", .debugfs_name = "crtc2_regs",
.hvs_available_channels = BIT(0) | BIT(1) | BIT(2), .hvs_available_channels = BIT(0) | BIT(1) | BIT(2),
.hvs_output = 4, .hvs_output = 4,
...@@ -1216,6 +1222,7 @@ static const struct vc4_pv_data bcm2711_pv2_data = { ...@@ -1216,6 +1222,7 @@ static const struct vc4_pv_data bcm2711_pv2_data = {
static const struct vc4_pv_data bcm2711_pv3_data = { static const struct vc4_pv_data bcm2711_pv3_data = {
.base = { .base = {
.name = "pixelvalve-3",
.debugfs_name = "crtc3_regs", .debugfs_name = "crtc3_regs",
.hvs_available_channels = BIT(1), .hvs_available_channels = BIT(1),
.hvs_output = 1, .hvs_output = 1,
...@@ -1229,6 +1236,7 @@ static const struct vc4_pv_data bcm2711_pv3_data = { ...@@ -1229,6 +1236,7 @@ static const struct vc4_pv_data bcm2711_pv3_data = {
static const struct vc4_pv_data bcm2711_pv4_data = { static const struct vc4_pv_data bcm2711_pv4_data = {
.base = { .base = {
.name = "pixelvalve-4",
.debugfs_name = "crtc4_regs", .debugfs_name = "crtc4_regs",
.hvs_available_channels = BIT(0) | BIT(1) | BIT(2), .hvs_available_channels = BIT(0) | BIT(1) | BIT(2),
.hvs_output = 5, .hvs_output = 5,
...@@ -1308,7 +1316,7 @@ int vc4_crtc_init(struct drm_device *drm, struct platform_device *pdev, ...@@ -1308,7 +1316,7 @@ int vc4_crtc_init(struct drm_device *drm, struct platform_device *pdev,
vc4_crtc->feeds_txp = feeds_txp; vc4_crtc->feeds_txp = feeds_txp;
spin_lock_init(&vc4_crtc->irq_lock); spin_lock_init(&vc4_crtc->irq_lock);
ret = drmm_crtc_init_with_planes(drm, crtc, primary_plane, NULL, ret = drmm_crtc_init_with_planes(drm, crtc, primary_plane, NULL,
crtc_funcs, NULL); crtc_funcs, data->name);
if (ret) if (ret)
return ret; return ret;
......
...@@ -473,6 +473,8 @@ to_vc4_encoder(const struct drm_encoder *encoder) ...@@ -473,6 +473,8 @@ to_vc4_encoder(const struct drm_encoder *encoder)
} }
struct vc4_crtc_data { struct vc4_crtc_data {
const char *name;
const char *debugfs_name; const char *debugfs_name;
/* Bitmask of channels (FIFOs) of the HVS that the output can source from */ /* Bitmask of channels (FIFOs) of the HVS that the output can source from */
......
...@@ -480,6 +480,7 @@ static irqreturn_t vc4_txp_interrupt(int irq, void *data) ...@@ -480,6 +480,7 @@ static irqreturn_t vc4_txp_interrupt(int irq, void *data)
} }
static const struct vc4_crtc_data vc4_txp_crtc_data = { static const struct vc4_crtc_data vc4_txp_crtc_data = {
.name = "txp",
.debugfs_name = "txp_regs", .debugfs_name = "txp_regs",
.hvs_available_channels = BIT(2), .hvs_available_channels = BIT(2),
.hvs_output = 2, .hvs_output = 2,
......
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