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

pd_ado.h (1191B)


      1// SPDX-License-Identifier: GPL-2.0+
      2/*
      3 * Copyright (c) 2017 Dialog Semiconductor
      4 *
      5 * Author: Adam Thomson <Adam.Thomson.Opensource@diasemi.com>
      6 */
      7
      8#ifndef __LINUX_USB_PD_ADO_H
      9#define __LINUX_USB_PD_ADO_H
     10
     11/* ADO : Alert Data Object */
     12#define USB_PD_ADO_TYPE_SHIFT			24
     13#define USB_PD_ADO_TYPE_MASK			0xff
     14#define USB_PD_ADO_FIXED_BATT_SHIFT		20
     15#define USB_PD_ADO_FIXED_BATT_MASK		0xf
     16#define USB_PD_ADO_HOT_SWAP_BATT_SHIFT		16
     17#define USB_PD_ADO_HOT_SWAP_BATT_MASK		0xf
     18
     19#define USB_PD_ADO_TYPE_BATT_STATUS_CHANGE	BIT(1)
     20#define USB_PD_ADO_TYPE_OCP			BIT(2)
     21#define USB_PD_ADO_TYPE_OTP			BIT(3)
     22#define USB_PD_ADO_TYPE_OP_COND_CHANGE		BIT(4)
     23#define USB_PD_ADO_TYPE_SRC_INPUT_CHANGE	BIT(5)
     24#define USB_PD_ADO_TYPE_OVP			BIT(6)
     25
     26static inline unsigned int usb_pd_ado_type(u32 ado)
     27{
     28	return (ado >> USB_PD_ADO_TYPE_SHIFT) & USB_PD_ADO_TYPE_MASK;
     29}
     30
     31static inline unsigned int usb_pd_ado_fixed_batt(u32 ado)
     32{
     33	return (ado >> USB_PD_ADO_FIXED_BATT_SHIFT) &
     34	       USB_PD_ADO_FIXED_BATT_MASK;
     35}
     36
     37static inline unsigned int usb_pd_ado_hot_swap_batt(u32 ado)
     38{
     39	return (ado >> USB_PD_ADO_HOT_SWAP_BATT_SHIFT) &
     40	       USB_PD_ADO_HOT_SWAP_BATT_MASK;
     41}
     42#endif /* __LINUX_USB_PD_ADO_H */