io-mock.h 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. /* SPDX-License-Identifier: GPL-2.0 */
  2. /*
  3. * Mock IO functions.
  4. *
  5. * Copyright (C) 2018, Google LLC.
  6. * Author: Brendan Higgins <[email protected]>
  7. */
  8. #ifndef _ASM_UM_IO_MOCK_H
  9. #define _ASM_UM_IO_MOCK_H
  10. #include <asm/io-mock-shared.h>
  11. #include <kunit/mock.h>
  12. DECLARE_FUNCTION_MOCK(readb,
  13. RETURNS(u8), PARAMS(const volatile void __iomem *));
  14. DECLARE_FUNCTION_MOCK(readw,
  15. RETURNS(u16), PARAMS(const volatile void __iomem *));
  16. DECLARE_FUNCTION_MOCK(readl,
  17. RETURNS(u32), PARAMS(const volatile void __iomem *));
  18. #ifdef CONFIG_64BIT
  19. DECLARE_FUNCTION_MOCK(readq,
  20. RETURNS(u64), PARAMS(const volatile void __iomem *));
  21. #endif /* CONFIG_64BIT */
  22. DECLARE_FUNCTION_MOCK_VOID_RETURN(writeb,
  23. PARAMS(u8, const volatile void __iomem *));
  24. DECLARE_FUNCTION_MOCK_VOID_RETURN(writew,
  25. PARAMS(u16, const volatile void __iomem *));
  26. DECLARE_FUNCTION_MOCK_VOID_RETURN(writel,
  27. PARAMS(u32, const volatile void __iomem *));
  28. #ifdef CONFIG_64BIT
  29. DECLARE_FUNCTION_MOCK_VOID_RETURN(writeq,
  30. PARAMS(u64, const volatile void __iomem *));
  31. #endif /* CONFIG_64BIT */
  32. DECLARE_FUNCTION_MOCK(readb_relaxed,
  33. RETURNS(u8), PARAMS(const volatile void __iomem *));
  34. DECLARE_FUNCTION_MOCK(readw_relaxed,
  35. RETURNS(u16), PARAMS(const volatile void __iomem *));
  36. DECLARE_FUNCTION_MOCK(readl_relaxed,
  37. RETURNS(u32), PARAMS(const volatile void __iomem *));
  38. #ifdef CONFIG_64BIT
  39. DECLARE_FUNCTION_MOCK(readq_relaxed,
  40. RETURNS(u64), PARAMS(const volatile void __iomem *));
  41. #endif /* CONFIG_64BIT */
  42. DECLARE_FUNCTION_MOCK_VOID_RETURN(writeb_relaxed,
  43. PARAMS(u8, const volatile void __iomem *));
  44. DECLARE_FUNCTION_MOCK_VOID_RETURN(writew_relaxed,
  45. PARAMS(u16, const volatile void __iomem *));
  46. DECLARE_FUNCTION_MOCK_VOID_RETURN(writel_relaxed,
  47. PARAMS(u32, const volatile void __iomem *));
  48. #ifdef CONFIG_64BIT
  49. DECLARE_FUNCTION_MOCK_VOID_RETURN(writeq_relaxed,
  50. PARAMS(u64, const volatile void __iomem *));
  51. #endif /* CONFIG_64BIT */
  52. #endif /* _ASM_UM_IO_MOCK_H */