cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

ti-lmu.h (1857B)


      1/* SPDX-License-Identifier: GPL-2.0-only */
      2/*
      3 * TI LMU (Lighting Management Unit) Devices
      4 *
      5 * Copyright 2017 Texas Instruments
      6 *
      7 * Author: Milo Kim <milo.kim@ti.com>
      8 */
      9
     10#ifndef __MFD_TI_LMU_H__
     11#define __MFD_TI_LMU_H__
     12
     13#include <linux/gpio.h>
     14#include <linux/notifier.h>
     15#include <linux/regmap.h>
     16#include <linux/gpio/consumer.h>
     17
     18/* Notifier event */
     19#define LMU_EVENT_MONITOR_DONE		0x01
     20
     21enum ti_lmu_id {
     22	LM3631,
     23	LM3632,
     24	LM3633,
     25	LM3695,
     26	LM36274,
     27	LMU_MAX_ID,
     28};
     29
     30enum ti_lmu_max_current {
     31	LMU_IMAX_5mA,
     32	LMU_IMAX_6mA,
     33	LMU_IMAX_7mA = 0x03,
     34	LMU_IMAX_8mA,
     35	LMU_IMAX_9mA,
     36	LMU_IMAX_10mA = 0x07,
     37	LMU_IMAX_11mA,
     38	LMU_IMAX_12mA,
     39	LMU_IMAX_13mA,
     40	LMU_IMAX_14mA,
     41	LMU_IMAX_15mA = 0x0D,
     42	LMU_IMAX_16mA,
     43	LMU_IMAX_17mA,
     44	LMU_IMAX_18mA,
     45	LMU_IMAX_19mA,
     46	LMU_IMAX_20mA = 0x13,
     47	LMU_IMAX_21mA,
     48	LMU_IMAX_22mA,
     49	LMU_IMAX_23mA = 0x17,
     50	LMU_IMAX_24mA,
     51	LMU_IMAX_25mA,
     52	LMU_IMAX_26mA,
     53	LMU_IMAX_27mA = 0x1C,
     54	LMU_IMAX_28mA,
     55	LMU_IMAX_29mA,
     56	LMU_IMAX_30mA,
     57};
     58
     59enum lm363x_regulator_id {
     60	LM3631_BOOST,		/* Boost output */
     61	LM3631_LDO_CONT,	/* Display panel controller */
     62	LM3631_LDO_OREF,	/* Gamma reference */
     63	LM3631_LDO_POS,		/* Positive display bias output */
     64	LM3631_LDO_NEG,		/* Negative display bias output */
     65	LM3632_BOOST,		/* Boost output */
     66	LM3632_LDO_POS,		/* Positive display bias output */
     67	LM3632_LDO_NEG,		/* Negative display bias output */
     68	LM36274_BOOST,		/* Boost output */
     69	LM36274_LDO_POS,	/* Positive display bias output */
     70	LM36274_LDO_NEG,	/* Negative display bias output */
     71};
     72
     73/**
     74 * struct ti_lmu
     75 *
     76 * @dev:	Parent device pointer
     77 * @regmap:	Used for i2c communcation on accessing registers
     78 * @en_gpio:	GPIO for HWEN pin [Optional]
     79 * @notifier:	Notifier for reporting hwmon event
     80 */
     81struct ti_lmu {
     82	struct device *dev;
     83	struct regmap *regmap;
     84	struct gpio_desc *en_gpio;
     85	struct blocking_notifier_head notifier;
     86};
     87#endif