ram.h 776 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. /* SPDX-License-Identifier: GPL-2.0+ */
  2. /*
  3. * Copyright (c) 2015 Google, Inc
  4. * Written by Simon Glass <sjg@chromium.org>
  5. */
  6. #ifndef __RAM_H
  7. #define __RAM_H
  8. struct udevice;
  9. struct ram_info {
  10. phys_addr_t base;
  11. size_t size;
  12. };
  13. struct ram_ops {
  14. /**
  15. * get_info() - Get basic memory info
  16. *
  17. * @dev: Device to check (UCLASS_RAM)
  18. * @info: Place to put info
  19. * @return 0 if OK, -ve on error
  20. */
  21. int (*get_info)(struct udevice *dev, struct ram_info *info);
  22. };
  23. #define ram_get_ops(dev) ((struct ram_ops *)(dev)->driver->ops)
  24. /**
  25. * ram_get_info() - Get information about a RAM device
  26. *
  27. * @dev: Device to check (UCLASS_RAM)
  28. * @info: Returns RAM info
  29. * @return 0 if OK, -ve on error
  30. */
  31. int ram_get_info(struct udevice *dev, struct ram_info *info);
  32. #endif