Received: by 10.192.165.148 with SMTP id m20csp27946imm; Thu, 19 Apr 2018 12:22:17 -0700 (PDT) X-Google-Smtp-Source: AIpwx49nYLVdYRMhkfQD96/bAaykhFf2Yz1KkcfsaAUW6P9nz9Iey3fx3RA27TwEZ7DVHj6OIMA7 X-Received: by 10.98.246.25 with SMTP id x25mr6913451pfh.138.1524165737523; Thu, 19 Apr 2018 12:22:17 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1524165737; cv=none; d=google.com; s=arc-20160816; b=py7gABHTZY08r5O8gQGuDHdCq23ClcYTFM+0NOHbq6LDYzksYsIx5hm2dLTYTdVM+O s8VcXq9R/I2328aZ3PRVMqPBKzTFG5Zmo5AQ5GXszbxdx/If3+OlLoj/5IEyPkQIhq+w hZlmkJ4dYMX5+c01JXp8YPL4eS7bPSFVdevFdien5AEz7hdi37hO9cB6c7aALz/dv5Yq fSfqLfvf0u03Mo4MU5L1Gnt2kou4glnfdRUGhc6xIw5NRsKWkDQi+kP6d2x1T+3xyaoE X4cybAJ1SWreGPVo1X1zNcs8cjskpW/bB3QTLS5CUUXyDJ0TGb3hyz9cWIcDy710I2vI +RGw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:date:subject:cc:to:from :arc-authentication-results; bh=ThwY0kNQ2Xrx4nrPGzQVGA0aXA8JyxRUp8NciJ+BQb4=; b=g1dPuZxHlkKHD1W94/6YJPDtCa9ViM033rD1zAoYaVyoybkY74ak/A+6a0Sf8LP/kv CEoFeZ//3P65EsEfmZeTAM99JMqSyLaZxrNuWSQJTiEY2R6ORY2ZxH9zLlmM02Lxo9QO RWqnOe3PRz7xPX9MQ7FSJlwM4KoeZg4we7U44N9BeoI4Q3whalTMRQ2eRuKsIBBtV808 +BSykNFGVz0FBKN4bordAn95gyfTEiULjV+BMiwjyypgfsYuOId2HY+qtqqkZ8rT+fcL rHmHhT9QaeD6LE6obiKaqLHfezhDT9fUf65S+9KP+QBsS///Ncrl4M6riBC6c2y6/Vo+ JLLw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id 91-v6si3913130plf.78.2018.04.19.12.22.00; Thu, 19 Apr 2018 12:22:17 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752928AbeDSTUo (ORCPT + 99 others); Thu, 19 Apr 2018 15:20:44 -0400 Received: from anholt.net ([50.246.234.109]:57488 "EHLO anholt.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751182AbeDSTUl (ORCPT ); Thu, 19 Apr 2018 15:20:41 -0400 Received: from localhost (localhost [127.0.0.1]) by anholt.net (Postfix) with ESMTP id 24C0010A1645; Thu, 19 Apr 2018 12:20:41 -0700 (PDT) X-Virus-Scanned: Debian amavisd-new at anholt.net Received: from anholt.net ([127.0.0.1]) by localhost (kingsolver.anholt.net [127.0.0.1]) (amavisd-new, port 10024) with LMTP id wSA39uqvxrtN; Thu, 19 Apr 2018 12:20:39 -0700 (PDT) Received: from eliezer.anholt.net (localhost [127.0.0.1]) by anholt.net (Postfix) with ESMTP id BE34910A1644; Thu, 19 Apr 2018 12:20:36 -0700 (PDT) Received: by eliezer.anholt.net (Postfix, from userid 1000) id E2CF82FE20E2; Thu, 19 Apr 2018 12:20:35 -0700 (PDT) From: Eric Anholt To: dri-devel@lists.freedesktop.org, Rob Herring , Mark Rutland , devicetree@vger.kernel.org Cc: linux-kernel@vger.kernel.org, Eric Anholt Subject: [PATCH 0/2] Broadcom V3D driver (7268/7278) Date: Thu, 19 Apr 2018 12:20:33 -0700 Message-Id: <20180419192035.19898-1-eric@anholt.net> X-Mailer: git-send-email 2.17.0 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Here's my first pass at submitting the DRM driver for V3D 3.x/4.x, "v3d". I've previously been calling this project "vc5", but given that I also support a device that's called "vc6" already, I figured it was time to rename. I'm quite happy with the ABI. My only concern as far as merging is that without GMP support, clients can access each other's memory even without having a GEM handle. Authenticated DRI clients on other platforms have been able to do so, but I would like to prevent that if possible. Given that I was planning on having the GMP, I didn't flag my ioctls as requiring authentication. If this seems like a problem, I'd be happy to slap the authentication flag on BO submit, which I think would be enough to match the security provided by other drivers. I have a branch for GMP, but it's going to be a while before I finish it, I think. Userspace for this driver is currently merged to Mesa but the build is disabled. I figure I'll rename its driver to "v3d" and enable it once this is merged. Eric Anholt (2): dt-bindings: Add a new binding for Broadcom V3D 3.x and newer GPUs. drm/v3d: Introduce a new DRM driver for Broadcom V3D V3.x+ .../bindings/display/brcm,bcm-v3d.txt | 28 + Documentation/gpu/drivers.rst | 1 + MAINTAINERS | 9 + drivers/gpu/drm/Kconfig | 2 + drivers/gpu/drm/Makefile | 1 + drivers/gpu/drm/v3d/Kconfig | 9 + drivers/gpu/drm/v3d/Makefile | 18 + drivers/gpu/drm/v3d/v3d_bo.c | 392 ++++++++++ drivers/gpu/drm/v3d/v3d_debugfs.c | 191 +++++ drivers/gpu/drm/v3d/v3d_drv.c | 371 ++++++++++ drivers/gpu/drm/v3d/v3d_drv.h | 305 ++++++++ drivers/gpu/drm/v3d/v3d_fence.c | 58 ++ drivers/gpu/drm/v3d/v3d_gem.c | 671 ++++++++++++++++++ drivers/gpu/drm/v3d/v3d_irq.c | 211 ++++++ drivers/gpu/drm/v3d/v3d_mmu.c | 122 ++++ drivers/gpu/drm/v3d/v3d_regs.h | 295 ++++++++ drivers/gpu/drm/v3d/v3d_sched.c | 230 ++++++ drivers/gpu/drm/v3d/v3d_trace.h | 82 +++ drivers/gpu/drm/v3d/v3d_trace_points.c | 9 + include/uapi/drm/v3d_drm.h | 191 +++++ 20 files changed, 3196 insertions(+) create mode 100644 Documentation/devicetree/bindings/display/brcm,bcm-v3d.txt create mode 100644 drivers/gpu/drm/v3d/Kconfig create mode 100644 drivers/gpu/drm/v3d/Makefile create mode 100644 drivers/gpu/drm/v3d/v3d_bo.c create mode 100644 drivers/gpu/drm/v3d/v3d_debugfs.c create mode 100644 drivers/gpu/drm/v3d/v3d_drv.c create mode 100644 drivers/gpu/drm/v3d/v3d_drv.h create mode 100644 drivers/gpu/drm/v3d/v3d_fence.c create mode 100644 drivers/gpu/drm/v3d/v3d_gem.c create mode 100644 drivers/gpu/drm/v3d/v3d_irq.c create mode 100644 drivers/gpu/drm/v3d/v3d_mmu.c create mode 100644 drivers/gpu/drm/v3d/v3d_regs.h create mode 100644 drivers/gpu/drm/v3d/v3d_sched.c create mode 100644 drivers/gpu/drm/v3d/v3d_trace.h create mode 100644 drivers/gpu/drm/v3d/v3d_trace_points.c create mode 100644 include/uapi/drm/v3d_drm.h -- 2.17.0