83 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			C
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			83 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			C
		
	
	
		
			Executable File
		
	
	
	
	
#ifndef __USB_CHRGDET_H_
 | 
						|
#define __USB_CHRGDET_H_
 | 
						|
 | 
						|
#include "kwrap/type.h"
 | 
						|
 | 
						|
/**
 | 
						|
 | 
						|
*/
 | 
						|
typedef enum {
 | 
						|
	USB_CHRGDET_PORT_USB30,		///< [get]
 | 
						|
	USB_CHRGDET_PORT_USB20,		///< [get]
 | 
						|
 | 
						|
	ENUM_DUMMY4WORD(USB_CHRGDET_PORT)
 | 
						|
} USB_CHRGDET_PORT;
 | 
						|
 | 
						|
 | 
						|
 | 
						|
/**
 | 
						|
 | 
						|
 | 
						|
*/
 | 
						|
typedef enum {
 | 
						|
	USB_CHRGDET_STS_NONE,													///< No charger detected
 | 
						|
	USB_CHRGDET_STS_STANDARD_PC = USB_CHRGDET_STS_NONE,						///< Standard PC
 | 
						|
 | 
						|
	USB_CHRGDET_STS_CHARGING_DOWNSTREAM_PORT,								///< Charging downstream port
 | 
						|
	USB_CHRGDET_STS_CHARGING_PC = USB_CHRGDET_STS_CHARGING_DOWNSTREAM_PORT,	///< Charger capable PC
 | 
						|
 | 
						|
	USB_CHRGDET_STS_CHARGER,												///< Charger detected
 | 
						|
 | 
						|
	USB_CHRGDET_STS_DISCONNECT,												///< USB cable is removed when charger detection is applied
 | 
						|
 | 
						|
	ENUM_DUMMY4WORD(USB_CHRGDET_STS)
 | 
						|
} USB_CHRGDET_STS;
 | 
						|
 | 
						|
 | 
						|
 | 
						|
 | 
						|
/**
 | 
						|
    usb charger detect parameter select id
 | 
						|
 | 
						|
    This is used in usb_chrgdet_get to get the usb device mode charger detect result
 | 
						|
*/
 | 
						|
typedef enum {
 | 
						|
	USB_CHRGDET_TYPE_STD,	///< [set] std or non-std. TRUE: Standard Charger. FALSE: Non-Standard Charger.
 | 
						|
							///<       Default is Non-Standard Charger.
 | 
						|
 | 
						|
	USB_CHRGDET_PLUG,		///< [get] Get the usb cable is plug or not @usb-device-mode
 | 
						|
	USB_CHRGDET_STATUS,		///< [get] usb charger detect return result would be USB_CHRGDET_STS
 | 
						|
 | 
						|
	ENUM_DUMMY4WORD(USB_CHRGDET_PARAM_ID)
 | 
						|
} USB_CHRGDET_PARAM_ID;
 | 
						|
 | 
						|
 | 
						|
 | 
						|
/*!
 | 
						|
 * @fn INT32 usb_chrgdet_get(UINT32 handler, USB_CHRGDET_PARAM_ID id, VOID *param)
 | 
						|
 * @brief set parameters to hardware engine
 | 
						|
 * @param id		the handler of hardware
 | 
						|
 * @param param_id	the id of parameters
 | 
						|
 * @param p_param	shall the (UINT32 *) or the address the get structure.
 | 
						|
 * @return return 0 on success, -1 on error
 | 
						|
 */
 | 
						|
INT32 __usb_chrgdet_set(USB_CHRGDET_PORT usb_port, USB_CHRGDET_PARAM_ID param_id, VOID *p_param);
 | 
						|
 | 
						|
 | 
						|
/*!
 | 
						|
 * @fn INT32 usb_chrgdet_get(UINT32 handler, USB_CHRGDET_PARAM_ID id, VOID *param)
 | 
						|
 * @brief set parameters to hardware engine
 | 
						|
 * @param id		the handler of hardware
 | 
						|
 * @param param_id	the id of parameters
 | 
						|
 * @param p_param	shall the (UINT32 *) or the address the get structure.
 | 
						|
 * @return return 0 on success, -1 on error
 | 
						|
 */
 | 
						|
INT32 __usb_chrgdet_get(USB_CHRGDET_PORT usb_port, USB_CHRGDET_PARAM_ID param_id, VOID *p_param);
 | 
						|
#define usb_chrgdet_get(id, param_id, p_param) __usb_chrgdet_get((UINT32)(id), (USB_CHRGDET_PARAM_ID)(param_id), (VOID *)(p_param))
 | 
						|
 | 
						|
INT32 __usb_chrgdet_set(USB_CHRGDET_PORT usb_port, USB_CHRGDET_PARAM_ID param_id, VOID *p_param);
 | 
						|
#define usb_chrgdet_set(id, param_id, p_param) __usb_chrgdet_set((UINT32)(id), (USB_CHRGDET_PARAM_ID)(param_id), (VOID *)(p_param))
 | 
						|
 | 
						|
 | 
						|
#endif
 |