Lines Matching defs:params
140 static struct winbond_gpio_params params;
357 for_each_set_bit(i, ¶ms.gpios, BITS_PER_LONG) {
372 if (*gpio_num == 0 && !params.pledgpio)
374 else if (*gpio_num == 1 && !params.beepgpio)
376 else if ((*gpio_num == 5 || *gpio_num == 6) && !params.i2cgpio)
516 params.i2cgpio = !winbond_sio_reg_btest(base, WB_SIO_REG_I2C_PS,
518 if (!params.i2cgpio)
555 if (params.ppgpios & BIT(idx))
558 else if (params.odgpios & BIT(idx))
575 for_each_set_bit(i, ¶ms.gpios, BITS_PER_LONG)
577 __clear_bit(i, ¶ms.gpios);
579 if (!params.gpios) {
617 gpios_rem = params.gpios & ~GENMASK(ARRAY_SIZE(winbond_gpio_infos) - 1,
622 params.gpios &= ~gpios_rem;
625 if (params.ppgpios & params.odgpios) {
630 if (params.base != 0)
631 return winbond_gpio_check_chip(params.base) == 0;
637 params.base = WB_SIO_BASE;
638 ret = winbond_gpio_check_chip(params.base);
644 params.base = WB_SIO_BASE_HIGH;
645 return winbond_gpio_check_chip(params.base) == 0;
652 if (params.base == 0)
655 ret = winbond_sio_enter(params.base);
659 ret = winbond_gpio_configure(params.base);
661 winbond_sio_leave(params.base);
671 winbond_gpio_chip.ngpio = hweight_long(params.gpios) * 8;
677 if (params.gpios & BIT(5))
682 return devm_gpiochip_add_data(dev, &winbond_gpio_chip, ¶ms.base);
695 module_param_named(base, params.base, ulong, 0444);
700 module_param_named(gpios, params.gpios, ulong, 0444);
709 module_param_named(ppgpios, params.ppgpios, ulong, 0444);
713 module_param_named(odgpios, params.odgpios, ulong, 0444);
723 module_param_named(pledgpio, params.pledgpio, bool, 0644);
727 module_param_named(beepgpio, params.beepgpio, bool, 0644);