video: tegra: Fix TI serializer build for Linux v6.1

Upstream Linux commit ed5c2f5fd10d ("i2c: Make remove callback
return void") in Linux v6.1, updates the i2c remove callback to
prototype to return void instead of int. This is causes the TI FPDLink
DP Serializer driver build to fail for Linux v6.1. Update this driver to
fix the build for Linux v6.1.

Bug 3820317
Bug 3835208

Change-Id: I35c3ac90070b7324330c31dc69d06f53cecd5b67
Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvidia/+/2831358
Reviewed-by: svc_kernel_abi <svc_kernel_abi@nvidia.com>
Reviewed-by: svc-mobile-coverity <svc-mobile-coverity@nvidia.com>
Reviewed-by: svc-mobile-cert <svc-mobile-cert@nvidia.com>
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
This commit is contained in:
Jon Hunter
2022-12-20 12:43:05 +00:00
committed by Laxman Dewangan
parent f452a0d7c6
commit 2332bac0d7

View File

@@ -30,6 +30,7 @@
#include <linux/workqueue.h>
#include <linux/of_device.h>
#include <linux/of.h>
#include <linux/version.h>
// Target I2C register address
#define TI_TARGET_ID_0 0x70
@@ -1020,14 +1021,20 @@ static int ti_fpdlink_dp_ser_probe(struct i2c_client *client)
return ret;
}
#if KERNEL_VERSION(6, 1, 0) <= LINUX_VERSION_CODE
static void ti_fpdlink_dp_ser_remove(struct i2c_client *client)
#else
static int ti_fpdlink_dp_ser_remove(struct i2c_client *client)
#endif
{
struct ti_fpdlink_dp_ser_priv *priv = i2c_get_clientdata(client);
i2c_unregister_device(client);
gpiod_set_value_cansleep(priv->gpiod_pwrdn, 0);
#if KERNEL_VERSION(6, 1, 0) > LINUX_VERSION_CODE
return 0;
#endif
}
static const struct of_device_id ti_fpdlink_dp_ser_dt_ids[] = {