pwm: tachometer: Fix build for Linux v6.10

In Linux v6.10, a pointer to a dynamically allocated 'struct device'
was replaced with a statically allocated 'struct device' in the
'pwm_chip' structure. Update the Tegra PWM Tachometer driver accordingly
to fix the build for Linux v6.10.

Bug 4593750

Change-Id: I9d629746290282b5c1858f8308128d94ff155c49
Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/3123219
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
This commit is contained in:
Jon Hunter
2024-04-10 15:08:06 +01:00
committed by mobile promotions
parent 39e07fb02b
commit 0104837e60
3 changed files with 67 additions and 27 deletions

View File

@@ -139,6 +139,7 @@ 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 += pwm_chip_struct_has_base_arg
NV_CONFTEST_FUNCTION_COMPILE_TESTS += pwm_chip_struct_has_struct_device
NV_CONFTEST_FUNCTION_COMPILE_TESTS += pwm_ops_struct_has_owner
NV_CONFTEST_FUNCTION_COMPILE_TESTS += pci_disable_pcie_error_reporting
NV_CONFTEST_FUNCTION_COMPILE_TESTS += pci_enable_pcie_error_reporting

View File

@@ -6713,6 +6713,27 @@ compile_test() {
compile_check_conftest "$CODE" "NV_DEVICE_ADD_DISK_HAS_INT_RETURN_TYPE" "" "types"
;;
pwm_chip_struct_has_struct_device)
#
# Determine whether the pwm_chip structure has a 'struct device'
# member and not a pointer to a dynamically allocated
# 'struct device'.
#
# Commit 4c56b1434b81 ("pwm: Add a struct device to struct
# pwm_chip") replaced a pointer to a dynamically allocated
# 'struct device' with a statically allocated 'struct device'.
# Note that this is part of a large re-work of the PWM core to
# move the allocation of the pwm_chip structure into the PWM core.
#
CODE="
#include <linux/pwm.h>
void conftest_pwm_chip_struct_has_struct_device(struct pwm_chip *chip) {
struct device *dev = &chip->dev;
}"
compile_check_conftest "$CODE" "NV_PWM_CHIP_STRUCT_HAS_STRUCT_DEVICE" "" "types"
;;
devm_tegra_core_dev_init_opp_table_common)
#
# Determine whether devm_tegra_core_dev_init_opp_table_common is