Received: by 2002:a05:7412:d1aa:b0:fc:a2b0:25d7 with SMTP id ba42csp272567rdb; Mon, 29 Jan 2024 01:32:03 -0800 (PST) X-Google-Smtp-Source: AGHT+IHMnzA/m0uz6+gpGd5PwoSCHLhOp8WT0RT0N+Egr6fv4jgGtbyDsBcPp4R7ZuMJPbAljrr+ X-Received: by 2002:a17:906:c091:b0:a31:7d0d:563a with SMTP id f17-20020a170906c09100b00a317d0d563amr3238179ejz.4.1706520723812; Mon, 29 Jan 2024 01:32:03 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1706520723; cv=pass; d=google.com; s=arc-20160816; b=mxOAhtZt4EHJADiUrk0I5cTqexZwCHepCu6KCee6Guu0vpHi6vUvuiE5tPViZcdMDs U+6KJ7TTrC1gD4rQWlMsjtoJ3sGgCpXPGYE7e6oDsmlCQBTBG+bvtVXxb3/v2RzYc7rz e+tnHdjHNhM6OQzWEJscLMcJoRCVJzy+zt2qmHEk314MIhb1f0oE3vL9XTfnWZ+b5ptx lkNJF6Rn5bK7rvy67nCBMey0xUP1ZP1PmZAMi2ubRTy1ZO0QQNPJv0oeKqtDGC8dw3K4 ljptjc4Gn3ywXA5K/jT4KlM/anYU0uu0KP2cR6B7g8kfM/QNwzu5hwRJvpWsnOJBQOiV 5P1A== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:message-id:date:subject:cc:to :from:dkim-signature; bh=d6FnKXHndVXjUbCUbWlIYkYtQna8W5juPbur3Nvo/s4=; fh=j8BTi3bk6S9w7ne7NAX+MdwHaBs0T0Ouoo68uijiz9I=; b=I/gQEzCbK0fLnthQ7t0aXID3v8WYlpBlm/y8i3NJvIGIms3ie5H1DTHP9uOhDF56PX /PNeKHTyKP5DUs1ndxYns5lhWEVfyxzMFk4UBqUdWrgBISYd1B8ReYZJ2wxjhoyPS1TI qP2k+Nhc3F6mBlEy2FMh3z7UUoW/DQzhrI18262xBySzCmruYgxcJhzO9qjNeb72DKNL cVh7ZYBToLPhqF7Cuqlph8LgeudSvs/zdpje3TIRuika41J/GXMd4tOPluN+Gtcj3LMU io1LJki0PC4pHsKVfXNrsuioWYd8rM6X6BjBDsig+RiqyhPKfGGDlM8wO48s8OKxCvHY hkRQ== ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@microchip.com header.s=mchp header.b=fIsGsqOa; arc=pass (i=1 spf=pass spfdomain=microchip.com dkim=pass dkdomain=microchip.com dmarc=pass fromdomain=microchip.com); spf=pass (google.com: domain of linux-kernel+bounces-42436-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.80.249 as permitted sender) smtp.mailfrom="linux-kernel+bounces-42436-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=QUARANTINE sp=REJECT dis=NONE) header.from=microchip.com Return-Path: Received: from am.mirrors.kernel.org (am.mirrors.kernel.org. [147.75.80.249]) by mx.google.com with ESMTPS id en26-20020a056402529a00b0055d367d07desi3322665edb.4.2024.01.29.01.32.03 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 29 Jan 2024 01:32:03 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel+bounces-42436-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.80.249 as permitted sender) client-ip=147.75.80.249; Authentication-Results: mx.google.com; dkim=pass header.i=@microchip.com header.s=mchp header.b=fIsGsqOa; arc=pass (i=1 spf=pass spfdomain=microchip.com dkim=pass dkdomain=microchip.com dmarc=pass fromdomain=microchip.com); spf=pass (google.com: domain of linux-kernel+bounces-42436-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.80.249 as permitted sender) smtp.mailfrom="linux-kernel+bounces-42436-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=QUARANTINE sp=REJECT dis=NONE) header.from=microchip.com Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by am.mirrors.kernel.org (Postfix) with ESMTPS id 39AE81F24360 for ; Mon, 29 Jan 2024 09:25:18 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 18EFC55E5C; Mon, 29 Jan 2024 09:24:51 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=microchip.com header.i=@microchip.com header.b="fIsGsqOa" Received: from esa.microchip.iphmx.com (esa.microchip.iphmx.com [68.232.154.123]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id CB2F455792 for ; Mon, 29 Jan 2024 09:24:47 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=68.232.154.123 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1706520290; cv=none; b=AhvX1V7No7pgX/7aAQuBBe7gGb3ux/ORm7aKzDajDSRPe6XE1iiGQ20FzaUPDw+wUuxT7ct3uzYDq1ixnws2Kc9754jBvJ/xK5jqaE2nLNlHrlVzs9OWhO3C/+UfdneObJTK+Gl1bbif5pqTwIq62XcYAt31IQzMrSt+NZh2qVo= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1706520290; c=relaxed/simple; bh=uPW5WaZeYCNjpAiQXQ6dsyN5lBlDGiOxHHcb3Werqlg=; h=From:To:CC:Subject:Date:Message-ID:MIME-Version:Content-Type; b=HHovXghBMXlatTvQmzsFkLECu5srLj7SzZGk6+hVkZ0kORw/5ewuhjbBoGhUiZutU6733aVYjjC35G5wL76lKILmkcMoqNuPXWpFUSaco5hHDbxURpfXyn6CnXfCUYPJrn5TUnv8BcK5/Xf0GZJT9HqrwY35xIJd7mWoNLA+cRc= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=microchip.com; spf=pass smtp.mailfrom=microchip.com; dkim=pass (2048-bit key) header.d=microchip.com header.i=@microchip.com header.b=fIsGsqOa; arc=none smtp.client-ip=68.232.154.123 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=microchip.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=microchip.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=microchip.com; i=@microchip.com; q=dns/txt; s=mchp; t=1706520287; x=1738056287; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=uPW5WaZeYCNjpAiQXQ6dsyN5lBlDGiOxHHcb3Werqlg=; b=fIsGsqOaX9wCjPkwCBYnhRB7lggxgM8kJ51oTFZ/EtMqo8eFDpY3yTzU asKC5fitFJwnypsas/IZD1CdvqC+XEa+3P97QgKiZE3lk/FKOsh48EWZt c9uxSkCd2ZXdtnE5u+NnKM70u0DNjuMWt5Fib2YY1uVEf5PIK223vp1/L 2fLe6bNwI0KJy98IWkezIWiV+7erNjaLzlIBcjba8IRlKag048/HH44dz xoKxuNCL5o1EGqI1tXlu8Smx1lZLPx/pCyTq2zCHyy02bFp9JBfBQ42JG 7DsiAAVCW5SGclQOZ7ANl7jR/bLrPFnhDNqk5z7eMESIHW6yZCpm9Gb/h w==; X-CSE-ConnectionGUID: yiykArgaTK2rjSxwUhiB8w== X-CSE-MsgGUID: eTsSxssXSN2wWUTre263AA== X-IronPort-AV: E=Sophos;i="6.05,226,1701154800"; d="scan'208";a="15433321" X-Amp-Result: SKIPPED(no attachment in message) Received: from unknown (HELO email.microchip.com) ([170.129.1.10]) by esa4.microchip.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 29 Jan 2024 02:24:46 -0700 Received: from chn-vm-ex01.mchp-main.com (10.10.85.143) by chn-vm-ex04.mchp-main.com (10.10.85.152) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.35; Mon, 29 Jan 2024 02:24:11 -0700 Received: from che-lt-i67131.microchip.com (10.10.85.11) by chn-vm-ex01.mchp-main.com (10.10.85.143) with Microsoft SMTP Server id 15.1.2507.35 via Frontend Transport; Mon, 29 Jan 2024 02:24:04 -0700 From: Manikandan Muralidharan To: , , , , , , , , , , CC: , , , , , , , Manikandan Muralidharan Subject: [PATCH RESEND v7 0/7] Add support for XLCDC to sam9x7 SoC family. Date: Mon, 29 Jan 2024 14:53:12 +0530 Message-ID: <20240129092319.199365-1-manikandan.m@microchip.com> X-Mailer: git-send-email 2.25.1 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain This patch series aims to add support for XLCDC IP of sam9x7 SoC family to the DRM subsystem.XLCDC IP has additional registers and new configuration bits compared to the existing register set of HLCDC IP. The new compatible string "microchip,sam9x75-xlcdc" is defined for sam9x75 variant of the sam9x7 SoC family.The is_xlcdc flag under driver data and IP specific driver ops helps to differentiate the XLCDC and existing HLCDC code within the same driver. changes in v7: * LCDC IP driver ops functions are declared static and its declaration are removed. changes in v6: * Fixed Cosmetic defects. * Added comments for readability. changes in v5: * return value of regmap_read_poll_timeout is checked in failure case. * HLCDC and XLCDC specific driver functions are now invoked using its IP specific driver ops w/o the need of checking is_xlcdc flag. * Removed empty spaces and blank lines. changes in v4: * fixed kernel warnings reported by kernel test robot. changes in v3: * Removed de-referencing the value of is_xlcdc flag multiple times in a single function. * Removed cpu_relax() call when using regmap_read_poll_timeout. * Updated xfactor and yfactor equations using shift operators * Defined CSC co-efficients in an array for code readability. changes in v2: * Change the driver compatible name from "microchip,sam9x7-xlcdc" to "microchip,sam9x75-xlcdc". * Move is_xlcdc flag to driver data. * Remove unsed Macro definitions. * Add co-developed-bys tags * Replace regmap_read() with regmap_read_poll_timeout() call * Split code into two helpers for code readablitity. Durai Manickam KR (1): drm: atmel-hlcdc: Define SAM9X7 SoC XLCDC specific registers Manikandan Muralidharan (6): drm: atmel-hlcdc: add flag and driver ops to differentiate XLCDC and HLCDC IP drm: atmel-hlcdc: add LCD controller layer definition for sam9x75 drm: atmel_hlcdc: Add support for XLCDC in atmel LCD driver drm: atmel-hlcdc: add DPI mode support for XLCDC drm: atmel-hlcdc: add vertical and horizontal scaling support for XLCDC drm: atmel-hlcdc: add support for DSI output formats .../gpu/drm/atmel-hlcdc/atmel_hlcdc_crtc.c | 175 +++++++-- drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_dc.c | 105 +++++ drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_dc.h | 86 ++++ .../gpu/drm/atmel-hlcdc/atmel_hlcdc_plane.c | 369 +++++++++++++++--- include/linux/mfd/atmel-hlcdc.h | 10 + 5 files changed, 647 insertions(+), 98 deletions(-) -- 2.25.1