// SPDX-License-Identifier: GPL-2.0-only // // Driver for the regulator based Ethernet Power Sourcing Equipment, without // auto classification support. // // Copyright (c) 2022 Pengutronix, Oleksij Rempel <kernel@pengutronix.de> //
priv = devm_kzalloc(&pdev->dev, sizeof(*priv), GFP_KERNEL); if (!priv) return -ENOMEM;
if (!pdev->dev.of_node) return -ENOENT;
priv->ps = devm_regulator_get_exclusive(dev, "pse"); if (IS_ERR(priv->ps)) return dev_err_probe(dev, PTR_ERR(priv->ps), "failed to get PSE regulator.\n");
platform_set_drvdata(pdev, priv);
ret = regulator_is_enabled(priv->ps); if (ret < 0) return ret;
if (ret)
priv->admin_state = ETHTOOL_PODL_PSE_ADMIN_STATE_ENABLED; else
priv->admin_state = ETHTOOL_PODL_PSE_ADMIN_STATE_DISABLED;
priv->pcdev.owner = THIS_MODULE;
priv->pcdev.ops = &pse_reg_ops;
priv->pcdev.dev = dev;
priv->pcdev.types = ETHTOOL_PSE_PODL;
ret = devm_pse_controller_register(dev, &priv->pcdev); if (ret) {
dev_err(dev, "failed to register PSE controller (%pe)\n",
ERR_PTR(ret)); return ret;
}
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.