Home
last modified time | relevance | path

Searched refs:pcf (Results 1 – 21 of 21) sorted by relevance

/linux-6.1.9/drivers/mfd/
Dpcf50633-irq.c19 int pcf50633_register_irq(struct pcf50633 *pcf, int irq, in pcf50633_register_irq() argument
25 if (WARN_ON(pcf->irq_handler[irq].handler)) in pcf50633_register_irq()
28 mutex_lock(&pcf->lock); in pcf50633_register_irq()
29 pcf->irq_handler[irq].handler = handler; in pcf50633_register_irq()
30 pcf->irq_handler[irq].data = data; in pcf50633_register_irq()
31 mutex_unlock(&pcf->lock); in pcf50633_register_irq()
37 int pcf50633_free_irq(struct pcf50633 *pcf, int irq) in pcf50633_free_irq() argument
42 mutex_lock(&pcf->lock); in pcf50633_free_irq()
43 pcf->irq_handler[irq].handler = NULL; in pcf50633_free_irq()
44 mutex_unlock(&pcf->lock); in pcf50633_free_irq()
[all …]
Dpcf50633-core.c27 int pcf50633_read_block(struct pcf50633 *pcf, u8 reg, in pcf50633_read_block() argument
32 ret = regmap_raw_read(pcf->regmap, reg, data, nr_regs); in pcf50633_read_block()
41 int pcf50633_write_block(struct pcf50633 *pcf , u8 reg, in pcf50633_write_block() argument
44 return regmap_raw_write(pcf->regmap, reg, data, nr_regs); in pcf50633_write_block()
48 u8 pcf50633_reg_read(struct pcf50633 *pcf, u8 reg) in pcf50633_reg_read() argument
53 ret = regmap_read(pcf->regmap, reg, &val); in pcf50633_reg_read()
61 int pcf50633_reg_write(struct pcf50633 *pcf, u8 reg, u8 val) in pcf50633_reg_write() argument
63 return regmap_write(pcf->regmap, reg, val); in pcf50633_reg_write()
67 int pcf50633_reg_set_bit_mask(struct pcf50633 *pcf, u8 reg, u8 mask, u8 val) in pcf50633_reg_set_bit_mask() argument
69 return regmap_update_bits(pcf->regmap, reg, mask, val); in pcf50633_reg_set_bit_mask()
[all …]
Dpcf50633-adc.c40 struct pcf50633 *pcf; member
49 static inline struct pcf50633_adc *__to_adc(struct pcf50633 *pcf) in __to_adc() argument
51 return platform_get_drvdata(pcf->adc_pdev); in __to_adc()
54 static void adc_setup(struct pcf50633 *pcf, int channel, int avg) in adc_setup() argument
59 pcf50633_reg_write(pcf, PCF50633_REG_ADCC2, 0x00); in adc_setup()
60 pcf50633_reg_write(pcf, PCF50633_REG_ADCC3, 0x01); in adc_setup()
63 pcf50633_reg_write(pcf, PCF50633_REG_ADCC1, channel | avg | in adc_setup()
67 static void trigger_next_adc_job_if_any(struct pcf50633 *pcf) in trigger_next_adc_job_if_any() argument
69 struct pcf50633_adc *adc = __to_adc(pcf); in trigger_next_adc_job_if_any()
77 adc_setup(pcf, adc->queue[head]->mux, adc->queue[head]->avg); in trigger_next_adc_job_if_any()
[all …]
Dpcf50633-gpio.c33 int pcf50633_gpio_set(struct pcf50633 *pcf, int gpio, u8 val) in pcf50633_gpio_set() argument
39 return pcf50633_reg_set_bit_mask(pcf, reg, 0x07, val); in pcf50633_gpio_set()
43 u8 pcf50633_gpio_get(struct pcf50633 *pcf, int gpio) in pcf50633_gpio_get() argument
48 val = pcf50633_reg_read(pcf, reg) & 0x07; in pcf50633_gpio_get()
54 int pcf50633_gpio_invert_set(struct pcf50633 *pcf, int gpio, int invert) in pcf50633_gpio_invert_set() argument
61 return pcf50633_reg_set_bit_mask(pcf, reg, 1 << 3, val); in pcf50633_gpio_invert_set()
65 int pcf50633_gpio_invert_get(struct pcf50633 *pcf, int gpio) in pcf50633_gpio_invert_get() argument
70 val = pcf50633_reg_read(pcf, reg); in pcf50633_gpio_invert_get()
76 int pcf50633_gpio_power_supply_set(struct pcf50633 *pcf, in pcf50633_gpio_power_supply_set() argument
87 return pcf50633_reg_set_bit_mask(pcf, reg, mask, val); in pcf50633_gpio_power_supply_set()
/linux-6.1.9/drivers/rtc/
Drtc-pcf50633.c58 struct pcf50633 *pcf; member
62 static void pcf2rtc_time(struct rtc_time *rtc, struct pcf50633_time *pcf) in pcf2rtc_time() argument
64 rtc->tm_sec = bcd2bin(pcf->time[PCF50633_TI_SEC]); in pcf2rtc_time()
65 rtc->tm_min = bcd2bin(pcf->time[PCF50633_TI_MIN]); in pcf2rtc_time()
66 rtc->tm_hour = bcd2bin(pcf->time[PCF50633_TI_HOUR]); in pcf2rtc_time()
67 rtc->tm_wday = bcd2bin(pcf->time[PCF50633_TI_WKDAY]); in pcf2rtc_time()
68 rtc->tm_mday = bcd2bin(pcf->time[PCF50633_TI_DAY]); in pcf2rtc_time()
69 rtc->tm_mon = bcd2bin(pcf->time[PCF50633_TI_MONTH]) - 1; in pcf2rtc_time()
70 rtc->tm_year = bcd2bin(pcf->time[PCF50633_TI_YEAR]) + 100; in pcf2rtc_time()
73 static void rtc2pcf_time(struct pcf50633_time *pcf, struct rtc_time *rtc) in rtc2pcf_time() argument
[all …]
/linux-6.1.9/drivers/power/supply/
Dpcf50633-charger.c26 struct pcf50633 *pcf; member
36 int pcf50633_mbc_usb_curlim_set(struct pcf50633 *pcf, int ma) in pcf50633_mbc_usb_curlim_set() argument
38 struct pcf50633_mbc *mbc = platform_get_drvdata(pcf->mbc_pdev); in pcf50633_mbc_usb_curlim_set()
58 ret = pcf50633_reg_set_bit_mask(pcf, PCF50633_REG_MBCC7, in pcf50633_mbc_usb_curlim_set()
61 dev_err(pcf->dev, "error setting usb curlim to %d mA\n", ma); in pcf50633_mbc_usb_curlim_set()
63 dev_info(pcf->dev, "usb curlim to %d mA\n", ma); in pcf50633_mbc_usb_curlim_set()
76 if (mbc->pcf->pdata->charger_reference_current_ma) { in pcf50633_mbc_usb_curlim_set()
77 mbcc5 = (ma << 8) / mbc->pcf->pdata->charger_reference_current_ma; in pcf50633_mbc_usb_curlim_set()
80 pcf50633_reg_write(mbc->pcf, PCF50633_REG_MBCC5, mbcc5); in pcf50633_mbc_usb_curlim_set()
83 mbcs2 = pcf50633_reg_read(mbc->pcf, PCF50633_REG_MBCS2); in pcf50633_mbc_usb_curlim_set()
[all …]
/linux-6.1.9/include/linux/mfd/pcf50633/
Dcore.h53 int pcf50633_register_irq(struct pcf50633 *pcf, int irq,
55 int pcf50633_free_irq(struct pcf50633 *pcf, int irq);
57 int pcf50633_irq_mask(struct pcf50633 *pcf, int irq);
58 int pcf50633_irq_unmask(struct pcf50633 *pcf, int irq);
59 int pcf50633_irq_mask_get(struct pcf50633 *pcf, int irq);
63 int pcf50633_write_block(struct pcf50633 *pcf, u8 reg,
66 int pcf50633_reg_write(struct pcf50633 *pcf, u8 reg, u8 val);
68 int pcf50633_reg_set_bit_mask(struct pcf50633 *pcf, u8 reg, u8 mask, u8 val);
69 int pcf50633_reg_clear_bits(struct pcf50633 *pcf, u8 reg, u8 bits);
227 int pcf50633_irq_init(struct pcf50633 *pcf, int irq);
[all …]
Dgpio.h38 int pcf50633_gpio_set(struct pcf50633 *pcf, int gpio, u8 val);
39 u8 pcf50633_gpio_get(struct pcf50633 *pcf, int gpio);
42 int pcf50633_gpio_invert_get(struct pcf50633 *pcf, int gpio);
Dadc.h63 pcf50633_adc_async_read(struct pcf50633 *pcf, int mux, int avg,
67 pcf50633_adc_sync_read(struct pcf50633 *pcf, int mux, int avg);
Dbacklight.h39 int pcf50633_bl_set_brightness_limit(struct pcf50633 *pcf, unsigned int limit);
Dmbc.h124 int pcf50633_mbc_usb_curlim_set(struct pcf50633 *pcf, int ma);
/linux-6.1.9/drivers/video/backlight/
Dpcf50633-backlight.c19 struct pcf50633 *pcf; member
36 int pcf50633_bl_set_brightness_limit(struct pcf50633 *pcf, unsigned int limit) in pcf50633_bl_set_brightness_limit() argument
38 struct pcf50633_bl *pcf_bl = platform_get_drvdata(pcf->bl_pdev); in pcf50633_bl_set_brightness_limit()
68 pcf50633_reg_write(pcf_bl->pcf, PCF50633_REG_LEDOUT, in pcf50633_bl_update_status()
71 pcf50633_reg_write(pcf_bl->pcf, PCF50633_REG_LEDENA, 1); in pcf50633_bl_update_status()
73 pcf50633_reg_write(pcf_bl->pcf, PCF50633_REG_LEDENA, 0); in pcf50633_bl_update_status()
119 pcf_bl->pcf = dev_to_pcf50633(pdev->dev.parent); in pcf50633_bl_probe()
130 pcf50633_reg_write(pcf_bl->pcf, PCF50633_REG_LEDDIM, pdata->ramp_time); in pcf50633_bl_probe()
/linux-6.1.9/drivers/input/misc/
Dpcf50633-input.c26 struct pcf50633 *pcf; member
39 onkey_released = pcf50633_reg_read(input->pcf, PCF50633_REG_OOCSTAT) in pcf50633_input_irq()
68 input->pcf = dev_to_pcf50633(pdev->dev.parent); in pcf50633_input_probe()
82 pcf50633_register_irq(input->pcf, PCF50633_IRQ_ONKEYR, in pcf50633_input_probe()
84 pcf50633_register_irq(input->pcf, PCF50633_IRQ_ONKEYF, in pcf50633_input_probe()
94 pcf50633_free_irq(input->pcf, PCF50633_IRQ_ONKEYR); in pcf50633_input_remove()
95 pcf50633_free_irq(input->pcf, PCF50633_IRQ_ONKEYF); in pcf50633_input_remove()
/linux-6.1.9/drivers/regulator/
Dpcf50633-regulator.c77 struct pcf50633 *pcf; in pcf50633_regulator_probe() local
81 pcf = dev_to_pcf50633(pdev->dev.parent); in pcf50633_regulator_probe()
85 config.driver_data = pcf; in pcf50633_regulator_probe()
86 config.regmap = pcf->regmap; in pcf50633_regulator_probe()
95 if (pcf->pdata->regulator_registered) in pcf50633_regulator_probe()
96 pcf->pdata->regulator_registered(pcf, pdev->id); in pcf50633_regulator_probe()
/linux-6.1.9/arch/arm/mach-s3c/
Dmach-gta02.c142 gta02_configure_pmu_for_charger(struct pcf50633 *pcf, void *unused, int res) in gta02_configure_pmu_for_charger() argument
153 pcf50633_gpio_set(pcf, PCF50633_GPO, 0); in gta02_configure_pmu_for_charger()
159 pcf50633_mbc_usb_curlim_set(pcf, ma); in gta02_configure_pmu_for_charger()
190 static void gta02_pmu_event_callback(struct pcf50633 *pcf, int irq) in gta02_pmu_event_callback() argument
/linux-6.1.9/drivers/i2c/algos/
DMakefile7 obj-$(CONFIG_I2C_ALGOPCF) += i2c-algo-pcf.o
/linux-6.1.9/Documentation/i2c/busses/
Di2c-parport.rst150 This driver is also NOT the same as the i2c-pcf-epp driver found in the
151 lm_sensors package. The i2c-pcf-epp driver doesn't use the parallel port as
/linux-6.1.9/Documentation/devicetree/bindings/net/
Dcpsw.txt36 For example in dra72x-evm, pcf gpio has to be
/linux-6.1.9/fs/ceph/
Dsuper.h744 struct ceph_cap_flush **pcf);
Dfile.c1261 struct ceph_cap_flush **pcf) in ceph_direct_read_write() argument
1351 swap(aio_req->prealloc_cf, *pcf); in ceph_direct_read_write()
Dcaps.c1683 struct ceph_cap_flush **pcf) in __ceph_mark_dirty_caps() argument
1708 swap(ci->i_prealloc_cap_flush, *pcf); in __ceph_mark_dirty_caps()