added files
added some template code
This commit is contained in:
		
							
								
								
									
										88
									
								
								tinyusb/device/romdriver/power_api.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										88
									
								
								tinyusb/device/romdriver/power_api.h
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,88 @@ | ||||
| /**************************************************************************** | ||||
|  *   $Id:: power_api.h 6249 2011-01-25 19:23:47Z usb01267                   $ | ||||
|  *   Project: NXP LPC13Uxx software example   | ||||
|  * | ||||
|  *   Description: | ||||
|  *     Power API Header File for NXP LPC13Uxx Device Series  | ||||
|  * | ||||
|  **************************************************************************** | ||||
|  * Software that is described herein is for illustrative purposes only | ||||
|  * which provides customers with programming information regarding the | ||||
|  * products. This software is supplied "AS IS" without any warranties. | ||||
|  * NXP Semiconductors assumes no responsibility or liability for the | ||||
|  * use of the software, conveys no license or title under any patent, | ||||
|  * copyright, or mask work right to the product. NXP Semiconductors | ||||
|  * reserves the right to make changes in the software without | ||||
|  * notification. NXP Semiconductors also make no representation or | ||||
|  * warranty that such application will be suitable for the specified | ||||
|  * use without further testing or modification. | ||||
| ****************************************************************************/ | ||||
| #ifndef __LPC13UXX_POWER_API_H__ | ||||
| #define __LPC13UXX_POWER_API_H__ | ||||
|  | ||||
| #ifdef __cplusplus | ||||
|  extern "C" { | ||||
| #endif  | ||||
|  | ||||
| #define PWRROMD_PRESENT | ||||
|  | ||||
| #define USBROMD_PRESENT | ||||
|  | ||||
| #ifdef USBROMD_PRESENT | ||||
| #include "mw_usbd_rom_api.h" | ||||
| #endif | ||||
|  | ||||
| typedef	struct _PWRD { | ||||
|   void (*set_pll)(unsigned int cmd[], unsigned int resp[]); | ||||
|   void (*set_power)(unsigned int cmd[], unsigned int resp[]); | ||||
| }  PWRD; | ||||
|  | ||||
| typedef	struct _ROM { | ||||
| #ifdef USBROMD_PRESENT | ||||
|    const USBD_API_T * pUSBD; | ||||
| #else | ||||
|    const unsigned p_usbd; | ||||
| #endif /* USBROMD_PRESENT */ | ||||
|    const unsigned p_clib; | ||||
|    const unsigned p_cand; | ||||
| #ifdef PWRROMD_PRESENT | ||||
|    const PWRD * pPWRD; | ||||
| #else | ||||
|    const unsigned p_pwrd; | ||||
| #endif /* PWRROMD_PRESENT */ | ||||
|    const unsigned p_dev1; | ||||
|    const unsigned p_dev2; | ||||
|    const unsigned p_dev3; | ||||
|    const unsigned p_dev4;  | ||||
| }  ROM; | ||||
|  | ||||
| //PLL setup related definitions | ||||
| #define	CPU_FREQ_EQU  		0       //main PLL freq must be equal to the specified  | ||||
| #define	CPU_FREQ_LTE		1       //main PLL freq must be less than or equal the specified | ||||
| #define	CPU_FREQ_GTE		2       //main PLL freq must be greater than or equal the specified | ||||
| #define	CPU_FREQ_APPROX		3       //main PLL freq must be as close as possible the specified | ||||
|  | ||||
| #define	PLL_CMD_SUCCESS		0       //PLL setup successfully found | ||||
| #define	PLL_INVALID_FREQ	1       //specified freq out of range (either input or output) | ||||
| #define	PLL_INVALID_MODE	2       //invalid mode (see above for valid) specified | ||||
| #define	PLL_FREQ_NOT_FOUND	3       //specified freq not found under specified conditions | ||||
| #define	PLL_NOT_LOCKED		4       //PLL not locked => no changes to the PLL setup | ||||
|  | ||||
| //power setup elated definitions | ||||
| #define	PARAM_DEFAULT			0   //default power settings (voltage regulator, flash interface) | ||||
| #define	PARAM_CPU_PERFORMANCE	1   //setup for maximum CPU performance (higher current, more computation) | ||||
| #define	PARAM_EFFICIENCY		2   //balanced setting (power vs CPU performance) | ||||
| #define	PARAM_LOW_CURRENT		3   //lowest active current, lowest CPU performance | ||||
|  | ||||
| #define	PARAM_CMD_SUCCESS		0   //power setting successfully found | ||||
| #define	PARAM_INVALID_FREQ		1   //specified freq out of range (=0 or > 50 MHz) | ||||
| #define	PARAM_INVALID_MODE		2   //specified mode not valid (see above for valid) | ||||
|  | ||||
| #define MAX_CLOCK_KHZ_PARAM                50000 | ||||
|  | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
|  | ||||
| #endif  /* __LPC13UXX_POWER_API_H__ */ | ||||
|  | ||||
		Reference in New Issue
	
	Block a user
	 hathach
					hathach