addr_trans.h 765 B

12345678910111213141516171819202122232425262728293031323334353637
  1. #ifndef ADDR_TRANS_H
  2. #define ADDR_TRANS_H
  3. //#include <platform/mt_typedefs.h>
  4. #ifdef __cplusplus
  5. extern "C" {
  6. #endif
  7. typedef struct addr_trans_info {
  8. unsigned int id;
  9. unsigned long long len;
  10. } addr_trans_info_t;
  11. typedef struct addr_trans_tbl {
  12. unsigned int num;
  13. addr_trans_info_t *info;
  14. } addr_trans_tbl_t;
  15. typedef struct virt_addr {
  16. unsigned long long addr;
  17. } virt_addr_t_addtrans;
  18. typedef struct phys_addr {
  19. unsigned int id;
  20. unsigned long long addr;
  21. } phys_addr_t_addtrans;
  22. extern int virt_to_phys_addr(addr_trans_tbl_t *tbl, virt_addr_t_addtrans *virt, phys_addr_t_addtrans *phys);
  23. extern int phys_to_virt_addr(addr_trans_tbl_t *tbl, phys_addr_t_addtrans *phys, virt_addr_t_addtrans *virt);
  24. #ifdef __cplusplus
  25. }
  26. #endif
  27. #endif /* ADDR_TRANS_H */