From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tomi Valkeinen Subject: [GIT PULL] omapdrm atomic modesetting for 4.2 Date: Mon, 15 Jun 2015 14:46:48 +0300 Message-ID: <557EBB28.8070207@ti.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============0745953583==" Return-path: Received: from devils.ext.ti.com (devils.ext.ti.com [198.47.26.153]) by gabe.freedesktop.org (Postfix) with ESMTP id 6A3D96E750 for ; Mon, 15 Jun 2015 04:46:55 -0700 (PDT) List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Dave Airlie Cc: Laurent Pinchart , dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org --===============0745953583== Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="x4Er2krfdPw1s7xpqNniwwFHsk2MxnmCS" --x4Er2krfdPw1s7xpqNniwwFHsk2MxnmCS Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Hi Dave, It's already -rc8, so this pull request is very late. Sorry about that. S= till, it'd be great to see this go in, as we've had issues with omapdrm for yea= rs, which we've not been able to fix properly (like warnings/crashes when unl= oading modules, page-flips tearing, race issues with fbs). All those problems se= em to be gone after this rewrite of omapdrm for atomic modesetting, and the res= ulting code is much cleaner and more maintainable. This has been mostly tested on OMAP4 Pandaboard, with single and dual dis= plays. Tomi The following changes since commit 5c70c464787febc67c40b13f2fedccc378b0fa= 8e: Merge tag 'drm-intel-next-fixes-2015-06-11' of git://anongit.freedeskto= p.org/drm-intel into drm-next (2015-06-12 10:16:36 +1000) are available in the git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/tomba/linux.git tags/omap= drm-4.2-atomic for you to fetch changes up to 5f741b39dde47c054af78727cce7202fff9f781b: drm: omapdrm: new vblank and event handling (2015-06-12 23:30:47 +0300)= ---------------------------------------------------------------- omapdrm atomic modesetting support Atomic modesetting support for omapdrm. ---------------------------------------------------------------- Laurent Pinchart (37): drm: omapdrm: Store the rotation property in dev->mode_config drm: omapdrm: Apply settings synchronously drm: omapdrm: Rename omap_crtc_page_flip_locked to omap_crtc_page_f= lip drm: omapdrm: Rename omap_crtc page flip-related fields drm: omapdrm: Simplify IRQ registration drm: omapdrm: Cancel pending page flips when closing device drm: omapdrm: Rework page flip handling drm: omapdrm: Turn vblank on/off when enabling/disabling CRTC drm: omapdrm: Fix page flip race with CRTC disable drm: omapdrm: Clean up #include's drm: omapdrm: Rename CRTC DSS operations with an omap_crtc_dss_ pre= fix drm: omapdrm: Rework CRTC enable/disable for atomic updates drm: omapdrm: Implement encoder .disable() and .enable() operations= drm: omapdrm: Wire up atomic state object scaffolding drm: omapdrm: Implement planes atomic operations drm: omapdrm: Handle primary plane config through atomic plane ops drm: omapdrm: Switch plane update to atomic helpers drm: omapdrm: Switch mode config to atomic helpers drm: omapdrm: Switch connector DPMS to atomic helpers drm: omapdrm: Replace encoder mode_fixup with atomic_check drm: omapdrm: Implement asynchronous commit support drm: omapdrm: Switch page flip to atomic helpers drm: omapdrm: Drop manual framebuffer pin handling drm: omapdrm: Switch crtc and plane set_property to atomic helpers drm: omapdrm: Move plane info and win out of the plane structure drm: omapdrm: Move crtc info out of the crtc structure drm: omapdrm: Remove omap_crtc enabled field drm: omapdrm: Remove omap_plane enabled field drm: omapdrm: Make the omap_crtc_flush function static drm: omapdrm: Don't get/put dispc in omap_crtc_flush() drm: omapdrm: omap_crtc_flush() isn't called with modeset locked drm: omapdrm: Support unlinking page flip events prematurely drm: omapdrm: Remove nested PM get/sync when configuring encoders drm: omapdrm: Simplify DSS power management drm: omapdrm: Move encoder setup to encoder operations drm: omapdrm: Don't flush CRTC when enabling or disabling it drm: omapdrm: Don't setup planes manually from CRTC .enable()/.disa= ble() Tomi Valkeinen (6): drm: omapdrm: omap_plane_setup() cannot fail, use WARN drm: omapdrm: inline omap_plane_setup into update/disable drm: omapdrm: if omap_plane_atomic_update fails, disable plane drm: omapdrm: add lock for fb pinning drm: omapdrm: merge omap_crtc_flush and omap_crtc_atomic_flush drm: omapdrm: new vblank and event handling drivers/gpu/drm/omapdrm/omap_connector.c | 12 +- drivers/gpu/drm/omapdrm/omap_crtc.c | 541 +++++++++---------------= ------ drivers/gpu/drm/omapdrm/omap_debugfs.c | 6 +- drivers/gpu/drm/omapdrm/omap_dmm_tiler.c | 19 +- drivers/gpu/drm/omapdrm/omap_drv.c | 224 ++++++++++++- drivers/gpu/drm/omapdrm/omap_drv.h | 59 +--- drivers/gpu/drm/omapdrm/omap_encoder.c | 99 ++---- drivers/gpu/drm/omapdrm/omap_fb.c | 27 +- drivers/gpu/drm/omapdrm/omap_fbdev.c | 6 +- drivers/gpu/drm/omapdrm/omap_gem.c | 4 +- drivers/gpu/drm/omapdrm/omap_gem_dmabuf.c | 4 +- drivers/gpu/drm/omapdrm/omap_irq.c | 106 ++---- drivers/gpu/drm/omapdrm/omap_plane.c | 424 +++++++++-------------- 13 files changed, 661 insertions(+), 870 deletions(-) --x4Er2krfdPw1s7xpqNniwwFHsk2MxnmCS Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQIcBAEBCAAGBQJVfrspAAoJEPo9qoy8lh71E/AQAKiglBNsGCv0y0jk6AK3gQWW +819MXGr8PcNXsp9I4Rt6e5h5JwDblaBIxdD/8mRPUiROC16zYZS0j6gLCRmBrIR GzywWkE7rF9kyux4j9OEvttFWhZj+a5AbGwV0nS9w56/TOuOzVOKWls/Xi9I4M61 qxFFaFXk0A18Ulz0HOyP9b5AJjeyiJWRpQGwHcMrGJ4MVnahuBzfBaTwBIewz7Z0 hB314In+vUK7CaBb7ivTsykUhs9g41v76mpYVNWOBNp9IQ5lGCoJ/wBZSW4JdNm+ 7vYzTONycGlXji0VigQl+iBJ6W6UtSLVaUPB9ctwp+UORVvY2/s3PJGFLsdDmsQ3 cqbdp/hf9a9Ms1d8PvCv2URKhMLc2M/pYDTzl1T2RPIdHJbBqumfjy6a9rwZ0rGv ieuNYEO83Gqcc60fmOjBOwp065Z+Gd7lD3yNA0HXEW1B9RuG/hoOStRBE2I/U0ys h4E+k6uKWe+7EppJtc+TnG2FnjK1z3IHOSwUasB5AyvJ5VmKNYst9le3QGsCmhC2 0pV5/NGxz1SRXl5RRQsjVLC2qU6PZjQC/BauOGrf3iLK6oKvKCKXF5JWHDhPLTfY GmaIQWHKavrSKP8jeY4vfJFx1NczZbicoFgatGLW+2URIKGF6rKrkNSH+QvOjEH/ 2mq0EDZtJ/KkIFK9FBSM =JMHw -----END PGP SIGNATURE----- --x4Er2krfdPw1s7xpqNniwwFHsk2MxnmCS-- --===============0745953583== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVs IG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0 cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWwK --===============0745953583==--