/kernel/linux/linux-6.6/drivers/pwm/ |
H A D | pwm-pca9685.c | 95 static bool pca9685_prescaler_can_change(struct pca9685 *pca, int channel) in pca9685_prescaler_can_change() argument 98 if (bitmap_empty(pca->pwms_enabled, PCA9685_MAXCHAN + 1)) in pca9685_prescaler_can_change() 101 if (bitmap_weight(pca->pwms_enabled, PCA9685_MAXCHAN + 1) > 1) in pca9685_prescaler_can_change() 107 return test_bit(channel, pca->pwms_enabled); in pca9685_prescaler_can_change() 110 static int pca9685_read_reg(struct pca9685 *pca, unsigned int reg, unsigned int *val) in pca9685_read_reg() argument 112 struct device *dev = pca->chip.dev; in pca9685_read_reg() 115 err = regmap_read(pca->regmap, reg, val); in pca9685_read_reg() 122 static int pca9685_write_reg(struct pca9685 *pca, unsigned int reg, unsigned int val) in pca9685_write_reg() argument 124 struct device *dev = pca->chip.dev; in pca9685_write_reg() 127 err = regmap_write(pca in pca9685_write_reg() 135 pca9685_pwm_set_duty(struct pca9685 *pca, int channel, unsigned int duty) pca9685_pwm_set_duty() argument 174 pca9685_pwm_get_duty(struct pca9685 *pca, int channel) pca9685_pwm_get_duty() argument 211 pca9685_pwm_test_and_set_inuse(struct pca9685 *pca, int pwm_idx) pca9685_pwm_test_and_set_inuse() argument 241 pca9685_pwm_clear_inuse(struct pca9685 *pca, int pwm_idx) pca9685_pwm_clear_inuse() argument 250 struct pca9685 *pca = gpiochip_get_data(gpio); pca9685_pwm_gpio_request() local 260 struct pca9685 *pca = gpiochip_get_data(gpio); pca9685_pwm_gpio_get() local 268 struct pca9685 *pca = gpiochip_get_data(gpio); pca9685_pwm_gpio_set() local 275 struct pca9685 *pca = gpiochip_get_data(gpio); pca9685_pwm_gpio_free() local 309 pca9685_pwm_gpio_probe(struct pca9685 *pca) pca9685_pwm_gpio_probe() argument 329 pca9685_pwm_test_and_set_inuse(struct pca9685 *pca, int pwm_idx) pca9685_pwm_test_and_set_inuse() argument 336 pca9685_pwm_clear_inuse(struct pca9685 *pca, int pwm_idx) pca9685_pwm_clear_inuse() argument 340 pca9685_pwm_gpio_probe(struct pca9685 *pca) pca9685_pwm_gpio_probe() argument 346 pca9685_set_sleep_mode(struct pca9685 *pca, bool enable) pca9685_set_sleep_mode() argument 366 struct pca9685 *pca = to_pca(chip); __pca9685_pwm_apply() local 418 struct pca9685 *pca = to_pca(chip); pca9685_pwm_apply() local 437 struct pca9685 *pca = to_pca(chip); pca9685_pwm_get_state() local 473 struct pca9685 *pca = to_pca(chip); pca9685_pwm_request() local 492 struct pca9685 *pca = to_pca(chip); pca9685_pwm_free() local 520 struct pca9685 *pca; pca9685_pwm_probe() local 604 struct pca9685 *pca = i2c_get_clientdata(client); pca9685_pwm_remove() local 619 struct pca9685 *pca = i2c_get_clientdata(client); pca9685_pwm_runtime_suspend() local 628 struct pca9685 *pca = i2c_get_clientdata(client); pca9685_pwm_runtime_resume() local [all...] |
/kernel/linux/linux-5.10/drivers/pwm/ |
H A D | pwm-pca9685.c | 91 static bool pca9685_pwm_test_and_set_inuse(struct pca9685 *pca, int pwm_idx) in pca9685_pwm_test_and_set_inuse() argument 95 mutex_lock(&pca->lock); in pca9685_pwm_test_and_set_inuse() 101 if (!bitmap_empty(pca->pwms_inuse, PCA9685_MAXCHAN)) { in pca9685_pwm_test_and_set_inuse() 110 if (test_bit(PCA9685_MAXCHAN, pca->pwms_inuse)) { in pca9685_pwm_test_and_set_inuse() 115 is_inuse = test_and_set_bit(pwm_idx, pca->pwms_inuse); in pca9685_pwm_test_and_set_inuse() 117 mutex_unlock(&pca->lock); in pca9685_pwm_test_and_set_inuse() 121 static void pca9685_pwm_clear_inuse(struct pca9685 *pca, int pwm_idx) in pca9685_pwm_clear_inuse() argument 123 mutex_lock(&pca->lock); in pca9685_pwm_clear_inuse() 124 clear_bit(pwm_idx, pca->pwms_inuse); in pca9685_pwm_clear_inuse() 125 mutex_unlock(&pca in pca9685_pwm_clear_inuse() 130 struct pca9685 *pca = gpiochip_get_data(gpio); pca9685_pwm_gpio_request() local 140 struct pca9685 *pca = gpiochip_get_data(gpio); pca9685_pwm_gpio_get() local 152 struct pca9685 *pca = gpiochip_get_data(gpio); pca9685_pwm_gpio_set() local 166 struct pca9685 *pca = gpiochip_get_data(gpio); pca9685_pwm_gpio_free() local 200 pca9685_pwm_gpio_probe(struct pca9685 *pca) pca9685_pwm_gpio_probe() argument 222 pca9685_pwm_test_and_set_inuse(struct pca9685 *pca, int pwm_idx) pca9685_pwm_test_and_set_inuse() argument 229 pca9685_pwm_clear_inuse(struct pca9685 *pca, int pwm_idx) pca9685_pwm_clear_inuse() argument 233 pca9685_pwm_gpio_probe(struct pca9685 *pca) pca9685_pwm_gpio_probe() argument 239 pca9685_set_sleep_mode(struct pca9685 *pca, bool enable) pca9685_set_sleep_mode() argument 252 struct pca9685 *pca = to_pca(chip); pca9685_pwm_config() local 354 struct pca9685 *pca = to_pca(chip); pca9685_pwm_enable() local 391 struct pca9685 *pca = to_pca(chip); pca9685_pwm_disable() local 412 struct pca9685 *pca = to_pca(chip); pca9685_pwm_request() local 423 struct pca9685 *pca = to_pca(chip); pca9685_pwm_free() local 449 struct pca9685 *pca; pca9685_pwm_probe() local 521 struct pca9685 *pca = i2c_get_clientdata(client); pca9685_pwm_remove() local 534 struct pca9685 *pca = i2c_get_clientdata(client); pca9685_pwm_runtime_suspend() local 543 struct pca9685 *pca = i2c_get_clientdata(client); pca9685_pwm_runtime_resume() local [all...] |
/kernel/linux/linux-5.10/arch/alpha/kernel/ |
H A D | sys_wildfire.c | 43 wildfire_pca *pca; in wildfire_update_irq_hw() local 56 pca = WILDFIRE_pca(qbbno, pcano); in wildfire_update_irq_hw() 57 enable0 = (unsigned long *) &pca->pca_int[0].enable; /* ??? */ in wildfire_update_irq_hw() 68 register wildfire_pca * pca = WILDFIRE_pca(0, 0); in wildfire_init_irq_hw() 72 enable0 = (unsigned long *) &pca->pca_int[0].enable; in wildfire_init_irq_hw() 73 enable1 = (unsigned long *) &pca->pca_int[1].enable; in wildfire_init_irq_hw() 74 enable2 = (unsigned long *) &pca->pca_int[2].enable; in wildfire_init_irq_hw() 75 enable3 = (unsigned long *) &pca->pca_int[3].enable; in wildfire_init_irq_hw() 77 target0 = (unsigned long *) &pca->pca_int[0].target; in wildfire_init_irq_hw() 78 target1 = (unsigned long *) &pca in wildfire_init_irq_hw() [all...] |
H A D | core_wildfire.c | 505 wildfire_pca *pca = WILDFIRE_pca(qbbno, pcano); in wildfire_dump_pca_regs() 509 qbbno, pcano, pca); in wildfire_dump_pca_regs() 511 printk(KERN_ERR " PCA_WHAT_AM_I: 0x%16lx\n", pca->pca_what_am_i.csr); in wildfire_dump_pca_regs() 512 printk(KERN_ERR " PCA_ERR_SUM: 0x%16lx\n", pca->pca_err_sum.csr); in wildfire_dump_pca_regs() 513 printk(KERN_ERR " PCA_PEND_INT: 0x%16lx\n", pca->pca_pend_int.csr); in wildfire_dump_pca_regs() 514 printk(KERN_ERR " PCA_SENT_INT: 0x%16lx\n", pca->pca_sent_int.csr); in wildfire_dump_pca_regs() 516 pca->pca_stdio_edge_level.csr); in wildfire_dump_pca_regs() 519 qbbno, pcano, pca); in wildfire_dump_pca_regs() 522 pca->pca_int[i].target.csr, in wildfire_dump_pca_regs() 523 pca in wildfire_dump_pca_regs() 504 wildfire_pca *pca = WILDFIRE_pca(qbbno, pcano); wildfire_dump_pca_regs() local [all...] |
/kernel/linux/linux-6.6/arch/alpha/kernel/ |
H A D | sys_wildfire.c | 43 wildfire_pca *pca; in wildfire_update_irq_hw() local 56 pca = WILDFIRE_pca(qbbno, pcano); in wildfire_update_irq_hw() 57 enable0 = (unsigned long *) &pca->pca_int[0].enable; /* ??? */ in wildfire_update_irq_hw() 68 register wildfire_pca * pca = WILDFIRE_pca(0, 0); in wildfire_init_irq_hw() 72 enable0 = (unsigned long *) &pca->pca_int[0].enable; in wildfire_init_irq_hw() 73 enable1 = (unsigned long *) &pca->pca_int[1].enable; in wildfire_init_irq_hw() 74 enable2 = (unsigned long *) &pca->pca_int[2].enable; in wildfire_init_irq_hw() 75 enable3 = (unsigned long *) &pca->pca_int[3].enable; in wildfire_init_irq_hw() 77 target0 = (unsigned long *) &pca->pca_int[0].target; in wildfire_init_irq_hw() 78 target1 = (unsigned long *) &pca in wildfire_init_irq_hw() [all...] |
H A D | core_wildfire.c | 477 wildfire_pca *pca = WILDFIRE_pca(qbbno, pcano); in wildfire_dump_pca_regs() local 481 qbbno, pcano, pca); in wildfire_dump_pca_regs() 483 printk(KERN_ERR " PCA_WHAT_AM_I: 0x%16lx\n", pca->pca_what_am_i.csr); in wildfire_dump_pca_regs() 484 printk(KERN_ERR " PCA_ERR_SUM: 0x%16lx\n", pca->pca_err_sum.csr); in wildfire_dump_pca_regs() 485 printk(KERN_ERR " PCA_PEND_INT: 0x%16lx\n", pca->pca_pend_int.csr); in wildfire_dump_pca_regs() 486 printk(KERN_ERR " PCA_SENT_INT: 0x%16lx\n", pca->pca_sent_int.csr); in wildfire_dump_pca_regs() 488 pca->pca_stdio_edge_level.csr); in wildfire_dump_pca_regs() 491 qbbno, pcano, pca); in wildfire_dump_pca_regs() 494 pca->pca_int[i].target.csr, in wildfire_dump_pca_regs() 495 pca in wildfire_dump_pca_regs() [all...] |
/kernel/linux/linux-5.10/arch/alpha/include/asm/ |
H A D | core_wildfire.h | 221 #define WILDFIRE_PCA_ENTITY(pca) ((0xc|(pca))<<WILDFIRE_ENTITY_SHIFT) 252 #define WILDFIRE_pca(q,pca) \ 253 ((wildfire_pca *)(WILDFIRE_QBB_IO(q)|WILDFIRE_PCA_ENTITY(pca)|(((1UL<<13)-1)<<23))) 255 #define WILDFIRE_ne(q,pca) \ 256 ((wildfire_ne *)(WILDFIRE_QBB_IO(q)|WILDFIRE_PCA_ENTITY(pca)|(((1UL<<13)-1)<<23)|(1UL<<16))) 258 #define WILDFIRE_fe(q,pca) \ 259 ((wildfire_fe *)(WILDFIRE_QBB_IO(q)|WILDFIRE_PCA_ENTITY(pca)|(((1UL<<13)-1)<<23)|(3UL<<15)))
|
/kernel/linux/linux-6.6/arch/alpha/include/asm/ |
H A D | core_wildfire.h | 221 #define WILDFIRE_PCA_ENTITY(pca) ((0xc|(pca))<<WILDFIRE_ENTITY_SHIFT) 252 #define WILDFIRE_pca(q,pca) \ 253 ((wildfire_pca *)(WILDFIRE_QBB_IO(q)|WILDFIRE_PCA_ENTITY(pca)|(((1UL<<13)-1)<<23))) 255 #define WILDFIRE_ne(q,pca) \ 256 ((wildfire_ne *)(WILDFIRE_QBB_IO(q)|WILDFIRE_PCA_ENTITY(pca)|(((1UL<<13)-1)<<23)|(1UL<<16))) 258 #define WILDFIRE_fe(q,pca) \ 259 ((wildfire_fe *)(WILDFIRE_QBB_IO(q)|WILDFIRE_PCA_ENTITY(pca)|(((1UL<<13)-1)<<23)|(3UL<<15)))
|
/kernel/linux/linux-5.10/drivers/i2c/busses/ |
H A D | i2c-pca-platform.c | 20 #include <linux/i2c-algo-pca.h> 21 #include <linux/platform_data/i2c-pca-platform.h> 250 .name = "i2c-pca-platform",
|
H A D | i2c-pca-isa.c | 3 * i2c-pca-isa.c driver for PCA9564 on ISA boards 19 #include <linux/i2c-algo-pca.h> 24 #define DRIVER "i2c-pca-isa" 135 if (!request_region(base, IO_SIZE, "i2c-pca-isa")) { in pca_isa_probe() 141 if (request_irq(irq, pca_handler, 0, "i2c-pca-isa", &pca_isa_ops) < 0) { in pca_isa_probe()
|
H A D | Makefile | 88 obj-$(CONFIG_I2C_PCA_PLATFORM) += i2c-pca-platform.o 146 obj-$(CONFIG_I2C_PCA_ISA) += i2c-pca-isa.o
|
/kernel/linux/linux-6.6/drivers/i2c/busses/ |
H A D | i2c-pca-platform.c | 20 #include <linux/i2c-algo-pca.h> 21 #include <linux/platform_data/i2c-pca-platform.h> 243 .name = "i2c-pca-platform",
|
H A D | i2c-pca-isa.c | 3 * i2c-pca-isa.c driver for PCA9564 on ISA boards 19 #include <linux/i2c-algo-pca.h> 24 #define DRIVER "i2c-pca-isa" 135 if (!request_region(base, IO_SIZE, "i2c-pca-isa")) { in pca_isa_probe() 141 if (request_irq(irq, pca_handler, 0, "i2c-pca-isa", &pca_isa_ops) < 0) { in pca_isa_probe()
|
H A D | Makefile | 95 obj-$(CONFIG_I2C_PCA_PLATFORM) += i2c-pca-platform.o 152 obj-$(CONFIG_I2C_PCA_ISA) += i2c-pca-isa.o
|
/kernel/linux/linux-5.10/arch/sh/boards/ |
H A D | board-sh7785lcr.c | 17 #include <linux/platform_data/i2c-pca-platform.h> 18 #include <linux/i2c-algo-pca.h> 258 .name = "i2c-pca-platform",
|
/kernel/linux/linux-6.6/arch/sh/boards/ |
H A D | board-sh7785lcr.c | 17 #include <linux/platform_data/i2c-pca-platform.h> 18 #include <linux/i2c-algo-pca.h> 258 .name = "i2c-pca-platform",
|
/kernel/linux/linux-5.10/drivers/atm/ |
H A D | fore200e.c | 454 int irq_posted = readl(fore200e->regs.pca.psr); in fore200e_pca_irq_check() 457 if (irq_posted && (readl(fore200e->regs.pca.hcr) & PCA200E_HCR_OUTFULL)) { in fore200e_pca_irq_check() 469 writel(PCA200E_HCR_CLRINTR, fore200e->regs.pca.hcr); in fore200e_pca_irq_ack() 476 writel(PCA200E_HCR_RESET, fore200e->regs.pca.hcr); in fore200e_pca_reset() 478 writel(0, fore200e->regs.pca.hcr); in fore200e_pca_reset() 496 fore200e->regs.pca.hcr = fore200e->virt_base + PCA200E_HCR_OFFSET; in fore200e_pca_map() 497 fore200e->regs.pca.imr = fore200e->virt_base + PCA200E_IMR_OFFSET; in fore200e_pca_map() 498 fore200e->regs.pca.psr = fore200e->virt_base + PCA200E_PSR_OFFSET; in fore200e_pca_map()
|
H A D | fore200e.h | 791 struct fore200e_pca_regs pca; /* PCA-200E registers */ member
|
/kernel/linux/linux-6.6/drivers/atm/ |
H A D | fore200e.c | 452 int irq_posted = readl(fore200e->regs.pca.psr); in fore200e_pca_irq_check() 455 if (irq_posted && (readl(fore200e->regs.pca.hcr) & PCA200E_HCR_OUTFULL)) { in fore200e_pca_irq_check() 467 writel(PCA200E_HCR_CLRINTR, fore200e->regs.pca.hcr); in fore200e_pca_irq_ack() 474 writel(PCA200E_HCR_RESET, fore200e->regs.pca.hcr); in fore200e_pca_reset() 476 writel(0, fore200e->regs.pca.hcr); in fore200e_pca_reset() 494 fore200e->regs.pca.hcr = fore200e->virt_base + PCA200E_HCR_OFFSET; in fore200e_pca_map() 495 fore200e->regs.pca.imr = fore200e->virt_base + PCA200E_IMR_OFFSET; in fore200e_pca_map() 496 fore200e->regs.pca.psr = fore200e->virt_base + PCA200E_PSR_OFFSET; in fore200e_pca_map()
|
H A D | fore200e.h | 791 struct fore200e_pca_regs pca; /* PCA-200E registers */ member
|
/kernel/linux/linux-5.10/drivers/i2c/algos/ |
H A D | i2c-algo-pca.c | 3 * i2c-algo-pca.c i2c driver algorithms for PCA9564 adapters 15 #include <linux/i2c-algo-pca.h>
|
/kernel/linux/linux-6.6/drivers/i2c/algos/ |
H A D | i2c-algo-pca.c | 3 * i2c-algo-pca.c i2c driver algorithms for PCA9564 adapters 15 #include <linux/i2c-algo-pca.h>
|