Home
last modified time | relevance | path

Searched full:vpe (Results 1 – 25 of 73) sorted by relevance

123

/OK3568_Linux_fs/kernel/arch/mips/kernel/
H A Dvpe-mt.c18 #include <asm/vpe.h>
25 /* We are prepared so configure and start the VPE... */
26 int vpe_run(struct vpe *v) in vpe_run()
33 /* check we are the Master VPE */ in vpe_run()
37 pr_warn("VPE loader: only Master VPE's are able to config MT\n"); in vpe_run()
51 pr_warn("VPE loader: No TC's associated with VPE %d\n", in vpe_run()
71 pr_warn("VPE loader: TC %d is already active!\n", in vpe_run()
104 * bind the TC to VPE 1 as late as possible so we only have the final in vpe_run()
105 * VPE registers to set up, and so an EJTAG probe can trigger on it in vpe_run()
119 /* enable this VPE */ in vpe_run()
[all …]
H A Dvpe-cmp.c15 #include <asm/vpe.h>
27 struct vpe *vpe = get_vpe(aprp_cpu_index()); in store_kill() local
30 list_for_each_entry(notifier, &vpe->notify, list) in store_kill()
33 release_progmem(vpe->load_addr); in store_kill()
34 vpe->state = VPE_STATE_UNUSED; in store_kill()
43 struct vpe *vpe = get_vpe(aprp_cpu_index()); in ntcs_show() local
45 return sprintf(buf, "%d\n", vpe->ntcs); in ntcs_show()
51 struct vpe *vpe = get_vpe(aprp_cpu_index()); in ntcs_store() local
59 /* APRP can only reserve one TC in a VPE and no more. */ in ntcs_store()
63 vpe->ntcs = new; in ntcs_store()
[all …]
H A Dvpe.c9 * VPE spport module for loading a MIPS SP program into VPE1. The SP
36 #include <asm/vpe.h>
52 /* get the vpe associated with this minor */
53 struct vpe *get_vpe(int minor) in get_vpe()
55 struct vpe *res, *v; in get_vpe()
73 /* get the vpe associated with this minor */
91 /* allocate a vpe and associate it with this minor (or index) */
92 struct vpe *alloc_vpe(int minor) in alloc_vpe()
94 struct vpe *v; in alloc_vpe()
96 v = kzalloc(sizeof(struct vpe), GFP_KERNEL); in alloc_vpe()
[all …]
H A Dcps-vec.S172 * deactivate this VPE if it should be offline.
237 /* Only allow 1 TC per VPE to execute... */
240 /* ...and for the moment only 1 VPE */
246 /* Enter VPE configuration state */
261 /* Loop through each VPE within this core */
268 /* Bind TC to VPE (1:1 TC:VPE mapping) */
284 /* Next VPE */
290 /* Leave VPE configuration state */
305 * struct vpe_boot_config in v1, VPE ID in t9
338 /* Calculate a mask for the VPE ID from EBase.CPUNum */
[all …]
H A Dsmp-mt.c52 /* Deactivate all but VPE 0 */ in smvp_vpe_init()
58 /* master VPE */ in smvp_vpe_init()
87 /* bind a TC to each VPE, May as well put all excess TC's in smvp_tc_init()
88 on the last VPE */ in smvp_tc_init()
140 * assumes a 1:1 mapping of TC => VPE
153 /* enable the tc this vpe/cpu will be running */ in vsmp_boot_secondary()
158 /* enable the VPE */ in vsmp_boot_secondary()
209 /* we'll always have more TC's than VPE's, so loop setting everything in vsmp_smp_setup()
H A Dmips-mt.c71 printk("-- per-VPE State --\n"); in mips_mt_regdump()
76 printk(" VPE %d\n", i); in mips_mt_regdump()
81 printk(" VPE%d.Status : %08lx\n", in mips_mt_regdump()
83 printk(" VPE%d.EPC : %08lx %pS\n", in mips_mt_regdump()
86 printk(" VPE%d.Cause : %08lx\n", in mips_mt_regdump()
88 printk(" VPE%d.Config7 : %08lx\n", in mips_mt_regdump()
90 break; /* Next VPE */ in mips_mt_regdump()
101 printk(" TC %d (current TC with VPE EPC above)\n", tc); in mips_mt_regdump()
H A Dsmp-cps.c52 /* Detect & record VPE topology */ in cps_smp_setup()
55 pr_info("%s topology ", cpu_has_mips_r6 ? "VP" : "VPE"); in cps_smp_setup()
86 /* Indicate present CPUs (CPU being synonymous with VPE) */ in cps_smp_setup()
179 /* Allocate VPE boot configuration structs */ in cps_prepare_cpus()
186 pr_err("Failed to allocate %u VPE boot configs\n", in cps_prepare_cpus()
317 /* Boot a VPE on a powered down core */ in cps_boot_secondary()
330 /* Boot a VPE on another powered up core */ in cps_boot_secondary()
352 /* Boot a VPE on this core */ in cps_boot_secondary()
361 /* Disable MT - we only want to run 1 TC per VPE */ in cps_init_secondary()
483 /* Look for another online VPE within the core */ in play_dead()
[all …]
H A Dpm-cps.c35 * VPE left it. Returns garbage if coupled_coherence is zero or this is not
141 /* Setup the VPE to run mips_cps_pm_restore when started again */ in cps_pm_enter_state()
179 * If this VPE is the first to leave the non-coherent wait state then in cps_pm_enter_state()
394 * but in the coupled case the enable step will only run on one VPE. in cps_gen_entry_code()
412 * If this is the last VPE to become ready for non-coherence in cps_gen_entry_code()
420 * Otherwise this is not the last VPE to become ready in cps_gen_entry_code()
436 * The core will lose power & this VPE will not continue in cps_gen_entry_code()
440 /* Halt the VPE via C0 tchalt register */ in cps_gen_entry_code()
461 * This is the point of no return - this VPE will now proceed to in cps_gen_entry_code()
463 * VPE within the core will interfere with the L1 dcache. in cps_gen_entry_code()
[all …]
H A DMakefile67 obj-$(CONFIG_MIPS_VPE_LOADER) += vpe.o
68 obj-$(CONFIG_MIPS_VPE_LOADER_CMP) += vpe-cmp.o
69 obj-$(CONFIG_MIPS_VPE_LOADER_MT) += vpe-mt.o
H A Drtlx-cmp.c17 #include <asm/vpe.h>
53 pr_warn("VPE loader: not a MIPS MT capable processor\n"); in rtlx_module_init()
H A Drtlx-mt.c18 #include <asm/vpe.h>
74 pr_warn("VPE loader: not a MIPS MT capable processor\n"); in rtlx_module_init()
/OK3568_Linux_fs/kernel/drivers/irqchip/
H A Dirq-gic-v4.c54 * with the actual vPE affinity, and not the braindead concept of
64 * The choice made here is that each vcpu (VPE in old northern GICv4
67 * interrupt becomes a handle for the VPE, and that the hypervisor
71 * contain an irq domain where each interrupt maps to a VPE. In
77 * - irq_set_affinity is used to move a VPE from one redistributor to
81 * creating a new sub-API, namely scheduling/descheduling a VPE
95 static int its_alloc_vcpu_sgis(struct its_vpe *vpe, int idx) in its_alloc_vcpu_sgis() argument
107 vpe->fwnode = irq_domain_alloc_named_id_fwnode(name, idx); in its_alloc_vcpu_sgis()
108 if (!vpe->fwnode) in its_alloc_vcpu_sgis()
114 vpe->sgi_domain = irq_domain_create_linear(vpe->fwnode, 16, in its_alloc_vcpu_sgis()
[all …]
H A Dirq-gic-v3-its.c260 static int vpe_to_cpuid_lock(struct its_vpe *vpe, unsigned long *flags) in vpe_to_cpuid_lock() argument
262 raw_spin_lock_irqsave(&vpe->vpe_lock, *flags); in vpe_to_cpuid_lock()
263 return vpe->col_idx; in vpe_to_cpuid_lock()
266 static void vpe_to_cpuid_unlock(struct its_vpe *vpe, unsigned long flags) in vpe_to_cpuid_unlock() argument
268 raw_spin_unlock_irqrestore(&vpe->vpe_lock, flags); in vpe_to_cpuid_unlock()
277 cpu = vpe_to_cpuid_lock(map->vpe, flags); in irq_to_cpuid_lock()
294 vpe_to_cpuid_unlock(map->vpe, flags); in irq_to_cpuid_unlock()
305 static struct its_vpe *valid_vpe(struct its_node *its, struct its_vpe *vpe) in valid_vpe() argument
307 if (valid_col(its->collections + vpe->col_idx)) in valid_vpe()
308 return vpe; in valid_vpe()
[all …]
/OK3568_Linux_fs/kernel/arch/mips/lantiq/
H A Dirq.c49 #define ltq_icu_w32(vpe, m, x, y) \ argument
50 ltq_w32((x), ltq_icu_membase[vpe] + m*LTQ_ICU_IM_SIZE + (y))
52 #define ltq_icu_r32(vpe, m, x) \ argument
53 ltq_r32(ltq_icu_membase[vpe] + m*LTQ_ICU_IM_SIZE + (x))
82 int vpe; in ltq_disable_irq() local
87 for_each_present_cpu(vpe) { in ltq_disable_irq()
88 ltq_icu_w32(vpe, im, in ltq_disable_irq()
89 ltq_icu_r32(vpe, im, LTQ_ICU_IER) & ~BIT(offset), in ltq_disable_irq()
100 int vpe; in ltq_mask_and_ack_irq() local
105 for_each_present_cpu(vpe) { in ltq_mask_and_ack_irq()
[all …]
/OK3568_Linux_fs/kernel/include/linux/irqchip/
H A Darm-gic-v4.h35 /* per-vPE VLPI tracking */
40 /* VPE resident */
47 /* VPE proxy mapping */
67 * vPE and vLPI operations using vpe->col_idx.
72 * redistributor for this VPE. The ID itself isn't involved in
76 /* Unique (system-wide) VPE identifier */
89 * @vpe: Pointer to the GICv4 notion of a virtual CPU (VPE)
92 * @db_enabled: Is the VPE doorbell to be generated?
96 struct its_vpe *vpe; member
133 int its_make_vpe_resident(struct its_vpe *vpe, bool g0en, bool g1en);
[all …]
/OK3568_Linux_fs/kernel/arch/mips/include/asm/
H A Dvpe.h17 #define VPE_MODULE_NAME "vpe"
54 struct vpe { struct
57 /* (device) minor associated with this vpe */
69 /* tc's associated with this vpe */ argument
72 /* The list of vpe's */ argument
88 struct vpe *pvpe; /* parent VPE */ argument
89 struct list_head tc; /* The list of TC's with this VPE */
94 void (*start)(int vpe);
95 void (*stop)(int vpe);
116 struct vpe *get_vpe(int minor);
[all …]
H A Drtlx.h30 void rtlx_starting(int vpe);
31 void rtlx_stopping(int vpe);
/OK3568_Linux_fs/kernel/arch/arm64/kvm/vgic/
H A Dvgic-v4.c94 * The v4.1 doorbell can fire concurrently with the vPE being in vgic_v4_doorbell_handler()
108 static void vgic_v4_sync_sgi_config(struct its_vpe *vpe, struct vgic_irq *irq) in vgic_v4_sync_sgi_config() argument
110 vpe->sgi_config[irq->intid].enabled = irq->enabled; in vgic_v4_sync_sgi_config()
111 vpe->sgi_config[irq->intid].group = irq->group; in vgic_v4_sync_sgi_config()
112 vpe->sgi_config[irq->intid].priority = irq->priority; in vgic_v4_sync_sgi_config()
117 struct its_vpe *vpe = &vcpu->arch.vgic_cpu.vgic_v3.its_vpe; in vgic_v4_enable_vsgis() local
137 irq->host_irq = irq_find_mapping(vpe->sgi_domain, i); in vgic_v4_enable_vsgis()
139 /* Transfer the full irq state to the vPE */ in vgic_v4_enable_vsgis()
140 vgic_v4_sync_sgi_config(vpe, irq); in vgic_v4_enable_vsgis()
241 kvm_err("VPE IRQ allocation failure\n"); in vgic_v4_init()
[all …]
/OK3568_Linux_fs/kernel/Documentation/devicetree/bindings/media/
H A Dti,vpe.yaml4 $id: http://devicetree.org/schemas/media/ti,vpe.yaml#
7 title: Texas Instruments DRA7x Video Processing Engine (VPE) Device Tree Bindings
13 The Video Processing Engine (VPE) is a key component for image post
14 processing applications. VPE consist of a single memory to memory
20 const: ti,dra7-vpe
24 - description: The VPE main register region
51 vpe: vpe@489d0000 {
52 compatible = "ti,dra7-vpe";
/OK3568_Linux_fs/kernel/drivers/media/platform/ti-vpe/
H A DMakefile2 obj-$(CONFIG_VIDEO_TI_VPE) += ti-vpe.o
7 ti-vpe-y := vpe.o
H A Dvpe_regs.h13 /* VPE register offsets and field selectors */
15 /* VPE top level regs */
121 /* VPE chrominance upsampler regs */
192 /* VPE de-interlacer regs */
/OK3568_Linux_fs/kernel/drivers/media/platform/
H A DKconfig484 tristate "TI VPE (Video Processing Engine) driver"
493 Support for the TI VPE(Video Processing Engine) block
497 bool "VPE debug messages"
500 Enable debug messages on VPE driver.
545 # These will be selected by VPE and VIP
/OK3568_Linux_fs/kernel/drivers/net/ethernet/intel/iavf/
H A Diavf_virtchnl.c1019 * @vpe: virtchnl_pf_event structure
1025 struct virtchnl_pf_event *vpe) in iavf_get_vpe_link_status() argument
1028 return vpe->event_data.link_event_adv.link_status; in iavf_get_vpe_link_status()
1030 return vpe->event_data.link_event.link_status; in iavf_get_vpe_link_status()
1036 * @vpe: virtchnl_pf_event structure that contains the link speed we are setting
1042 struct virtchnl_pf_event *vpe) in iavf_set_adapter_link_speed_from_vpe() argument
1046 vpe->event_data.link_event_adv.link_speed; in iavf_set_adapter_link_speed_from_vpe()
1048 adapter->link_speed = vpe->event_data.link_event.link_speed; in iavf_set_adapter_link_speed_from_vpe()
1276 struct virtchnl_pf_event *vpe = in iavf_virtchnl_completion() local
1278 bool link_up = iavf_get_vpe_link_status(adapter, vpe); in iavf_virtchnl_completion()
[all …]
/OK3568_Linux_fs/kernel/arch/mips/mti-malta/
H A Dmalta-amon.c17 #include <asm/vpe.h>
76 int vpe_run(struct vpe *v) in vpe_run()
/OK3568_Linux_fs/kernel/arch/mips/oprofile/
H A Dop_model_mipsxx.c20 #define M_PERFCTL_VPEID(vpe) ((vpe) << MIPS_PERFCTRL_VPEID_S) argument
46 * counters per VPE. There is no reasonable interface atm to obtain the

123