[PATCH 2/2] lib: devres: Simplify API devm_ioport_unmap() implementation

Zijun Hu posted 2 patches 2 months, 1 week ago
[PATCH 2/2] lib: devres: Simplify API devm_ioport_unmap() implementation
Posted by Zijun Hu 2 months, 1 week ago
From: Zijun Hu <quic_zijuhu@quicinc.com>

Simplify devm_ioport_unmap() implementation by dedicated API
devres_release(), compared with current solution, namely
ioport_unmap() + devres_destroy(), devres_release() has below advantages:

- it is simpler if devm_ioport_unmap()'s parameter @addr was ever
  returned by devm_ioport_map().

- it can avoid unnecessary ioport_unmap(@addr) if @addr was not
  ever returned by devm_ioport_map().

Signed-off-by: Zijun Hu <quic_zijuhu@quicinc.com>
---
 lib/devres.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/lib/devres.c b/lib/devres.c
index 68ffcd5d9358..73901160197e 100644
--- a/lib/devres.c
+++ b/lib/devres.c
@@ -307,8 +307,7 @@ EXPORT_SYMBOL(devm_ioport_map);
  */
 void devm_ioport_unmap(struct device *dev, void __iomem *addr)
 {
-	ioport_unmap(addr);
-	WARN_ON(devres_destroy(dev, devm_ioport_map_release,
+	WARN_ON(devres_release(dev, devm_ioport_map_release,
 			       devm_ioport_map_match, (__force void *)addr));
 }
 EXPORT_SYMBOL(devm_ioport_unmap);

-- 
2.34.1