Lines Matching refs:pfb
111 struct nvkm_fb *pfb = nvkm_fb(ram); in gf100_ram_train() local
112 u32 part = nv_rd32(pfb, 0x022438), i; in gf100_ram_train()
113 u32 mask = nv_rd32(pfb, 0x022554); in gf100_ram_train()
127 gf100_ram_calc(struct nvkm_fb *pfb, u32 freq) in gf100_ram_calc() argument
129 struct nvkm_clk *clk = nvkm_clk(pfb); in gf100_ram_calc()
130 struct nvkm_bios *bios = nvkm_bios(pfb); in gf100_ram_calc()
131 struct gf100_ram *ram = (void *)pfb->ram; in gf100_ram_calc()
148 nv_error(pfb, "invalid/missing rammap entry\n"); in gf100_ram_calc()
153 strap = nvbios_ramcfg_index(nv_subdev(pfb)); in gf100_ram_calc()
155 nv_error(pfb, "invalid ramcfg strap\n"); in gf100_ram_calc()
161 nv_error(pfb, "invalid/missing ramcfg entry\n"); in gf100_ram_calc()
171 nv_error(pfb, "invalid/missing timing entry\n"); in gf100_ram_calc()
178 ret = ram_init(fuc, pfb); in gf100_ram_calc()
213 ret = gt215_pll_calc(nv_subdev(pfb), &ram->refpll, in gf100_ram_calc()
216 nv_error(pfb, "unable to calc refpll\n"); in gf100_ram_calc()
228 ret = gt215_pll_calc(nv_subdev(pfb), &ram->mempll, freq, in gf100_ram_calc()
231 nv_error(pfb, "unable to calc refpll\n"); in gf100_ram_calc()
405 gf100_ram_prog(struct nvkm_fb *pfb) in gf100_ram_prog() argument
407 struct nvkm_device *device = nv_device(pfb); in gf100_ram_prog()
408 struct gf100_ram *ram = (void *)pfb->ram; in gf100_ram_prog()
415 gf100_ram_tidy(struct nvkm_fb *pfb) in gf100_ram_tidy() argument
417 struct gf100_ram *ram = (void *)pfb->ram; in gf100_ram_tidy()
425 gf100_ram_put(struct nvkm_fb *pfb, struct nvkm_mem **pmem) in gf100_ram_put() argument
427 struct nvkm_ltc *ltc = nvkm_ltc(pfb); in gf100_ram_put()
434 mutex_lock(&pfb->base.mutex); in gf100_ram_put()
437 __nv50_ram_put(pfb, mem); in gf100_ram_put()
438 mutex_unlock(&pfb->base.mutex); in gf100_ram_put()
444 gf100_ram_get(struct nvkm_fb *pfb, u64 size, u32 align, u32 ncmin, in gf100_ram_get() argument
447 struct nvkm_mm *mm = &pfb->vram; in gf100_ram_get()
468 mutex_lock(&pfb->base.mutex); in gf100_ram_get()
470 struct nvkm_ltc *ltc = nvkm_ltc(pfb); in gf100_ram_get()
489 mutex_unlock(&pfb->base.mutex); in gf100_ram_get()
490 pfb->ram->put(pfb, &mem); in gf100_ram_get()
497 mutex_unlock(&pfb->base.mutex); in gf100_ram_get()
510 struct nvkm_fb *pfb = nvkm_fb(parent); in gf100_ram_create_() local
511 struct nvkm_bios *bios = nvkm_bios(pfb); in gf100_ram_create_()
515 u32 parts = nv_rd32(pfb, 0x022438); in gf100_ram_create_()
516 u32 pmask = nv_rd32(pfb, maskaddr); in gf100_ram_create_()
517 u32 bsize = nv_rd32(pfb, 0x10f20c); in gf100_ram_create_()
527 nv_debug(pfb, "0x100800: 0x%08x\n", nv_rd32(pfb, 0x100800)); in gf100_ram_create_()
528 nv_debug(pfb, "parts 0x%08x mask 0x%08x\n", parts, pmask); in gf100_ram_create_()
531 ram->ranks = (nv_rd32(pfb, 0x10f200) & 0x00000004) ? 2 : 1; in gf100_ram_create_()
536 u32 psize = nv_rd32(pfb, 0x11020c + (part * 0x1000)); in gf100_ram_create_()
543 nv_debug(pfb, "%d: mem_amount 0x%08x\n", part, psize); in gf100_ram_create_()
552 ret = nvkm_mm_init(&pfb->vram, offset, length, 1); in gf100_ram_create_()
555 ret = nvkm_mm_init(&pfb->vram, rsvd_head, in gf100_ram_create_()
564 ret = nvkm_mm_init(&pfb->vram, offset, length, 1); in gf100_ram_create_()
566 nvkm_mm_fini(&pfb->vram); in gf100_ram_create_()
580 struct nvkm_fb *pfb = (void *)object->parent; in gf100_ram_init() local
605 nv_wr32(pfb, 0x10f968, 0x00000000 | (i << 8)); in gf100_ram_init()
606 nv_wr32(pfb, 0x10f96c, 0x00000000 | (i << 8)); in gf100_ram_init()
607 nv_wr32(pfb, 0x10f920, 0x00000100 | train0[i % 12]); in gf100_ram_init()
608 nv_wr32(pfb, 0x10f924, 0x00000100 | train0[i % 12]); in gf100_ram_init()
609 nv_wr32(pfb, 0x10f918, train1[i % 12]); in gf100_ram_init()
610 nv_wr32(pfb, 0x10f91c, train1[i % 12]); in gf100_ram_init()
611 nv_wr32(pfb, 0x10f920, 0x00000000 | train0[i % 12]); in gf100_ram_init()
612 nv_wr32(pfb, 0x10f924, 0x00000000 | train0[i % 12]); in gf100_ram_init()
613 nv_wr32(pfb, 0x10f918, train1[i % 12]); in gf100_ram_init()
614 nv_wr32(pfb, 0x10f91c, train1[i % 12]); in gf100_ram_init()