| /OK3568_Linux_fs/u-boot/doc/driver-model/ |
| H A D | pmic-framework.txt | 2 # (C) Copyright 2014-2015 Samsung Electronics 5 # SPDX-License-Identifier: GPL-2.0+ 8 PMIC framework based on Driver Model 13 3. Pmic uclass 18 This is an introduction to driver-model multi uclass PMIC IC's support. 20 - UCLASS_PMIC - basic uclass type for PMIC I/O, which provides common 22 - UCLASS_REGULATOR - additional uclass type for specific PMIC features, 27 - drivers/power/pmic/pmic-uclass.c 28 - include/power/pmic.h 30 - drivers/power/regulator/regulator-uclass.c [all …]
|
| /OK3568_Linux_fs/kernel/arch/x86/include/asm/ |
| H A D | iosf_mbi.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 63 * iosf_mbi_read() - MailBox Interface read command 65 * @opcode: port specific read or write opcode 69 * Locking is handled by spinlock - cannot sleep. 75 * iosf_mbi_write() - MailBox unmasked write command 77 * @opcode: port specific read or write opcode 81 * Locking is handled by spinlock - cannot sleep. 87 * iosf_mbi_modify() - MailBox masked write command 89 * @opcode: port specific read or write opcode 94 * Locking is handled by spinlock - cannot sleep. [all …]
|
| /OK3568_Linux_fs/kernel/arch/arm/mach-omap2/ |
| H A D | voltage.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 16 #include <linux/platform_data/voltage-omap.h> 25 * passed from board or PMIC file 32 * struct omap_vfsm_instance - per-voltage manager FSM register/bitfield 47 * struct voltagedomain - omap voltage domain global structure. 55 * @read: read-modify-write a VC/VP register 69 struct omap_voltdm_pmic *pmic; member 73 /* VC/VP register access functions: SoC specific */ 109 * struct omap_voltdm_pmic - PMIC specific data required by voltage driver. 110 * @slew_rate: PMIC slew rate (in uv/us) [all …]
|
| H A D | voltage.c | 1 // SPDX-License-Identifier: GPL-2.0-only 29 #include "prm-regbits-34xx.h" 30 #include "prm-regbits-44xx.h" 46 * voltdm_get_voltage() - Gets the current non-auto-compensated voltage 49 * API to get the current non-auto-compensated voltage for a voltage domain. 59 return voltdm->nominal_volt; in voltdm_get_voltage() 63 * voltdm_scale() - API to scale voltage of a particular voltage domain. 78 return -EINVAL; in voltdm_scale() 81 if (!voltdm->scale) { in voltdm_scale() 83 __func__, voltdm->name); in voltdm_scale() [all …]
|
| H A D | vc.c | 22 #include "prm-regbits-34xx.h" 23 #include "prm-regbits-44xx.h" 55 * struct omap_vc_channel_cfg - describe the cfg_channel bitfield 104 * omap_vc_config_channel - configure VC channel to PMIC mappings 107 * Configures the VC channel to PMIC mappings for the following 108 * PMIC settings 109 * - i2c slave address (SA) 110 * - voltage configuration address (RAV) 111 * - command configuration address (RAC) and enable bit (RACEN) 112 * - command values for ON, ONLP, RET and OFF (CMD) [all …]
|
| /OK3568_Linux_fs/kernel/drivers/mfd/ |
| H A D | da9055-i2c.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 24 da9055 = devm_kzalloc(&i2c->dev, sizeof(struct da9055), GFP_KERNEL); in da9055_i2c_probe() 26 return -ENOMEM; in da9055_i2c_probe() 28 da9055->regmap = devm_regmap_init_i2c(i2c, &da9055_regmap_config); in da9055_i2c_probe() 29 if (IS_ERR(da9055->regmap)) { in da9055_i2c_probe() 30 ret = PTR_ERR(da9055->regmap); in da9055_i2c_probe() 31 dev_err(&i2c->dev, "Failed to allocate register map: %d\n", in da9055_i2c_probe() 36 da9055->dev = &i2c->dev; in da9055_i2c_probe() 37 da9055->chip_irq = i2c->irq; in da9055_i2c_probe() 54 * DO NOT change the device Ids. The naming is intentionally specific as both [all …]
|
| H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 44 tristate "Active-semi ACT8945A" 49 Support for the ACT8945A PMIC from Active-semi. This device 50 features three step-down DC/DC converters and four low-dropout 66 sun4i-gpadc-iio and the hwmon driver iio_hwmon. 69 called sun4i-gpadc. 78 Support for the AS3711 PMIC from AMS 88 tablets etc. It has 4 DC/DC step-down regulators, 3 DC/DC step-down 93 bool "Analog Devices ADP5520/01 MFD PMIC Core Support" 119 over at91-usart-serial driver and usart-spi-driver. Only one function [all …]
|
| /OK3568_Linux_fs/kernel/drivers/staging/hikey9xx/ |
| H A D | hisilicon,hisi-spmi-controller.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 4 $id: http://devicetree.org/schemas/spmi/hisilicon,hisi-spmi-controller.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Mauro Carvalho Chehab <mchehab+huawei@kernel.org> 13 The HiSilicon SPMI BUS controller is found on some Kirin-based designs. 16 The PMIC part is provided by 17 drivers/staging/hikey9xx/hisilicon,hi6421-spmi-pmic.yaml. 21 pattern: "spmi@[0-9a-f]" 24 const: hisilicon,kirin970-spmi-controller [all …]
|
| H A D | hi6421v600-regulator.c | 1 // SPDX-License-Identifier: GPL-2.0 24 #include <linux/mfd/hi6421-spmi-pmic.h> 41 pr_debug("%s: %s: " fmt, (rdev)->desc->name, __func__, ##arg) 45 struct hi6421_spmi_pmic *pmic; member 59 struct hi6421_spmi_pmic *pmic = sreg->pmic; in hi6421_spmi_regulator_is_enabled() local 62 reg_val = hi6421_spmi_pmic_read(pmic, rdev->desc->enable_reg); in hi6421_spmi_regulator_is_enabled() 66 rdev->desc->enable_reg, in hi6421_spmi_regulator_is_enabled() 67 reg_val, (reg_val & rdev->desc->enable_mask)); in hi6421_spmi_regulator_is_enabled() 69 return ((reg_val & rdev->desc->enable_mask) != 0); in hi6421_spmi_regulator_is_enabled() 75 struct hi6421_spmi_pmic *pmic = sreg->pmic; in hi6421_spmi_regulator_enable() local [all …]
|
| /OK3568_Linux_fs/u-boot/include/power/ |
| H A D | pmic.h | 2 * Copyright (C) 2014-2015 Samsung Electronics 5 * Copyright (C) 2011-2012 Samsung Electronics 8 * SPDX-License-Identifier: GPL-2.0+ 46 struct pmic; 48 int (*fg_battery_check) (struct pmic *p, struct pmic *bat); 49 int (*fg_battery_update) (struct pmic *p, struct pmic *bat); 53 int (*chrg_type) (struct pmic *p); 54 int (*chrg_bat_present) (struct pmic *p); 55 int (*chrg_state) (struct pmic *p, int state, int current); 60 int (*battery_init) (struct pmic *bat, struct pmic *p1, [all …]
|
| /OK3568_Linux_fs/u-boot/board/toradex/apalis-tk1/ |
| H A D | as3722_init.c | 2 * Copyright (c) 2012-2016 Toradex, Inc. 4 * SPDX-License-Identifier: GPL-2.0+ 9 #include <asm/arch-tegra/tegra_i2c.h> 12 /* AS3722-PMIC-specific early init code - get CPU rails up, etc */ 18 writel(addr, ®->cmd_addr0); in tegra_i2c_ll_write_addr() 19 writel(config, ®->cnfg); in tegra_i2c_ll_write_addr() 26 writel(data, ®->cmd_data1); in tegra_i2c_ll_write_data() 27 writel(config, ®->cnfg); in tegra_i2c_ll_write_data() 37 /* Configure VDD_CORE via the AS3722 PMIC on the PWR I2C bus */ in pmic_enable_cpu_vdd() 41 * Don't write SDCONTROL - it's already 0x7F, i.e. all SDs enabled. in pmic_enable_cpu_vdd() [all …]
|
| /OK3568_Linux_fs/u-boot/board/nvidia/venice2/ |
| H A D | as3722_init.c | 5 * SPDX-License-Identifier: GPL-2.0+ 10 #include <asm/arch-tegra/tegra_i2c.h> 13 /* AS3722-PMIC-specific early init code - get CPU rails up, etc */ 19 writel(addr, ®->cmd_addr0); in tegra_i2c_ll_write_addr() 20 writel(config, ®->cnfg); in tegra_i2c_ll_write_addr() 27 writel(data, ®->cmd_data1); in tegra_i2c_ll_write_data() 28 writel(config, ®->cnfg); in tegra_i2c_ll_write_data() 38 /* Configure VDD_CORE via the AS3722 PMIC on the PWR I2C bus */ in pmic_enable_cpu_vdd() 42 * Don't write SDCONTROL - it's already 0x7F, i.e. all SDs enabled. in pmic_enable_cpu_vdd() 50 * Bring up VDD_CPU via the AS3722 PMIC on the PWR I2C bus. in pmic_enable_cpu_vdd() [all …]
|
| /OK3568_Linux_fs/kernel/drivers/acpi/pmic/ |
| H A D | intel_pmic.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * intel_pmic.c - Intel PMIC operation region driver 47 return -ENOENT; in pmic_get_reg_bit() 55 struct regmap *regmap = opregion->regmap; in intel_pmic_power_handler() 56 struct intel_pmic_opregion_data *d = opregion->data; in intel_pmic_power_handler() 65 result = pmic_get_reg_bit(address, d->power_table, in intel_pmic_power_handler() 66 d->power_table_count, ®, &bit); in intel_pmic_power_handler() 67 if (result == -ENOENT) in intel_pmic_power_handler() 70 mutex_lock(&opregion->lock); in intel_pmic_power_handler() 73 d->get_power(regmap, reg, bit, value64) : in intel_pmic_power_handler() [all …]
|
| /OK3568_Linux_fs/kernel/Documentation/devicetree/bindings/mfd/ |
| H A D | hi6421.txt | 1 * HI6421 Multi-Functional Device (MFD), by HiSilicon Ltd. 4 - compatible : One of the following chip-specific strings: 5 "hisilicon,hi6421-pmic"; 6 "hisilicon,hi6421v530-pmic"; 7 - reg : register range space of hi6421; 9 Supported Hi6421 sub-devices include: 12 ------ --------- ------------ ----------- 20 compatible = "hisilicon,hi6421-pmic"; 26 regulator-name = "VOUT0"; 27 regulator-min-microvolt = <2850000>; [all …]
|
| /OK3568_Linux_fs/kernel/drivers/video/backlight/ |
| H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 14 This framework adds support for low-level control of LCD. 15 Some framebuffer devices connect to platform-specific LCD modules 16 in order to have a platform-specific way to control the flat panel 19 To have support for your specific LCD panel you will have to 90 This driver provides a platform-device registered LCD power 94 tristate "Sharp SL-6000 LCD Driver" 97 If you have an Sharp SL-6000 Zaurus say Y to enable a driver 125 tristate "Himax HX-8357 LCD Driver" 128 If you have a HX-8357 LCD panel, say Y to enable its LCD control [all …]
|
| /OK3568_Linux_fs/kernel/Documentation/devicetree/bindings/rtc/ |
| H A D | isil,isl12057.txt | 8 ("wakeup-source") to handle the specific use-case found 9 on at least three in-tree users of the chip (NETGEAR ReadyNAS 102, 104 10 and 2120 ARM-based NAS); On those devices, the IRQ#2 pin of the chip 12 to the SoC but to a PMIC. It allows the device to be powered up when 14 get access to the 'wakealarm' sysfs entry, this specific property can 20 - "compatible": must be "isil,isl12057" 21 - "reg": I2C bus address of the device 25 - "wakeup-source": mark the chip as a wakeup source, independently of 38 that the pinctrl-related properties below are given for completeness and 41 "interrupt-parent" and "interrupts" are usually sufficient): [all …]
|
| /OK3568_Linux_fs/kernel/drivers/pinctrl/ |
| H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 35 bool "Axis ARTPEC-6 pin controller driver" 40 This is the driver for the Axis ARTPEC-6 pin controller. This driver 43 found in Documentation/devicetree/bindings/pinctrl/axis,artpec6-pinctrl.txt 46 tristate "Pinctrl and GPIO driver for ams AS3722 PMIC" 52 functionality. This driver supports the pinmux, push-pull and 57 tristate "X-Powers AXP209 PMIC pinctrl and GPIO Support" 68 Say yes to enable pinctrl and GPIO support for the AXP209 PMIC 122 tristate "TI DA850/OMAP-L138/AM18XX pullup/pulldown groups" 127 Driver for TI DA850/OMAP-L138/AM18XX pinconf. Used to control [all …]
|
| /OK3568_Linux_fs/kernel/drivers/thermal/ |
| H A D | max77620_thermal.c | 1 // SPDX-License-Identifier: GPL-2.0-only 34 * max77620_thermal_read_temp: Read PMIC die temperatue. 35 * @data: Device specific data. 38 * The actual temperature of PMIC die is not available from PMIC. 39 * PMIC only tells the status if it has crossed or not the threshold level 42 * else 120degC or 140deG based on the PMIC die temp threshold status. 53 ret = regmap_read(mtherm->rmap, MAX77620_REG_STATLBT, &val); in max77620_thermal_read_temp() 55 dev_err(mtherm->dev, "Failed to read STATLBT: %d\n", ret); in max77620_thermal_read_temp() 77 if (irq == mtherm->irq_tjalarm1) in max77620_thermal_irq() 78 dev_warn(mtherm->dev, "Junction Temp Alarm1(120C) occurred\n"); in max77620_thermal_irq() [all …]
|
| /OK3568_Linux_fs/kernel/drivers/usb/typec/ |
| H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0 4 tristate "USB Type-C Support" 6 USB Type-C Specification defines a cable and connector for USB where 8 be Type-A plug on one end of the cable and Type-B plug on the other. 9 Determination of the host-to-device relationship happens through a 10 specific Configuration Channel (CC) which goes through the USB Type-C 12 Accessory Modes - Analog Audio and Debug - and if USB Power Delivery 22 USB Type-C connector, however it is mostly used together with USB 23 Type-C connectors. 25 USB Type-C and USB Power Delivery Specifications define a set of state [all …]
|
| /OK3568_Linux_fs/u-boot/board/compulab/cm_t43/ |
| H A D | cm_t43.c | 4 * SPDX-License-Identifier: GPL-2.0+ 14 #include <power/pmic.h> 24 /* setup board specific PMIC */ 27 struct pmic *p; in power_init_board() 33 puts("PMIC: TPS65218\n"); in power_init_board() 46 gd->bd->bi_boot_params = CONFIG_SYS_SDRAM_BASE + 0x100; in board_init() 121 if (phydev->drv->config) in board_phy_config() 122 return phydev->drv->config(phydev); in board_phy_config() 156 writel(RGMII_MODE_ENABLE | RGMII_INT_DELAY, &cdev->miisel); in board_eth_init()
|
| /OK3568_Linux_fs/kernel/drivers/leds/ |
| H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 28 It wraps LED Class and adds flash LEDs specific sysfs attributes 38 It wraps LED class and adds multicolor LED specific sysfs attributes 50 See Documentation/ABI/testing/sysfs-class-led for details. 55 tristate "LED Support for Marvell 88PM860x PMIC" 59 This option enables support for on-chip LED drivers found on Marvell 60 Semiconductor 88PM8606 PMIC. 76 This option enables support for the AN30259A 3-channel 80 will be called leds-an30259a. 90 If you're looking for APU2/3, use the pcengines-apu2 driver. [all …]
|
| /OK3568_Linux_fs/kernel/drivers/acpi/ |
| H A D | ac.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * acpi_ac.c - ACPI AC Adapter Driver ($Revision: 27 $) 54 /* Lists of PMIC ACPI HIDs with an (often better) native charger driver */ 56 { "INT33F4", -1 }, /* X-Powers AXP288 PMIC */ 57 { "INT34D3", 3 }, /* Intel Cherrytrail Whiskey Cove PMIC */ 92 /* -------------------------------------------------------------------------- 94 -------------------------------------------------------------------------- */ 101 return -EINVAL; in acpi_ac_get_state() 104 ac->state = 1; in acpi_ac_get_state() 108 status = acpi_evaluate_integer(ac->device->handle, "_PSR", NULL, in acpi_ac_get_state() [all …]
|
| /OK3568_Linux_fs/u-boot/cmd/ |
| H A D | Kconfig | 4 bool "Support U-Boot commands" 7 Enable U-Boot's command-line functions. This provides a means 8 to enter commands into U-Boot for a wide variety of purposes. It 12 substantially to the size of U-Boot. 37 This function is used to support some special U-Boot commands with 50 bool "Stop autobooting via specific input key / string" 54 boot feature only by issuing a specific input key or 56 U-Boot automatic booting process and bring the device 57 to the U-Boot prompt for user input. 81 string "Delay autobooting via specific input key / string" [all …]
|
| /OK3568_Linux_fs/kernel/include/linux/power/ |
| H A D | smartreflex.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 23 #include <linux/platform_data/voltage-omap.h> 129 * 3430 specific values. Maybe these should be passed from board file or 130 * pmic structures. 175 * test_cond_timeout - busy-loop, testing a condition 196 * struct omap_sr_pmic_data - Strucutre to be populated by pmic code to pass 197 * pmic specific info to smartreflex driver 199 * @sr_pmic_init: API to initialize smartreflex on the PMIC side. 206 * struct omap_smartreflex_dev_attr - Smartreflex Device attribute. 225 * struct omap_sr_class_data - Smartreflex class driver info [all …]
|
| /OK3568_Linux_fs/kernel/drivers/regulator/ |
| H A D | mcp16502.c | 1 // SPDX-License-Identifier: GPL-2.0 3 // MCP16502 PMIC driver 9 // Inspired from tps65086-regulator.c 29 * The PMIC has four sets of registers corresponding to four power modes: 30 * Performance, Active, Low-power, Hibernate. 34 * for a specific regulator and mode BASE_* and OFFSET_* need to be added. 37 * In order for the PMIC to transition to operating modes it has to be 41 * a low-power state while the PMIC is in Active mode. They are supposed to be 42 * configured at startup and then simply transition to/from a global low-power 45 * This driver keeps the PMIC in Active mode, Low-power state is set for the [all …]
|