fb.c (728d90bdc9e480dc93913e59a0aa3c896c7aa697) | fb.c (7e3c53a096a9e75b12e69f93ef1fbc7cb1b27297) |
---|---|
1// SPDX-License-Identifier: GPL-2.0-only 2/* 3 * Copyright (C) 2012-2013 Avionic Design GmbH 4 * Copyright (C) 2012 NVIDIA CORPORATION. All rights reserved. 5 * 6 * Based on the KMS/FB CMA helpers 7 * Copyright (C) 2012 Analog Device Inc. 8 */ --- 255 unchanged lines hidden (view full) --- 264 pgprot_writecombine(PAGE_KERNEL)); 265 if (!bo->vaddr) { 266 dev_err(drm->dev, "failed to vmap() framebuffer\n"); 267 err = -ENOMEM; 268 goto destroy; 269 } 270 } 271 | 1// SPDX-License-Identifier: GPL-2.0-only 2/* 3 * Copyright (C) 2012-2013 Avionic Design GmbH 4 * Copyright (C) 2012 NVIDIA CORPORATION. All rights reserved. 5 * 6 * Based on the KMS/FB CMA helpers 7 * Copyright (C) 2012 Analog Device Inc. 8 */ --- 255 unchanged lines hidden (view full) --- 264 pgprot_writecombine(PAGE_KERNEL)); 265 if (!bo->vaddr) { 266 dev_err(drm->dev, "failed to vmap() framebuffer\n"); 267 err = -ENOMEM; 268 goto destroy; 269 } 270 } 271 |
272 drm->mode_config.fb_base = (resource_size_t)bo->paddr; | 272 drm->mode_config.fb_base = (resource_size_t)bo->iova; |
273 info->screen_base = (void __iomem *)bo->vaddr + offset; 274 info->screen_size = size; | 273 info->screen_base = (void __iomem *)bo->vaddr + offset; 274 info->screen_size = size; |
275 info->fix.smem_start = (unsigned long)(bo->paddr + offset); | 275 info->fix.smem_start = (unsigned long)(bo->iova + offset); |
276 info->fix.smem_len = size; 277 278 return 0; 279 280destroy: 281 drm_framebuffer_remove(fb); 282 return err; 283} --- 126 unchanged lines hidden --- | 276 info->fix.smem_len = size; 277 278 return 0; 279 280destroy: 281 drm_framebuffer_remove(fb); 282 return err; 283} --- 126 unchanged lines hidden --- |