X-Git-Url: https://rtime.felk.cvut.cz/gitweb/mirosot.git/blobdiff_plain/3724f24eb6f2adb9c92b84080ac073346c747da8..0be5c211c2ecdb742e73f6c342039561191a3036:/bth_tests/bluetooth/inline_fce.h diff --git a/bth_tests/bluetooth/inline_fce.h b/bth_tests/bluetooth/inline_fce.h new file mode 100644 index 0000000..ee08505 --- /dev/null +++ b/bth_tests/bluetooth/inline_fce.h @@ -0,0 +1,184 @@ +/******************************************************************* + bluetooth library + + l2cap.c - any inline fce for bth library and list of fce calling + from event complete + + Copyright (C) 2006 by Petr Kovacik petr_kovacik@gmail.com + + *******************************************************************/ + +#ifndef INLINE_FCE_H +#define INLINE_FCE_H + #include + +/**/ +/*Search the list ba1 of the size num for bdadres ba2, if it is found, it's index is returned*/ + +static inline int bth_seach_bdaddr(bdaddr_t *ba1, const bdaddr_t *ba2, int num) +{ + int i; + for(i=0; i>8)&0x00ff; + return(value|pomoc); +}; + +static inline uint16_t __cpu_to_be16(uint16_t value) +{ + uint16_t pomoc=0; + pomoc=(value<<8)&0xff00; + value=(value>>8)&0x00ff; + return(value|pomoc); +}; + +static inline void store_le16(void *address, uint16_t value) //for u16 big endian +{ + uint16_t be; + be = __cpu_to_le16(value); +// be = htobs(value); + memcpy(address, &be, sizeof(uint16_t)); +} + +static inline void store_be16(void *address, uint16_t value) //for u16 big endian + { + uint16_t be; + be = __cpu_to_be16(value); + memcpy(address, &be, sizeof(uint16_t)); + } + + + static inline void __bthtomc16(void *address, void *value) + { + memcpy(address, value+1, 1); + memcpy((uint8_t*)address+1, (uint8_t*)value, 1); + }; + + +#else +static inline uint16_t __cpu_to_le16(uint16_t value) +{ + uint16_t pomoc=0; + return(value|pomoc); +}; + + +static inline uint16_t __cpu_to_be16(uint16_t value) +{ + uint16_t pomoc=0; + pomoc=(value<<8)&0xff00; + value=(value>>8)&0x00ff; + return(value|pomoc); +}; + +static inline void store_le16(void *address, uint16_t value) //pro u16 s vyuzitim bigindianu +{ + uint16_t be; + be = __cpu_to_le16(value); +// be = htobs(value); + memcpy(address, &be, sizeof(uint16_t)); +} + +static inline void store_be16(void *address, uint16_t value) //pro u16 s vyuzitim bigindianu + { + uint16_t be; + be = __cpu_to_le16(value); + memcpy(address, &be, sizeof(uint16_t)); + } + + static inline void __bthtomc16(void *address, void *value) + { +// (uint16_t*)address=(uint16_t)*(uint16_t*)value; + memcpy(address, value, 2); +// memcpy((uint8_t*)address+1, (uint8_t*)value, 1); + }; + + +#endif + +/********************************************************************/ +/********************************************************************/ +/********************************************************************/ +/********************************************************************/ +/********************************************************************/ +/********************************************************************/ +/********************************************************************/ +// ------------- COMMAND COMPLETE EVENT ---------------------------/ + +int cmd_ev_none(uint8_t *bth_p, uint8_t size); +/********************************************************************/ +/*********************** OGF = 0x01 ****************************/ +/*-------------------LINK CONTROL COMMANDS--------------------------*/ +/********************************************************************/ +int cmd_ev_01x000b(uint8_t *bth_p, uint8_t size); +int cmd_ev_01x000d(uint8_t *bth_p, uint8_t size); +int cmd_ev_01x000e(uint8_t *bth_p, uint8_t size); + +/********************************************************************/ +/*********************** OGF = 0x02 ****************************/ +/*-------------------LINK POLICY COMMANDS--------------------------*/ +/********************************************************************/ +int cmd_ev_02x0009(uint8_t *bth_p, uint8_t size); +int cmd_ev_02x000C(uint8_t *bth_p, uint8_t size); +int cmd_ev_02x000D(uint8_t *bth_p, uint8_t size); + +/********************************************************************/ +/*********************** OGF = 0x03 ****************************/ +/*--------------HOST CONTROLLER & BASEBAND COMMANDS-----------------*/ +/********************************************************************/ +int cmd_ev_03x0008(uint8_t *bth_p, uint8_t size); +int cmd_ev_03x0009(uint8_t *bth_p, uint8_t size); +int cmd_ev_03x000d(uint8_t *bth_p, uint8_t size); +int cmd_ev_03x0011(uint8_t *bth_p, uint8_t size); +int cmd_ev_03x0012(uint8_t *bth_p, uint8_t size); +int cmd_ev_03x0014(uint8_t *bth_p, uint8_t size); +int cmd_ev_03x0015(uint8_t *bth_p, uint8_t size); +int cmd_ev_03x0017(uint8_t *bth_p, uint8_t size); +int cmd_ev_03x0019(uint8_t *bth_p, uint8_t size); +int cmd_ev_03x001b(uint8_t *bth_p, uint8_t size); +int cmd_ev_03x001d(uint8_t *bth_p, uint8_t size); +int cmd_ev_03x001f(uint8_t *bth_p, uint8_t size); +int cmd_ev_03x0021(uint8_t *bth_p, uint8_t size); +int cmd_ev_03x0023(uint8_t *bth_p, uint8_t size); +int cmd_ev_03x0025(uint8_t *bth_p, uint8_t size); +int cmd_ev_03x0027(uint8_t *bth_p, uint8_t size); +int cmd_ev_03x0028(uint8_t *bth_p, uint8_t size); +int cmd_ev_03x0029(uint8_t *bth_p, uint8_t size); +int cmd_ev_03x002b(uint8_t *bth_p, uint8_t size); +int cmd_ev_03x002d(uint8_t *bth_p, uint8_t size); +int cmd_ev_03x002e(uint8_t *bth_p, uint8_t size); +int cmd_ev_03x0036(uint8_t *bth_p, uint8_t size); +int cmd_ev_03x0037(uint8_t *bth_p, uint8_t size); +int cmd_ev_03x0038(uint8_t *bth_p, uint8_t size); +int cmd_ev_03x0039(uint8_t *bth_p, uint8_t size); +int cmd_ev_03x003b(uint8_t *bth_p, uint8_t size); +int cmd_ev_03x003d(uint8_t *bth_p, uint8_t size); + +/********************************************************************/ +/*********************** OGF = 0x04 ****************************/ +/*-------------------INFORMATIONAL PARAMETERS-----------------------*/ +/********************************************************************/ +int cmd_ev_04x0001(uint8_t *bth_p, uint8_t size); +int cmd_ev_04x0003(uint8_t *bth_p, uint8_t size); +int cmd_ev_04x0005(uint8_t *bth_p, uint8_t size); +int cmd_ev_04x0007(uint8_t *bth_p, uint8_t size); +int cmd_ev_04x0009(uint8_t *bth_p, uint8_t size); + + +#endif