Commit 785cbc8b authored by Mihai Sain's avatar Mihai Sain Committed by Greg Kroah-Hartman
Browse files

tty: atmel_serial: Use devm_platform_ioremap_resource()



Simplify the request port function by using a single call
to devm_platform_ioremap_resource().

This will also enhance the printing from /proc/iomem:

cat /proc/iomem | grep flexcom ; cat /proc/iomem | grep serial

f0004000-f00041ff : f0004000.flexcom flexcom@f0004000
f8020000-f80201ff : f8020000.flexcom flexcom@f8020000
f0004200-f00043ff : f0004200.serial serial@200
f8020200-f80203ff : f8020200.serial serial@200
fffff200-fffff3ff : fffff200.serial serial@fffff200

Signed-off-by: default avatarMihai Sain <mihai.sain@microchip.com>
Tested-by: default avatarAndrei Simion <andrei.simion@microchip.com>
Reviewed-by: default avatarHari Prasath Gujulan Elango <hari.prasathge@microchip.com>
Link: https://lore.kernel.org/r/20241105131946.22449-1-mihai.sain@microchip.com


Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent bcc7ba66
Loading
Loading
Loading
Loading
+3 −9
Original line number Diff line number Diff line
@@ -2419,17 +2419,11 @@ static void atmel_release_port(struct uart_port *port)
static int atmel_request_port(struct uart_port *port)
{
	struct platform_device *mpdev = to_platform_device(port->dev->parent);
	int size = resource_size(mpdev->resource);

	if (!request_mem_region(port->mapbase, size, "atmel_serial"))
		return -EBUSY;

	if (port->flags & UPF_IOREMAP) {
		port->membase = ioremap(port->mapbase, size);
		if (port->membase == NULL) {
			release_mem_region(port->mapbase, size);
			return -ENOMEM;
		}
		port->membase = devm_platform_ioremap_resource(mpdev, 0);
		if (IS_ERR(port->membase))
			return PTR_ERR(port->membase);
	}

	return 0;