Home
last modified time | relevance | path

Searched full:ppe (Results 1 – 25 of 63) sorted by relevance

123

/linux/drivers/net/ethernet/mediatek/
H A Dmtk_ppe.c29 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 Dmtk_ppe.h349 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 Dmtk_ppe_debugfs.c79 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 Dmtk_ppe_offload.c479 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 Dairoha_ppe.c32 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 Dairoha_ppe_debugfs.c55 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 Dairoha_eth.h497 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 Dhisilicon-hip04-net.txt10 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 Dhisilicon-hns-dsaf.txt20 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 Dairoha,en7581-npu.yaml15 Processor Engine (PPE) flow table.
/linux/drivers/net/wireless/intel/iwlwifi/mld/
H A Dsta.c123 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 Dmac.h419 * 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 Dpata_sch.c34 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 Dpata_mpiix.c43 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 Dpata_efar.c112 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 Daix.c50 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 Dvde.h98 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 Dnvidia,tegra-vde.yaml36 - const: ppe
106 reg-names = "sxe", "bsev", "mbe", "ppe", "mce",
/linux/drivers/net/wireless/ath/ath12k/
H A Drx_desc.h269 * 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 Dspu_restore.c182 * 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 Dclk.c30 unsigned long io, unsigned long ppe) in clkdev_add_static() argument
35 cpu_clk_generic[3].rate = ppe; in clkdev_add_static()
H A Dclk.h73 unsigned long io, unsigned long ppe);
/linux/drivers/net/wireless/intel/iwlwifi/mvm/
H A Dmac80211.c2232 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 Dutil.c102 * unset, as DCM, beam forming, RU and PPE
188 /* PPE threshold information is not supported */
/linux/arch/mips/ralink/
H A Dill_acc.c29 "cpu", "dma", "ppe", "pdma rx", "pdma tx", "pci/e", "wmac", "usb",

123