|
@@ -734,7 +734,7 @@ Signed-off-by: Maxime Ripard <[email protected]>
|
|
|
|
|
|
vc4->hvs = hvs;
|
|
|
|
|
|
-@@ -1379,10 +1715,124 @@ static int vc4_hvs_hw_init(struct vc4_hv
|
|
|
+@@ -1390,10 +1726,124 @@ static int vc4_hvs_hw_init(struct vc4_hv
|
|
|
return 0;
|
|
|
}
|
|
|
|
|
@@ -860,7 +860,7 @@ Signed-off-by: Maxime Ripard <[email protected]>
|
|
|
|
|
|
/*
|
|
|
* Recompute Composite Output Buffer (COB) allocations for the
|
|
|
-@@ -1443,6 +1893,31 @@ static int vc4_hvs_cob_init(struct vc4_h
|
|
|
+@@ -1454,6 +1904,31 @@ static int vc4_hvs_cob_init(struct vc4_h
|
|
|
HVS_WRITE(SCALER_DISPBASE0, reg);
|
|
|
break;
|
|
|
|
|
@@ -892,7 +892,7 @@ Signed-off-by: Maxime Ripard <[email protected]>
|
|
|
default:
|
|
|
return -EINVAL;
|
|
|
}
|
|
|
-@@ -1468,10 +1943,16 @@ static int vc4_hvs_bind(struct device *d
|
|
|
+@@ -1479,10 +1954,16 @@ static int vc4_hvs_bind(struct device *d
|
|
|
return PTR_ERR(hvs);
|
|
|
|
|
|
hvs->regset.base = hvs->regs;
|
|
@@ -912,7 +912,7 @@ Signed-off-by: Maxime Ripard <[email protected]>
|
|
|
struct rpi_firmware *firmware;
|
|
|
struct device_node *node;
|
|
|
unsigned int max_rate;
|
|
|
-@@ -1485,12 +1966,20 @@ static int vc4_hvs_bind(struct device *d
|
|
|
+@@ -1496,12 +1977,20 @@ static int vc4_hvs_bind(struct device *d
|
|
|
if (!firmware)
|
|
|
return -EPROBE_DEFER;
|
|
|
|
|
@@ -934,7 +934,7 @@ Signed-off-by: Maxime Ripard <[email protected]>
|
|
|
max_rate = rpi_firmware_clk_get_max_rate(firmware,
|
|
|
RPI_FIRMWARE_CORE_CLK_ID);
|
|
|
rpi_firmware_put(firmware);
|
|
|
-@@ -1507,14 +1996,51 @@ static int vc4_hvs_bind(struct device *d
|
|
|
+@@ -1518,14 +2007,51 @@ static int vc4_hvs_bind(struct device *d
|
|
|
dev_err(&pdev->dev, "Couldn't enable the core clock\n");
|
|
|
return ret;
|
|
|
}
|
|
@@ -990,7 +990,7 @@ Signed-off-by: Maxime Ripard <[email protected]>
|
|
|
if (ret)
|
|
|
return ret;
|
|
|
|
|
|
-@@ -1531,10 +2057,12 @@ static int vc4_hvs_bind(struct device *d
|
|
|
+@@ -1542,10 +2068,12 @@ static int vc4_hvs_bind(struct device *d
|
|
|
if (ret)
|
|
|
return ret;
|
|
|
|
|
@@ -1007,7 +1007,7 @@ Signed-off-by: Maxime Ripard <[email protected]>
|
|
|
|
|
|
return 0;
|
|
|
}
|
|
|
-@@ -1559,6 +2087,7 @@ static void vc4_hvs_unbind(struct device
|
|
|
+@@ -1570,6 +2098,7 @@ static void vc4_hvs_unbind(struct device
|
|
|
drm_mm_remove_node(node);
|
|
|
drm_mm_takedown(&vc4->hvs->lbm_mm);
|
|
|
|
|
@@ -1015,7 +1015,7 @@ Signed-off-by: Maxime Ripard <[email protected]>
|
|
|
clk_disable_unprepare(hvs->core_clk);
|
|
|
|
|
|
vc4->hvs = NULL;
|
|
|
-@@ -1581,6 +2110,7 @@ static void vc4_hvs_dev_remove(struct pl
|
|
|
+@@ -1592,6 +2121,7 @@ static void vc4_hvs_dev_remove(struct pl
|
|
|
|
|
|
static const struct of_device_id vc4_hvs_dt_match[] = {
|
|
|
{ .compatible = "brcm,bcm2711-hvs" },
|