Received: by 2002:a05:6a10:16a7:0:0:0:0 with SMTP id gp39csp64535pxb; Mon, 2 Nov 2020 14:08:56 -0800 (PST) X-Google-Smtp-Source: ABdhPJxa5s/wJSyshCGZfgI9cEgcYFnTQL/uDQznCzmr+pVfEQYUwFGzezb6NqCS4zIWPN/KVNLq X-Received: by 2002:aa7:ca4d:: with SMTP id j13mr18352460edt.119.1604354936357; Mon, 02 Nov 2020 14:08:56 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1604354936; cv=none; d=google.com; s=arc-20160816; b=A8wwZVZV++iH/ENY89CXtymrb9JyhbcJoeHhN9tmqqSaM6auvQGHZ+J6OJfY0hXLUr oz0AkhPGrUrA6BWHAgqS57+2xcqMJgsrflHy8qeZFcLGpsRhOP84dgd6hMlw+hOStoed mBeovWwwulWU244JnA6PPaIbBSQ/C2OKFAEtWQSAGqjS13juXDwM1JDQxbo/SzPFLTEs H0MtIWp8sfrtuCRHgPRtwX+woG7jpKBpVILwVADYB6B18aYISUqpRQs9It/JGv/uDlwj MCINSzBbsJNl4BOJUzx0pKhXvK1IzW4x0yC7ohdc6cM4y2xcV3crvUh+VmF+HwYOdFtl G0ew== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from; bh=dQ38ru2LHaZ6zPggcqylY8rMTr1gEEwNNRba56NdgTo=; b=jg4+Htxvu8mXhyC1cFT0wRtasn5TVQwlx84FdjN5pARj292H0CLgCoQ4mSIaQZ19wE uyRuLXzIo55b58PjYKLdXAtowYOCfL18HL4eBEFZka3fWx13M7vknQMuioU7NPNnywfT or3bIDyyU9x5ZTB2L/3bRRSn3feCwo+5M7m9DjasDabyNK8QwAe5P81Xhkrf3V+C9Dqb IvG2iHNp6kZrMSvBBYQH16iP2C/UALZ3jVZrxRU/UUWGCIRhxPDyKUpeWK2mWdplkUEu 2gYIjNJEpGiKRCV02aX272f45yrTowx6pdogTO+8boK12nKU4pdxoMn/ChFo17oA+rIg w93Q== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=crapouillou.net Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id ch5si11686309edb.190.2020.11.02.14.08.34; Mon, 02 Nov 2020 14:08:56 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=crapouillou.net Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1725841AbgKBWHP (ORCPT + 99 others); Mon, 2 Nov 2020 17:07:15 -0500 Received: from aposti.net ([89.234.176.197]:44676 "EHLO aposti.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725777AbgKBWHP (ORCPT ); Mon, 2 Nov 2020 17:07:15 -0500 From: Paul Cercueil To: David Airlie , Daniel Vetter , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann Cc: od@zcrc.me, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, Paul Cercueil Subject: [PATCH 0/5] Add option to mmap GEM buffers cached, try 2 Date: Mon, 2 Nov 2020 22:06:46 +0000 Message-Id: <20201102220651.22069-1-paul@crapouillou.net> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Rework of my previous patchset which added support for GEM buffers backed by non-coherent memory to the ingenic-drm driver. For the record, the previous patchset was accepted for 5.10 then had to be reverted, as it conflicted with some changes made to the DMA API. This new patchset is pretty different as it adds the functionality to the DRM core. The first three patches add variants to existing functions but with the "non-coherent memory" twist, exported as GPL symbols. The fourth patch adds a function to be used with the damage helpers. Finally, the last patch adds support for non-coherent GEM buffers to the ingenic-drm driver. The functionality is enabled through a module parameter, and is disabled by default. Cheers, -Paul Paul Cercueil (5): drm: Add and export function drm_gem_cma_create_noncoherent drm: Add and export function drm_gem_cma_dumb_create_noncoherent drm: Add and export function drm_gem_cma_mmap_noncoherent drm: Add and export function drm_gem_cma_sync_data drm/ingenic: Add option to alloc cached GEM buffers drivers/gpu/drm/drm_gem_cma_helper.c | 190 +++++++++++++++++++--- drivers/gpu/drm/ingenic/ingenic-drm-drv.c | 58 ++++++- drivers/gpu/drm/ingenic/ingenic-drm.h | 4 + drivers/gpu/drm/ingenic/ingenic-ipu.c | 12 +- include/drm/drm_gem_cma_helper.h | 13 ++ 5 files changed, 251 insertions(+), 26 deletions(-) -- 2.28.0