Symbol: port_priv
drivers/infiniband/core/agent.c
101
port_priv = ib_get_agent_port(device, 0);
drivers/infiniband/core/agent.c
103
port_priv = ib_get_agent_port(device, port_num);
drivers/infiniband/core/agent.c
105
if (!port_priv) {
drivers/infiniband/core/agent.c
110
agent = port_priv->agent[qpn];
drivers/infiniband/core/agent.c
160
struct ib_agent_port_private *port_priv;
drivers/infiniband/core/agent.c
165
port_priv = kzalloc_obj(*port_priv);
drivers/infiniband/core/agent.c
166
if (!port_priv) {
drivers/infiniband/core/agent.c
173
port_priv->agent[0] = ib_register_mad_agent(device, port_num,
drivers/infiniband/core/agent.c
177
if (IS_ERR(port_priv->agent[0])) {
drivers/infiniband/core/agent.c
178
ret = PTR_ERR(port_priv->agent[0]);
drivers/infiniband/core/agent.c
185
port_priv->agent[1] = ib_register_mad_agent(device, port_num,
drivers/infiniband/core/agent.c
189
if (IS_ERR(port_priv->agent[1])) {
drivers/infiniband/core/agent.c
190
ret = PTR_ERR(port_priv->agent[1]);
drivers/infiniband/core/agent.c
196
list_add_tail(&port_priv->port_list, &ib_agent_port_list);
drivers/infiniband/core/agent.c
202
if (port_priv->agent[0])
drivers/infiniband/core/agent.c
203
ib_unregister_mad_agent(port_priv->agent[0]);
drivers/infiniband/core/agent.c
205
kfree(port_priv);
drivers/infiniband/core/agent.c
212
struct ib_agent_port_private *port_priv;
drivers/infiniband/core/agent.c
216
port_priv = __ib_get_agent_port(device, port_num);
drivers/infiniband/core/agent.c
217
if (port_priv == NULL) {
drivers/infiniband/core/agent.c
222
list_del(&port_priv->port_list);
drivers/infiniband/core/agent.c
225
if (port_priv->agent[1])
drivers/infiniband/core/agent.c
226
ib_unregister_mad_agent(port_priv->agent[1]);
drivers/infiniband/core/agent.c
227
if (port_priv->agent[0])
drivers/infiniband/core/agent.c
228
ib_unregister_mad_agent(port_priv->agent[0]);
drivers/infiniband/core/agent.c
230
kfree(port_priv);
drivers/infiniband/core/agent.c
94
struct ib_agent_port_private *port_priv;
drivers/infiniband/core/mad.c
107
static bool ib_mad_send_error(struct ib_mad_port_private *port_priv,
drivers/infiniband/core/mad.c
1482
struct ib_mad_port_private *port_priv;
drivers/infiniband/core/mad.c
1487
port_priv = agent_priv->qp_info->port_priv;
drivers/infiniband/core/mad.c
1488
class = &port_priv->version[mad_reg_req->mgmt_class_version].class;
drivers/infiniband/core/mad.c
1541
struct ib_mad_port_private *port_priv;
drivers/infiniband/core/mad.c
1551
port_priv = agent_priv->qp_info->port_priv;
drivers/infiniband/core/mad.c
1552
vendor_table = &port_priv->version[
drivers/infiniband/core/mad.c
1638
struct ib_mad_port_private *port_priv;
drivers/infiniband/core/mad.c
1653
port_priv = agent_priv->qp_info->port_priv;
drivers/infiniband/core/mad.c
1655
class = port_priv->version[
drivers/infiniband/core/mad.c
1673
port_priv->version[
drivers/infiniband/core/mad.c
1686
vendor = port_priv->version[
drivers/infiniband/core/mad.c
1718
port_priv->version[
drivers/infiniband/core/mad.c
1733
find_mad_agent(struct ib_mad_port_private *port_priv,
drivers/infiniband/core/mad.c
1760
spin_lock_irqsave(&port_priv->reg_lock, flags);
drivers/infiniband/core/mad.c
1768
class = port_priv->version[
drivers/infiniband/core/mad.c
1781
vendor = port_priv->version[
drivers/infiniband/core/mad.c
1803
spin_unlock_irqrestore(&port_priv->reg_lock, flags);
drivers/infiniband/core/mad.c
1807
dev_notice(&port_priv->device->dev,
drivers/infiniband/core/mad.c
1809
&mad_agent->agent, port_priv->port_num);
drivers/infiniband/core/mad.c
2144
static enum smi_action handle_ib_smi(const struct ib_mad_port_private *port_priv,
drivers/infiniband/core/mad.c
2157
rdma_cap_ib_switch(port_priv->device),
drivers/infiniband/core/mad.c
2159
port_priv->device->phys_port_cnt) ==
drivers/infiniband/core/mad.c
2169
rdma_cap_ib_switch(port_priv->device),
drivers/infiniband/core/mad.c
2173
if (smi_check_local_smp(smp, port_priv->device) == IB_SMI_DISCARD)
drivers/infiniband/core/mad.c
2175
} else if (rdma_cap_ib_switch(port_priv->device)) {
drivers/infiniband/core/mad.c
2184
port_priv->device,
drivers/infiniband/core/mad.c
2231
handle_opa_smi(struct ib_mad_port_private *port_priv,
drivers/infiniband/core/mad.c
2244
rdma_cap_ib_switch(port_priv->device),
drivers/infiniband/core/mad.c
2246
port_priv->device->phys_port_cnt) ==
drivers/infiniband/core/mad.c
2256
rdma_cap_ib_switch(port_priv->device),
drivers/infiniband/core/mad.c
2260
if (opa_smi_check_local_smp(smp, port_priv->device) ==
drivers/infiniband/core/mad.c
2264
} else if (rdma_cap_ib_switch(port_priv->device)) {
drivers/infiniband/core/mad.c
2274
port_priv->device,
drivers/infiniband/core/mad.c
2287
handle_smi(struct ib_mad_port_private *port_priv,
drivers/infiniband/core/mad.c
2299
return handle_opa_smi(port_priv, qp_info, wc, port_num, recv,
drivers/infiniband/core/mad.c
2302
return handle_ib_smi(port_priv, qp_info, wc, port_num, recv, response);
drivers/infiniband/core/mad.c
2307
struct ib_mad_port_private *port_priv = cq->cq_context;
drivers/infiniband/core/mad.c
2320
if (list_empty_careful(&port_priv->port_list))
drivers/infiniband/core/mad.c
2334
opa = rdma_cap_opa_mad(qp_info->port_priv->device,
drivers/infiniband/core/mad.c
2335
qp_info->port_priv->port_num);
drivers/infiniband/core/mad.c
2340
ib_dma_unmap_single(port_priv->device,
drivers/infiniband/core/mad.c
2372
if (rdma_cap_ib_switch(port_priv->device))
drivers/infiniband/core/mad.c
2375
port_num = port_priv->port_num;
drivers/infiniband/core/mad.c
2379
if (handle_smi(port_priv, qp_info, wc, port_num, recv,
drivers/infiniband/core/mad.c
2386
if (port_priv->device->ops.process_mad) {
drivers/infiniband/core/mad.c
2387
ret = port_priv->device->ops.process_mad(
drivers/infiniband/core/mad.c
2388
port_priv->device, 0, port_priv->port_num, wc,
drivers/infiniband/core/mad.c
2402
port_priv->device,
drivers/infiniband/core/mad.c
2411
mad_agent = find_mad_agent(port_priv, (const struct ib_mad_hdr *)recv->mad);
drivers/infiniband/core/mad.c
2423
port_priv->device, port_num,
drivers/infiniband/core/mad.c
2454
mod_delayed_work(mad_agent_priv->qp_info->port_priv->wq,
drivers/infiniband/core/mad.c
2471
mod_delayed_work(mad_agent_priv->qp_info->port_priv->wq,
drivers/infiniband/core/mad.c
251
struct ib_mad_port_private *port_priv;
drivers/infiniband/core/mad.c
2533
struct ib_mad_port_private *port_priv = cq->cq_context;
drivers/infiniband/core/mad.c
2543
if (list_empty_careful(&port_priv->port_list))
drivers/infiniband/core/mad.c
2547
if (!ib_mad_send_error(port_priv, wc))
drivers/infiniband/core/mad.c
2591
dev_err(&port_priv->device->dev,
drivers/infiniband/core/mad.c
2616
static bool ib_mad_send_error(struct ib_mad_port_private *port_priv,
drivers/infiniband/core/mad.c
2653
dev_err(&port_priv->device->dev,
drivers/infiniband/core/mad.c
2792
opa = rdma_cap_opa_mad(mad_agent_priv->qp_info->port_priv->device,
drivers/infiniband/core/mad.c
2793
mad_agent_priv->qp_info->port_priv->port_num);
drivers/infiniband/core/mad.c
2930
port_priv->wq,
drivers/infiniband/core/mad.c
2967
sg_list.lkey = qp_info->port_priv->pd->local_dma_lkey;
drivers/infiniband/core/mad.c
2980
mad_priv = alloc_mad_private(port_mad_size(qp_info->port_priv),
drivers/infiniband/core/mad.c
2986
sg_list.addr = ib_dma_map_single(qp_info->port_priv->device,
drivers/infiniband/core/mad.c
2990
if (unlikely(ib_dma_mapping_error(qp_info->port_priv->device,
drivers/infiniband/core/mad.c
3016
dev_err(&qp_info->port_priv->device->dev,
drivers/infiniband/core/mad.c
3022
ib_dma_unmap_single(qp_info->port_priv->device,
drivers/infiniband/core/mad.c
3055
ib_dma_unmap_single(qp_info->port_priv->device,
drivers/infiniband/core/mad.c
3068
static int ib_mad_port_start(struct ib_mad_port_private *port_priv)
drivers/infiniband/core/mad.c
3079
ret = ib_find_pkey(port_priv->device, port_priv->port_num,
drivers/infiniband/core/mad.c
3085
qp = port_priv->qp_info[i].qp;
drivers/infiniband/core/mad.c
3099
dev_err(&port_priv->device->dev,
drivers/infiniband/core/mad.c
3108
dev_err(&port_priv->device->dev,
drivers/infiniband/core/mad.c
3118
dev_err(&port_priv->device->dev,
drivers/infiniband/core/mad.c
3125
ret = ib_req_notify_cq(port_priv->cq, IB_CQ_NEXT_COMP);
drivers/infiniband/core/mad.c
3127
dev_err(&port_priv->device->dev,
drivers/infiniband/core/mad.c
3134
if (!port_priv->qp_info[i].qp)
drivers/infiniband/core/mad.c
3137
ret = ib_mad_post_receive_mads(&port_priv->qp_info[i], NULL);
drivers/infiniband/core/mad.c
3139
dev_err(&port_priv->device->dev,
drivers/infiniband/core/mad.c
3154
dev_err(&qp_info->port_priv->device->dev,
drivers/infiniband/core/mad.c
3168
static void init_mad_qp(struct ib_mad_port_private *port_priv,
drivers/infiniband/core/mad.c
3171
qp_info->port_priv = port_priv;
drivers/infiniband/core/mad.c
3184
qp_init_attr.send_cq = qp_info->port_priv->cq;
drivers/infiniband/core/mad.c
3185
qp_init_attr.recv_cq = qp_info->port_priv->cq;
drivers/infiniband/core/mad.c
3192
qp_init_attr.port_num = qp_info->port_priv->port_num;
drivers/infiniband/core/mad.c
3195
qp_info->qp = ib_create_qp(qp_info->port_priv->pd, &qp_init_attr);
drivers/infiniband/core/mad.c
3197
dev_err(&qp_info->port_priv->device->dev,
drivers/infiniband/core/mad.c
3228
struct ib_mad_port_private *port_priv;
drivers/infiniband/core/mad.c
3240
port_priv = kzalloc_obj(*port_priv);
drivers/infiniband/core/mad.c
3241
if (!port_priv)
drivers/infiniband/core/mad.c
3244
port_priv->device = device;
drivers/infiniband/core/mad.c
3245
port_priv->port_num = port_num;
drivers/infiniband/core/mad.c
3246
spin_lock_init(&port_priv->reg_lock);
drivers/infiniband/core/mad.c
3247
init_mad_qp(port_priv, &port_priv->qp_info[0]);
drivers/infiniband/core/mad.c
3248
init_mad_qp(port_priv, &port_priv->qp_info[1]);
drivers/infiniband/core/mad.c
3255
port_priv->pd = ib_alloc_pd(device, 0);
drivers/infiniband/core/mad.c
3256
if (IS_ERR(port_priv->pd)) {
drivers/infiniband/core/mad.c
3258
ret = PTR_ERR(port_priv->pd);
drivers/infiniband/core/mad.c
3262
port_priv->cq = ib_alloc_cq(port_priv->device, port_priv, cq_size, 0,
drivers/infiniband/core/mad.c
3264
if (IS_ERR(port_priv->cq)) {
drivers/infiniband/core/mad.c
3266
ret = PTR_ERR(port_priv->cq);
drivers/infiniband/core/mad.c
3271
ret = create_mad_qp(&port_priv->qp_info[0], IB_QPT_SMI);
drivers/infiniband/core/mad.c
3277
ret = create_mad_qp(&port_priv->qp_info[1], IB_QPT_GSI);
drivers/infiniband/core/mad.c
3282
port_priv->wq = alloc_ordered_workqueue("ib_mad%u", WQ_MEM_RECLAIM,
drivers/infiniband/core/mad.c
3284
if (!port_priv->wq) {
drivers/infiniband/core/mad.c
3290
list_add_tail(&port_priv->port_list, &ib_mad_port_list);
drivers/infiniband/core/mad.c
3293
ret = ib_mad_port_start(port_priv);
drivers/infiniband/core/mad.c
3303
list_del_init(&port_priv->port_list);
drivers/infiniband/core/mad.c
3306
destroy_workqueue(port_priv->wq);
drivers/infiniband/core/mad.c
3308
destroy_mad_qp(&port_priv->qp_info[1]);
drivers/infiniband/core/mad.c
3310
destroy_mad_qp(&port_priv->qp_info[0]);
drivers/infiniband/core/mad.c
3312
ib_free_cq(port_priv->cq);
drivers/infiniband/core/mad.c
3313
cleanup_recv_queue(&port_priv->qp_info[1]);
drivers/infiniband/core/mad.c
3314
cleanup_recv_queue(&port_priv->qp_info[0]);
drivers/infiniband/core/mad.c
3316
ib_dealloc_pd(port_priv->pd);
drivers/infiniband/core/mad.c
3318
kfree(port_priv);
drivers/infiniband/core/mad.c
3330
struct ib_mad_port_private *port_priv;
drivers/infiniband/core/mad.c
3334
port_priv = __ib_get_mad_port(device, port_num);
drivers/infiniband/core/mad.c
3335
if (port_priv == NULL) {
drivers/infiniband/core/mad.c
3340
list_del_init(&port_priv->port_list);
drivers/infiniband/core/mad.c
3343
destroy_workqueue(port_priv->wq);
drivers/infiniband/core/mad.c
3344
destroy_mad_qp(&port_priv->qp_info[1]);
drivers/infiniband/core/mad.c
3345
destroy_mad_qp(&port_priv->qp_info[0]);
drivers/infiniband/core/mad.c
3346
ib_free_cq(port_priv->cq);
drivers/infiniband/core/mad.c
3347
ib_dealloc_pd(port_priv->pd);
drivers/infiniband/core/mad.c
3348
cleanup_recv_queue(&port_priv->qp_info[1]);
drivers/infiniband/core/mad.c
3349
cleanup_recv_queue(&port_priv->qp_info[0]);
drivers/infiniband/core/mad.c
3352
kfree(port_priv);
drivers/infiniband/core/mad.c
370
port_priv = ib_get_mad_port(device, port_num);
drivers/infiniband/core/mad.c
371
if (!port_priv) {
drivers/infiniband/core/mad.c
381
if (!port_priv->qp_info[qpn].qp) {
drivers/infiniband/core/mad.c
404
mad_agent_priv->qp_info = &port_priv->qp_info[qpn];
drivers/infiniband/core/mad.c
411
mad_agent_priv->agent.qp = port_priv->qp_info[qpn].qp;
drivers/infiniband/core/mad.c
451
spin_lock_irq(&port_priv->reg_lock);
drivers/infiniband/core/mad.c
455
class = port_priv->version[mad_reg_req->
drivers/infiniband/core/mad.c
469
vendor = port_priv->version[mad_reg_req->
drivers/infiniband/core/mad.c
488
spin_unlock_irq(&port_priv->reg_lock);
drivers/infiniband/core/mad.c
493
spin_unlock_irq(&port_priv->reg_lock);
drivers/infiniband/core/mad.c
514
struct ib_mad_port_private *port_priv;
drivers/infiniband/core/mad.c
524
port_priv = mad_agent_priv->qp_info->port_priv;
drivers/infiniband/core/mad.c
527
spin_lock_irq(&port_priv->reg_lock);
drivers/infiniband/core/mad.c
529
spin_unlock_irq(&port_priv->reg_lock);
drivers/infiniband/core/mad.c
532
flush_workqueue(port_priv->wq);
drivers/infiniband/core/mad.c
605
static size_t port_mad_size(const struct ib_mad_port_private *port_priv)
drivers/infiniband/core/mad.c
607
return rdma_max_mad_size(port_priv->device, port_priv->port_num);
drivers/infiniband/core/mad.c
629
struct ib_mad_port_private *port_priv;
drivers/infiniband/core/mad.c
635
size_t mad_size = port_mad_size(mad_agent_priv->qp_info->port_priv);
drivers/infiniband/core/mad.c
638
bool opa = rdma_cap_opa_mad(mad_agent_priv->qp_info->port_priv->device,
drivers/infiniband/core/mad.c
639
mad_agent_priv->qp_info->port_priv->port_num);
drivers/infiniband/core/mad.c
750
port_priv = ib_get_mad_port(mad_agent_priv->agent.device,
drivers/infiniband/core/mad.c
752
if (port_priv) {
drivers/infiniband/core/mad.c
754
recv_mad_agent = find_mad_agent(port_priv,
drivers/infiniband/core/mad.c
757
if (!port_priv || !recv_mad_agent) {
drivers/infiniband/core/mad.c
786
queue_work(mad_agent_priv->qp_info->port_priv->wq,
drivers/infiniband/core/mad.c
95
struct ib_mad_port_private *port_priv,
drivers/infiniband/core/mad_priv.h
254
struct ib_mad_port_private *port_priv;
drivers/infiniband/core/mad_rmpp.c
431
bool opa = rdma_cap_opa_mad(rmpp_recv->agent->qp_info->port_priv->device,
drivers/infiniband/core/mad_rmpp.c
432
rmpp_recv->agent->qp_info->port_priv->port_num);
drivers/infiniband/core/mad_rmpp.c
463
queue_delayed_work(rmpp_recv->agent->qp_info->port_priv->wq,
drivers/infiniband/core/mad_rmpp.c
556
queue_delayed_work(agent->qp_info->port_priv->wq,
drivers/infiniband/core/mad_rmpp.c
99
flush_workqueue(agent->qp_info->port_priv->wq);
drivers/media/pci/cx23885/cimax2.c
383
state = port->port_priv;
drivers/media/pci/cx23885/cimax2.c
390
state = port->port_priv;
drivers/media/pci/cx23885/cimax2.c
461
port->port_priv = state;
drivers/media/pci/cx23885/cimax2.c
524
state = (struct netup_ci_state *)port->port_priv;
drivers/media/pci/cx23885/cx23885.h
301
void *port_priv;
drivers/media/usb/cx231xx/cx231xx.h
558
void *port_priv;
drivers/net/can/usb/f81604.c
1136
struct f81604_port_priv *port_priv = netdev_priv(netdev);
drivers/net/can/usb/f81604.c
1140
return __f81604_set_termination(port_priv->dev, netdev->dev_port,
drivers/net/can/usb/f81604.c
1169
struct f81604_port_priv *port_priv;
drivers/net/can/usb/f81604.c
1171
netdev = alloc_candev(sizeof(*port_priv), 1);
drivers/net/can/usb/f81604.c
1179
port_priv = netdev_priv(netdev);
drivers/net/can/usb/f81604.c
1181
INIT_WORK(&port_priv->clear_reg_work, f81604_clear_reg_work);
drivers/net/can/usb/f81604.c
1182
init_usb_anchor(&port_priv->urbs_anchor);
drivers/net/can/usb/f81604.c
1184
port_priv->intf = intf;
drivers/net/can/usb/f81604.c
1185
port_priv->dev = dev;
drivers/net/can/usb/f81604.c
1186
port_priv->netdev = netdev;
drivers/net/can/usb/f81604.c
1187
port_priv->can.clock.freq = F81604_CAN_CLOCK;
drivers/net/can/usb/f81604.c
1189
port_priv->can.termination_const = f81604_termination;
drivers/net/can/usb/f81604.c
1190
port_priv->can.termination_const_cnt =
drivers/net/can/usb/f81604.c
1192
port_priv->can.bittiming_const = &f81604_bittiming_const;
drivers/net/can/usb/f81604.c
1193
port_priv->can.do_set_bittiming = f81604_set_bittiming;
drivers/net/can/usb/f81604.c
1194
port_priv->can.do_set_mode = f81604_set_mode;
drivers/net/can/usb/f81604.c
1195
port_priv->can.do_set_termination = f81604_set_termination;
drivers/net/can/usb/f81604.c
1196
port_priv->can.do_get_berr_counter = f81604_get_berr_counter;
drivers/net/can/usb/f81604.c
1197
port_priv->can.ctrlmode_supported =
drivers/net/ethernet/adi/adin1110.c
1001
skb_queue_tail(&port_priv->txq, skb);
drivers/net/ethernet/adi/adin1110.c
1004
schedule_work(&port_priv->tx_work);
drivers/net/ethernet/adi/adin1110.c
1012
struct adin1110_port_priv *port_priv = netdev_priv(dev);
drivers/net/ethernet/adi/adin1110.c
1014
storage->rx_packets = port_priv->rx_packets;
drivers/net/ethernet/adi/adin1110.c
1015
storage->tx_packets = port_priv->tx_packets;
drivers/net/ethernet/adi/adin1110.c
1017
storage->rx_bytes = port_priv->rx_bytes;
drivers/net/ethernet/adi/adin1110.c
1018
storage->tx_bytes = port_priv->tx_bytes;
drivers/net/ethernet/adi/adin1110.c
1024
struct adin1110_port_priv *port_priv = netdev_priv(dev);
drivers/net/ethernet/adi/adin1110.c
1025
struct adin1110_priv *priv = port_priv->priv;
drivers/net/ethernet/adi/adin1110.c
1036
struct adin1110_port_priv *port_priv = netdev_priv(dev);
drivers/net/ethernet/adi/adin1110.c
1039
err = snprintf(name, len, "p%d", port_priv->nr);
drivers/net/ethernet/adi/adin1110.c
1157
static int adin1110_port_bridge_join(struct adin1110_port_priv *port_priv,
drivers/net/ethernet/adi/adin1110.c
1160
struct adin1110_priv *priv = port_priv->priv;
drivers/net/ethernet/adi/adin1110.c
1163
port_priv->bridge = bridge;
drivers/net/ethernet/adi/adin1110.c
1174
return adin1110_set_mac_address(port_priv->netdev, bridge->dev_addr);
drivers/net/ethernet/adi/adin1110.c
1177
static int adin1110_port_bridge_leave(struct adin1110_port_priv *port_priv,
drivers/net/ethernet/adi/adin1110.c
1180
struct adin1110_priv *priv = port_priv->priv;
drivers/net/ethernet/adi/adin1110.c
1183
port_priv->bridge = NULL;
drivers/net/ethernet/adi/adin1110.c
1201
struct adin1110_port_priv *port_priv = netdev_priv(dev);
drivers/net/ethernet/adi/adin1110.c
1212
ret = adin1110_port_bridge_join(port_priv, info->upper_dev);
drivers/net/ethernet/adi/adin1110.c
1214
ret = adin1110_port_bridge_leave(port_priv, info->upper_dev);
drivers/net/ethernet/adi/adin1110.c
1233
static int adin1110_port_set_forwarding_state(struct adin1110_port_priv *port_priv)
drivers/net/ethernet/adi/adin1110.c
1235
struct adin1110_priv *priv = port_priv->priv;
drivers/net/ethernet/adi/adin1110.c
1238
port_priv->state = BR_STATE_FORWARDING;
drivers/net/ethernet/adi/adin1110.c
1241
ret = adin1110_set_mac_address(port_priv->netdev,
drivers/net/ethernet/adi/adin1110.c
1242
port_priv->netdev->dev_addr);
drivers/net/ethernet/adi/adin1110.c
1249
ret = adin1110_setup_rx_mode(port_priv);
drivers/net/ethernet/adi/adin1110.c
1256
static int adin1110_port_set_blocking_state(struct adin1110_port_priv *port_priv)
drivers/net/ethernet/adi/adin1110.c
1259
struct adin1110_priv *priv = port_priv->priv;
drivers/net/ethernet/adi/adin1110.c
1265
port_priv->state = BR_STATE_BLOCKING;
drivers/net/ethernet/adi/adin1110.c
1269
mac_slot = (!port_priv->nr) ? ADIN_MAC_P1_ADDR_SLOT : ADIN_MAC_P2_ADDR_SLOT;
drivers/net/ethernet/adi/adin1110.c
1280
port_rules = adin1110_port_rules(port_priv, true, false);
drivers/net/ethernet/adi/adin1110.c
1281
ret = adin1110_write_mac_address(port_priv, mac_slot, mac,
drivers/net/ethernet/adi/adin1110.c
1293
static int adin1110_port_attr_stp_state_set(struct adin1110_port_priv *port_priv,
drivers/net/ethernet/adi/adin1110.c
1298
return adin1110_port_set_forwarding_state(port_priv);
drivers/net/ethernet/adi/adin1110.c
1303
return adin1110_port_set_blocking_state(port_priv);
drivers/net/ethernet/adi/adin1110.c
1313
struct adin1110_port_priv *port_priv = netdev_priv(dev);
drivers/net/ethernet/adi/adin1110.c
1317
return adin1110_port_attr_stp_state_set(port_priv,
drivers/net/ethernet/adi/adin1110.c
1358
static int adin1110_fdb_add(struct adin1110_port_priv *port_priv,
drivers/net/ethernet/adi/adin1110.c
1361
struct adin1110_priv *priv = port_priv->priv;
drivers/net/ethernet/adi/adin1110.c
1369
netdev_dbg(port_priv->netdev,
drivers/net/ethernet/adi/adin1110.c
1372
fdb->offloaded, port_priv->nr);
drivers/net/ethernet/adi/adin1110.c
1392
other_port = priv->ports[!port_priv->nr];
drivers/net/ethernet/adi/adin1110.c
1420
static int adin1110_fdb_del(struct adin1110_port_priv *port_priv,
drivers/net/ethernet/adi/adin1110.c
1423
struct adin1110_priv *priv = port_priv->priv;
drivers/net/ethernet/adi/adin1110.c
1428
netdev_dbg(port_priv->netdev,
drivers/net/ethernet/adi/adin1110.c
1431
fdb->offloaded, port_priv->nr);
drivers/net/ethernet/adi/adin1110.c
1454
struct adin1110_port_priv *port_priv;
drivers/net/ethernet/adi/adin1110.c
1458
port_priv = switchdev_work->port_priv;
drivers/net/ethernet/adi/adin1110.c
1460
mutex_lock(&port_priv->priv->lock);
drivers/net/ethernet/adi/adin1110.c
1464
ret = adin1110_fdb_add(port_priv, &switchdev_work->fdb_info);
drivers/net/ethernet/adi/adin1110.c
1466
adin1110_fdb_offload_notify(port_priv->netdev,
drivers/net/ethernet/adi/adin1110.c
1470
adin1110_fdb_del(port_priv, &switchdev_work->fdb_info);
drivers/net/ethernet/adi/adin1110.c
1476
mutex_unlock(&port_priv->priv->lock);
drivers/net/ethernet/adi/adin1110.c
1480
dev_put(port_priv->netdev);
drivers/net/ethernet/adi/adin1110.c
1488
struct adin1110_port_priv *port_priv = netdev_priv(netdev);
drivers/net/ethernet/adi/adin1110.c
1500
switchdev_work->port_priv = port_priv;
drivers/net/ethernet/adi/adin1110.c
1572
struct adin1110_port_priv *port_priv;
drivers/net/ethernet/adi/adin1110.c
1578
netdev = devm_alloc_etherdev(dev, sizeof(*port_priv));
drivers/net/ethernet/adi/adin1110.c
1582
port_priv = netdev_priv(netdev);
drivers/net/ethernet/adi/adin1110.c
1583
port_priv->netdev = netdev;
drivers/net/ethernet/adi/adin1110.c
1584
port_priv->priv = priv;
drivers/net/ethernet/adi/adin1110.c
1585
port_priv->cfg = priv->cfg;
drivers/net/ethernet/adi/adin1110.c
1586
port_priv->nr = i;
drivers/net/ethernet/adi/adin1110.c
1587
priv->ports[i] = port_priv;
drivers/net/ethernet/adi/adin1110.c
1595
INIT_WORK(&port_priv->tx_work, adin1110_tx_work);
drivers/net/ethernet/adi/adin1110.c
1596
INIT_WORK(&port_priv->rx_mode_work, adin1110_rx_mode_work);
drivers/net/ethernet/adi/adin1110.c
1597
skb_queue_head_init(&port_priv->txq);
drivers/net/ethernet/adi/adin1110.c
1607
port_priv->phydev = get_phy_device(priv->mii_bus, i + 1, false);
drivers/net/ethernet/adi/adin1110.c
1608
if (IS_ERR(port_priv->phydev)) {
drivers/net/ethernet/adi/adin1110.c
1610
return PTR_ERR(port_priv->phydev);
drivers/net/ethernet/adi/adin1110.c
1613
port_priv->phydev = phy_connect(netdev,
drivers/net/ethernet/adi/adin1110.c
1614
phydev_name(port_priv->phydev),
drivers/net/ethernet/adi/adin1110.c
1617
if (IS_ERR(port_priv->phydev)) {
drivers/net/ethernet/adi/adin1110.c
1619
return PTR_ERR(port_priv->phydev);
drivers/net/ethernet/adi/adin1110.c
1623
port_priv->phydev);
drivers/net/ethernet/adi/adin1110.c
169
struct adin1110_port_priv *port_priv;
drivers/net/ethernet/adi/adin1110.c
293
static int adin1110_read_fifo(struct adin1110_port_priv *port_priv)
drivers/net/ethernet/adi/adin1110.c
295
struct adin1110_priv *priv = port_priv->priv;
drivers/net/ethernet/adi/adin1110.c
305
if (!port_priv->nr) {
drivers/net/ethernet/adi/adin1110.c
338
rxb = netdev_alloc_skb(port_priv->netdev, round_len + header_len);
drivers/net/ethernet/adi/adin1110.c
355
rxb->protocol = eth_type_trans(rxb, port_priv->netdev);
drivers/net/ethernet/adi/adin1110.c
357
if ((port_priv->flags & IFF_ALLMULTI && rxb->pkt_type == PACKET_MULTICAST) ||
drivers/net/ethernet/adi/adin1110.c
358
(port_priv->flags & IFF_BROADCAST && rxb->pkt_type == PACKET_BROADCAST))
drivers/net/ethernet/adi/adin1110.c
359
rxb->offload_fwd_mark = port_priv->priv->forwarding;
drivers/net/ethernet/adi/adin1110.c
363
port_priv->rx_bytes += frame_size - ADIN1110_FRAME_HEADER_LEN;
drivers/net/ethernet/adi/adin1110.c
364
port_priv->rx_packets++;
drivers/net/ethernet/adi/adin1110.c
369
static int adin1110_write_fifo(struct adin1110_port_priv *port_priv,
drivers/net/ethernet/adi/adin1110.c
372
struct adin1110_priv *priv = port_priv->priv;
drivers/net/ethernet/adi/adin1110.c
409
frame_header = cpu_to_be16(port_priv->nr);
drivers/net/ethernet/adi/adin1110.c
420
port_priv->tx_bytes += txb->len;
drivers/net/ethernet/adi/adin1110.c
421
port_priv->tx_packets++;
drivers/net/ethernet/adi/adin1110.c
539
static bool adin1110_port_rx_ready(struct adin1110_port_priv *port_priv,
drivers/net/ethernet/adi/adin1110.c
542
if (!netif_oper_up(port_priv->netdev))
drivers/net/ethernet/adi/adin1110.c
545
if (!port_priv->nr)
drivers/net/ethernet/adi/adin1110.c
551
static void adin1110_read_frames(struct adin1110_port_priv *port_priv,
drivers/net/ethernet/adi/adin1110.c
554
struct adin1110_priv *priv = port_priv->priv;
drivers/net/ethernet/adi/adin1110.c
563
if (!adin1110_port_rx_ready(port_priv, status1))
drivers/net/ethernet/adi/adin1110.c
566
ret = adin1110_read_fifo(port_priv);
drivers/net/ethernet/adi/adin1110.c
627
static int adin1110_write_mac_address(struct adin1110_port_priv *port_priv,
drivers/net/ethernet/adi/adin1110.c
631
struct adin1110_priv *priv = port_priv->priv;
drivers/net/ethernet/adi/adin1110.c
637
if (!port_priv->nr)
drivers/net/ethernet/adi/adin1110.c
701
static u32 adin1110_port_rules(struct adin1110_port_priv *port_priv,
drivers/net/ethernet/adi/adin1110.c
707
if (!port_priv->nr)
drivers/net/ethernet/adi/adin1110.c
715
if (fw_to_other_port && port_priv->priv->forwarding)
drivers/net/ethernet/adi/adin1110.c
721
static int adin1110_multicast_filter(struct adin1110_port_priv *port_priv,
drivers/net/ethernet/adi/adin1110.c
731
if (accept_multicast && port_priv->state == BR_STATE_FORWARDING)
drivers/net/ethernet/adi/adin1110.c
732
port_rules = adin1110_port_rules(port_priv, true, true);
drivers/net/ethernet/adi/adin1110.c
734
return adin1110_write_mac_address(port_priv, mac_nr, mac,
drivers/net/ethernet/adi/adin1110.c
738
static int adin1110_broadcasts_filter(struct adin1110_port_priv *port_priv,
drivers/net/ethernet/adi/adin1110.c
746
if (accept_broadcast && port_priv->state == BR_STATE_FORWARDING)
drivers/net/ethernet/adi/adin1110.c
747
port_rules = adin1110_port_rules(port_priv, true, true);
drivers/net/ethernet/adi/adin1110.c
749
return adin1110_write_mac_address(port_priv, mac_nr, mask,
drivers/net/ethernet/adi/adin1110.c
756
struct adin1110_port_priv *port_priv = netdev_priv(netdev);
drivers/net/ethernet/adi/adin1110.c
767
mac_slot = (!port_priv->nr) ? ADIN_MAC_P1_ADDR_SLOT : ADIN_MAC_P2_ADDR_SLOT;
drivers/net/ethernet/adi/adin1110.c
768
port_rules = adin1110_port_rules(port_priv, true, false);
drivers/net/ethernet/adi/adin1110.c
770
return adin1110_write_mac_address(port_priv, mac_slot, netdev->dev_addr,
drivers/net/ethernet/adi/adin1110.c
794
static int adin1110_set_promisc_mode(struct adin1110_port_priv *port_priv,
drivers/net/ethernet/adi/adin1110.c
797
struct adin1110_priv *priv = port_priv->priv;
drivers/net/ethernet/adi/adin1110.c
800
if (port_priv->state != BR_STATE_FORWARDING)
drivers/net/ethernet/adi/adin1110.c
803
if (!port_priv->nr)
drivers/net/ethernet/adi/adin1110.c
812
static int adin1110_setup_rx_mode(struct adin1110_port_priv *port_priv)
drivers/net/ethernet/adi/adin1110.c
816
ret = adin1110_set_promisc_mode(port_priv,
drivers/net/ethernet/adi/adin1110.c
817
!!(port_priv->flags & IFF_PROMISC));
drivers/net/ethernet/adi/adin1110.c
821
ret = adin1110_multicast_filter(port_priv, ADIN_MAC_MULTICAST_ADDR_SLOT,
drivers/net/ethernet/adi/adin1110.c
822
!!(port_priv->flags & IFF_ALLMULTI));
drivers/net/ethernet/adi/adin1110.c
826
ret = adin1110_broadcasts_filter(port_priv,
drivers/net/ethernet/adi/adin1110.c
828
!!(port_priv->flags & IFF_BROADCAST));
drivers/net/ethernet/adi/adin1110.c
832
return adin1110_set_bits(port_priv->priv, ADIN1110_CONFIG1,
drivers/net/ethernet/adi/adin1110.c
860
struct adin1110_port_priv *port_priv;
drivers/net/ethernet/adi/adin1110.c
863
port_priv = container_of(work, struct adin1110_port_priv, rx_mode_work);
drivers/net/ethernet/adi/adin1110.c
864
priv = port_priv->priv;
drivers/net/ethernet/adi/adin1110.c
867
adin1110_setup_rx_mode(port_priv);
drivers/net/ethernet/adi/adin1110.c
873
struct adin1110_port_priv *port_priv = netdev_priv(dev);
drivers/net/ethernet/adi/adin1110.c
874
struct adin1110_priv *priv = port_priv->priv;
drivers/net/ethernet/adi/adin1110.c
878
port_priv->flags = dev->flags;
drivers/net/ethernet/adi/adin1110.c
879
schedule_work(&port_priv->rx_mode_work);
drivers/net/ethernet/adi/adin1110.c
886
struct adin1110_port_priv *port_priv = netdev_priv(net_dev);
drivers/net/ethernet/adi/adin1110.c
887
struct adin1110_priv *priv = port_priv->priv;
drivers/net/ethernet/adi/adin1110.c
917
port_priv->state = BR_STATE_FORWARDING;
drivers/net/ethernet/adi/adin1110.c
934
phy_start(port_priv->phydev);
drivers/net/ethernet/adi/adin1110.c
943
struct adin1110_port_priv *port_priv = netdev_priv(net_dev);
drivers/net/ethernet/adi/adin1110.c
944
struct adin1110_priv *priv = port_priv->priv;
drivers/net/ethernet/adi/adin1110.c
948
mask = !port_priv->nr ? ADIN2111_RX_RDY_IRQ : ADIN1110_RX_RDY_IRQ;
drivers/net/ethernet/adi/adin1110.c
957
netif_stop_queue(port_priv->netdev);
drivers/net/ethernet/adi/adin1110.c
958
flush_work(&port_priv->tx_work);
drivers/net/ethernet/adi/adin1110.c
959
phy_stop(port_priv->phydev);
drivers/net/ethernet/adi/adin1110.c
966
struct adin1110_port_priv *port_priv;
drivers/net/ethernet/adi/adin1110.c
971
port_priv = container_of(work, struct adin1110_port_priv, tx_work);
drivers/net/ethernet/adi/adin1110.c
972
priv = port_priv->priv;
drivers/net/ethernet/adi/adin1110.c
976
while ((txb = skb_dequeue(&port_priv->txq))) {
drivers/net/ethernet/adi/adin1110.c
977
ret = adin1110_write_fifo(port_priv, txb);
drivers/net/ethernet/adi/adin1110.c
990
struct adin1110_port_priv *port_priv = netdev_priv(dev);
drivers/net/ethernet/adi/adin1110.c
991
struct adin1110_priv *priv = port_priv->priv;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-ethtool.c
103
struct ethsw_port_priv *port_priv = netdev_priv(netdev);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-ethtool.c
104
struct ethsw_core *ethsw = port_priv->ethsw_data;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-ethtool.c
109
mutex_lock(&port_priv->mac_lock);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-ethtool.c
111
if (dpaa2_switch_port_is_type_phy(port_priv)) {
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-ethtool.c
112
err = phylink_ethtool_ksettings_set(port_priv->mac->phylink,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-ethtool.c
114
mutex_unlock(&port_priv->mac_lock);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-ethtool.c
118
mutex_unlock(&port_priv->mac_lock);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-ethtool.c
125
port_priv->idx);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-ethtool.c
142
err = dpsw_if_set_link_cfg(port_priv->ethsw_data->mc_io, 0,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-ethtool.c
143
port_priv->ethsw_data->dpsw_handle,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-ethtool.c
144
port_priv->idx,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-ethtool.c
150
port_priv->idx);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-ethtool.c
191
struct ethsw_port_priv *port_priv = netdev_priv(netdev);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-ethtool.c
195
err = dpsw_if_get_counter(port_priv->ethsw_data->mc_io, 0,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-ethtool.c
196
port_priv->ethsw_data->dpsw_handle,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-ethtool.c
197
port_priv->idx,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-ethtool.c
205
mutex_lock(&port_priv->mac_lock);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-ethtool.c
207
if (dpaa2_switch_port_has_mac(port_priv))
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-ethtool.c
208
dpaa2_mac_get_ethtool_stats(port_priv->mac, data + i);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-ethtool.c
210
mutex_unlock(&port_priv->mac_lock);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-ethtool.c
218
struct ethsw_port_priv *port_priv = netdev_priv(netdev);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-ethtool.c
220
mutex_lock(&port_priv->mac_lock);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-ethtool.c
222
if (dpaa2_switch_port_has_mac(port_priv))
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-ethtool.c
223
dpaa2_mac_get_rmon_stats(port_priv->mac, rmon_stats, ranges);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-ethtool.c
225
mutex_unlock(&port_priv->mac_lock);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-ethtool.c
232
struct ethsw_port_priv *port_priv = netdev_priv(net_dev);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-ethtool.c
234
mutex_lock(&port_priv->mac_lock);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-ethtool.c
236
if (dpaa2_switch_port_has_mac(port_priv))
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-ethtool.c
237
dpaa2_mac_get_ctrl_stats(port_priv->mac, ctrl_stats);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-ethtool.c
239
mutex_unlock(&port_priv->mac_lock);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-ethtool.c
246
struct ethsw_port_priv *port_priv = netdev_priv(net_dev);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-ethtool.c
248
mutex_lock(&port_priv->mac_lock);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-ethtool.c
250
if (dpaa2_switch_port_has_mac(port_priv))
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-ethtool.c
251
dpaa2_mac_get_eth_mac_stats(port_priv->mac, eth_mac_stats);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-ethtool.c
253
mutex_unlock(&port_priv->mac_lock);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-ethtool.c
37
struct ethsw_port_priv *port_priv = netdev_priv(netdev);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-ethtool.c
43
err = dpsw_get_api_version(port_priv->ethsw_data->mc_io, 0,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-ethtool.c
61
struct ethsw_port_priv *port_priv = netdev_priv(netdev);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-ethtool.c
65
mutex_lock(&port_priv->mac_lock);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-ethtool.c
67
if (dpaa2_switch_port_is_type_phy(port_priv)) {
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-ethtool.c
68
err = phylink_ethtool_ksettings_get(port_priv->mac->phylink,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-ethtool.c
70
mutex_unlock(&port_priv->mac_lock);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-ethtool.c
74
mutex_unlock(&port_priv->mac_lock);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-ethtool.c
76
err = dpsw_if_get_link_state(port_priv->ethsw_data->mc_io, 0,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-ethtool.c
77
port_priv->ethsw_data->dpsw_handle,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-ethtool.c
78
port_priv->idx,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-flower.c
407
struct ethsw_port_priv *port_priv;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-flower.c
427
port_priv = ethsw->ports[port];
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-flower.c
433
!(port_priv->vlans[vlan] & ETHSW_VLAN_MEMBER)) {
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-flower.c
820
struct ethsw_port_priv *port_priv)
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-flower.c
822
struct ethsw_core *ethsw = port_priv->ethsw_data;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-flower.c
829
port_priv->idx, &tmp->cfg);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-flower.c
840
port_priv->idx, &tmp->cfg);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-flower.c
846
struct ethsw_port_priv *port_priv)
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-flower.c
848
struct ethsw_core *ethsw = port_priv->ethsw_data;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-flower.c
855
port_priv->idx, &tmp->cfg);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-flower.c
865
port_priv->idx, &tmp->cfg);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
102
dpaa2_switch_fdb_for_leave(struct ethsw_port_priv *port_priv)
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1024
static int dpaa2_switch_port_set_mac_addr(struct ethsw_port_priv *port_priv)
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1026
struct ethsw_core *ethsw = port_priv->ethsw_data;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1027
struct net_device *net_dev = port_priv->netdev;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1037
port_priv->idx, mac_addr);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
104
struct ethsw_core *ethsw = port_priv->ethsw_data;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
107
if (!dpaa2_switch_fdb_in_use_by_others(ethsw, port_priv->fdb,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
108
port_priv)) {
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
109
return port_priv->fdb;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1134
struct ethsw_port_priv *port_priv = netdev_priv(net_dev);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1135
struct ethsw_core *ethsw = port_priv->ethsw_data;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1177
port_priv->tx_qdid,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
118
static void dpaa2_switch_port_set_fdb(struct ethsw_port_priv *port_priv,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
122
struct dpaa2_switch_fdb *old_fdb = port_priv->fdb;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
123
struct ethsw_core *ethsw = port_priv->ethsw_data;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1240
dpaa2_switch_port_acl_tbl_bind(struct ethsw_port_priv *port_priv,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1243
struct ethsw_core *ethsw = port_priv->ethsw_data;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1244
struct net_device *netdev = port_priv->netdev;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1248
if (port_priv->filter_block)
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1251
acl_if_cfg.if_id[0] = port_priv->idx;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
126
new_fdb = linking ? dpaa2_switch_fdb_for_join(port_priv, upper_dev) :
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1260
block->ports |= BIT(port_priv->idx);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1261
port_priv->filter_block = block;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1267
dpaa2_switch_port_acl_tbl_unbind(struct ethsw_port_priv *port_priv,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
127
dpaa2_switch_fdb_for_leave(port_priv);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1270
struct ethsw_core *ethsw = port_priv->ethsw_data;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1271
struct net_device *netdev = port_priv->netdev;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1275
if (port_priv->filter_block != block)
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1278
acl_if_cfg.if_id[0] = port_priv->idx;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1287
block->ports &= ~BIT(port_priv->idx);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1288
port_priv->filter_block = NULL;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1292
static int dpaa2_switch_port_block_bind(struct ethsw_port_priv *port_priv,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1295
struct dpaa2_switch_filter_block *old_block = port_priv->filter_block;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1301
err = dpaa2_switch_block_offload_mirror(block, port_priv);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1308
if (port_priv->filter_block == block)
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1311
err = dpaa2_switch_port_acl_tbl_unbind(port_priv, old_block);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1321
return dpaa2_switch_port_acl_tbl_bind(port_priv, block);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1325
dpaa2_switch_port_block_unbind(struct ethsw_port_priv *port_priv,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1328
struct ethsw_core *ethsw = port_priv->ethsw_data;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1335
err = dpaa2_switch_block_unoffload_mirror(block, port_priv);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1342
if (block->ports == BIT(port_priv->idx))
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1345
err = dpaa2_switch_port_acl_tbl_unbind(port_priv, block);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1354
return dpaa2_switch_port_acl_tbl_bind(port_priv, new_block);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1360
struct ethsw_port_priv *port_priv = netdev_priv(netdev);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1361
struct ethsw_core *ethsw = port_priv->ethsw_data;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1376
filter_block = port_priv->filter_block;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1389
err = dpaa2_switch_port_block_bind(port_priv, filter_block);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
139
if (!dpaa2_switch_fdb_in_use_by_others(ethsw, port_priv->fdb,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
140
port_priv)) {
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1410
struct ethsw_port_priv *port_priv = netdev_priv(netdev);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1411
struct ethsw_core *ethsw = port_priv->ethsw_data;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1423
err = dpaa2_switch_port_block_unbind(port_priv, filter_block);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
146
port_priv->fdb = new_fdb;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1488
static int dpaa2_switch_port_connect_mac(struct ethsw_port_priv *port_priv)
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1494
dpsw_port_dev = to_fsl_mc_device(port_priv->netdev->dev.parent);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1495
dpmac_dev = fsl_mc_get_endpoint(dpsw_port_dev, port_priv->idx);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
150
port_priv->fdb->bridge_dev = linking ? upper_dev : NULL;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1515
mac->mc_io = port_priv->ethsw_data->mc_io;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1516
mac->net_dev = port_priv->netdev;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1525
netdev_err(port_priv->netdev,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1532
mutex_lock(&port_priv->mac_lock);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1533
port_priv->mac = mac;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1534
mutex_unlock(&port_priv->mac_lock);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1547
static void dpaa2_switch_port_disconnect_mac(struct ethsw_port_priv *port_priv)
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1551
mutex_lock(&port_priv->mac_lock);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1552
mac = port_priv->mac;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1553
port_priv->mac = NULL;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1554
mutex_unlock(&port_priv->mac_lock);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1571
struct ethsw_port_priv *port_priv;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1588
port_priv = ethsw->ports[if_id];
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1591
dpaa2_switch_port_link_state_update(port_priv->netdev);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1594
dpaa2_switch_port_set_mac_addr(port_priv);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1599
had_mac = !!port_priv->mac;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1601
dpaa2_switch_port_disconnect_mac(port_priv);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1603
dpaa2_switch_port_connect_mac(port_priv);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1690
static int dpaa2_switch_port_set_learning(struct ethsw_port_priv *port_priv, bool enable)
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1692
struct ethsw_core *ethsw = port_priv->ethsw_data;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1702
port_priv->idx, learn_mode);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1704
netdev_err(port_priv->netdev, "dpsw_if_set_learning_mode err %d\n", err);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1707
dpaa2_switch_port_fast_age(port_priv);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1715
struct ethsw_port_priv *port_priv = netdev_priv(netdev);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1718
err = dpaa2_switch_port_set_stp_state(port_priv, state);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1726
err = dpaa2_switch_port_set_learning(port_priv, false);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1730
err = dpaa2_switch_port_set_learning(port_priv,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1731
port_priv->learn_ena);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1738
static int dpaa2_switch_port_flood(struct ethsw_port_priv *port_priv,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1741
struct ethsw_core *ethsw = port_priv->ethsw_data;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1744
port_priv->bcast_flood = !!(flags.val & BR_BCAST_FLOOD);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1747
port_priv->ucast_flood = !!(flags.val & BR_FLOOD);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1749
return dpaa2_switch_fdb_set_egress_flood(ethsw, port_priv->fdb->fdb_id);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1778
struct ethsw_port_priv *port_priv = netdev_priv(netdev);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1784
err = dpaa2_switch_port_set_learning(port_priv, learn_ena);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1787
port_priv->learn_ena = learn_ena;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1791
err = dpaa2_switch_port_flood(port_priv, flags);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1834
struct ethsw_port_priv *port_priv = netdev_priv(netdev);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1835
struct ethsw_core *ethsw = port_priv->ethsw_data;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1839
if (!port_priv->ethsw_data->vlans[vlan->vid]) {
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1853
err = dpaa2_switch_add_vlan(port_priv, vlan->vid);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1857
port_priv->ethsw_data->vlans[vlan->vid] |= ETHSW_VLAN_GLOBAL;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1860
return dpaa2_switch_port_add_vlan(port_priv, vlan->vid, vlan->flags,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1884
struct ethsw_port_priv *port_priv = netdev_priv(netdev);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1891
err = dpaa2_switch_port_fdb_add_mc(port_priv, mdb->addr);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1898
dpaa2_switch_port_fdb_del_mc(port_priv, mdb->addr);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1926
static int dpaa2_switch_port_del_vlan(struct ethsw_port_priv *port_priv, u16 vid)
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1928
struct ethsw_core *ethsw = port_priv->ethsw_data;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1929
struct net_device *netdev = port_priv->netdev;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1933
if (!port_priv->vlans[vid])
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1936
if (port_priv->vlans[vid] & ETHSW_VLAN_PVID) {
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1941
err = dpaa2_switch_port_set_pvid(port_priv, 4095);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1947
vcfg.if_id[0] = port_priv->idx;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1948
if (port_priv->vlans[vid] & ETHSW_VLAN_UNTAGGED) {
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1957
port_priv->vlans[vid] &= ~ETHSW_VLAN_UNTAGGED;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1960
if (port_priv->vlans[vid] & ETHSW_VLAN_MEMBER) {
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1968
port_priv->vlans[vid] &= ~ETHSW_VLAN_MEMBER;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1992
struct ethsw_port_priv *port_priv = netdev_priv(netdev);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
1997
return dpaa2_switch_port_del_vlan(port_priv, vlan->vid);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
2003
struct ethsw_port_priv *port_priv = netdev_priv(netdev);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
2009
err = dpaa2_switch_port_fdb_del_mc(port_priv, mdb->addr);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
2056
struct ethsw_port_priv *port_priv = netdev_priv(netdev);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
2057
struct dpaa2_switch_fdb *old_fdb = port_priv->fdb;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
2058
struct ethsw_core *ethsw = port_priv->ethsw_data;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
2063
err = dpaa2_switch_port_del_vlan(port_priv, 1);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
2067
dpaa2_switch_port_set_fdb(port_priv, upper_dev, true);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
2071
err = dpaa2_switch_port_set_learning(port_priv, learn_ena);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
2072
port_priv->learn_ena = learn_ena;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
2075
err = dpaa2_switch_fdb_set_egress_flood(ethsw, port_priv->fdb->fdb_id);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
2093
dpaa2_switch_port_set_fdb(port_priv, upper_dev, false);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
2124
struct ethsw_port_priv *port_priv = netdev_priv(netdev);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
2125
struct dpaa2_switch_fdb *old_fdb = port_priv->fdb;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
2126
struct ethsw_core *ethsw = port_priv->ethsw_data;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
2130
dpaa2_switch_port_fast_age(port_priv);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
2140
dpaa2_switch_port_set_fdb(port_priv, port_priv->fdb->bridge_dev, false);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
2151
port_priv->bcast_flood = true;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
2152
port_priv->ucast_flood = true;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
2158
err = dpaa2_switch_fdb_set_egress_flood(ethsw, port_priv->fdb->fdb_id);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
2168
err = dpaa2_switch_port_set_learning(port_priv, false);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
2171
port_priv->learn_ena = false;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
2176
return dpaa2_switch_port_add_vlan(port_priv, DEFAULT_VLAN_ID,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
220
static int dpaa2_switch_add_vlan(struct ethsw_port_priv *port_priv, u16 vid)
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
2201
struct ethsw_port_priv *port_priv = netdev_priv(netdev);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
222
struct ethsw_core *ethsw = port_priv->ethsw_data;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
2224
if (other_port_priv->ethsw_data != port_priv->ethsw_data) {
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
2237
struct ethsw_port_priv *port_priv;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
2257
port_priv = netdev_priv(netdev);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
2258
if (port_priv->fdb->bridge_dev) {
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
226
vcfg.fdb_id = dpaa2_switch_port_get_fdb_id(port_priv);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
2371
struct ethsw_port_priv *port_priv = netdev_priv(dev);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
2374
struct ethsw_core *ethsw = port_priv->ethsw_data;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
238
static bool dpaa2_switch_port_is_up(struct ethsw_port_priv *port_priv)
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
240
struct net_device *netdev = port_priv->netdev;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
244
err = dpsw_if_get_link_state(port_priv->ethsw_data->mc_io, 0,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
245
port_priv->ethsw_data->dpsw_handle,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
246
port_priv->idx, &state);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
2493
struct ethsw_port_priv *port_priv;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
2511
port_priv = ethsw->ports[if_id];
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
2512
netdev = port_priv->netdev;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
2536
if (vid == port_priv->pvid) {
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
2549
skb->offload_fwd_mark = !!(port_priv->fdb->bridge_dev);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
257
static int dpaa2_switch_port_set_pvid(struct ethsw_port_priv *port_priv, u16 pvid)
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
259
struct ethsw_core *ethsw = port_priv->ethsw_data;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
260
struct net_device *netdev = port_priv->netdev;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
266
port_priv->idx, &tci_cfg);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
275
up = dpaa2_switch_port_is_up(port_priv);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
279
port_priv->idx);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
28
static u16 dpaa2_switch_port_get_fdb_id(struct ethsw_port_priv *port_priv)
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
287
port_priv->idx, &tci_cfg);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
294
port_priv->vlans[port_priv->pvid] &= ~ETHSW_VLAN_PVID;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
295
port_priv->vlans[pvid] |= ETHSW_VLAN_PVID;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
296
port_priv->pvid = pvid;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
30
return port_priv->fdb->fdb_id;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
302
port_priv->idx);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
3045
struct ethsw_port_priv *port_priv = ethsw->ports[port_idx];
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
3047
dpaa2_switch_port_disconnect_mac(port_priv);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
3048
free_netdev(port_priv->netdev);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
312
static int dpaa2_switch_port_add_vlan(struct ethsw_port_priv *port_priv,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
315
struct ethsw_core *ethsw = port_priv->ethsw_data;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
316
struct net_device *netdev = port_priv->netdev;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
320
if (!port_priv->vlans[vid]) {
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
3202
static int dpaa2_switch_port_trap_mac_addr(struct ethsw_port_priv *port_priv,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
3215
return dpaa2_switch_acl_entry_add(port_priv->filter_block, &acl_entry);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
3218
static int dpaa2_switch_port_init(struct ethsw_port_priv *port_priv, u16 port)
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
3226
struct net_device *netdev = port_priv->netdev;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
3227
struct ethsw_core *ethsw = port_priv->ethsw_data;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
3238
port_priv->idx, &dpsw_if_attr);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
3243
port_priv->tx_qdid = dpsw_if_attr.qdid;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
325
vcfg.if_id[0] = port_priv->idx;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
3259
port_priv->fdb = fdb;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
326
vcfg.fdb_id = dpaa2_switch_port_get_fdb_id(port_priv);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
3270
err = dpaa2_switch_fdb_set_egress_flood(ethsw, port_priv->fdb->fdb_id);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
3291
err = dpaa2_switch_port_acl_tbl_bind(port_priv, filter_block);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
3295
err = dpaa2_switch_port_trap_mac_addr(port_priv, stpa);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
335
port_priv->vlans[vid] = ETHSW_VLAN_MEMBER;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
3367
struct ethsw_port_priv *port_priv;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
3378
port_priv = netdev_priv(port_netdev);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
3379
port_priv->netdev = port_netdev;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
3380
port_priv->ethsw_data = ethsw;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
3382
mutex_init(&port_priv->mac_lock);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
3384
port_priv->idx = port_idx;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
3385
port_priv->stp_state = BR_STATE_FORWARDING;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
3393
port_priv->bcast_flood = true;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
3394
port_priv->ucast_flood = true;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
340
vcfg.if_id[0] = port_priv->idx;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
3403
ethsw->ports[port_idx] = port_priv;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
3413
err = dpaa2_switch_port_init(port_priv, port_idx);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
3417
err = dpaa2_switch_port_set_mac_addr(port_priv);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
3421
err = dpaa2_switch_port_set_learning(port_priv, false);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
3424
port_priv->learn_ena = false;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
3426
err = dpaa2_switch_port_connect_mac(port_priv);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
343
if (!(port_priv->vlans[vid] & ETHSW_VLAN_UNTAGGED)) {
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
353
port_priv->vlans[vid] |= ETHSW_VLAN_UNTAGGED;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
355
} else if (changed && (port_priv->vlans[vid] & ETHSW_VLAN_UNTAGGED)) {
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
364
port_priv->vlans[vid] &= ~ETHSW_VLAN_UNTAGGED;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
368
err = dpaa2_switch_port_set_pvid(port_priv, vid);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
371
} else if (changed && port_priv->vlans[vid] & ETHSW_VLAN_PVID) {
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
372
err = dpaa2_switch_port_set_pvid(port_priv, 4095);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
398
static int dpaa2_switch_port_set_stp_state(struct ethsw_port_priv *port_priv, u8 state)
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
404
if (!netif_running(port_priv->netdev) || state == port_priv->stp_state)
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
409
if (port_priv->vlans[vid] & ETHSW_VLAN_MEMBER) {
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
411
err = dpsw_if_set_stp(port_priv->ethsw_data->mc_io, 0,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
412
port_priv->ethsw_data->dpsw_handle,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
413
port_priv->idx, &stp_cfg);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
415
netdev_err(port_priv->netdev,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
422
port_priv->stp_state = state;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
451
static int dpaa2_switch_port_fdb_add_uc(struct ethsw_port_priv *port_priv,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
458
entry.if_egress = port_priv->idx;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
462
fdb_id = dpaa2_switch_port_get_fdb_id(port_priv);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
463
err = dpsw_fdb_add_unicast(port_priv->ethsw_data->mc_io, 0,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
464
port_priv->ethsw_data->dpsw_handle,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
467
netdev_err(port_priv->netdev,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
472
static int dpaa2_switch_port_fdb_del_uc(struct ethsw_port_priv *port_priv,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
479
entry.if_egress = port_priv->idx;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
483
fdb_id = dpaa2_switch_port_get_fdb_id(port_priv);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
484
err = dpsw_fdb_remove_unicast(port_priv->ethsw_data->mc_io, 0,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
485
port_priv->ethsw_data->dpsw_handle,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
489
netdev_err(port_priv->netdev,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
494
static int dpaa2_switch_port_fdb_add_mc(struct ethsw_port_priv *port_priv,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
504
entry.if_id[0] = port_priv->idx;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
506
fdb_id = dpaa2_switch_port_get_fdb_id(port_priv);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
507
err = dpsw_fdb_add_multicast(port_priv->ethsw_data->mc_io, 0,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
508
port_priv->ethsw_data->dpsw_handle,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
512
netdev_err(port_priv->netdev, "dpsw_fdb_add_multicast err %d\n",
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
517
static int dpaa2_switch_port_fdb_del_mc(struct ethsw_port_priv *port_priv,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
527
entry.if_id[0] = port_priv->idx;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
529
fdb_id = dpaa2_switch_port_get_fdb_id(port_priv);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
530
err = dpsw_fdb_remove_multicast(port_priv->ethsw_data->mc_io, 0,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
531
port_priv->ethsw_data->dpsw_handle,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
535
netdev_err(port_priv->netdev,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
543
struct ethsw_port_priv *port_priv = netdev_priv(netdev);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
547
err = dpsw_if_get_counter(port_priv->ethsw_data->mc_io, 0,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
548
port_priv->ethsw_data->dpsw_handle,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
549
port_priv->idx,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
554
err = dpsw_if_get_counter(port_priv->ethsw_data->mc_io, 0,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
555
port_priv->ethsw_data->dpsw_handle,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
556
port_priv->idx,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
561
err = dpsw_if_get_counter(port_priv->ethsw_data->mc_io, 0,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
562
port_priv->ethsw_data->dpsw_handle,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
563
port_priv->idx,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
568
err = dpsw_if_get_counter(port_priv->ethsw_data->mc_io, 0,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
569
port_priv->ethsw_data->dpsw_handle,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
570
port_priv->idx,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
575
err = dpsw_if_get_counter(port_priv->ethsw_data->mc_io, 0,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
576
port_priv->ethsw_data->dpsw_handle,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
577
port_priv->idx,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
583
err = dpsw_if_get_counter(port_priv->ethsw_data->mc_io, 0,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
584
port_priv->ethsw_data->dpsw_handle,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
585
port_priv->idx,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
592
err = dpsw_if_get_counter(port_priv->ethsw_data->mc_io, 0,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
593
port_priv->ethsw_data->dpsw_handle,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
594
port_priv->idx,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
627
struct ethsw_port_priv *port_priv = netdev_priv(netdev);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
630
err = dpsw_if_set_max_frame_length(port_priv->ethsw_data->mc_io,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
632
port_priv->ethsw_data->dpsw_handle,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
633
port_priv->idx,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
647
struct ethsw_port_priv *port_priv = netdev_priv(netdev);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
657
if (dpaa2_mac_is_type_phy(port_priv->mac))
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
666
err = dpsw_if_get_link_state(port_priv->ethsw_data->mc_io, 0,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
667
port_priv->ethsw_data->dpsw_handle,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
668
port_priv->idx, &state);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
676
if (state.up != port_priv->link_state) {
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
684
port_priv->link_state = state.up;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
71
dpaa2_switch_fdb_for_join(struct ethsw_port_priv *port_priv,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
733
struct ethsw_port_priv *port_priv = netdev_priv(netdev);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
734
struct ethsw_core *ethsw = port_priv->ethsw_data;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
737
mutex_lock(&port_priv->mac_lock);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
739
if (!dpaa2_switch_port_is_type_phy(port_priv)) {
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
748
err = dpsw_if_enable(port_priv->ethsw_data->mc_io, 0,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
749
port_priv->ethsw_data->dpsw_handle,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
750
port_priv->idx);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
752
mutex_unlock(&port_priv->mac_lock);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
759
if (dpaa2_switch_port_is_type_phy(port_priv))
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
760
dpaa2_mac_start(port_priv->mac);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
762
mutex_unlock(&port_priv->mac_lock);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
769
struct ethsw_port_priv *port_priv = netdev_priv(netdev);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
770
struct ethsw_core *ethsw = port_priv->ethsw_data;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
773
mutex_lock(&port_priv->mac_lock);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
775
if (dpaa2_switch_port_is_type_phy(port_priv)) {
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
776
dpaa2_mac_stop(port_priv->mac);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
782
mutex_unlock(&port_priv->mac_lock);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
784
err = dpsw_if_disable(port_priv->ethsw_data->mc_io, 0,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
785
port_priv->ethsw_data->dpsw_handle,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
786
port_priv->idx);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
800
struct ethsw_port_priv *port_priv = netdev_priv(dev);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
803
ppid->id[0] = port_priv->ethsw_data->dev_id;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
811
struct ethsw_port_priv *port_priv = netdev_priv(netdev);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
814
err = snprintf(name, len, "p%d", port_priv->idx);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
870
struct ethsw_port_priv *port_priv)
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
872
int idx = port_priv->idx;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
876
valid = entry->if_info == port_priv->idx;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
883
static int dpaa2_switch_fdb_iterate(struct ethsw_port_priv *port_priv,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
886
struct net_device *net_dev = port_priv->netdev;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
887
struct ethsw_core *ethsw = port_priv->ethsw_data;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
91
if (other_dev == port_priv->netdev)
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
911
fdb_id = dpaa2_switch_port_get_fdb_id(port_priv);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
925
err = cb(port_priv, &fdb_entry, data);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
942
static int dpaa2_switch_fdb_entry_dump(struct ethsw_port_priv *port_priv,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
946
if (!dpaa2_switch_port_fdb_valid_entry(fdb_entry, port_priv))
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
956
struct ethsw_port_priv *port_priv = netdev_priv(net_dev);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
965
err = dpaa2_switch_fdb_iterate(port_priv, dpaa2_switch_fdb_entry_dump, &dump);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
971
static int dpaa2_switch_fdb_entry_fast_age(struct ethsw_port_priv *port_priv,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
975
if (!dpaa2_switch_port_fdb_valid_entry(fdb_entry, port_priv))
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
98
return port_priv->fdb;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
982
dpaa2_switch_port_fdb_del_uc(port_priv, fdb_entry->mac_addr);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
984
dpaa2_switch_port_fdb_del_mc(port_priv, fdb_entry->mac_addr);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
989
static void dpaa2_switch_port_fast_age(struct ethsw_port_priv *port_priv)
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
991
dpaa2_switch_fdb_iterate(port_priv,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.h
233
dpaa2_switch_port_is_type_phy(struct ethsw_port_priv *port_priv)
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.h
235
return dpaa2_mac_is_type_phy(port_priv->mac);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.h
238
static inline bool dpaa2_switch_port_has_mac(struct ethsw_port_priv *port_priv)
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.h
240
return port_priv->mac ? true : false;
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.h
251
typedef int dpaa2_switch_fdb_cb_t(struct ethsw_port_priv *port_priv,
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.h
273
struct ethsw_port_priv *port_priv);
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.h
276
struct ethsw_port_priv *port_priv);
drivers/net/ethernet/toshiba/ps3_gelic_wireless.h
290
return port_priv(port);
drivers/usb/serial/cp210x.c
1088
struct cp210x_port_private *port_priv = usb_get_serial_port_data(port);
drivers/usb/serial/cp210x.c
1091
if (port_priv->event_mode)
drivers/usb/serial/cp210x.c
1097
port_priv->event_state = ES_DATA;
drivers/usb/serial/cp210x.c
1098
port_priv->event_mode = true;
drivers/usb/serial/cp210x.c
1103
port_priv->event_mode = false;
drivers/usb/serial/cp210x.c
1109
struct cp210x_port_private *port_priv = usb_get_serial_port_data(port);
drivers/usb/serial/cp210x.c
1112
if (!port_priv->event_mode)
drivers/usb/serial/cp210x.c
1121
port_priv->event_mode = false;
drivers/usb/serial/cp210x.c
1140
struct cp210x_port_private *port_priv = usb_get_serial_port_data(port);
drivers/usb/serial/cp210x.c
1181
mutex_lock(&port_priv->mutex);
drivers/usb/serial/cp210x.c
1184
port_priv->dtr = false;
drivers/usb/serial/cp210x.c
1185
port_priv->rts = false;
drivers/usb/serial/cp210x.c
1187
port_priv->dtr = true;
drivers/usb/serial/cp210x.c
1188
port_priv->rts = true;
drivers/usb/serial/cp210x.c
1203
if (port_priv->dtr)
drivers/usb/serial/cp210x.c
1211
if (port_priv->rts)
drivers/usb/serial/cp210x.c
1218
if (port_priv->rts)
drivers/usb/serial/cp210x.c
1250
port_priv->crtscts = crtscts;
drivers/usb/serial/cp210x.c
1252
mutex_unlock(&port_priv->mutex);
drivers/usb/serial/cp210x.c
1339
struct cp210x_port_private *port_priv = usb_get_serial_port_data(port);
drivers/usb/serial/cp210x.c
1345
mutex_lock(&port_priv->mutex);
drivers/usb/serial/cp210x.c
1348
port_priv->rts = true;
drivers/usb/serial/cp210x.c
1353
port_priv->dtr = true;
drivers/usb/serial/cp210x.c
1358
port_priv->rts = false;
drivers/usb/serial/cp210x.c
1363
port_priv->dtr = false;
drivers/usb/serial/cp210x.c
1372
if (port_priv->crtscts && control & CONTROL_WRITE_RTS) {
drivers/usb/serial/cp210x.c
1382
if (port_priv->dtr)
drivers/usb/serial/cp210x.c
1388
if (port_priv->rts)
drivers/usb/serial/cp210x.c
1407
mutex_unlock(&port_priv->mutex);
drivers/usb/serial/cp210x.c
2007
struct cp210x_port_private *port_priv;
drivers/usb/serial/cp210x.c
2009
port_priv = kzalloc_obj(*port_priv);
drivers/usb/serial/cp210x.c
2010
if (!port_priv)
drivers/usb/serial/cp210x.c
2013
port_priv->bInterfaceNumber = cp210x_interface_num(serial);
drivers/usb/serial/cp210x.c
2014
mutex_init(&port_priv->mutex);
drivers/usb/serial/cp210x.c
2016
usb_set_serial_port_data(port, port_priv);
drivers/usb/serial/cp210x.c
2023
struct cp210x_port_private *port_priv;
drivers/usb/serial/cp210x.c
2025
port_priv = usb_get_serial_port_data(port);
drivers/usb/serial/cp210x.c
2026
kfree(port_priv);
drivers/usb/serial/cp210x.c
647
struct cp210x_port_private *port_priv = usb_get_serial_port_data(port);
drivers/usb/serial/cp210x.c
653
port_priv->bInterfaceNumber, buf, bufsize,
drivers/usb/serial/cp210x.c
701
struct cp210x_port_private *port_priv = usb_get_serial_port_data(port);
drivers/usb/serial/cp210x.c
706
port_priv->bInterfaceNumber, NULL, 0,
drivers/usb/serial/cp210x.c
724
struct cp210x_port_private *port_priv = usb_get_serial_port_data(port);
drivers/usb/serial/cp210x.c
729
port_priv->bInterfaceNumber, buf, bufsize,
drivers/usb/serial/cp210x.c
778
struct cp210x_port_private *port_priv = usb_get_serial_port_data(port);
drivers/usb/serial/cp210x.c
798
port_priv->event_mode = false;
drivers/usb/serial/cp210x.c
805
struct cp210x_port_private *port_priv = usb_get_serial_port_data(port);
drivers/usb/serial/cp210x.c
815
port_priv->event_mode = false;
drivers/usb/serial/cp210x.c
839
struct cp210x_port_private *port_priv = usb_get_serial_port_data(port);
drivers/usb/serial/cp210x.c
841
switch (port_priv->event_state) {
drivers/usb/serial/cp210x.c
844
port_priv->event_state = ES_ESCAPE;
drivers/usb/serial/cp210x.c
853
port_priv->event_state = ES_DATA;
drivers/usb/serial/cp210x.c
856
port_priv->event_state = ES_LSR_DATA_0;
drivers/usb/serial/cp210x.c
859
port_priv->event_state = ES_LSR;
drivers/usb/serial/cp210x.c
862
port_priv->event_state = ES_MSR;
drivers/usb/serial/cp210x.c
866
port_priv->event_state = ES_DATA;
drivers/usb/serial/cp210x.c
871
port_priv->lsr = *ch;
drivers/usb/serial/cp210x.c
872
port_priv->event_state = ES_LSR_DATA_1;
drivers/usb/serial/cp210x.c
876
__func__, port_priv->lsr, *ch);
drivers/usb/serial/cp210x.c
877
cp210x_process_lsr(port, port_priv->lsr, flag);
drivers/usb/serial/cp210x.c
878
port_priv->event_state = ES_DATA;
drivers/usb/serial/cp210x.c
882
port_priv->lsr = *ch;
drivers/usb/serial/cp210x.c
883
cp210x_process_lsr(port, port_priv->lsr, flag);
drivers/usb/serial/cp210x.c
884
port_priv->event_state = ES_DATA;
drivers/usb/serial/cp210x.c
889
port_priv->event_state = ES_DATA;
drivers/usb/serial/cp210x.c
899
struct cp210x_port_private *port_priv = usb_get_serial_port_data(port);
drivers/usb/serial/cp210x.c
907
if (port_priv->event_mode) {
drivers/usb/serial/cp210x.c
929
struct cp210x_port_private *port_priv = usb_get_serial_port_data(port);
drivers/usb/serial/cp210x.c
935
port_priv->bInterfaceNumber, &sts, sizeof(sts),
drivers/usb/serial/digi_acceleport.c
514
struct digi_port *port_priv = usb_get_serial_port_data(port);
drivers/usb/serial/digi_acceleport.c
522
port_priv->dp_port_num, modem_signals);
drivers/usb/serial/digi_acceleport.c
525
spin_lock(&port_priv->dp_port_lock);
drivers/usb/serial/digi_acceleport.c
528
spin_unlock(&port_priv->dp_port_lock);
drivers/usb/serial/digi_acceleport.c
535
spin_lock(&port_priv->dp_port_lock);
drivers/usb/serial/digi_acceleport.c
538
data[1] = port_priv->dp_port_num;
drivers/usb/serial/digi_acceleport.c
543
data[5] = port_priv->dp_port_num;
drivers/usb/serial/digi_acceleport.c
553
port_priv->dp_modem_signals &= ~(TIOCM_DTR | TIOCM_RTS);
drivers/usb/serial/digi_acceleport.c
554
port_priv->dp_modem_signals |=
drivers/usb/serial/digi_acceleport.c
557
spin_unlock(&port_priv->dp_port_lock);
drivers/usb/serial/f81232.c
667
struct f81232_private *port_priv = usb_get_serial_port_data(port);
drivers/usb/serial/f81232.c
673
mutex_lock(&port_priv->lock);
drivers/usb/serial/f81232.c
674
mcr = port_priv->modem_control;
drivers/usb/serial/f81232.c
675
msr = port_priv->modem_status;
drivers/usb/serial/f81232.c
676
mutex_unlock(&port_priv->lock);
drivers/usb/serial/f81232.c
744
struct f81232_private *port_priv = usb_get_serial_port_data(port);
drivers/usb/serial/f81232.c
749
flush_work(&port_priv->interrupt_work);
drivers/usb/serial/f81232.c
750
flush_work(&port_priv->lsr_work);
drivers/usb/serial/f81232.c
949
struct f81232_private *port_priv = usb_get_serial_port_data(port);
drivers/usb/serial/f81232.c
957
if (port_priv) {
drivers/usb/serial/f81232.c
958
flush_work(&port_priv->interrupt_work);
drivers/usb/serial/f81232.c
959
flush_work(&port_priv->lsr_work);
drivers/usb/serial/f81534.c
1003
struct f81534_port_private *port_priv = usb_get_serial_port_data(port);
drivers/usb/serial/f81534.c
1011
spin_lock_irqsave(&port_priv->msr_lock, flags);
drivers/usb/serial/f81534.c
1012
old_msr = port_priv->shadow_msr;
drivers/usb/serial/f81534.c
1013
port_priv->shadow_msr = msr;
drivers/usb/serial/f81534.c
1014
spin_unlock_irqrestore(&port_priv->msr_lock, flags);
drivers/usb/serial/f81534.c
1035
__func__, port_priv->phy_num, old_msr, msr);
drivers/usb/serial/f81534.c
1047
struct f81534_port_private *port_priv = usb_get_serial_port_data(port);
drivers/usb/serial/f81534.c
1058
spin_lock_irqsave(&port_priv->msr_lock, flags);
drivers/usb/serial/f81534.c
1059
port_priv->shadow_msr = msr;
drivers/usb/serial/f81534.c
1060
spin_unlock_irqrestore(&port_priv->msr_lock, flags);
drivers/usb/serial/f81534.c
1069
struct f81534_port_private *port_priv = usb_get_serial_port_data(port);
drivers/usb/serial/f81534.c
1102
set_bit(F81534_TX_EMPTY_BIT, &port_priv->tx_empty);
drivers/usb/serial/f81534.c
1135
struct f81534_port_private *port_priv;
drivers/usb/serial/f81534.c
1137
port_priv = usb_get_serial_port_data(port);
drivers/usb/serial/f81534.c
1139
ss->baud_base = port_priv->baud_base;
drivers/usb/serial/f81534.c
1145
struct f81534_port_private *port_priv = usb_get_serial_port_data(port);
drivers/usb/serial/f81534.c
1167
set_bit(F81534_TX_EMPTY_BIT, &port_priv->tx_empty);
drivers/usb/serial/f81534.c
1220
schedule_work(&port_priv->lsr_work);
drivers/usb/serial/f81534.c
1297
struct f81534_port_private *port_priv;
drivers/usb/serial/f81534.c
1302
port_priv = container_of(work, struct f81534_port_private, lsr_work);
drivers/usb/serial/f81534.c
1303
port = port_priv->port;
drivers/usb/serial/f81534.c
1313
struct f81534_port_private *port_priv;
drivers/usb/serial/f81534.c
1323
port_priv = usb_get_serial_port_data(port);
drivers/usb/serial/f81534.c
1325
idx = F81534_CONF_INIT_GPIO_OFFSET + port_priv->phy_num;
drivers/usb/serial/f81534.c
1332
idx = F81534_CONF_WORK_GPIO_OFFSET + port_priv->phy_num;
drivers/usb/serial/f81534.c
1338
pins = &f81534_port_out_pins[port_priv->phy_num];
drivers/usb/serial/f81534.c
1355
struct f81534_port_private *port_priv;
drivers/usb/serial/f81534.c
1360
port_priv = devm_kzalloc(&port->dev, sizeof(*port_priv), GFP_KERNEL);
drivers/usb/serial/f81534.c
1361
if (!port_priv)
drivers/usb/serial/f81534.c
1368
port_priv->shadow_clk = F81534_UART_EN | F81534_CLK_TX_DELAY_1BIT;
drivers/usb/serial/f81534.c
1369
spin_lock_init(&port_priv->msr_lock);
drivers/usb/serial/f81534.c
1370
mutex_init(&port_priv->mcr_mutex);
drivers/usb/serial/f81534.c
1371
mutex_init(&port_priv->lcr_mutex);
drivers/usb/serial/f81534.c
1372
INIT_WORK(&port_priv->lsr_work, f81534_lsr_worker);
drivers/usb/serial/f81534.c
1379
port_priv->phy_num = ret;
drivers/usb/serial/f81534.c
1380
port_priv->port = port;
drivers/usb/serial/f81534.c
1381
usb_set_serial_port_data(port, port_priv);
drivers/usb/serial/f81534.c
1383
port->port_number, port_priv->phy_num);
drivers/usb/serial/f81534.c
1396
value = serial_priv->conf_data[port_priv->phy_num];
drivers/usb/serial/f81534.c
1399
port_priv->shadow_clk |= F81534_CLK_RS485_MODE |
drivers/usb/serial/f81534.c
1404
port_priv->shadow_clk |= F81534_CLK_RS485_MODE;
drivers/usb/serial/f81534.c
1419
struct f81534_port_private *port_priv = usb_get_serial_port_data(port);
drivers/usb/serial/f81534.c
1421
flush_work(&port_priv->lsr_work);
drivers/usb/serial/f81534.c
1427
struct f81534_port_private *port_priv = usb_get_serial_port_data(port);
drivers/usb/serial/f81534.c
1438
mutex_lock(&port_priv->mcr_mutex);
drivers/usb/serial/f81534.c
1439
mcr = port_priv->shadow_mcr;
drivers/usb/serial/f81534.c
1440
mutex_unlock(&port_priv->mcr_mutex);
drivers/usb/serial/f81534.c
1490
struct f81534_port_private *port_priv = usb_get_serial_port_data(port);
drivers/usb/serial/f81534.c
1492
return test_bit(F81534_TX_EMPTY_BIT, &port_priv->tx_empty);
drivers/usb/serial/f81534.c
328
struct f81534_port_private *port_priv = usb_get_serial_port_data(port);
drivers/usb/serial/f81534.c
331
reg + port_priv->phy_num * F81534_UART_OFFSET, data);
drivers/usb/serial/f81534.c
337
struct f81534_port_private *port_priv = usb_get_serial_port_data(port);
drivers/usb/serial/f81534.c
340
reg + port_priv->phy_num * F81534_UART_OFFSET, data);
drivers/usb/serial/f81534.c
472
struct f81534_port_private *port_priv = usb_get_serial_port_data(port);
drivers/usb/serial/f81534.c
473
int phy_num = port_priv->phy_num;
drivers/usb/serial/f81534.c
501
struct f81534_port_private *port_priv = usb_get_serial_port_data(port);
drivers/usb/serial/f81534.c
517
if (!test_and_clear_bit(F81534_TX_EMPTY_BIT, &port_priv->tx_empty))
drivers/usb/serial/f81534.c
526
set_bit(F81534_TX_EMPTY_BIT, &port_priv->tx_empty);
drivers/usb/serial/f81534.c
558
struct f81534_port_private *port_priv = usb_get_serial_port_data(port);
drivers/usb/serial/f81534.c
583
port_priv->baud_base = baudrate_table[idx];
drivers/usb/serial/f81534.c
584
port_priv->shadow_clk &= ~F81534_CLK_MASK;
drivers/usb/serial/f81534.c
585
port_priv->shadow_clk |= clock_table[idx];
drivers/usb/serial/f81534.c
588
port_priv->shadow_clk);
drivers/usb/serial/f81534.c
617
divisor = f81534_calc_baud_divisor(baudrate, port_priv->baud_base);
drivers/usb/serial/f81534.c
619
mutex_lock(&port_priv->lcr_mutex);
drivers/usb/serial/f81534.c
643
value = lcr | (port_priv->shadow_lcr & UART_LCR_SBC);
drivers/usb/serial/f81534.c
651
port_priv->shadow_lcr = value;
drivers/usb/serial/f81534.c
653
mutex_unlock(&port_priv->lcr_mutex);
drivers/usb/serial/f81534.c
661
struct f81534_port_private *port_priv = usb_get_serial_port_data(port);
drivers/usb/serial/f81534.c
664
mutex_lock(&port_priv->lcr_mutex);
drivers/usb/serial/f81534.c
667
port_priv->shadow_lcr |= UART_LCR_SBC;
drivers/usb/serial/f81534.c
669
port_priv->shadow_lcr &= ~UART_LCR_SBC;
drivers/usb/serial/f81534.c
672
port_priv->shadow_lcr);
drivers/usb/serial/f81534.c
676
mutex_unlock(&port_priv->lcr_mutex);
drivers/usb/serial/f81534.c
684
struct f81534_port_private *port_priv = usb_get_serial_port_data(port);
drivers/usb/serial/f81534.c
691
mutex_lock(&port_priv->mcr_mutex);
drivers/usb/serial/f81534.c
697
tmp = UART_MCR_OUT2 | port_priv->shadow_mcr;
drivers/usb/serial/f81534.c
714
mutex_unlock(&port_priv->mcr_mutex);
drivers/usb/serial/f81534.c
718
port_priv->shadow_mcr = tmp;
drivers/usb/serial/f81534.c
719
mutex_unlock(&port_priv->mcr_mutex);
drivers/usb/serial/quatech2.c
205
static inline int update_mctrl(struct qt2_port_private *port_priv,
drivers/usb/serial/quatech2.c
208
struct usb_serial_port *port = port_priv->port;
drivers/usb/serial/quatech2.c
226
status = qt2_setregister(dev, port_priv->device_port, UART_MCR,
drivers/usb/serial/quatech2.c
258
struct qt2_port_private *port_priv;
drivers/usb/serial/quatech2.c
265
port_priv = usb_get_serial_port_data(port);
drivers/usb/serial/quatech2.c
280
status = qt2_set_port_config(dev, port_priv->device_port, baud,
drivers/usb/serial/quatech2.c
289
port_priv->device_port);
drivers/usb/serial/quatech2.c
292
0, port_priv->device_port);
drivers/usb/serial/quatech2.c
301
x, port_priv->device_port);
drivers/usb/serial/quatech2.c
304
0, port_priv->device_port);
drivers/usb/serial/quatech2.c
315
struct qt2_port_private *port_priv;
drivers/usb/serial/quatech2.c
325
port_priv = usb_get_serial_port_data(port);
drivers/usb/serial/quatech2.c
357
spin_lock_irqsave(&port_priv->lock, flags);
drivers/usb/serial/quatech2.c
358
port_priv->shadowLSR = data[0];
drivers/usb/serial/quatech2.c
359
port_priv->shadowMSR = data[1];
drivers/usb/serial/quatech2.c
360
spin_unlock_irqrestore(&port_priv->lock, flags);
drivers/usb/serial/quatech2.c
373
port_priv->device_port = (u8) device_port;
drivers/usb/serial/quatech2.c
385
struct qt2_port_private *port_priv;
drivers/usb/serial/quatech2.c
389
port_priv = usb_get_serial_port_data(port);
drivers/usb/serial/quatech2.c
391
usb_kill_urb(port_priv->write_urb);
drivers/usb/serial/quatech2.c
397
port_priv->device_port, NULL, 0, QT2_USB_TIMEOUT);
drivers/usb/serial/quatech2.c
407
port_priv->device_port, NULL, 0, QT2_USB_TIMEOUT);
drivers/usb/serial/quatech2.c
418
port_priv->device_port, NULL, 0, QT2_USB_TIMEOUT);
drivers/usb/serial/quatech2.c
545
struct qt2_port_private *port_priv;
drivers/usb/serial/quatech2.c
549
port_priv = usb_get_serial_port_data(port);
drivers/usb/serial/quatech2.c
551
spin_lock_irqsave(&port_priv->urb_lock, flags);
drivers/usb/serial/quatech2.c
553
port_priv->urb_in_use = false;
drivers/usb/serial/quatech2.c
556
spin_unlock_irqrestore(&port_priv->urb_lock, flags);
drivers/usb/serial/quatech2.c
655
struct qt2_port_private *port_priv;
drivers/usb/serial/quatech2.c
658
port_priv = kzalloc_obj(*port_priv);
drivers/usb/serial/quatech2.c
659
if (!port_priv)
drivers/usb/serial/quatech2.c
662
spin_lock_init(&port_priv->lock);
drivers/usb/serial/quatech2.c
663
spin_lock_init(&port_priv->urb_lock);
drivers/usb/serial/quatech2.c
664
port_priv->port = port;
drivers/usb/serial/quatech2.c
666
port_priv->write_buffer = kmalloc(QT2_WRITE_BUFFER_SIZE, GFP_KERNEL);
drivers/usb/serial/quatech2.c
667
if (!port_priv->write_buffer)
drivers/usb/serial/quatech2.c
670
port_priv->write_urb = usb_alloc_urb(0, GFP_KERNEL);
drivers/usb/serial/quatech2.c
671
if (!port_priv->write_urb)
drivers/usb/serial/quatech2.c
675
usb_fill_bulk_urb(port_priv->write_urb, serial->dev,
drivers/usb/serial/quatech2.c
677
port_priv->write_buffer,
drivers/usb/serial/quatech2.c
681
usb_set_serial_port_data(port, port_priv);
drivers/usb/serial/quatech2.c
685
kfree(port_priv->write_buffer);
drivers/usb/serial/quatech2.c
687
kfree(port_priv);
drivers/usb/serial/quatech2.c
693
struct qt2_port_private *port_priv;
drivers/usb/serial/quatech2.c
695
port_priv = usb_get_serial_port_data(port);
drivers/usb/serial/quatech2.c
696
usb_free_urb(port_priv->write_urb);
drivers/usb/serial/quatech2.c
697
kfree(port_priv->write_buffer);
drivers/usb/serial/quatech2.c
698
kfree(port_priv);
drivers/usb/serial/quatech2.c
705
struct qt2_port_private *port_priv = usb_get_serial_port_data(port);
drivers/usb/serial/quatech2.c
713
r = qt2_getregister(dev, port_priv->device_port, UART_MCR, d);
drivers/usb/serial/quatech2.c
717
r = qt2_getregister(dev, port_priv->device_port, UART_MSR, d + 1);
drivers/usb/serial/quatech2.c
736
struct qt2_port_private *port_priv;
drivers/usb/serial/quatech2.c
738
port_priv = usb_get_serial_port_data(tty->driver_data);
drivers/usb/serial/quatech2.c
739
return update_mctrl(port_priv, set, clear);
drivers/usb/serial/quatech2.c
745
struct qt2_port_private *port_priv;
drivers/usb/serial/quatech2.c
749
port_priv = usb_get_serial_port_data(port);
drivers/usb/serial/quatech2.c
754
val, port_priv->device_port);
drivers/usb/serial/quatech2.c
770
struct qt2_port_private *port_priv = usb_get_serial_port_data(port);
drivers/usb/serial/quatech2.c
774
if (qt2_setregister(dev, port_priv->device_port,
drivers/usb/serial/quatech2.c
780
update_mctrl(port_priv, TIOCM_DTR | TIOCM_RTS, 0);
drivers/usb/serial/quatech2.c
782
update_mctrl(port_priv, 0, TIOCM_DTR | TIOCM_RTS);
drivers/usb/serial/quatech2.c
787
struct qt2_port_private *port_priv;
drivers/usb/serial/quatech2.c
792
port_priv = usb_get_serial_port_data(port);
drivers/usb/serial/quatech2.c
793
if (!port_priv)
drivers/usb/serial/quatech2.c
796
spin_lock_irqsave(&port_priv->lock, flags);
drivers/usb/serial/quatech2.c
797
port_priv->shadowMSR = newMSR;
drivers/usb/serial/quatech2.c
798
spin_unlock_irqrestore(&port_priv->lock, flags);
drivers/usb/serial/quatech2.c
817
struct qt2_port_private *port_priv;
drivers/usb/serial/quatech2.c
823
port_priv = usb_get_serial_port_data(port);
drivers/usb/serial/quatech2.c
824
if (!port_priv)
drivers/usb/serial/quatech2.c
830
spin_lock_irqsave(&port_priv->lock, flags);
drivers/usb/serial/quatech2.c
831
port_priv->shadowLSR = newLSR;
drivers/usb/serial/quatech2.c
832
spin_unlock_irqrestore(&port_priv->lock, flags);
drivers/usb/serial/quatech2.c
856
struct qt2_port_private *port_priv;
drivers/usb/serial/quatech2.c
860
port_priv = usb_get_serial_port_data(port);
drivers/usb/serial/quatech2.c
862
spin_lock_irqsave(&port_priv->urb_lock, flags);
drivers/usb/serial/quatech2.c
864
if (port_priv->urb_in_use)
drivers/usb/serial/quatech2.c
869
spin_unlock_irqrestore(&port_priv->urb_lock, flags);
drivers/usb/serial/quatech2.c
878
struct qt2_port_private *port_priv;
drivers/usb/serial/quatech2.c
885
port_priv = usb_get_serial_port_data(port);
drivers/usb/serial/quatech2.c
887
if (port_priv->write_urb == NULL) {
drivers/usb/serial/quatech2.c
891
write_urb = port_priv->write_urb;
drivers/usb/serial/quatech2.c
896
spin_lock_irqsave(&port_priv->urb_lock, flags);
drivers/usb/serial/quatech2.c
897
if (port_priv->urb_in_use) {
drivers/usb/serial/quatech2.c
904
*data++ = port_priv->device_port;
drivers/usb/serial/quatech2.c
913
port_priv->urb_in_use = true;
drivers/usb/serial/quatech2.c
918
spin_unlock_irqrestore(&port_priv->urb_lock, flags);
include/trace/events/ib_mad.h
209
__entry->dev_index = qp_info->port_priv->device->index;
include/trace/events/ib_mad.h
210
__entry->port_num = qp_info->port_priv->port_num;