Displaying 4 results from an estimated 4 matches for "ppmuvm".
Did you mean:
pmuvm
2015 Apr 08
3
[PATCH V2] pmu/gk20a: PMU boot support.
...u->isr_mutex);
+}
+
+static int
+gk20a_pmu_init_vm(struct nvkm_pmu *ppmu, const struct firmware *fw)
+{
+ int ret = 0;
+ struct gk20a_pmu_priv *pmu = to_gk20a_priv(ppmu);
+ u32 *ucode_image;
+ struct pmu_ucode_desc *desc = (struct pmu_ucode_desc *)fw->data;
+ int i;
+ struct nvkm_pmu_priv_vm *ppmuvm = &pmu->pmuvm;
+ struct nvkm_device *device = nv_device(&ppmu->base);
+ struct nvkm_vm *vm;
+ const u64 pmu_area_len = 300*1024;
+ /* mem for inst blk*/
+ ret = nvkm_gpuobj_new(nv_object(ppmu), NULL, 0x1000, 0, 0,
+ &ppmuvm->mem);
+ if (ret)
+ goto instblk_alloc_err;
+
+ /*...
2015 Mar 11
0
[PATCH] pmu/gk20a: PMU boot support.
...om_pmu(pmu));
> + struct pmu_ucode_desc *desc = pmu->desc;
> + u64 addr_code, addr_data, addr_load;
> + u32 i, blocks, addr_args;
> + u32 *adr_data, *adr_load, *adr_code;
> + struct pmu_cmdline_args_gk20a cmdline_args;
> + struct pmu_priv_vm *ppmuvm = &pmuvm;
> +
> + nv_wr32(ppmu, 0x0010a048,
> + nv_rd32(ppmu, 0x0010a048) | 0x01);
> + /*bind the address*/
> + nv_wr32(ppmu, 0x0010a480,
> + ppmuvm->mem->addr >> 12 |
> + 0x1 << 30 |
> +...
2015 Mar 11
3
[PATCH] pmu/gk20a: PMU boot support.
...+{
+ struct nvkm_pmu *ppmu = (void *)nvkm_pmu((void *)
+ impl_from_pmu(pmu));
+ struct pmu_ucode_desc *desc = pmu->desc;
+ u64 addr_code, addr_data, addr_load;
+ u32 i, blocks, addr_args;
+ u32 *adr_data, *adr_load, *adr_code;
+ struct pmu_cmdline_args_gk20a cmdline_args;
+ struct pmu_priv_vm *ppmuvm = &pmuvm;
+
+ nv_wr32(ppmu, 0x0010a048,
+ nv_rd32(ppmu, 0x0010a048) | 0x01);
+ /*bind the address*/
+ nv_wr32(ppmu, 0x0010a480,
+ ppmuvm->mem->addr >> 12 |
+ 0x1 << 30 |
+ 0x20000000);
+
+ /* TBD: load all other surfaces */
+ cmdline_args.falc_trace_size = GK20A_PMU_TRACE_...
2015 Mar 12
2
[PATCH] pmu/gk20a: PMU boot support.
...om_pmu(pmu));
> + struct pmu_ucode_desc *desc = pmu->desc;
> + u64 addr_code, addr_data, addr_load;
> + u32 i, blocks, addr_args;
> + u32 *adr_data, *adr_load, *adr_code;
> + struct pmu_cmdline_args_gk20a cmdline_args;
> + struct pmu_priv_vm *ppmuvm = &pmuvm;
> +
> + nv_wr32(ppmu, 0x0010a048,
> + nv_rd32(ppmu, 0x0010a048) | 0x01);
> + /*bind the address*/
> + nv_wr32(ppmu, 0x0010a480,
> + ppmuvm->mem->addr >> 12 |
> + 0x1 << 30 |
> +...