--- /dev/null
+From 18311a766c587fc69b1806f1d5943305903b7e6e Mon Sep 17 00:00:00 2001
+From: Raag Jadav <raag.jadav@intel.com>
+Date: Wed, 12 Feb 2025 11:55:02 +0530
+Subject: err.h: move IOMEM_ERR_PTR() to err.h
+
+From: Raag Jadav <raag.jadav@intel.com>
+
+commit 18311a766c587fc69b1806f1d5943305903b7e6e upstream.
+
+Since IOMEM_ERR_PTR() macro deals with an error pointer, a better place
+for it is err.h. This helps avoid dependency on io.h for the users that
+don't need it.
+
+Suggested-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
+Signed-off-by: Raag Jadav <raag.jadav@intel.com>
+Acked-by: Arnd Bergmann <arnd@arndb.de>
+Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ include/linux/err.h | 3 +++
+ include/linux/io.h | 2 --
+ 2 files changed, 3 insertions(+), 2 deletions(-)
+
+--- a/include/linux/err.h
++++ b/include/linux/err.h
+@@ -44,6 +44,9 @@ static inline void * __must_check ERR_PT
+ /* Return the pointer in the percpu address space. */
+ #define ERR_PTR_PCPU(error) ((void __percpu *)(unsigned long)ERR_PTR(error))
+
++/* Cast an error pointer to __iomem. */
++#define IOMEM_ERR_PTR(error) (__force void __iomem *)ERR_PTR(error)
++
+ /**
+ * PTR_ERR - Extract the error code from an error pointer.
+ * @ptr: An error pointer.
+--- a/include/linux/io.h
++++ b/include/linux/io.h
+@@ -65,8 +65,6 @@ static inline void devm_ioport_unmap(str
+ }
+ #endif
+
+-#define IOMEM_ERR_PTR(err) (__force void __iomem *)ERR_PTR(err)
+-
+ void __iomem *devm_ioremap(struct device *dev, resource_size_t offset,
+ resource_size_t size);
+ void __iomem *devm_ioremap_uc(struct device *dev, resource_size_t offset,