Parameter soc_data for tegra TX

I am using the GPIO of the tegra TX2 and I see from the pinctrl-tegra.c that the tegra_pinctrl_prove() is defined but no place has been found to call it. Therefore, I cannot know where the parameter soc_data was passed from.

Target_gpio_of_match is defined in gpio-tegra.c as:
static struct struct of_device_id tegra_gpio_of_match={
{.compatible = "nivia,tegra210-gpio, .data=&tegra210_gpio_config},
{.compatible = "nivia,tegra30-gpio, .data=&tegra30_gpio_config},
{.compatible = "nivia,tegra20-gpio, .data=&tegra20_gpio_config},

not found:
{.compatible = "nivia,tegra186-gpio, .data=&tegra186_gpio_config},

However, what is defined in the dts file is:
Gpio_mian: gpio@2200000{
      Compatible = "nvidia,tegra186-gpio

How TX2 boots GPIO

hello zh_sh_y,

I don’t quite understand your question, may I have more details about your use-case.
please also refer to [Release 28.2 Development Guide] in the [NVIDIA Tegra Linux Driver Package],
check the [TX2 Configuring Pinmux GPIO and PAD] chapter for more details.