From 1c7d6584a7811b7785ae5c1e378f14b5ba0971cf Mon Sep 17 00:00:00 2001 From: takeshi_hoshina Date: Mon, 2 Nov 2020 11:07:33 +0900 Subject: basesystem-jj recipes --- ...-media-i2c-max9286-parse-crossbar-from-dt.patch | 58 ++++++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 bsp/meta-rcar/meta-rcar-gen3-adas/recipes-kernel/linux/linux-renesas/0466-media-i2c-max9286-parse-crossbar-from-dt.patch (limited to 'bsp/meta-rcar/meta-rcar-gen3-adas/recipes-kernel/linux/linux-renesas/0466-media-i2c-max9286-parse-crossbar-from-dt.patch') diff --git a/bsp/meta-rcar/meta-rcar-gen3-adas/recipes-kernel/linux/linux-renesas/0466-media-i2c-max9286-parse-crossbar-from-dt.patch b/bsp/meta-rcar/meta-rcar-gen3-adas/recipes-kernel/linux/linux-renesas/0466-media-i2c-max9286-parse-crossbar-from-dt.patch new file mode 100644 index 00000000..f96696d6 --- /dev/null +++ b/bsp/meta-rcar/meta-rcar-gen3-adas/recipes-kernel/linux/linux-renesas/0466-media-i2c-max9286-parse-crossbar-from-dt.patch @@ -0,0 +1,58 @@ +From 0220ffebe645d66242aca68d7a374140dea9e6a3 Mon Sep 17 00:00:00 2001 +From: Vladimir Barinov +Date: Thu, 30 Jan 2020 16:38:19 +0300 +Subject: [PATCH] media: i2c: max9286: parse crossbar from dt + +This allows to parse crossbar from device tree + +Signed-off-by: Vladimir Barinov +--- + drivers/media/i2c/soc_camera/max9286.c | 11 +++++++---- + 1 file changed, 7 insertions(+), 4 deletions(-) + +diff --git a/drivers/media/i2c/soc_camera/max9286.c b/drivers/media/i2c/soc_camera/max9286.c +index f6c6b0a..0a1732a 100644 +--- a/drivers/media/i2c/soc_camera/max9286.c ++++ b/drivers/media/i2c/soc_camera/max9286.c +@@ -56,6 +56,7 @@ struct max9286_priv { + int dbl; + int dt; + int hsgen; ++ u64 crossbar; + char cb[16]; + int hts; + int vts; +@@ -141,8 +142,8 @@ static int switchin = 0; + module_param(switchin, int, 0644); + MODULE_PARM_DESC(switchin, " COAX SWITCH IN+ and IN- (default: 0 - not switched)"); + +-static long crossbar = 0xba9876543210; +-module_param(crossbar, long, 0644); ++static unsigned long crossbar = 0xba9876543210; ++module_param(crossbar, ulong, 0644); + MODULE_PARM_DESC(crossbar, " Crossbar setup (default: ba9876543210 - reversed)"); + + enum { +@@ -738,6 +739,8 @@ static int max9286_parse_dt(struct i2c_client *client) + priv->pclk = pclk; + if (of_property_read_u32(np, "maxim,switchin", &priv->switchin)) + priv->switchin = 0; ++ if (of_property_read_u64(np, "maxim,crossbar", &priv->crossbar)) ++ priv->crossbar = crossbar; + + /* module params override dts */ + if (him) +@@ -773,8 +776,8 @@ static int max9286_parse_dt(struct i2c_client *client) + + /* parse crossbar setup */ + for (i = 0; i < 16; i++) { +- priv->cb[i] = crossbar % 16; +- crossbar /= 16; ++ priv->cb[i] = priv->crossbar % 16; ++ priv->crossbar /= 16; + } + + for (i = 0; i < priv->links; i++) { +-- +2.7.4 + -- cgit 1.2.3-korg