Lines Matching refs:felix
25 #include "felix.h"
193 struct felix *felix = ocelot_to_felix(ocelot);
195 if (felix->info->phylink_validate)
196 felix->info->phylink_validate(ocelot, port, supported, state);
204 struct felix *felix = ocelot_to_felix(ocelot);
207 if (felix->pcs[port])
208 phylink_set_pcs(dp->pl, &felix->pcs[port]->pcs);
246 struct felix *felix = ocelot_to_felix(ocelot);
313 if (felix->info->port_sched_speed_set)
314 felix->info->port_sched_speed_set(ocelot, port, speed);
368 static int felix_parse_ports_node(struct felix *felix,
372 struct ocelot *ocelot = &felix->ocelot;
373 struct device *dev = felix->ocelot.dev;
399 err = felix->info->prevalidate_phy_mode(ocelot, port, phy_mode);
413 static int felix_parse_dt(struct felix *felix, phy_interface_t *port_phy_modes)
415 struct device *dev = felix->ocelot.dev;
428 err = felix_parse_ports_node(felix, ports_node, port_phy_modes);
434 static int felix_init_structs(struct felix *felix, int num_phys_ports)
436 struct ocelot *ocelot = &felix->ocelot;
447 ocelot->map = felix->info->map;
448 ocelot->stats_layout = felix->info->stats_layout;
449 ocelot->num_stats = felix->info->num_stats;
450 ocelot->shared_queue_sz = felix->info->shared_queue_sz;
451 ocelot->num_mact_rows = felix->info->num_mact_rows;
452 ocelot->vcap = felix->info->vcap;
453 ocelot->ops = felix->info->ops;
462 err = felix_parse_dt(felix, port_phy_modes);
471 if (!felix->info->target_io_res[i].name)
474 memcpy(&res, &felix->info->target_io_res[i], sizeof(res));
476 res.start += felix->switch_base;
477 res.end += felix->switch_base;
490 err = ocelot_regfields_init(ocelot, felix->info->regfields);
512 memcpy(&res, &felix->info->port_io_res[port], sizeof(res));
514 res.start += felix->switch_base;
515 res.end += felix->switch_base;
541 felix->info->xmit_template_populate(ocelot, port);
546 if (felix->info->mdio_bus_alloc) {
547 err = felix->info->mdio_bus_alloc(ocelot);
585 struct felix *felix = ocelot_to_felix(ocelot);
588 err = felix_init_structs(felix, ds->num_ports);
597 err = ocelot_init_timestamp(ocelot, felix->info->ptp_caps);
635 struct felix *felix = ocelot_to_felix(ocelot);
648 if (felix->info->mdio_bus_free)
649 felix->info->mdio_bus_free(ocelot);
775 struct felix *felix = ocelot_to_felix(ocelot);
777 if (felix->info->port_setup_tc)
778 return felix->info->port_setup_tc(ds, port, type, type_data);
827 struct felix *felix = ocelot_to_felix(ocelot);
828 struct dsa_switch *ds = felix->ds;