clib.h 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. #ifndef _CLIB_H
  2. #define _CLIB_H
  3. #if A_CONTROL
  4. #define printf(...) a_printf(__VA_ARGS__)
  5. #define vprintf(...) a_vprintf(__VA_ARGS__)
  6. #define print_r(...) a_print_r(__VA_ARGS__)
  7. #define print_r16(...) a_print_r16(__VA_ARGS__)
  8. #define print_r32(...) a_print_r32(__VA_ARGS__)
  9. #define printk(...) my_printf(__VA_ARGS__)
  10. #define vprintk(...) my_vprintf(__VA_ARGS__)
  11. #define print_kr(...) my_print_r(__VA_ARGS__)
  12. #define print_kr16(...) my_print_r16(__VA_ARGS__)
  13. #define print_kr32(...) my_print_r32(__VA_ARGS__)
  14. void a_printf(const char *format, ...);
  15. void a_vprintf(const char *format, va_list param);
  16. void a_print_r(const void *buf, uint cnt);
  17. void a_print_r16(const void *buf, uint cnt);
  18. void a_print_r32(const void *buf, uint cnt);
  19. #else
  20. #define printf(...) my_printf(__VA_ARGS__)
  21. #define vprintf(...) my_vprintf(__VA_ARGS__)
  22. #define print_r(...) my_print_r(__VA_ARGS__)
  23. #define print_r16(...) my_print_r16(__VA_ARGS__)
  24. #define print_r32(...) my_print_r32(__VA_ARGS__)
  25. #endif
  26. void my_printf_init(void (*putchar)(char));
  27. void my_printf(const char *format, ...);
  28. void my_vprintf(const char *format, va_list param);
  29. void my_print_r(const void *buf, uint cnt);
  30. void my_print_r16(const void *buf, uint cnt);
  31. void my_print_r32(const void *buf, uint cnt);
  32. int sprintf(char *buffer, const char *format, ...);
  33. int vsprintf(char *buffer, const char *format, va_list param);
  34. int snprintf(char *buffer, uint maxlen, const char *format, ...);
  35. int vsnprintf(char *buffer, uint maxlen, const char *format, va_list param);
  36. u32 swap32(u32 val);
  37. u16 swap16(u16 val);
  38. uint get_be16(void *ptr);
  39. u32 get_be32(void *ptr);
  40. void put_be16(void *ptr, uint val);
  41. void put_be32(void *ptr, u32 val);
  42. uint bitset_cnt(u32 val);
  43. void delay_5ms(uint n);
  44. void delay_ms(uint nms);
  45. void delay_us(uint n);
  46. void delay(int cnt);
  47. u32 tick_get(void);
  48. bool tick_check_expire(u32 tick, u32 expire_val);
  49. void *memcpy_invert(void *dst, const void *src, uint cnt);
  50. #endif // _CLIB_H