erp_core 58 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c struct mlxsw_sp_acl_erp_core *erp_core; erp_core 130 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c return erp->index % erp->erp_table->erp_core->num_erp_banks; erp_core 137 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c struct mlxsw_sp_acl_erp_core *erp_core = erp_table->erp_core; erp_core 139 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c return erp_core->erpt_entries_size[aregion->type]; erp_core 298 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c mlxsw_sp_acl_erp_table_alloc(struct mlxsw_sp_acl_erp_core *erp_core, erp_core 306 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c if (num_erps % erp_core->num_erp_banks != 0) erp_core 309 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c entry_size = erp_core->erpt_entries_size[region_type]; erp_core 310 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c num_rows = num_erps / erp_core->num_erp_banks; erp_core 312 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c *p_index = gen_pool_alloc(erp_core->erp_tables, num_rows * entry_size); erp_core 321 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c mlxsw_sp_acl_erp_table_free(struct mlxsw_sp_acl_erp_core *erp_core, erp_core 330 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c entry_size = erp_core->erpt_entries_size[region_type]; erp_core 332 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c size = num_erps / erp_core->num_erp_banks * entry_size; erp_core 333 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c gen_pool_free(erp_core->erp_tables, base_index, size); erp_core 374 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c struct mlxsw_sp_acl_erp_core *erp_core = erp_table->erp_core; erp_core 377 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c *p_erpt_bank = erp->index % erp_core->num_erp_banks; erp_core 378 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c row = erp->index / erp_core->num_erp_banks; erp_core 386 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c struct mlxsw_sp *mlxsw_sp = erp_table->erp_core->mlxsw_sp; erp_core 406 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c struct mlxsw_sp *mlxsw_sp = erp_table->erp_core->mlxsw_sp; erp_core 426 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c struct mlxsw_sp *mlxsw_sp = erp_table->erp_core->mlxsw_sp; erp_core 441 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c struct mlxsw_sp *mlxsw_sp = erp_table->erp_core->mlxsw_sp; erp_core 480 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c struct mlxsw_sp_acl_erp_core *erp_core = erp_table->erp_core; erp_core 491 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c num_erps = old_num_erps + erp_core->num_erp_banks; erp_core 492 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c err = mlxsw_sp_acl_erp_table_alloc(erp_core, num_erps, erp_core 507 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c mlxsw_sp_acl_erp_table_free(erp_core, old_num_erps, erp_core 515 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c mlxsw_sp_acl_erp_table_free(erp_core, num_erps, erp_core 533 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c erp_table->erp_core->bf, erp_core 545 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c erp_table->erp_core->bf, erp_core 560 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c erp_table->erp_core->bf, erp_core 567 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c struct mlxsw_sp_acl_erp_core *erp_core = erp_table->erp_core; erp_core 572 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c err = mlxsw_sp_acl_erp_table_alloc(erp_core, erp_core->num_erp_banks, erp_core 577 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c erp_table->num_max_atcam_erps = erp_core->num_erp_banks; erp_core 619 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c mlxsw_sp_acl_erp_table_free(erp_core, erp_table->num_max_atcam_erps, erp_core 628 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c struct mlxsw_sp_acl_erp_core *erp_core = erp_table->erp_core; erp_core 638 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c mlxsw_sp_acl_erp_table_free(erp_core, erp_table->num_max_atcam_erps, erp_core 648 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c struct mlxsw_sp *mlxsw_sp = erp_table->erp_core->mlxsw_sp; erp_core 665 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c struct mlxsw_sp *mlxsw_sp = erp_table->erp_core->mlxsw_sp; erp_core 769 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c mlxsw_sp_acl_erp_table_free(erp_table->erp_core, erp_core 1045 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c erp->erp_table->erp_core->bf, erp_core 1063 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c erp->erp_table->erp_core->bf, erp_core 1334 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c erp_table->erp_core = aregion->atcam->erp_core; erp_core 1493 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c struct mlxsw_sp_acl_erp_core *erp_core) erp_core 1504 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c erp_core->erpt_entries_size[MLXSW_SP_ACL_ATCAM_REGION_TYPE_2KB] = size; erp_core 1507 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c erp_core->erpt_entries_size[MLXSW_SP_ACL_ATCAM_REGION_TYPE_4KB] = size; erp_core 1510 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c erp_core->erpt_entries_size[MLXSW_SP_ACL_ATCAM_REGION_TYPE_8KB] = size; erp_core 1513 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c erp_core->erpt_entries_size[MLXSW_SP_ACL_ATCAM_REGION_TYPE_12KB] = size; erp_core 1519 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c struct mlxsw_sp_acl_erp_core *erp_core) erp_core 1529 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c erp_core->num_erp_banks = MLXSW_CORE_RES_GET(mlxsw_sp->core, erp_core 1532 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c erp_core->erp_tables = gen_pool_create(0, -1); erp_core 1533 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c if (!erp_core->erp_tables) erp_core 1535 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c gen_pool_set_algo(erp_core->erp_tables, gen_pool_best_fit, NULL); erp_core 1537 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c err = gen_pool_add(erp_core->erp_tables, erp_core 1543 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c erp_core->bf = mlxsw_sp_acl_bf_init(mlxsw_sp, erp_core->num_erp_banks); erp_core 1544 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c if (IS_ERR(erp_core->bf)) { erp_core 1545 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c err = PTR_ERR(erp_core->bf); erp_core 1550 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c err = mlxsw_sp_acl_erp_tables_sizes_query(mlxsw_sp, erp_core); erp_core 1557 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c mlxsw_sp_acl_bf_fini(erp_core->bf); erp_core 1560 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c gen_pool_destroy(erp_core->erp_tables); erp_core 1565 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c struct mlxsw_sp_acl_erp_core *erp_core) erp_core 1567 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c mlxsw_sp_acl_bf_fini(erp_core->bf); erp_core 1568 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c gen_pool_destroy(erp_core->erp_tables); erp_core 1574 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c struct mlxsw_sp_acl_erp_core *erp_core; erp_core 1577 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c erp_core = kzalloc(sizeof(*erp_core), GFP_KERNEL); erp_core 1578 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c if (!erp_core) erp_core 1580 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c erp_core->mlxsw_sp = mlxsw_sp; erp_core 1581 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c atcam->erp_core = erp_core; erp_core 1583 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c err = mlxsw_sp_acl_erp_tables_init(mlxsw_sp, erp_core); erp_core 1590 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c kfree(erp_core); erp_core 1597 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c mlxsw_sp_acl_erp_tables_fini(mlxsw_sp, atcam->erp_core); erp_core 1598 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_erp.c kfree(atcam->erp_core); erp_core 157 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_tcam.h struct mlxsw_sp_acl_erp_core *erp_core;