@@ -956,6 +957,134 @@ static const struct rvin_info rcar_info_gen2 = {
.max_height = 2048,
};
+static const struct rvin_info rcar_info_r8a7795 = {
+ .chip = RCAR_GEN3,
+ .use_mc = true,
+ .max_width = 4096,
+ .max_height = 4096,
+
+ .num_chsels = 5,
+ .chsels = {
+ {
+ { .csi = RVIN_CSI40, .chan = 0 },
+ { .csi = RVIN_CSI20, .chan = 0 },
+ { .csi = RVIN_CSI40, .chan = 1 },
+ { .csi = RVIN_CSI40, .chan = 0 },
+ { .csi = RVIN_CSI20, .chan = 0 },
+ }, {
+ { .csi = RVIN_CSI20, .chan = 0 },
+ { .csi = RVIN_CSI40, .chan = 1 },
+ { .csi = RVIN_CSI40, .chan = 0 },
+ { .csi = RVIN_CSI40, .chan = 1 },
+ { .csi = RVIN_CSI20, .chan = 1 },
+ }, {
+ { .csi = RVIN_CSI20, .chan = 1 },
+ { .csi = RVIN_CSI40, .chan = 0 },
+ { .csi = RVIN_CSI20, .chan = 0 },
+ { .csi = RVIN_CSI40, .chan = 2 },
+ { .csi = RVIN_CSI20, .chan = 2 },
+ }, {
+ { .csi = RVIN_CSI40, .chan = 1 },
+ { .csi = RVIN_CSI20, .chan = 1 },
+ { .csi = RVIN_CSI20, .chan = 1 },
+ { .csi = RVIN_CSI40, .chan = 3 },
+ { .csi = RVIN_CSI20, .chan = 3 },
+ }, {
+ { .csi = RVIN_CSI41, .chan = 0 },
+ { .csi = RVIN_CSI20, .chan = 0 },
+ { .csi = RVIN_CSI41, .chan = 1 },
+ { .csi = RVIN_CSI41, .chan = 0 },
+ { .csi = RVIN_CSI20, .chan = 0 },
+ }, {
+ { .csi = RVIN_CSI20, .chan = 0 },
+ { .csi = RVIN_CSI41, .chan = 1 },
+ { .csi = RVIN_CSI41, .chan = 0 },
+ { .csi = RVIN_CSI41, .chan = 1 },
+ { .csi = RVIN_CSI20, .chan = 1 },
+ }, {
+ { .csi = RVIN_CSI20, .chan = 1 },
+ { .csi = RVIN_CSI41, .chan = 0 },
+ { .csi = RVIN_CSI20, .chan = 0 },
+ { .csi = RVIN_CSI41, .chan = 2 },
+ { .csi = RVIN_CSI20, .chan = 2 },
+ }, {
+ { .csi = RVIN_CSI41, .chan = 1 },
+ { .csi = RVIN_CSI20, .chan = 1 },
+ { .csi = RVIN_CSI20, .chan = 1 },
+ { .csi = RVIN_CSI41, .chan = 3 },
+ { .csi = RVIN_CSI20, .chan = 3 },
+ },
+ },
+};
+
+static const struct rvin_info rcar_info_r8a7795es1 = {
+ .chip = RCAR_GEN3,
+ .use_mc = true,
+ .max_width = 4096,
+ .max_height = 4096,
+
+ .num_chsels = 6,
+ .chsels = {
+ {
+ { .csi = RVIN_CSI40, .chan = 0 },
+ { .csi = RVIN_CSI20, .chan = 0 },
+ { .csi = RVIN_CSI21, .chan = 0 },
+ { .csi = RVIN_CSI40, .chan = 0 },
+ { .csi = RVIN_CSI20, .chan = 0 },
+ { .csi = RVIN_CSI21, .chan = 0 },
+ }, {
+ { .csi = RVIN_CSI20, .chan = 0 },
+ { .csi = RVIN_CSI21, .chan = 0 },
+ { .csi = RVIN_CSI40, .chan = 0 },
+ { .csi = RVIN_CSI40, .chan = 1 },
+ { .csi = RVIN_CSI20, .chan = 1 },
+ { .csi = RVIN_CSI21, .chan = 1 },
+ }, {
+ { .csi = RVIN_CSI21, .chan = 0 },
+ { .csi = RVIN_CSI40, .chan = 0 },
+ { .csi = RVIN_CSI20, .chan = 0 },
+ { .csi = RVIN_CSI40, .chan = 2 },
+ { .csi = RVIN_CSI20, .chan = 2 },
+ { .csi = RVIN_CSI21, .chan = 2 },
+ }, {
+ { .csi = RVIN_CSI40, .chan = 1 },
+ { .csi = RVIN_CSI20, .chan = 1 },
+ { .csi = RVIN_CSI21, .chan = 1 },
+ { .csi = RVIN_CSI40, .chan = 3 },
+ { .csi = RVIN_CSI20, .chan = 3 },
+ { .csi = RVIN_CSI21, .chan = 3 },
+ }, {
+ { .csi = RVIN_CSI41, .chan = 0 },
+ { .csi = RVIN_CSI20, .chan = 0 },
+ { .csi = RVIN_CSI21, .chan = 0 },
+ { .csi = RVIN_CSI41, .chan = 0 },
+ { .csi = RVIN_CSI20, .chan = 0 },
+ { .csi = RVIN_CSI21, .chan = 0 },
+ }, {
+ { .csi = RVIN_CSI20, .chan = 0 },
+ { .csi = RVIN_CSI21, .chan = 0 },
+ { .csi = RVIN_CSI41, .chan = 0 },
+ { .csi = RVIN_CSI41, .chan = 1 },
+ { .csi = RVIN_CSI20, .chan = 1 },
+ { .csi = RVIN_CSI21, .chan = 1 },
+ }, {
+ { .csi = RVIN_CSI21, .chan = 0 },
+ { .csi = RVIN_CSI41, .chan = 0 },
+ { .csi = RVIN_CSI20, .chan = 0 },
+ { .csi = RVIN_CSI41, .chan = 2 },
+ { .csi = RVIN_CSI20, .chan = 2 },
+ { .csi = RVIN_CSI21, .chan = 2 },
+ }, {
+ { .csi = RVIN_CSI41, .chan = 1 },
+ { .csi = RVIN_CSI20, .chan = 1 },
+ { .csi = RVIN_CSI21, .chan = 1 },
+ { .csi = RVIN_CSI41, .chan = 3 },
+ { .csi = RVIN_CSI20, .chan = 3 },
+ { .csi = RVIN_CSI21, .chan = 3 },
+ },
+ },
+};
+
static const struct of_device_id rvin_of_id_table[] = {
{
.compatible = "renesas,vin-r8a7778",