| 31 | } |
| 32 | |
| 33 | int |
| 34 | sfc_tbl_meta_init(struct sfc_adapter *sa) |
| 35 | { |
| 36 | struct sfc_tbls *tables = &sa->hw_tables; |
| 37 | struct sfc_tbl_meta_cache *meta = &tables->meta; |
| 38 | int rc; |
| 39 | |
| 40 | SFC_ASSERT(sfc_adapter_is_locked(sa)); |
| 41 | |
| 42 | if (tables->status != SFC_TBLS_STATUS_SUPPORTED) |
| 43 | return 0; |
| 44 | |
| 45 | rc = sfc_tbl_meta_cache_ctor(&meta->cache); |
| 46 | if (rc != 0) |
| 47 | return rc; |
| 48 | |
| 49 | rc = sfc_tbl_meta_cache_update(meta->cache, sa->nic); |
| 50 | if (rc != 0) { |
| 51 | sfc_tbl_meta_cache_dtor(&meta->cache); |
| 52 | return rc; |
| 53 | } |
| 54 | |
| 55 | return 0; |
| 56 | } |
| 57 | |
| 58 | void |
| 59 | sfc_tbl_meta_fini(struct sfc_adapter *sa) |
no test coverage detected