zig

fork of https://codeberg.org/ziglang/zig
Log | Files | Refs | README | LICENSE

tps6594_pfsm.h (1159B) - Raw


      1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
      2 /*
      3  * Userspace ABI for TPS6594 PMIC Pre-configurable Finite State Machine
      4  *
      5  * Copyright (C) 2023 BayLibre Incorporated - https://www.baylibre.com/
      6  */
      7 
      8 #ifndef __TPS6594_PFSM_H
      9 #define __TPS6594_PFSM_H
     10 
     11 #include <linux/const.h>
     12 #include <linux/ioctl.h>
     13 #include <linux/types.h>
     14 
     15 /**
     16  * struct pmic_state_opt - PMIC state options
     17  * @gpio_retention: if enabled, power rails associated with GPIO retention remain active
     18  * @ddr_retention: if enabled, power rails associated with DDR retention remain active
     19  * @mcu_only_startup_dest: if enabled, startup destination state is MCU_ONLY
     20  */
     21 struct pmic_state_opt {
     22 	__u8 gpio_retention;
     23 	__u8 ddr_retention;
     24 	__u8 mcu_only_startup_dest;
     25 };
     26 
     27 /* Commands */
     28 #define PMIC_BASE			'P'
     29 
     30 #define PMIC_GOTO_STANDBY		_IO(PMIC_BASE, 0)
     31 #define PMIC_GOTO_LP_STANDBY		_IO(PMIC_BASE, 1)
     32 #define PMIC_UPDATE_PGM			_IO(PMIC_BASE, 2)
     33 #define PMIC_SET_ACTIVE_STATE		_IO(PMIC_BASE, 3)
     34 #define PMIC_SET_MCU_ONLY_STATE		_IOW(PMIC_BASE, 4, struct pmic_state_opt)
     35 #define PMIC_SET_RETENTION_STATE	_IOW(PMIC_BASE, 5, struct pmic_state_opt)
     36 
     37 #endif /*  __TPS6594_PFSM_H */