Lines Matching full:cam1
236 u64 *cam0, u64 *cam1) in npc_get_keyword() argument
250 *cam1 = entry->kw[0]; in npc_get_keyword()
255 *cam1 = entry->kw[1] & CAM_MASK(48); in npc_get_keyword()
262 *cam1 = (entry->kw[1] >> 48) & CAM_MASK(16); in npc_get_keyword()
263 *cam1 |= ((entry->kw[2] & CAM_MASK(48)) << 16); in npc_get_keyword()
271 *cam1 = (entry->kw[2] >> 48) & CAM_MASK(16); in npc_get_keyword()
272 *cam1 |= ((entry->kw[3] & CAM_MASK(32)) << 16); in npc_get_keyword()
280 *cam1 = (entry->kw[3] >> 32) & CAM_MASK(32); in npc_get_keyword()
281 *cam1 |= ((entry->kw[4] & CAM_MASK(32)) << 32); in npc_get_keyword()
289 *cam1 = (entry->kw[4] >> 32) & CAM_MASK(32); in npc_get_keyword()
290 *cam1 |= ((entry->kw[5] & CAM_MASK(16)) << 32); in npc_get_keyword()
298 *cam1 = (entry->kw[5] >> 16) & CAM_MASK(48); in npc_get_keyword()
299 *cam1 |= ((entry->kw[6] & CAM_MASK(16)) << 48); in npc_get_keyword()
305 *cam1 = (entry->kw[6] >> 16) & CAM_MASK(48); in npc_get_keyword()
310 *cam1 &= kw_mask; in npc_get_keyword()
311 *cam0 = ~*cam1 & kw_mask; in npc_get_keyword()
315 u64 cam0, u64 cam1) in npc_fill_entryword() argument
322 entry->kw[0] = cam1; in npc_fill_entryword()
323 entry->kw_mask[0] = cam1 ^ cam0; in npc_fill_entryword()
326 entry->kw[1] = cam1; in npc_fill_entryword()
327 entry->kw_mask[1] = cam1 ^ cam0; in npc_fill_entryword()
330 entry->kw[1] |= (cam1 & CAM_MASK(16)) << 48; in npc_fill_entryword()
331 entry->kw[2] = (cam1 >> 16) & CAM_MASK(48); in npc_fill_entryword()
332 entry->kw_mask[1] |= ((cam1 ^ cam0) & CAM_MASK(16)) << 48; in npc_fill_entryword()
333 entry->kw_mask[2] = ((cam1 ^ cam0) >> 16) & CAM_MASK(48); in npc_fill_entryword()
336 entry->kw[2] |= (cam1 & CAM_MASK(16)) << 48; in npc_fill_entryword()
337 entry->kw[3] = (cam1 >> 16) & CAM_MASK(32); in npc_fill_entryword()
338 entry->kw_mask[2] |= ((cam1 ^ cam0) & CAM_MASK(16)) << 48; in npc_fill_entryword()
339 entry->kw_mask[3] = ((cam1 ^ cam0) >> 16) & CAM_MASK(32); in npc_fill_entryword()
342 entry->kw[3] |= (cam1 & CAM_MASK(32)) << 32; in npc_fill_entryword()
343 entry->kw[4] = (cam1 >> 32) & CAM_MASK(32); in npc_fill_entryword()
344 entry->kw_mask[3] |= ((cam1 ^ cam0) & CAM_MASK(32)) << 32; in npc_fill_entryword()
345 entry->kw_mask[4] = ((cam1 ^ cam0) >> 32) & CAM_MASK(32); in npc_fill_entryword()
348 entry->kw[4] |= (cam1 & CAM_MASK(32)) << 32; in npc_fill_entryword()
349 entry->kw[5] = (cam1 >> 32) & CAM_MASK(16); in npc_fill_entryword()
350 entry->kw_mask[4] |= ((cam1 ^ cam0) & CAM_MASK(32)) << 32; in npc_fill_entryword()
351 entry->kw_mask[5] = ((cam1 ^ cam0) >> 32) & CAM_MASK(16); in npc_fill_entryword()
354 entry->kw[5] |= (cam1 & CAM_MASK(48)) << 16; in npc_fill_entryword()
355 entry->kw[6] = (cam1 >> 48) & CAM_MASK(16); in npc_fill_entryword()
356 entry->kw_mask[5] |= ((cam1 ^ cam0) & CAM_MASK(48)) << 16; in npc_fill_entryword()
357 entry->kw_mask[6] = ((cam1 ^ cam0) >> 48) & CAM_MASK(16); in npc_fill_entryword()
360 entry->kw[6] |= (cam1 & CAM_MASK(48)) << 16; in npc_fill_entryword()
361 entry->kw_mask[6] |= ((cam1 ^ cam0) & CAM_MASK(48)) << 16; in npc_fill_entryword()
439 u64 cam0, cam1; in npc_config_mcam_entry() local
451 /* CAM1 takes the comparison value and in npc_config_mcam_entry()
453 * CAM1<n> = 0 & CAM0<n> = 1 => match if key<n> = 0 in npc_config_mcam_entry()
454 * CAM1<n> = 1 & CAM0<n> = 0 => match if key<n> = 1 in npc_config_mcam_entry()
455 * CAM1<n> = 0 & CAM0<n> = 0 => always match i.e dontcare. in npc_config_mcam_entry()
476 npc_get_keyword(entry, kw, &cam0, &cam1); in npc_config_mcam_entry()
478 NPC_AF_MCAMEX_BANKX_CAMX_W0(index, bank, 1), cam1); in npc_config_mcam_entry()
482 npc_get_keyword(entry, kw + 1, &cam0, &cam1); in npc_config_mcam_entry()
484 NPC_AF_MCAMEX_BANKX_CAMX_W1(index, bank, 1), cam1); in npc_config_mcam_entry()
512 u64 cam0, cam1; in npc_read_mcam_entry() local
518 cam1 = rvu_read64(rvu, blkaddr, in npc_read_mcam_entry()
522 npc_fill_entryword(entry, kw, cam0, cam1); in npc_read_mcam_entry()
524 cam1 = rvu_read64(rvu, blkaddr, in npc_read_mcam_entry()
528 npc_fill_entryword(entry, kw + 1, cam0, cam1); in npc_read_mcam_entry()
553 /* Copy INTF's, W0's, W1's CAM0 and CAM1 configuration */ in npc_copy_mcam_entry()
1459 struct npc_kpu_cam cam1 = {0}; in npc_config_kpucam() local
1461 cam1.state = kpucam->state & kpucam->state_mask; in npc_config_kpucam()
1462 cam1.dp0_data = kpucam->dp0 & kpucam->dp0_mask; in npc_config_kpucam()
1463 cam1.dp1_data = kpucam->dp1 & kpucam->dp1_mask; in npc_config_kpucam()
1464 cam1.dp2_data = kpucam->dp2 & kpucam->dp2_mask; in npc_config_kpucam()
1474 NPC_AF_KPUX_ENTRYX_CAMX(kpu, entry, 1), *(u64 *)&cam1); in npc_config_kpucam()