Lines Matching +full:ocelot +full:- +full:1
1 // SPDX-License-Identifier: (GPL-2.0 OR MIT)
3 * Copyright 2021-2022 Innovative Advantage Inc.
6 #include <linux/mfd/ocelot.h>
9 #include <soc/mscc/ocelot.h>
68 struct device *dev = &pdev->dev; in ocelot_ext_probe()
70 struct ocelot *ocelot; in ocelot_ext_probe() local
76 return -ENOMEM; in ocelot_ext_probe()
80 ocelot = &felix->ocelot; in ocelot_ext_probe()
81 ocelot->dev = dev; in ocelot_ext_probe()
83 ocelot->num_flooding_pgids = 1; in ocelot_ext_probe()
85 felix->info = &vsc7512_info; in ocelot_ext_probe()
89 err = -ENOMEM; in ocelot_ext_probe()
94 ds->dev = dev; in ocelot_ext_probe()
95 ds->num_ports = felix->info->num_ports; in ocelot_ext_probe()
96 ds->num_tx_queues = felix->info->num_tx_queues; in ocelot_ext_probe()
98 ds->ops = &felix_switch_ops; in ocelot_ext_probe()
99 ds->priv = ocelot; in ocelot_ext_probe()
100 felix->ds = ds; in ocelot_ext_probe()
101 felix->tag_proto = DSA_TAG_PROTO_OCELOT; in ocelot_ext_probe()
120 struct felix *felix = dev_get_drvdata(&pdev->dev); in ocelot_ext_remove()
125 dsa_unregister_switch(felix->ds); in ocelot_ext_remove()
127 kfree(felix->ds); in ocelot_ext_remove()
135 struct felix *felix = dev_get_drvdata(&pdev->dev); in ocelot_ext_shutdown()
140 dsa_switch_shutdown(felix->ds); in ocelot_ext_shutdown()
142 dev_set_drvdata(&pdev->dev, NULL); in ocelot_ext_shutdown()
146 { .compatible = "mscc,vsc7512-switch" },
153 .name = "ocelot-ext-switch",
162 MODULE_DESCRIPTION("External Ocelot Switch driver");