mirror of
git://nv-tegra.nvidia.com/linux-nv-oot.git
synced 2025-12-22 17:25:35 +03:00
media: camera: Ensure gpio_device_get_chip is present
In Linux v6.7, both gpio_device_find() and gpio_device_get_chip() were added. However, don't assume that if one is present then so is the other and so add a test to check if gpio_device_get_chip() is also present. Bug 4471899 Change-Id: I0c547a52b0f397aef43884ab76d815573e8ed3f8 Signed-off-by: Jon Hunter <jonathanh@nvidia.com> Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/3112133 Tested-by: mobile promotions <svcmobile_promotions@nvidia.com> Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
This commit is contained in:
committed by
mobile promotions
parent
338d28218c
commit
9458d6b97f
@@ -46,7 +46,8 @@ static struct gpio_chip *cdi_gpio_get_chip(struct platform_device *pdev,
|
|||||||
struct cdi_gpio_plat_data *pd)
|
struct cdi_gpio_plat_data *pd)
|
||||||
{
|
{
|
||||||
struct gpio_chip *gc = NULL;
|
struct gpio_chip *gc = NULL;
|
||||||
#if defined(NV_GPIO_DEVICE_FIND_PRESENT) /* Linux 6.7 */
|
#if defined(NV_GPIO_DEVICE_FIND_PRESENT) && \
|
||||||
|
defined(NV_GPIO_DEVICE_GET_CHIP_PRESENT) /* Linux 6.7 */
|
||||||
struct gpio_device *gdev;
|
struct gpio_device *gdev;
|
||||||
#endif
|
#endif
|
||||||
char name[MAX_STR_SIZE];
|
char name[MAX_STR_SIZE];
|
||||||
@@ -58,7 +59,8 @@ static struct gpio_chip *cdi_gpio_get_chip(struct platform_device *pdev,
|
|||||||
}
|
}
|
||||||
strcpy(name, pd->gpio_prnt_chip);
|
strcpy(name, pd->gpio_prnt_chip);
|
||||||
|
|
||||||
#if defined(NV_GPIO_DEVICE_FIND_PRESENT) /* Linux 6.7 */
|
#if defined(NV_GPIO_DEVICE_FIND_PRESENT) && \
|
||||||
|
defined(NV_GPIO_DEVICE_GET_CHIP_PRESENT) /* Linux 6.7 */
|
||||||
gdev = gpio_device_find(name, cdi_gpio_chip_match);
|
gdev = gpio_device_find(name, cdi_gpio_chip_match);
|
||||||
if (gdev) {
|
if (gdev) {
|
||||||
gc = gpio_device_get_chip(gdev);
|
gc = gpio_device_get_chip(gdev);
|
||||||
|
|||||||
@@ -47,7 +47,8 @@ static struct gpio_chip *isc_gpio_get_chip(struct platform_device *pdev,
|
|||||||
{
|
{
|
||||||
struct gpio_chip *gc = NULL;
|
struct gpio_chip *gc = NULL;
|
||||||
char name[MAX_STR_SIZE];
|
char name[MAX_STR_SIZE];
|
||||||
#if defined(NV_GPIO_DEVICE_FIND_PRESENT) /* Linux 6.7 */
|
#if defined(NV_GPIO_DEVICE_FIND_PRESENT) && \
|
||||||
|
defined(NV_GPIO_DEVICE_GET_CHIP_PRESENT) /* Linux 6.7 */
|
||||||
struct gpio_device *gdev;
|
struct gpio_device *gdev;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@@ -58,7 +59,8 @@ static struct gpio_chip *isc_gpio_get_chip(struct platform_device *pdev,
|
|||||||
}
|
}
|
||||||
strcpy(name, pd->gpio_prnt_chip);
|
strcpy(name, pd->gpio_prnt_chip);
|
||||||
|
|
||||||
#if defined(NV_GPIO_DEVICE_FIND_PRESENT) /* Linux 6.7 */
|
#if defined(NV_GPIO_DEVICE_FIND_PRESENT) && \
|
||||||
|
defined(NV_GPIO_DEVICE_GET_CHIP_PRESENT) /* Linux 6.7 */
|
||||||
gdev = gpio_device_find(name, isc_gpio_chip_match);
|
gdev = gpio_device_find(name, isc_gpio_chip_match);
|
||||||
if (gdev) {
|
if (gdev) {
|
||||||
gc = gpio_device_get_chip(gdev);
|
gc = gpio_device_get_chip(gdev);
|
||||||
|
|||||||
@@ -137,6 +137,7 @@ NV_CONFTEST_FUNCTION_COMPILE_TESTS += netif_napi_add_weight
|
|||||||
NV_CONFTEST_FUNCTION_COMPILE_TESTS += of_get_named_gpio_flags
|
NV_CONFTEST_FUNCTION_COMPILE_TESTS += of_get_named_gpio_flags
|
||||||
NV_CONFTEST_FUNCTION_COMPILE_TESTS += gpio_chip_struct_has_of_node_present
|
NV_CONFTEST_FUNCTION_COMPILE_TESTS += gpio_chip_struct_has_of_node_present
|
||||||
NV_CONFTEST_FUNCTION_COMPILE_TESTS += gpio_device_find
|
NV_CONFTEST_FUNCTION_COMPILE_TESTS += gpio_device_find
|
||||||
|
NV_CONFTEST_FUNCTION_COMPILE_TESTS += gpio_device_get_chip
|
||||||
NV_CONFTEST_FUNCTION_COMPILE_TESTS += pde_data
|
NV_CONFTEST_FUNCTION_COMPILE_TESTS += pde_data
|
||||||
NV_CONFTEST_FUNCTION_COMPILE_TESTS += pwm_chip_struct_has_base_arg
|
NV_CONFTEST_FUNCTION_COMPILE_TESTS += pwm_chip_struct_has_base_arg
|
||||||
NV_CONFTEST_FUNCTION_COMPILE_TESTS += pwm_ops_struct_has_owner
|
NV_CONFTEST_FUNCTION_COMPILE_TESTS += pwm_ops_struct_has_owner
|
||||||
|
|||||||
@@ -7125,6 +7125,23 @@ compile_test() {
|
|||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
|
|
||||||
|
gpio_device_get_chip)
|
||||||
|
#
|
||||||
|
# Determine if function gpio_device_get_chip() is present.
|
||||||
|
#
|
||||||
|
# Added by commit 9b418780844c ("gpiolib: reluctantly provide
|
||||||
|
# gpio_device_get_chip()") in Linux v6.7.
|
||||||
|
#
|
||||||
|
CODE="
|
||||||
|
#include <linux/gpio/driver.h>
|
||||||
|
void conftest_gpio_device_get_chip(void)
|
||||||
|
{
|
||||||
|
gpio_device_get_chip();
|
||||||
|
}"
|
||||||
|
|
||||||
|
compile_check_conftest "$CODE" "NV_GPIO_DEVICE_GET_CHIP_PRESENT" "" "functions"
|
||||||
|
;;
|
||||||
|
|
||||||
netif_set_tso_max_size)
|
netif_set_tso_max_size)
|
||||||
#
|
#
|
||||||
# Determine if netif_set_tso_max_size() function is present
|
# Determine if netif_set_tso_max_size() function is present
|
||||||
|
|||||||
Reference in New Issue
Block a user