1*83d290c5STom Rini /* SPDX-License-Identifier: GPL-2.0+ */ 26c51df68SSimon Glass /* 36c51df68SSimon Glass * Copyright (c) 2015 Google, Inc 46c51df68SSimon Glass * Written by Simon Glass <sjg@chromium.org> 56c51df68SSimon Glass */ 66c51df68SSimon Glass 76c51df68SSimon Glass #ifndef __RAM_H 86c51df68SSimon Glass #define __RAM_H 96c51df68SSimon Glass 106c51df68SSimon Glass struct ram_info { 116c51df68SSimon Glass phys_addr_t base; 126c51df68SSimon Glass size_t size; 136c51df68SSimon Glass }; 146c51df68SSimon Glass 156c51df68SSimon Glass struct ram_ops { 166c51df68SSimon Glass /** 176c51df68SSimon Glass * get_info() - Get basic memory info 186c51df68SSimon Glass * 196c51df68SSimon Glass * @dev: Device to check (UCLASS_RAM) 206c51df68SSimon Glass * @info: Place to put info 216c51df68SSimon Glass * @return 0 if OK, -ve on error 226c51df68SSimon Glass */ 236c51df68SSimon Glass int (*get_info)(struct udevice *dev, struct ram_info *info); 246c51df68SSimon Glass }; 256c51df68SSimon Glass 266c51df68SSimon Glass #define ram_get_ops(dev) ((struct ram_ops *)(dev)->driver->ops) 276c51df68SSimon Glass 286c51df68SSimon Glass /** 296c51df68SSimon Glass * ram_get_info() - Get information about a RAM device 306c51df68SSimon Glass * 316c51df68SSimon Glass * @dev: Device to check (UCLASS_RAM) 326c51df68SSimon Glass * @info: Returns RAM info 336c51df68SSimon Glass * @return 0 if OK, -ve on error 346c51df68SSimon Glass */ 356c51df68SSimon Glass int ram_get_info(struct udevice *dev, struct ram_info *info); 366c51df68SSimon Glass 376c51df68SSimon Glass #endif 38