Convert CONFIG_SYS_LOAD_ADDR to Kconfig
[platform/kernel/u-boot.git] / include / phys2bus.h
index 87b6d69..866b8b5 100644 (file)
@@ -1,7 +1,6 @@
+/* SPDX-License-Identifier: GPL-2.0+ */
 /*
  * Copyright 2015 Stephen Warren
- *
- * SPDX-License-Identifier:     GPL-2.0+
  */
 
 #ifndef _BUS_ADDR_H
@@ -22,4 +21,21 @@ static inline unsigned long bus_to_phys(unsigned long bus)
 }
 #endif
 
+#if CONFIG_IS_ENABLED(DM)
+#include <dm/device.h>
+
+static inline dma_addr_t dev_phys_to_bus(struct udevice *dev, phys_addr_t phys)
+{
+       return phys - dev_get_dma_offset(dev);
+}
+
+static inline phys_addr_t dev_bus_to_phys(struct udevice *dev, dma_addr_t bus)
+{
+       return bus + dev_get_dma_offset(dev);
+}
+#else
+#define dev_phys_to_bus(_, _addr)      _addr
+#define dev_bus_to_phys(_, _addr)      _addr
+#endif
+
 #endif