io-mock.c 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  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. #include <linux/mm.h>
  9. #include <linux/io.h>
  10. #include <linux/kernel.h>
  11. #include <kunit/mock.h>
  12. DEFINE_FUNCTION_MOCK(readb,
  13. RETURNS(u8), PARAMS(const volatile void __iomem *));
  14. DEFINE_FUNCTION_MOCK(readw,
  15. RETURNS(u16), PARAMS(const volatile void __iomem *));
  16. DEFINE_FUNCTION_MOCK(readl,
  17. RETURNS(u32), PARAMS(const volatile void __iomem *));
  18. #ifdef CONFIG_64BIT
  19. DEFINE_FUNCTION_MOCK(readq,
  20. RETURNS(u64), PARAMS(const volatile void __iomem *));
  21. #endif /* CONFIG_64BIT */
  22. DEFINE_FUNCTION_MOCK_VOID_RETURN(writeb,
  23. PARAMS(u8, const volatile void __iomem *));
  24. DEFINE_FUNCTION_MOCK_VOID_RETURN(writew,
  25. PARAMS(u16, const volatile void __iomem *));
  26. DEFINE_FUNCTION_MOCK_VOID_RETURN(writel,
  27. PARAMS(u32, const volatile void __iomem *));
  28. #ifdef CONFIG_64BIT
  29. DEFINE_FUNCTION_MOCK_VOID_RETURN(writeq,
  30. PARAMS(u64, const volatile void __iomem *));
  31. #endif /* CONFIG_64BIT */