From b6707e770d832da586a4b42d4d45b3a91d5f98c2 Mon Sep 17 00:00:00 2001 From: Michael Tretter Date: Wed, 8 Sep 2021 14:03:12 +0100 Subject: [PATCH] media: allegro: lookup VCU settings The VCU provides information about its configuration in a dedicated register space. These settings include, for example, the expected clock rates and the configuration of the encoder buffer. In the device tree, the settings are described by the "xlnx,vcu-settings" compatible. The settings are needed to correctly configure the clocks and the encoder buffer. Lookup the VCU settings in the device tree and make it accessible to the driver via a regmap. Signed-off-by: Michael Tretter Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab --- drivers/media/platform/allegro-dvt/allegro-core.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/drivers/media/platform/allegro-dvt/allegro-core.c b/drivers/media/platform/allegro-dvt/allegro-core.c index 89d6de6082f6c..2663d9da0522c 100644 --- a/drivers/media/platform/allegro-dvt/allegro-core.c +++ b/drivers/media/platform/allegro-dvt/allegro-core.c @@ -12,6 +12,8 @@ #include #include #include +#include +#include #include #include #include @@ -136,6 +138,7 @@ struct allegro_dev { struct regmap *regmap; struct regmap *sram; + struct regmap *settings; const struct fw_info *fw_info; struct allegro_buffer firmware; @@ -3721,6 +3724,10 @@ static int allegro_probe(struct platform_device *pdev) return PTR_ERR(dev->sram); } + dev->settings = syscon_regmap_lookup_by_compatible("xlnx,vcu-settings"); + if (IS_ERR(dev->settings)) + dev_warn(&pdev->dev, "failed to open settings\n"); + irq = platform_get_irq(pdev, 0); if (irq < 0) return irq; -- 2.30.2