/usr/src/kernels/4.18.0-553.121.1.el8_10.x86_64/include/linux/mfd
NameSizeModeActions
abx500/-0755rm
arizona/-0755rm
da9052/-0755rm
da9055/-0755rm
da9062/-0755rm
da9063/-0755rm
da9150/-0755rm
mt6323/-0755rm
mt6397/-0755rm
pcf50633/-0755rm
samsung/-0755rm
syscon/-0755rm
wm831x/-0755rm
wm8350/-0755rm
wm8994/-0755rm
88pm80x.h102260644editdlrm
88pm860x.h136540644editdlrm
aat2870.h46510644editdlrm
ab3100.h42620644editdlrm
abx500.h119800644editdlrm
ac100.h62670644editdlrm
adp5520.h84990644editdlrm
altera-a10sr.h35070644editdlrm
as3711.h29600644editdlrm
as3722.h154770644editdlrm
asic3.h125140644editdlrm
atmel-hlcdc.h26340644editdlrm
axp20x.h172140644editdlrm
bcm590xx.h8310644editdlrm
bd9571mwv.h37120644editdlrm
core.h47940644editdlrm
cros_ec.h105950644editdlrm
cros_ec_commands.h875080644editdlrm
cros_ec_lpc_mec.h28380644editdlrm
cros_ec_lpc_reg.h19490644editdlrm
da8xx-cfgchip.h75010644editdlrm
da903x.h72180644editdlrm
davinci_voicecodec.h33230644editdlrm
db8500-prcmu.h222050644editdlrm
dbx500-prcmu.h146810644editdlrm
dln2.h36170644editdlrm
dm355evm_msp.h28790644editdlrm
ds1wm.h8170644editdlrm
ezx-pcap.h79320644editdlrm
hi655x-pmic.h20760644editdlrm
hi6421-pmic.h13290644editdlrm
htc-pasic3.h12250644editdlrm
imx25-tsadc.h49720644editdlrm
intel_msic.h163760644editdlrm
intel_soc_pmic.h12650644editdlrm
intel_soc_pmic_bxtwc.h20530644editdlrm
ipaq-micro.h37500644editdlrm
janz.h10530644editdlrm
kempld.h42600644editdlrm
lm3533.h26500644editdlrm
lochnagar.h16240644editdlrm
lochnagar1_regs.h78960644editdlrm
lochnagar2_regs.h155500644editdlrm
lp873x.h88950644editdlrm
lp3943.h27470644editdlrm
lp8788-isink.h12180644editdlrm
lp8788.h85730644editdlrm
lp87565.h78620644editdlrm
lpc_ich.h12610644editdlrm
max8907.h77010644editdlrm
max8925.h73500644editdlrm
max8997-private.h127330644editdlrm
max8997.h62020644editdlrm
max8998-private.h51260644editdlrm
max8998.h36410644editdlrm
max14577-private.h162400644editdlrm
max14577.h27450644editdlrm
max77620.h111340644editdlrm
max77686-private.h135260644editdlrm
max77686.h27090644editdlrm
max77693-common.h13030644editdlrm
max77693-private.h183840644editdlrm
max77693.h22950644editdlrm
max77843-private.h158040644editdlrm
mc13xxx.h78720644editdlrm
mc13783.h29020644editdlrm
mc13892.h9380644editdlrm
mcp.h18160644editdlrm
menelaus.h12840644editdlrm
motorola-cpcap.h127970644editdlrm
mxs-lradc.h61910644editdlrm
palmas.h1526450644editdlrm
qcom_rpm.h2930644editdlrm
rave-sp.h14140644editdlrm
rc5t583.h100560644editdlrm
rdc321x.h5910644editdlrm
retu.h7230644editdlrm
rk808.h128070644editdlrm
rn5t618.h75190644editdlrm
rt5033-private.h80260644editdlrm
rt5033.h12430644editdlrm
si476x-core.h156060644editdlrm
si476x-platform.h66030644editdlrm
si476x-reports.h50100644editdlrm
sky81452.h9900644editdlrm
smsc.h29210644editdlrm
sta2x11-mfd.h191690644editdlrm
stm32-lptimer.h18170644editdlrm
stm32-timers.h57840644editdlrm
stmpe.h34660644editdlrm
stw481x.h14420644editdlrm
sun4i-gpadc.h37100644editdlrm
syscon.h14430644editdlrm
t7l66xb.h8170644editdlrm
tc3589x.h39990644editdlrm
tc6387xb.h5160644editdlrm
tc6393xb.h15480644editdlrm
ti-lmu-register.h76130644editdlrm
ti-lmu.h18220644editdlrm
ti_am335x_tscadc.h58610644editdlrm
tmio.h40980644editdlrm
tps6105x.h30990644editdlrm
tps6507x.h50550644editdlrm
tps6586x.h28020644editdlrm
tps65010.h66850644editdlrm
tps65086.h35800644editdlrm
tps65090.h44910644editdlrm
tps65217.h84350644editdlrm
tps65218.h80330644editdlrm
tps65910.h313250644editdlrm
tps65912.h101440644editdlrm
tps68470.h30020644editdlrm
tps80031.h200590644editdlrm
twl.h261890644editdlrm
twl4030-audio.h87410644editdlrm
twl6040.h73280644editdlrm
ucb1x00.h67280644editdlrm
viperboard.h30220644editdlrm
wl1273-core.h84960644editdlrm
wm97xx.h5760644editdlrm
wm8400-audio.h714710644editdlrm
wm8400-private.h593760644editdlrm
wm8400.h12130644editdlrm
Edit: /usr/src/kernels/4.18.0-553.121.1.el8_10.x86_64/include/linux/mfd/tps65090.h (4491B)
/* * Core driver interface for TI TPS65090 PMIC family * * Copyright (C) 2012 NVIDIA Corporation * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, but WITHOUT * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for * more details. * * You should have received a copy of the GNU General Public License along * with this program; if not, write to the Free Software Foundation, Inc., * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * */ #ifndef __LINUX_MFD_TPS65090_H #define __LINUX_MFD_TPS65090_H #include #include /* TPS65090 IRQs */ enum { TPS65090_IRQ_INTERRUPT, TPS65090_IRQ_VAC_STATUS_CHANGE, TPS65090_IRQ_VSYS_STATUS_CHANGE, TPS65090_IRQ_BAT_STATUS_CHANGE, TPS65090_IRQ_CHARGING_STATUS_CHANGE, TPS65090_IRQ_CHARGING_COMPLETE, TPS65090_IRQ_OVERLOAD_DCDC1, TPS65090_IRQ_OVERLOAD_DCDC2, TPS65090_IRQ_OVERLOAD_DCDC3, TPS65090_IRQ_OVERLOAD_FET1, TPS65090_IRQ_OVERLOAD_FET2, TPS65090_IRQ_OVERLOAD_FET3, TPS65090_IRQ_OVERLOAD_FET4, TPS65090_IRQ_OVERLOAD_FET5, TPS65090_IRQ_OVERLOAD_FET6, TPS65090_IRQ_OVERLOAD_FET7, }; /* TPS65090 Regulator ID */ enum { TPS65090_REGULATOR_DCDC1, TPS65090_REGULATOR_DCDC2, TPS65090_REGULATOR_DCDC3, TPS65090_REGULATOR_FET1, TPS65090_REGULATOR_FET2, TPS65090_REGULATOR_FET3, TPS65090_REGULATOR_FET4, TPS65090_REGULATOR_FET5, TPS65090_REGULATOR_FET6, TPS65090_REGULATOR_FET7, TPS65090_REGULATOR_LDO1, TPS65090_REGULATOR_LDO2, /* Last entry for maximum ID */ TPS65090_REGULATOR_MAX, }; /* Register addresses */ #define TPS65090_REG_INTR_STS 0x00 #define TPS65090_REG_INTR_STS2 0x01 #define TPS65090_REG_INTR_MASK 0x02 #define TPS65090_REG_INTR_MASK2 0x03 #define TPS65090_REG_CG_CTRL0 0x04 #define TPS65090_REG_CG_CTRL1 0x05 #define TPS65090_REG_CG_CTRL2 0x06 #define TPS65090_REG_CG_CTRL3 0x07 #define TPS65090_REG_CG_CTRL4 0x08 #define TPS65090_REG_CG_CTRL5 0x09 #define TPS65090_REG_CG_STATUS1 0x0a #define TPS65090_REG_CG_STATUS2 0x0b #define TPS65090_REG_AD_OUT1 0x17 #define TPS65090_REG_AD_OUT2 0x18 #define TPS65090_MAX_REG TPS65090_REG_AD_OUT2 #define TPS65090_NUM_REGS (TPS65090_MAX_REG + 1) struct gpio_desc; struct tps65090 { struct device *dev; struct regmap *rmap; struct regmap_irq_chip_data *irq_data; }; /* * struct tps65090_regulator_plat_data * * @reg_init_data: The regulator init data. * @enable_ext_control: Enable extrenal control or not. Only available for * DCDC1, DCDC2 and DCDC3. * @gpiod: Gpio descriptor if external control is enabled and controlled through * gpio * @overcurrent_wait_valid: True if the overcurrent_wait should be applied. * @overcurrent_wait: Value to set as the overcurrent wait time. This is the * actual bitfield value, not a time in ms (valid value are 0 - 3). */ struct tps65090_regulator_plat_data { struct regulator_init_data *reg_init_data; bool enable_ext_control; struct gpio_desc *gpiod; bool overcurrent_wait_valid; int overcurrent_wait; }; struct tps65090_platform_data { int irq_base; char **supplied_to; size_t num_supplicants; int enable_low_current_chrg; struct tps65090_regulator_plat_data *reg_pdata[TPS65090_REGULATOR_MAX]; }; /* * NOTE: the functions below are not intended for use outside * of the TPS65090 sub-device drivers */ static inline int tps65090_write(struct device *dev, int reg, uint8_t val) { struct tps65090 *tps = dev_get_drvdata(dev); return regmap_write(tps->rmap, reg, val); } static inline int tps65090_read(struct device *dev, int reg, uint8_t *val) { struct tps65090 *tps = dev_get_drvdata(dev); unsigned int temp_val; int ret; ret = regmap_read(tps->rmap, reg, &temp_val); if (!ret) *val = temp_val; return ret; } static inline int tps65090_set_bits(struct device *dev, int reg, uint8_t bit_num) { struct tps65090 *tps = dev_get_drvdata(dev); return regmap_update_bits(tps->rmap, reg, BIT(bit_num), ~0u); } static inline int tps65090_clr_bits(struct device *dev, int reg, uint8_t bit_num) { struct tps65090 *tps = dev_get_drvdata(dev); return regmap_update_bits(tps->rmap, reg, BIT(bit_num), 0u); } #endif /*__LINUX_MFD_TPS65090_H */