cmd.c (99ec41d0a48cb6d14af25765f9449762f9d101f6) cmd.c (65fed8a8c155271cf647651bd62eecb5928ae3a4)
1/*
2 * Copyright (c) 2004, 2005 Topspin Communications. All rights reserved.
3 * Copyright (c) 2005, 2006, 2007, 2008 Mellanox Technologies. All rights reserved.
4 * Copyright (c) 2005, 2006, 2007 Cisco Systems, Inc. All rights reserved.
5 *
6 * This software is available to you under a choice of one of two
7 * licenses. You may choose to be licensed under the terms of the GNU
8 * General Public License (GPL) Version 2, available from the file

--- 2553 unchanged lines hidden (view full) ---

2562 if (slave < 1 || slave >= dev->num_slaves ||
2563 port < 1 || port > MLX4_MAX_PORTS)
2564 return 0;
2565
2566 return priv->mfunc.master.vf_oper[slave].smi_enabled[port] ==
2567 MLX4_VF_SMI_ENABLED;
2568}
2569EXPORT_SYMBOL_GPL(mlx4_vf_smi_enabled);
1/*
2 * Copyright (c) 2004, 2005 Topspin Communications. All rights reserved.
3 * Copyright (c) 2005, 2006, 2007, 2008 Mellanox Technologies. All rights reserved.
4 * Copyright (c) 2005, 2006, 2007 Cisco Systems, Inc. All rights reserved.
5 *
6 * This software is available to you under a choice of one of two
7 * licenses. You may choose to be licensed under the terms of the GNU
8 * General Public License (GPL) Version 2, available from the file

--- 2553 unchanged lines hidden (view full) ---

2562 if (slave < 1 || slave >= dev->num_slaves ||
2563 port < 1 || port > MLX4_MAX_PORTS)
2564 return 0;
2565
2566 return priv->mfunc.master.vf_oper[slave].smi_enabled[port] ==
2567 MLX4_VF_SMI_ENABLED;
2568}
2569EXPORT_SYMBOL_GPL(mlx4_vf_smi_enabled);
2570
2571int mlx4_vf_get_enable_smi_admin(struct mlx4_dev *dev, int slave, int port)
2572{
2573 struct mlx4_priv *priv = mlx4_priv(dev);
2574
2575 if (slave == mlx4_master_func_num(dev))
2576 return 1;
2577
2578 if (slave < 1 || slave >= dev->num_slaves ||
2579 port < 1 || port > MLX4_MAX_PORTS)
2580 return 0;
2581
2582 return priv->mfunc.master.vf_admin[slave].enable_smi[port] ==
2583 MLX4_VF_SMI_ENABLED;
2584}
2585EXPORT_SYMBOL_GPL(mlx4_vf_get_enable_smi_admin);
2586
2587int mlx4_vf_set_enable_smi_admin(struct mlx4_dev *dev, int slave, int port,
2588 int enabled)
2589{
2590 struct mlx4_priv *priv = mlx4_priv(dev);
2591
2592 if (slave == mlx4_master_func_num(dev))
2593 return 0;
2594
2595 if (slave < 1 || slave >= dev->num_slaves ||
2596 port < 1 || port > MLX4_MAX_PORTS ||
2597 enabled < 0 || enabled > 1)
2598 return -EINVAL;
2599
2600 priv->mfunc.master.vf_admin[slave].enable_smi[port] = enabled;
2601 return 0;
2602}
2603EXPORT_SYMBOL_GPL(mlx4_vf_set_enable_smi_admin);