/linux/drivers/net/ethernet/mediatek/ |
H A D | mtk_ppe.c | 29 static void ppe_w32(struct mtk_ppe *ppe, u32 reg, u32 val) in ppe_w32() argument 31 writel(val, ppe->base + reg); in ppe_w32() 34 static u32 ppe_r32(struct mtk_ppe *ppe, u32 reg) in ppe_r32() argument 36 return readl(ppe->base + reg); in ppe_r32() 39 static u32 ppe_m32(struct mtk_ppe *ppe, u32 reg, u32 mask, u32 set) in ppe_m32() argument 43 val = ppe_r32(ppe, reg); in ppe_m32() 46 ppe_w32(ppe, reg, val); in ppe_m32() 51 static u32 ppe_set(struct mtk_ppe *ppe, u32 reg, u32 val) in ppe_set() argument 53 return ppe_m32(ppe, reg, 0, val); in ppe_set() 56 static u32 ppe_clear(struct mtk_ppe *ppe, u32 reg, u32 val) in ppe_clear() argument [all …]
|
H A D | mtk_ppe.h | 349 void mtk_ppe_start(struct mtk_ppe *ppe); 350 int mtk_ppe_stop(struct mtk_ppe *ppe); 351 int mtk_ppe_prepare_reset(struct mtk_ppe *ppe); 353 void __mtk_ppe_check_skb(struct mtk_ppe *ppe, struct sk_buff *skb, u16 hash); 356 mtk_ppe_check_skb(struct mtk_ppe *ppe, struct sk_buff *skb, u16 hash) in mtk_ppe_check_skb() argument 360 if (!ppe) in mtk_ppe_check_skb() 367 diff = now - ppe->foe_check_time[hash]; in mtk_ppe_check_skb() 371 ppe->foe_check_time[hash] = now; in mtk_ppe_check_skb() 372 __mtk_ppe_check_skb(ppe, skb, hash); in mtk_ppe_check_skb() 399 int mtk_foe_entry_commit(struct mtk_ppe *ppe, struct mtk_flow_entry *entry); [all …]
|
H A D | mtk_ppe_debugfs.c | 79 struct mtk_ppe *ppe = m->private; in mtk_ppe_debugfs_foe_show() local 83 struct mtk_foe_entry *entry = mtk_foe_get_entry(ppe, i); in mtk_ppe_debugfs_foe_show() 100 acct = mtk_foe_entry_get_mib(ppe, i, NULL); in mtk_ppe_debugfs_foe_show() 102 type = mtk_get_ib1_pkt_type(ppe->eth, entry->ib1); in mtk_ppe_debugfs_foe_show() 184 int mtk_ppe_debugfs_init(struct mtk_ppe *ppe, int index) in mtk_ppe_debugfs_init() argument 188 snprintf(ppe->dirname, sizeof(ppe->dirname), "ppe%d", index); in mtk_ppe_debugfs_init() 190 root = debugfs_create_dir(ppe->dirname, NULL); in mtk_ppe_debugfs_init() 191 debugfs_create_file("entries", S_IRUGO, root, ppe, &mtk_ppe_debugfs_foe_all_fops); in mtk_ppe_debugfs_init() 192 debugfs_create_file("bind", S_IRUGO, root, ppe, &mtk_ppe_debugfs_foe_bind_fops); in mtk_ppe_debugfs_init()
|
H A D | mtk_ppe_offload.c | 479 err = mtk_foe_entry_commit(eth->ppe[entry->ppe_index], entry); in mtk_flow_offload_replace() 491 mtk_foe_entry_clear(eth->ppe[entry->ppe_index], entry); in mtk_flow_offload_replace() 509 mtk_foe_entry_clear(eth->ppe[entry->ppe_index], entry); in mtk_flow_offload_destroy() 531 idle = mtk_foe_entry_idle_time(eth->ppe[entry->ppe_index], entry); in mtk_flow_offload_stats() 535 mtk_foe_entry_get_mib(eth->ppe[entry->ppe_index], entry->hash, in mtk_flow_offload_stats() 653 if (!eth->ppe[id] || !eth->ppe[id]->foe_table) in mtk_eth_offload_init()
|
/linux/drivers/net/ethernet/airoha/ |
H A D | airoha_ppe.c | 32 static u32 airoha_ppe_get_timestamp(struct airoha_ppe *ppe) in airoha_ppe_get_timestamp() argument 34 u16 timestamp = airoha_fe_rr(ppe->eth, REG_FE_FOE_TS); in airoha_ppe_get_timestamp() 39 static void airoha_ppe_hw_init(struct airoha_ppe *ppe) in airoha_ppe_hw_init() argument 42 struct airoha_eth *eth = ppe->eth; in airoha_ppe_hw_init() 52 ppe->foe_dma + sram_tb_size); in airoha_ppe_hw_init() 397 struct airoha_foe_entry *airoha_ppe_foe_get_entry(struct airoha_ppe *ppe, in airoha_ppe_foe_get_entry() argument 401 u32 *hwe = ppe->foe + hash * sizeof(struct airoha_foe_entry); in airoha_ppe_foe_get_entry() 402 struct airoha_eth *eth = ppe->eth; in airoha_ppe_foe_get_entry() 407 ppe2 = airoha_ppe2_is_enabled(ppe->eth) && in airoha_ppe_foe_get_entry() 409 airoha_fe_wr(ppe->eth, REG_PPE_RAM_CTRL(ppe2), in airoha_ppe_foe_get_entry() [all …]
|
H A D | airoha_ppe_debugfs.c | 55 struct airoha_ppe *ppe = m->private; in airoha_ppe_debugfs_foe_show() local 69 hwe = airoha_ppe_foe_get_entry(ppe, i); in airoha_ppe_debugfs_foe_show() 172 int airoha_ppe_debugfs_init(struct airoha_ppe *ppe) in airoha_ppe_debugfs_init() argument 174 ppe->debugfs_dir = debugfs_create_dir("ppe", NULL); in airoha_ppe_debugfs_init() 175 debugfs_create_file("entries", 0444, ppe->debugfs_dir, ppe, in airoha_ppe_debugfs_init() 177 debugfs_create_file("bind", 0444, ppe->debugfs_dir, ppe, in airoha_ppe_debugfs_init()
|
H A D | airoha_eth.h | 497 struct airoha_ppe *ppe; member 538 void airoha_ppe_check_skb(struct airoha_ppe *ppe, u16 hash); 543 struct airoha_foe_entry *airoha_ppe_foe_get_entry(struct airoha_ppe *ppe, 547 int airoha_ppe_debugfs_init(struct airoha_ppe *ppe); 549 static inline int airoha_ppe_debugfs_init(struct airoha_ppe *ppe) in airoha_ppe_debugfs_init() argument
|
/linux/Documentation/devicetree/bindings/net/ |
H A D | hisilicon-hip04-net.txt | 10 phandle, specifies a reference to the syscon ppe node 50 ppe: ppe@28c0000 { 51 compatible = "hisilicon,hip04-ppe", "syscon"; 60 port-handle = <&ppe 31 0 31>; 68 port-handle = <&ppe 0 1 0>; 77 port-handle = <&ppe 8 2 8>;
|
H A D | hisilicon-hns-dsaf.txt | 20 The third region is the PPE register base and size. 23 - reg-names: may be ppe-base and(or) dsaf-base. It is used to find the 64 reg-names = "ppe-base", "dsaf-base";
|
H A D | airoha,en7581-npu.yaml | 15 Processor Engine (PPE) flow table.
|
/linux/drivers/net/wireless/intel/iwlwifi/mld/ |
H A D | sta.c | 123 static u8 iwl_mld_he_get_ppe_val(u8 *ppe, u8 ppe_pos_bit) in iwl_mld_he_get_ppe_val() argument 131 return (ppe[byte_num] >> bit_num) & in iwl_mld_he_get_ppe_val() 141 res = (ppe[byte_num + 1] & in iwl_mld_he_get_ppe_val() 144 res += (ppe[byte_num] >> bit_num) & (BIT(residue_bits) - 1); in iwl_mld_he_get_ppe_val() 151 u8 ru_index_bitmap, u8 *ppe, u8 ppe_pos_bit, in iwl_mld_parse_ppe() argument 174 /* According to the 11be spec, if for a specific BW the PPE Thresholds in iwl_mld_parse_ppe() 176 * BW for which we had PPE Thresholds. In 11ax though, we don't have in iwl_mld_parse_ppe() 186 high_th = iwl_mld_he_get_ppe_val(ppe, ppe_pos_bit); in iwl_mld_parse_ppe() 188 low_th = iwl_mld_he_get_ppe_val(ppe, ppe_pos_bit); in iwl_mld_parse_ppe() 205 u8 *ppe = &link_sta->he_cap.ppe_thres[0]; in iwl_mld_set_pkt_ext_from_he_ppe() local [all …]
|
/linux/drivers/net/wireless/intel/iwlwifi/fw/api/ |
H A D | mac.h | 419 * enum iwl_he_pkt_ext_constellations - PPE constellation indices 446 * The required PPE is set via HE Capabilities IE, per Nss x BW x MCS 453 * QAM_tx < QAM_th1 --> PPE=0us 454 * QAM_th1 <= QAM_tx < QAM_th2 --> PPE=8us 455 * QAM_th2 <= QAM_tx --> PPE=16us 458 * For rates below the low_th, no need for PPE 459 * For rates between low_th and high_th, need 8us PPE 460 * For rates equal or higher then the high_th, need 16us PPE 470 * The required PPE is set via HE Capabilities IE, per Nss x BW x MCS 477 * QAM_tx < QAM_th1 --> PPE=0us [all …]
|
/linux/drivers/ata/ |
H A D | pata_sch.c | 34 PPE = (1 << 30), /* Prefetch/Post Enable */ enumerator 106 data &= ~(PM | PPE); in sch_set_piomode() 108 /* enable PPE for block device */ in sch_set_piomode() 110 data |= PPE; in sch_set_piomode()
|
H A D | pata_mpiix.c | 43 PPE = (1 << 2), enumerator 91 /* Mask the IORDY/TIME/PPE for this device */ in mpiix_set_piomode() 93 control |= PPE; /* Enable prefetch/posting for disk */ in mpiix_set_piomode()
|
H A D | pata_efar.c | 112 control |= 4; /* PPE */ in efar_set_piomode() 118 /* Set PPE, IE, and TIME as appropriate */ in efar_set_piomode() 194 * IORDY unconditionally along with TIME1. PPE has already in efar_set_dmamode()
|
/linux/block/partitions/ |
H A D | aix.c | 50 struct ppe { struct 64 struct ppe ppe[1016]; argument 232 struct ppe *p = pvd->ppe + i; in aix_partition()
|
/linux/drivers/media/platform/nvidia/tegra-vde/ |
H A D | vde.h | 98 void __iomem *ppe; member 217 if (vde->ppe == base) in tegra_vde_reg_base_name() 218 return "PPE"; in tegra_vde_reg_base_name()
|
/linux/Documentation/devicetree/bindings/media/ |
H A D | nvidia,tegra-vde.yaml | 36 - const: ppe 106 reg-names = "sxe", "bsev", "mbe", "ppe", "mce",
|
/linux/drivers/net/wireless/ath/ath12k/ |
H A D | rx_desc.h | 269 * as PPE may not support such packets. 275 * Global enable/disable bit for routing to PPE, used to disable 276 * PPE routing even if RXOLE CCE or flow search indicate 'Use_PPE' 279 * buffer management for WiFi-to-PPE routing. 282 * by a different subsystem, completely disabling WiFi-to-PPE 605 * Opaque service code between PPE and Wi-Fi 606 * This field gets passed on by REO to PPE in the EDMA descriptor 610 * This field gets passed on by REO to PPE in the EDMA descriptor 616 * This field gets passed on by REO to PPE in the EDMA descriptor 1122 * Opaque service code between PPE and Wi-Fi [all …]
|
/linux/arch/powerpc/platforms/cell/spufs/ |
H A D | spu_restore.c | 182 * here by the PPE Sequence for SPU Context in restore_complete() 285 * 1. The EA for LSCSA is passed from PPE in the 288 * into LS, rather than pushed by PPE.
|
/linux/arch/mips/lantiq/ |
H A D | clk.c | 30 unsigned long io, unsigned long ppe) in clkdev_add_static() argument 35 cpu_clk_generic[3].rate = ppe; in clkdev_add_static()
|
H A D | clk.h | 73 unsigned long io, unsigned long ppe);
|
/linux/drivers/net/wireless/intel/iwlwifi/mvm/ |
H A D | mac80211.c | 2232 static u8 iwl_mvm_he_get_ppe_val(u8 *ppe, u8 ppe_pos_bit) in iwl_mvm_he_get_ppe_val() argument 2240 return (ppe[byte_num] >> bit_num) & in iwl_mvm_he_get_ppe_val() 2251 res = (ppe[byte_num + 1] & in iwl_mvm_he_get_ppe_val() 2254 res += (ppe[byte_num] >> bit_num) & (BIT(residue_bits) - 1); in iwl_mvm_he_get_ppe_val() 2261 u8 ru_index_bitmap, u8 *ppe, u8 ppe_pos_bit, in iwl_mvm_parse_ppe() argument 2289 * According to the 11be spec, if for a specific BW the PPE Thresholds in iwl_mvm_parse_ppe() 2291 * BW for which we had PPE Thresholds. In 11ax though, we don't have in iwl_mvm_parse_ppe() 2301 high_th = iwl_mvm_he_get_ppe_val(ppe, ppe_pos_bit); in iwl_mvm_parse_ppe() 2303 low_th = iwl_mvm_he_get_ppe_val(ppe, ppe_pos_bit); in iwl_mvm_parse_ppe() 2320 u8 *ppe = &link_sta->he_cap.ppe_thres[0]; in iwl_mvm_set_pkt_ext_from_he_ppe() local [all …]
|
/linux/net/mac80211/tests/ |
H A D | util.c | 102 * unset, as DCM, beam forming, RU and PPE 188 /* PPE threshold information is not supported */
|
/linux/arch/mips/ralink/ |
H A D | ill_acc.c | 29 "cpu", "dma", "ppe", "pdma rx", "pdma tx", "pci/e", "wmac", "usb",
|