[PATCH 0/2] mux: mmio: support "reg-mux" compatible

TI upstream has moved from "mmio-mux" to "reg-mux" that doesn't require the Mux device node's parent to be a syscon type.
Add support for "reg-mux" compatible.
Signed-off-by: Roger Quadros rogerq@kernel.org --- Roger Quadros (2): mux: mmio: Support "reg-mux" compatible phy: cadence: sierra: Don't spam console
drivers/mux/mmio.c | 7 ++++++- drivers/phy/cadence/phy-cadence-sierra.c | 2 +- 2 files changed, 7 insertions(+), 2 deletions(-) --- base-commit: 9eb0d731d800b4fbc8e9ed0178fec0d6f201d911 change-id: 20240913-j721e-ums-e37635f7c604
Best regards,

With "reg-mux" compatible the driver no longer expects the parent device to be a syscon type. It uses it's own regmux.
Signed-off-by: Roger Quadros rogerq@kernel.org --- drivers/mux/mmio.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/drivers/mux/mmio.c b/drivers/mux/mmio.c index e1125458a62..e06f4462b5a 100644 --- a/drivers/mux/mmio.c +++ b/drivers/mux/mmio.c @@ -31,6 +31,7 @@ static const struct mux_control_ops mux_mmio_ops = {
static const struct udevice_id mmio_mux_of_match[] = { { .compatible = "mmio-mux" }, + { .compatible = "reg-mux" }, { /* sentinel */ }, };
@@ -45,7 +46,11 @@ static int mmio_mux_probe(struct udevice *dev) int ret; int i;
- regmap = syscon_node_to_regmap(dev_ofnode(dev->parent)); + if (ofnode_device_is_compatible(dev_ofnode(dev), "mmio-mux")) + regmap = syscon_node_to_regmap(dev_ofnode(dev->parent)); + else + regmap_init_mem(dev_ofnode(dev), ®map); + if (IS_ERR(regmap)) { ret = PTR_ERR(regmap); dev_err(dev, "failed to get regmap: %d\n", ret);

use dev_dbg() instead of dev_info() for debug related prints.
Get's rid of below print from console.
"cdns,sierra serdes@5030000: sierra probed"
Signed-off-by: Roger Quadros rogerq@kernel.org --- drivers/phy/cadence/phy-cadence-sierra.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/phy/cadence/phy-cadence-sierra.c b/drivers/phy/cadence/phy-cadence-sierra.c index f5e23f36c56..2c9d5a12127 100644 --- a/drivers/phy/cadence/phy-cadence-sierra.c +++ b/drivers/phy/cadence/phy-cadence-sierra.c @@ -1126,7 +1126,7 @@ static int cdns_sierra_phy_probe(struct udevice *dev)
sp->autoconf = dev_read_bool(dev, "cdns,autoconf");
- dev_info(dev, "sierra probed\n"); + dev_dbg(dev, "sierra probed\n"); return 0;
clk_disable:

On 18/09/2024 16:49, Roger Quadros wrote:
TI upstream has moved from "mmio-mux" to "reg-mux" that doesn't require the Mux device node's parent to be a syscon type.
Add support for "reg-mux" compatible.
Signed-off-by: Roger Quadros rogerq@kernel.org
This fixes USB on J721e after moving to OF_UPSTREAM. It should also fix issues on other platforms that are using reg-mux.
Maybe it could be pulled in the -rc cycle?
Roger Quadros (2): mux: mmio: Support "reg-mux" compatible phy: cadence: sierra: Don't spam console
drivers/mux/mmio.c | 7 ++++++- drivers/phy/cadence/phy-cadence-sierra.c | 2 +- 2 files changed, 7 insertions(+), 2 deletions(-)
base-commit: 9eb0d731d800b4fbc8e9ed0178fec0d6f201d911 change-id: 20240913-j721e-ums-e37635f7c604
Best regards,
participants (2)
-
Roger Quadros
-
Tom Rini