Searched refs:htcpld (Results 1 - 2 of 2) sorted by relevance

/linux-4.4.14/drivers/mfd/
H A Dhtc-i2cpld.c36 #include <linux/htcpld.h>
78 /* htcpld info */
84 * on the htcpld chip itself. So, we simply ignore interrupts that
115 .name = "htcpld",
128 struct htcpld_data *htcpld = dev; htcpld_handler() local
133 if (!htcpld) { htcpld_handler()
134 pr_debug("htcpld is null in ISR\n"); htcpld_handler()
145 for (i = 0; i < htcpld->nchips; i++) { htcpld_handler()
146 struct htcpld_chip *chip = &htcpld->chip[i]; htcpld_handler()
212 if (htcpld->int_reset_gpio_hi) htcpld_handler()
213 gpio_set_value(htcpld->int_reset_gpio_hi, 1); htcpld_handler()
214 if (htcpld->int_reset_gpio_lo) htcpld_handler()
215 gpio_set_value(htcpld->int_reset_gpio_lo, 0); htcpld_handler()
263 if (!strncmp(chip->label, "htcpld-out", 10)) { htcpld_chip_get()
266 } else if (!strncmp(chip->label, "htcpld-in", 9)) { htcpld_chip_get()
318 struct htcpld_data *htcpld; htcpld_setup_chip_irq() local
323 htcpld = platform_get_drvdata(pdev); htcpld_setup_chip_irq()
324 chip = &htcpld->chip[chip_index]; htcpld_setup_chip_irq()
342 struct htcpld_data *htcpld; htcpld_register_chip_i2c() local
353 htcpld = platform_get_drvdata(pdev); htcpld_register_chip_i2c()
354 chip = &htcpld->chip[chip_index]; htcpld_register_chip_i2c()
373 strlcpy(info.type, "htcpld-chip", I2C_NAME_SIZE); htcpld_register_chip_i2c()
400 struct htcpld_data *htcpld; htcpld_unregister_chip_i2c() local
404 htcpld = platform_get_drvdata(pdev); htcpld_unregister_chip_i2c()
405 chip = &htcpld->chip[chip_index]; htcpld_unregister_chip_i2c()
415 struct htcpld_data *htcpld; htcpld_register_chip_gpio() local
425 htcpld = platform_get_drvdata(pdev); htcpld_register_chip_gpio()
426 chip = &htcpld->chip[chip_index]; htcpld_register_chip_gpio()
431 gpio_chip->label = "htcpld-out"; htcpld_register_chip_gpio()
442 gpio_chip->label = "htcpld-in"; htcpld_register_chip_gpio()
474 struct htcpld_data *htcpld; htcpld_setup_chips() local
481 htcpld = platform_get_drvdata(pdev); htcpld_setup_chips()
484 htcpld->nchips = pdata->num_chip; htcpld_setup_chips()
485 htcpld->chip = devm_kzalloc(dev, sizeof(struct htcpld_chip) * htcpld->nchips, htcpld_setup_chips()
487 if (!htcpld->chip) { htcpld_setup_chips()
493 for (i = 0; i < htcpld->nchips; i++) { htcpld_setup_chips()
497 htcpld->chip[i].reset = pdata->chip[i].reset; htcpld_setup_chips()
498 htcpld->chip[i].cache_out = pdata->chip[i].reset; htcpld_setup_chips()
499 htcpld->chip[i].cache_in = 0; htcpld_setup_chips()
500 htcpld->chip[i].dev = dev; htcpld_setup_chips()
501 htcpld->chip[i].irq_start = pdata->chip[i].irq_base; htcpld_setup_chips()
502 htcpld->chip[i].nirqs = pdata->chip[i].num_irqs; htcpld_setup_chips()
504 INIT_WORK(&(htcpld->chip[i].set_val_work), &htcpld_chip_set_ni); htcpld_setup_chips()
505 spin_lock_init(&(htcpld->chip[i].lock)); htcpld_setup_chips()
508 if (htcpld->chained_irq) { htcpld_setup_chips()
536 struct htcpld_data *htcpld; htcpld_core_probe() local
547 dev_warn(dev, "Platform data not found for htcpld core!\n"); htcpld_core_probe()
551 htcpld = devm_kzalloc(dev, sizeof(struct htcpld_data), GFP_KERNEL); htcpld_core_probe()
552 if (!htcpld) htcpld_core_probe()
559 htcpld->chained_irq = res->start; htcpld_core_probe()
564 ret = request_threaded_irq(htcpld->chained_irq, htcpld_core_probe()
566 flags, pdev->name, htcpld); htcpld_core_probe()
575 platform_set_drvdata(pdev, htcpld); htcpld_core_probe()
577 /* Setup the htcpld chips */ htcpld_core_probe()
584 ret = gpio_request(pdata->int_reset_gpio_hi, "htcpld-core"); htcpld_core_probe()
591 htcpld->int_reset_gpio_hi = 0; htcpld_core_probe()
593 htcpld->int_reset_gpio_hi = pdata->int_reset_gpio_hi; htcpld_core_probe()
594 gpio_set_value(htcpld->int_reset_gpio_hi, 1); htcpld_core_probe()
599 ret = gpio_request(pdata->int_reset_gpio_lo, "htcpld-core"); htcpld_core_probe()
606 htcpld->int_reset_gpio_lo = 0; htcpld_core_probe()
608 htcpld->int_reset_gpio_lo = pdata->int_reset_gpio_lo; htcpld_core_probe()
609 gpio_set_value(htcpld->int_reset_gpio_lo, 0); htcpld_core_probe()
619 { "htcpld-chip", 0 },
627 .name = "htcpld-chip",
635 .name = "i2c-htcpld",
/linux-4.4.14/arch/arm/mach-omap1/
H A Dboard-htcherald.c35 #include <linux/htcpld.h>
160 * The htcpld chip requires a gpio write to a specific line
375 .name = "i2c-htcpld",

Completed in 74 milliseconds