From patchwork Mon Jan 20 17:47:10 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?VmlsbGUgU3lyasOkbMOk?= X-Patchwork-Id: 11342677 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 72B36921 for ; Mon, 20 Jan 2020 17:47:35 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 5083C22525 for ; Mon, 20 Jan 2020 17:47:35 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 5083C22525 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=linux.intel.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=intel-gfx-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 2A0F16EA4F; Mon, 20 Jan 2020 17:47:33 +0000 (UTC) X-Original-To: intel-gfx@lists.freedesktop.org Delivered-To: intel-gfx@lists.freedesktop.org Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) by gabe.freedesktop.org (Postfix) with ESMTPS id 958236EA4F for ; Mon, 20 Jan 2020 17:47:31 +0000 (UTC) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by fmsmga105.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 20 Jan 2020 09:47:31 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.70,342,1574150400"; d="scan'208";a="258780616" Received: from stinkbox.fi.intel.com (HELO stinkbox) ([10.237.72.174]) by fmsmga002.fm.intel.com with SMTP; 20 Jan 2020 09:47:29 -0800 Received: by stinkbox (sSMTP sendmail emulation); Mon, 20 Jan 2020 19:47:28 +0200 From: Ville Syrjala To: intel-gfx@lists.freedesktop.org Date: Mon, 20 Jan 2020 19:47:10 +0200 Message-Id: <20200120174728.21095-1-ville.syrjala@linux.intel.com> X-Mailer: git-send-email 2.24.1 MIME-Version: 1.0 Subject: [Intel-gfx] [PATCH 00/17] drm/i915: Global state rework X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" From: Ville Syrjälä Here's an attempt at making the ad-hoc global state handling more standardized like the private obj stuff. As the first excercise we convert the bandwidth and cdclk states to use this. Another future target for this is probably ddb/fifo allocation for the pipes. Entire series available here: git://github.com/vsyrjala/linux.git global_state_rework_2 Ville Syrjälä (17): drm/i915: Polish WM_LINETIME register stuff drm/i915: Move linetime wms into the crtc state drm/i915: Nuke skl wm.dirty_pipes bitmask drm/i915: Move more cdclk state handling into the cdclk code drm/i915: Collect more cdclk state under the same roof drm/i915: s/need_cd2x_updare/can_cd2x_update/ drm/i915: s/cdclk_state/cdclk_config/ drm/i915: Simplify intel_set_cdclk_{pre,post}_plane_update() calling convention drm/i915: Extract intel_cdclk_state drm/i915: swap() the entire cdclk state drm/i915: s/init_cdclk/init_cdclk_hw/ drm/i915: Move intel_atomic_state_free() into intel_atomic.c drm/i915: Intrduce better global state handling drm/i915: Convert bandwidth state to global state drm/i915: Introduce intel_calc_active_pipes() drm/i915: Convert cdclk to global state drm/i915: Store active_pipes bitmask in cdclk state drivers/gpu/drm/i915/Makefile | 1 + drivers/gpu/drm/i915/display/intel_atomic.c | 26 +- drivers/gpu/drm/i915/display/intel_atomic.h | 5 +- .../gpu/drm/i915/display/intel_atomic_plane.c | 66 +- .../gpu/drm/i915/display/intel_atomic_plane.h | 5 +- drivers/gpu/drm/i915/display/intel_audio.c | 39 +- drivers/gpu/drm/i915/display/intel_bw.c | 31 +- drivers/gpu/drm/i915/display/intel_bw.h | 4 +- drivers/gpu/drm/i915/display/intel_cdclk.c | 748 ++++++++++-------- drivers/gpu/drm/i915/display/intel_cdclk.h | 71 +- drivers/gpu/drm/i915/display/intel_display.c | 297 +++++-- drivers/gpu/drm/i915/display/intel_display.h | 3 + .../drm/i915/display/intel_display_power.c | 24 +- .../drm/i915/display/intel_display_types.h | 35 +- .../gpu/drm/i915/display/intel_global_state.c | 223 ++++++ .../gpu/drm/i915/display/intel_global_state.h | 87 ++ drivers/gpu/drm/i915/gvt/handlers.c | 6 +- drivers/gpu/drm/i915/i915_drv.h | 48 +- drivers/gpu/drm/i915/i915_reg.h | 14 +- drivers/gpu/drm/i915/intel_pm.c | 147 +--- 20 files changed, 1147 insertions(+), 733 deletions(-) create mode 100644 drivers/gpu/drm/i915/display/intel_global_state.c create mode 100644 drivers/gpu/drm/i915/display/intel_global_state.h