On Mon, Jun 27, 2016 at 03:25:11PM +0200, Rafael J. Wysocki wrote: > On Mon, Jun 27, 2016 at 11:26 AM, Heikki Krogerus > <heikki.krogerus@xxxxxxxxxxxxxxx> wrote: > > Whoa! Hold on! > > > > On Thu, Jun 23, 2016 at 05:52:53PM -0700, Bin Gao wrote: > >> Broxton platform firmware has defined new customized operation regions > >> called regs for PMIC chip - regs op region is used to handle the > >> PMIC gpio mainly intended for the TYPE-C VBUS and Orientation. > >> > >> The intel_gpio_ctx structure is created for the purpose of handling > >> the PMIC gpio register read and write. > >> > >> Signed-off-by: Felipe Balbi <felipe.balbi@xxxxxxxxxxxxxxx> > >> Signed-off-by: Chandra Sekhar Anagani <chandra.sekhar.anagani@xxxxxxxxx> > >> Signed-off-by: Bin Gao <bin.gao@xxxxxxxxx> > >> --- > >> Changes in v4: > >> - various fixes to address Aaron's comments. > >> Changes in v3: none > >> Changes in v2: none > >> drivers/acpi/pmic/intel_pmic.c | 74 ++++++++++++++++++++++++++++++++++++++++-- > >> drivers/acpi/pmic/intel_pmic.h | 5 +++ > >> 2 files changed, 76 insertions(+), 3 deletions(-) > >> > >> diff --git a/drivers/acpi/pmic/intel_pmic.c b/drivers/acpi/pmic/intel_pmic.c > >> index 410e96f..e11d1e0 100644 > >> --- a/drivers/acpi/pmic/intel_pmic.c > >> +++ b/drivers/acpi/pmic/intel_pmic.c > >> @@ -21,12 +21,14 @@ > >> > >> #define PMIC_POWER_OPREGION_ID 0x8d > >> #define PMIC_THERMAL_OPREGION_ID 0x8c > >> +#define PMIC_REGS_OPREGION_ID 0x8f > >> > >> struct intel_pmic_opregion { > >> struct mutex lock; > >> struct acpi_lpat_conversion_table *lpat_table; > >> struct regmap *regmap; > >> struct intel_pmic_opregion_data *data; > >> + struct pmic_gpio_ctx ctx; > > > > What gpio? > > > >> }; > >> > >> static int pmic_get_reg_bit(int address, struct pmic_table *table, > >> @@ -204,6 +206,56 @@ static acpi_status intel_pmic_thermal_handler(u32 function, > >> return AE_OK; > >> } > >> > >> +static acpi_status intel_pmic_gpio_handler(u32 function, > >> + acpi_physical_address address, u32 bits, u64 *value64, > >> + void *handler_context, void *region_context) > > > > What the heck is this? Why is this suddenly a gpio handler? > > > > This is handler for an operation region, not some gpio! > > OK > > What about if I replaced this one with the original one from Felipe you sent? That works for me. Thanks, -- heikki -- To unsubscribe from this list: send the line "unsubscribe linux-acpi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html