Commit 12397549 authored by Andy Shevchenko's avatar Andy Shevchenko Committed by Greg Kroah-Hartman
Browse files

serial: port: Make ->iotype validation global in __uart_read_properties()



In order to make code robust against potential changes in the future
move ->iotype validation outside of switch in __uart_read_properties().
If any code will be added in between that might leave the ->iotype value
unknown the validation catches this up.

Signed-off-by: default avatarAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Link: https://lore.kernel.org/r/20250124161530.398361-4-andriy.shevchenko@linux.intel.com


Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent e8486bd5
Loading
Loading
Loading
Loading
+5 −4
Original line number Diff line number Diff line
@@ -229,14 +229,15 @@ static int __uart_read_properties(struct uart_port *port, bool use_defaults)
			break;
		default:
			port->iotype = UPIO_UNKNOWN;
			if (!use_defaults) {
				dev_err(dev, "Unsupported reg-io-width (%u)\n", value);
				return -EINVAL;
			}
			break;
		}
	}

	if (!use_defaults && port->iotype == UPIO_UNKNOWN) {
		dev_err(dev, "Unsupported reg-io-width (%u)\n", value);
		return -EINVAL;
	}

	/* Read the address mapping base offset (default: no offset) */
	ret = device_property_read_u32(dev, "reg-offset", &value);
	if (ret)