/*""FILE COMMENT""******************************************************* * System Name : POE API for RX62Nxx * File Name : r_pdl_poe.h * Version : 1.02 * Contents : POE API header * Customer : * Model : * Order : * CPU : RX * Compiler : RXC * OS : Nothing * Programmer : * Note : ************************************************************************ * Copyright, 2011. Renesas Electronics Corporation * and Renesas Solutions Corporation ************************************************************************ * History : 2011.04.08 * : Ver 1.02 * : CS-5 release. *""FILE COMMENT END""**************************************************/ #ifndef R_PDL_POE_H #define R_PDL_POE_H #include "r_pdl_common_defs_RX62Nxx.h" /* Function prototypes */ bool R_POE_Set( uint32_t, uint8_t, uint32_t ); bool R_POE_Create( uint16_t, void *, void *, void *, void *, uint8_t ); bool POE_Control( uint8_t, uint16_t, uint16_t ); bool R_POE_GetStatus( uint16_t * ); /* Pin selection */ #define PDL_POE_PINS_0_TO_3 0x01u #define PDL_POE_PINS_4_TO_7 0x02u #define PDL_POE_PIN_8 0x04u #define PDL_POE_PIN_9 0x08u /* Input pin detection */ #define PDL_POE_0_MODE_EDGE 0x00000001ul #define PDL_POE_0_MODE_LOW_8 0x00000002ul #define PDL_POE_0_MODE_LOW_16 0x00000004ul #define PDL_POE_0_MODE_LOW_128 0x00000008ul #define PDL_POE_1_MODE_EDGE 0x00000010ul #define PDL_POE_1_MODE_LOW_8 0x00000020ul #define PDL_POE_1_MODE_LOW_16 0x00000040ul #define PDL_POE_1_MODE_LOW_128 0x00000080ul #define PDL_POE_2_MODE_EDGE 0x00000100ul #define PDL_POE_2_MODE_LOW_8 0x00000200ul #define PDL_POE_2_MODE_LOW_16 0x00000400ul #define PDL_POE_2_MODE_LOW_128 0x00000800ul #define PDL_POE_3_MODE_EDGE 0x00001000ul #define PDL_POE_3_MODE_LOW_8 0x00002000ul #define PDL_POE_3_MODE_LOW_16 0x00004000ul #define PDL_POE_3_MODE_LOW_128 0x00008000ul #define PDL_POE_4_MODE_EDGE 0x00010000ul #define PDL_POE_4_MODE_LOW_8 0x00020000ul #define PDL_POE_4_MODE_LOW_16 0x00040000ul #define PDL_POE_4_MODE_LOW_128 0x00080000ul #define PDL_POE_5_MODE_EDGE 0x00100000ul #define PDL_POE_5_MODE_LOW_8 0x00200000ul #define PDL_POE_5_MODE_LOW_16 0x00400000ul #define PDL_POE_5_MODE_LOW_128 0x00800000ul #define PDL_POE_6_MODE_EDGE 0x01000000ul #define PDL_POE_6_MODE_LOW_8 0x02000000ul #define PDL_POE_6_MODE_LOW_16 0x04000000ul #define PDL_POE_6_MODE_LOW_128 0x08000000ul #define PDL_POE_7_MODE_EDGE 0x10000000ul #define PDL_POE_7_MODE_LOW_8 0x20000000ul #define PDL_POE_7_MODE_LOW_16 0x40000000ul #define PDL_POE_7_MODE_LOW_128 0x80000000ul #define PDL_POE_8_MODE_EDGE 0x01u #define PDL_POE_8_MODE_LOW_8 0x02u #define PDL_POE_8_MODE_LOW_16 0x04u #define PDL_POE_8_MODE_LOW_128 0x08u #define PDL_POE_9_MODE_EDGE 0x10u #define PDL_POE_9_MODE_LOW_8 0x20u #define PDL_POE_9_MODE_LOW_16 0x40u #define PDL_POE_9_MODE_LOW_128 0x80u /* Pin output control */ /* High impedance request detection */ #define PDL_POE_HI_Z_REQ_8_ENABLE 0x00000001ul #define PDL_POE_HI_Z_REQ_MTIOC0A 0x00000002ul #define PDL_POE_HI_Z_REQ_MTIOC0B 0x00000004ul #define PDL_POE_HI_Z_REQ_MTIOC0C 0x00000008ul #define PDL_POE_HI_Z_REQ_MTIOC0D 0x00000010ul #define PDL_POE_HI_Z_REQ_9_ENABLE 0x00000020ul #define PDL_POE_HI_Z_REQ_MTIOC6A 0x00000040ul #define PDL_POE_HI_Z_REQ_MTIOC6B 0x00000080ul #define PDL_POE_HI_Z_REQ_MTIOC6C 0x00000100ul #define PDL_POE_HI_Z_REQ_MTIOC6D 0x00000200ul /* Output short detection */ #define PDL_POE_SHORT_3_4_HI_Z 0x00000400ul #define PDL_POE_SHORT_MTIOC4BD_B 0x00000800ul #define PDL_POE_SHORT_MTIOC4AC_B 0x00001000ul #define PDL_POE_SHORT_MTIOC3BD_B 0x00002000ul #define PDL_POE_SHORT_MTIOC4BD_A 0x00004000ul #define PDL_POE_SHORT_MTIOC4AC_A 0x00008000ul #define PDL_POE_SHORT_MTIOC3BD_A 0x00010000ul #define PDL_POE_SHORT_9_10_HI_Z 0x00020000ul #define PDL_POE_SHORT_MTIOC10BD 0x00040000ul #define PDL_POE_SHORT_MTIOC10AC 0x00080000ul #define PDL_POE_SHORT_MTIOC9BD 0x00100000ul /* High impedance request response */ #define PDL_POE_IRQ_HI_Z_0_3_DISABLE 0x0001u #define PDL_POE_IRQ_HI_Z_0_3_ENABLE 0x0002u #define PDL_POE_IRQ_HI_Z_4_7_DISABLE 0x0004u #define PDL_POE_IRQ_HI_Z_4_7_ENABLE 0x0008u #define PDL_POE_IRQ_HI_Z_8_DISABLE 0x0010u #define PDL_POE_IRQ_HI_Z_8_ENABLE 0x0020u #define PDL_POE_IRQ_HI_Z_9_DISABLE 0x0040u #define PDL_POE_IRQ_HI_Z_9_ENABLE 0x0080u /* Output short detection response */ #define PDL_POE_IRQ_SHORT_3_4_ENABLE 0x0100u #define PDL_POE_IRQ_SHORT_3_4_DISABLE 0x0200u #define PDL_POE_IRQ_SHORT_9_10_ENABLE 0x0400u #define PDL_POE_IRQ_SHORT_9_10_DISABLE 0x0800u /* MTU channel high impedance control */ #define PDL_POE_MTU3_MTU4_HI_Z_ON 0x01u #define PDL_POE_MTU3_MTU4_HI_Z_OFF 0x02u #define PDL_POE_MTU0_HI_Z_ON 0x04u #define PDL_POE_MTU0_HI_Z_OFF 0x08u #define PDL_POE_MTU9_MTU10_HI_Z_ON 0x10u #define PDL_POE_MTU9_MTU10_HI_Z_OFF 0x20u #define PDL_POE_MTU6_HI_Z_ON 0x40u #define PDL_POE_MTU6_HI_Z_OFF 0x80u /* Event flag control */ #define PDL_POE_FLAG_POE0_CLEAR 0x0001u #define PDL_POE_FLAG_POE1_CLEAR 0x0002u #define PDL_POE_FLAG_POE2_CLEAR 0x0004u #define PDL_POE_FLAG_POE3_CLEAR 0x0008u #define PDL_POE_FLAG_POE4_CLEAR 0x0010u #define PDL_POE_FLAG_POE5_CLEAR 0x0020u #define PDL_POE_FLAG_POE6_CLEAR 0x0040u #define PDL_POE_FLAG_POE7_CLEAR 0x0080u #define PDL_POE_FLAG_POE8_CLEAR 0x0100u #define PDL_POE_FLAG_POE9_CLEAR 0x0200u #define PDL_POE_FLAG_SHORT_3_4_CLEAR 0x0400u #define PDL_POE_FLAG_SHORT_9_10_CLEAR 0x0800u #endif /* End of file */