diff --git a/drivers/pinctrl/intel/pinctrl-intel.c b/drivers/pinctrl/intel/pinctrl-intel.c index a1b286dc70080..6a274e20d9269 100644 --- a/drivers/pinctrl/intel/pinctrl-intel.c +++ b/drivers/pinctrl/intel/pinctrl-intel.c @@ -1281,6 +1281,9 @@ static int intel_pinctrl_add_padgroups(struct intel_pinctrl *pctrl, case INTEL_GPIO_BASE_MATCH: gpps[i].gpio_base = gpps[i].base; break; + case INTEL_GPIO_BASE_ZERO: + gpps[i].gpio_base = 0; + break; case INTEL_GPIO_BASE_NOMAP: default: break; diff --git a/drivers/pinctrl/intel/pinctrl-intel.h b/drivers/pinctrl/intel/pinctrl-intel.h index 89f38fae6da79..87fc0555ef90e 100644 --- a/drivers/pinctrl/intel/pinctrl-intel.h +++ b/drivers/pinctrl/intel/pinctrl-intel.h @@ -70,10 +70,12 @@ struct intel_padgroup { /** * enum - Special treatment for GPIO base in pad group * + * @INTEL_GPIO_BASE_ZERO: force GPIO base to be 0 * @INTEL_GPIO_BASE_NOMAP: no GPIO mapping should be created * @INTEL_GPIO_BASE_MATCH: matches with starting pin number */ enum { + INTEL_GPIO_BASE_ZERO = -2, INTEL_GPIO_BASE_NOMAP = -1, INTEL_GPIO_BASE_MATCH = 0, };