/* Managed ioremap_nocache(). Map is automatically unmapped on driver detach.  */
void __iomem* devm_ioremap_nocache(struct device *dev, resource_size_t offset, unsigned long size)
/* Managed ioremap_nocache(). Map is automatically unmapped on driver detach.  */
void __iomem* devm_ioremap_nocache(struct device *dev, resource_size_t offset, unsigned long size)
{
	void __iomem **ptr, *addr;
	ptr = devres_alloc(devm_ioremap_release, sizeof(*ptr), GFP_KERNEL);
	if (!ptr)
		return NULL;
	addr = ioremap_nocache(offset, size);
	if (addr) {
		*ptr = addr;
		devres_add(dev, ptr);
	} else
		devres_free(ptr);
	return addr;
}