Thomas Gleixner | 2874c5f | 2019-05-27 08:55:01 +0200 | [diff] [blame] | 1 | /* SPDX-License-Identifier: GPL-2.0-or-later */ |
Aneesh V | e6b42eb | 2012-08-17 14:05:15 +0530 | [diff] [blame] | 2 | /* |
| 3 | * OpenFirmware helpers for memory drivers |
| 4 | * |
| 5 | * Copyright (C) 2012 Texas Instruments, Inc. |
Aneesh V | e6b42eb | 2012-08-17 14:05:15 +0530 | [diff] [blame] | 6 | */ |
| 7 | |
| 8 | #ifndef __LINUX_MEMORY_OF_REG_H |
| 9 | #define __LINUX_MEMORY_OF_REG_H |
| 10 | |
Stephen Warren | 7c304d7 | 2012-09-05 12:29:23 -0600 | [diff] [blame] | 11 | #if defined(CONFIG_OF) && defined(CONFIG_DDR) |
Aneesh V | e6b42eb | 2012-08-17 14:05:15 +0530 | [diff] [blame] | 12 | extern const struct lpddr2_min_tck *of_get_min_tck(struct device_node *np, |
| 13 | struct device *dev); |
| 14 | extern const struct lpddr2_timings |
| 15 | *of_get_ddr_timings(struct device_node *np_ddr, struct device *dev, |
| 16 | u32 device_type, u32 *nr_frequencies); |
Lukasz Luba | 976897d | 2019-08-21 12:42:58 +0200 | [diff] [blame^] | 17 | extern const struct lpddr3_min_tck |
| 18 | *of_lpddr3_get_min_tck(struct device_node *np, struct device *dev); |
| 19 | extern const struct lpddr3_timings |
| 20 | *of_lpddr3_get_ddr_timings(struct device_node *np_ddr, |
| 21 | struct device *dev, u32 device_type, u32 *nr_frequencies); |
Aneesh V | e6b42eb | 2012-08-17 14:05:15 +0530 | [diff] [blame] | 22 | #else |
| 23 | static inline const struct lpddr2_min_tck |
| 24 | *of_get_min_tck(struct device_node *np, struct device *dev) |
| 25 | { |
| 26 | return NULL; |
| 27 | } |
| 28 | |
| 29 | static inline const struct lpddr2_timings |
| 30 | *of_get_ddr_timings(struct device_node *np_ddr, struct device *dev, |
| 31 | u32 device_type, u32 *nr_frequencies) |
| 32 | { |
| 33 | return NULL; |
| 34 | } |
Lukasz Luba | 976897d | 2019-08-21 12:42:58 +0200 | [diff] [blame^] | 35 | |
| 36 | static inline const struct lpddr3_min_tck |
| 37 | *of_lpddr3_get_min_tck(struct device_node *np, struct device *dev) |
| 38 | { |
| 39 | return NULL; |
| 40 | } |
| 41 | |
| 42 | static inline const struct lpddr3_timings |
| 43 | *of_lpddr3_get_ddr_timings(struct device_node *np_ddr, |
| 44 | struct device *dev, u32 device_type, u32 *nr_frequencies) |
| 45 | { |
| 46 | return NULL; |
| 47 | } |
Stephen Warren | 7c304d7 | 2012-09-05 12:29:23 -0600 | [diff] [blame] | 48 | #endif /* CONFIG_OF && CONFIG_DDR */ |
Aneesh V | e6b42eb | 2012-08-17 14:05:15 +0530 | [diff] [blame] | 49 | |
| 50 | #endif /* __LINUX_MEMORY_OF_REG_ */ |