From patchwork Fri Sep 13 09:56:05 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dario Binacchi X-Patchwork-Id: 3491 Return-Path: X-Original-To: linux-amarula@patchwork.amarulasolutions.com Delivered-To: linux-amarula@patchwork.amarulasolutions.com Received: from mail-lf1-f72.google.com (mail-lf1-f72.google.com [209.85.167.72]) by ganimede.amarulasolutions.com (Postfix) with ESMTPS id EADB0412D2 for ; Fri, 13 Sep 2024 11:57:29 +0200 (CEST) Received: by mail-lf1-f72.google.com with SMTP id 2adb3069b0e04-535682ab6e9sf1740424e87.1 for ; Fri, 13 Sep 2024 02:57:29 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1726221449; cv=pass; d=google.com; s=arc-20240605; b=X1kIgVBeIWrVJ+kJNXNjHMaPiMtkeerAmFiG51PTVhOcV/9os0P4MV21rPPj4vi4CL kk9wEgmZjGQxAoD79dnpKFPidUQrWAjn87emtRp4rIfGEt6Jjdv7e+OFJ9jD6lVGpptu NBcZYYjrh96cHySXL5TmJfNK/AU1XL+Xls5m2/Ep8Yl0pn2uYeTYBr0cIO7Ql9EJOrsw Vo2XvUhXeS8k3r0mbFEHlpRIo5K+NPbBblmwWl2j1jbf8yRP0ngvH597Vd2horlmin+x UDEa8y7PvhHInghgzhA2ax6jPE24+avMnXT0mfk3NQP6fc20IViMS62VJ/1m8I6Qd4/i acow== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=list-unsubscribe:list-archive:list-help:list-post:list-id :mailing-list:precedence:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:dkim-signature; bh=/XUp0p7AkzNk1ONJJNSENyULRDOvlQdmO0oITrNJcQo=; fh=ITzchc4jVGwmbFhdC9dOaONyFuUAHjwJozeIDyUKBRQ=; b=HL8HWIYoXgp275P7fE6UIxML5z/6zKrnvcqbAuM6RZfcon2hrGhHNYcRp6c/+xxbF5 L9TlqL7Bq3YeizlyW3Yb2sXu71PrYLsXTCqI+/bCweZpfZNf2vJ2mgy+CjifwAbataBT Q7l88az9Wj77U9GkMXV+YbGeU9EhdD+5n5+CHI+Oa/73UH4ztvIVMKU0AqitCJdz4Eg0 HPJa/CHceSiAqy18Nskw0zu0WY5Ss/I2c2PePr62IDGtg4JgJFXSHO1K5fWlfj+gfDgZ ZSiSam55ezPPU+TxMnoQfFJG5ATybEIAZoNjyICtDwmeHJML9wt9tcYgpgy4X9whfTKR T0Gw==; darn=patchwork.amarulasolutions.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b="p2+jl/Dt"; spf=pass (google.com: domain of dario.binacchi@amarulasolutions.com designates 209.85.220.41 as permitted sender) smtp.mailfrom=dario.binacchi@amarulasolutions.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=amarulasolutions.com; dara=pass header.i=@amarulasolutions.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amarulasolutions.com; s=google; t=1726221449; x=1726826249; darn=patchwork.amarulasolutions.com; h=list-unsubscribe:list-archive:list-help:list-post:list-id :mailing-list:precedence:x-original-authentication-results :x-original-sender:mime-version:references:in-reply-to:message-id :date:subject:cc:to:from:from:to:cc:subject:date:message-id:reply-to; bh=/XUp0p7AkzNk1ONJJNSENyULRDOvlQdmO0oITrNJcQo=; b=DfAvmTCFFSNav0wzN8QCyV1wA5jYFHJ7VnFupxb+TrJNlNuuGqVdhVHr3TzaDMKPei 68OMYchiOlrvLSnK8SOLOuWzHZDESbTknKdZKTfdaAEFLgJaQ1fXxHVGW86j37A9V62W KSXHtM1PpMw2UqB03H6uedF+HXiR/u5RiPUiM= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1726221449; x=1726826249; h=list-unsubscribe:list-archive:list-help:list-post :x-spam-checked-in-group:list-id:mailing-list:precedence :x-original-authentication-results:x-original-sender:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :x-beenthere:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=/XUp0p7AkzNk1ONJJNSENyULRDOvlQdmO0oITrNJcQo=; b=WC+e7gFSm2WC/jS9w96K4jtMjzKpHPOspJFmwdT1yTFZvaZmQrbw88Fs4fYIgHbp4M MyCpr5+otqVrdTA0+0/ivrPWSxuR0gQcCFbA1XGBLvOmPctzF83h2v0ZgWpjPo8VOtH6 2B7JwAx5RojMX3On2m5gYiezkIGrWVyCc9oab77VjP6T0kmJNGvfzzxA7K1d8JBDuIuu Hf/9tyUPj7hQHB55SZAiyG1xe8ePyqI/PeDQ4+jBF0Gw1MYzy5hXFAx64Xz7ve289O9Z 80KgE6SZ8/vi3AurGj+HWUqeKos5Y4QMoY0NNeiin93+bdWrbeOSnsBtNKiy5ti9DeVZ pobQ== X-Forwarded-Encrypted: i=2; AJvYcCUJ4izXV2cy5OwC73OBWVppnLMYcIPm6sRr5NkDu8JPeIeKyPjHvMur2B2yk5deKMhY66gQpASUHjnY7fvG@patchwork.amarulasolutions.com X-Gm-Message-State: AOJu0Yw7AcDeL+f8iVx3Oq+ZChNuZRB4mnvhWVPzADnrVKqrkzPXesZa +lsmiMJ6ckWf++MVHpOzbb+oH9hQOrsc1rJFoZDMvgEVkPN/C3Vt1eusFHsoInjSyA== X-Google-Smtp-Source: AGHT+IEsXH39j70Wx6M9POJNG1qNeGBGc/w5O3NT2kyvPXzjP9yExE1Zn6FsvP8KUc28vFWmqWICVw== X-Received: by 2002:ac2:4c41:0:b0:52e:f58b:65ee with SMTP id 2adb3069b0e04-53678ff48ebmr3812369e87.57.1726221449247; Fri, 13 Sep 2024 02:57:29 -0700 (PDT) X-BeenThere: linux-amarula@amarulasolutions.com Received: by 2002:a05:6402:2695:b0:5c2:6fff:9f71 with SMTP id 4fb4d7f45d1cf-5c41408b7ccls803505a12.1.-pod-prod-03-eu; Fri, 13 Sep 2024 02:57:28 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCVxS0sNemIaXzMbuwxXjXMppHPNdWUkvFiIj7+pSzfcaXAD5YCJkgQxPnr4qzrjnREmPEaGY5G7zaBiWghY@amarulasolutions.com X-Received: by 2002:a17:907:f70c:b0:a8a:8de6:a605 with SMTP id a640c23a62f3a-a90294fe83dmr605219466b.17.1726221447748; Fri, 13 Sep 2024 02:57:27 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1726221447; cv=none; d=google.com; s=arc-20160816; b=w5/66L4nqlDWI5bpHPMJ9DOVb/+L0bJyaq5XB0+1MAlhpOhsf3X3p6dFQ2nYFU7yIl MQQkOps/IAa0as4jg7MJb7qZbADCdLJ+jQ2fK2dwrqIUrUKL7sBNLD9T/zI6pUIbyuaQ yrZwM8CgkdGX3Fs1O8ev6HDILqVVO8l6O/3lXxwb2Wy4ZqpjjLV2APd7IGmxn8TQTtT1 Gmf5yXXh5PZwe21Eck4tnse3DOrMB5kXUuFEDeIWQvpuYqWNa25gcN37tknd4IrguXMR hfdssW67cfYK5JxgVjD8cSCw6cNNFV7J/EvWCtP+NMHYboWhZ35WU8fPsV5CwrrwemWT 6gjA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:dkim-signature; bh=uMqrX/ueWFxmHIyE51MucJPFAAWhhqGdobRjvQZoM2o=; fh=VQkiAiEJlXZMsnMIlA16uDjkjCBCf0pWHJtbdu1SPoI=; b=kp2wEHdSF3arC6PMdAw4fh0alZm45ieKQ7PRo56QD1RyHdqrAkzVrOE5RE9ddBBsd3 Rynntyd+jFn0zLqp27FrW4apt333aJX9Zxdg1DzauMne5F14OAjxdglZMicCM2fVBfVH EFamtgryu3daIn14Ar/4MXtBdxYE2UOaq8k4mmfKed+IVxfo3eYzy+/3jYddyyxeVT+7 /to/QQ1w2LogdAv9Dhy6UBMxUSackd2qmJZLQIUzpssVuhl+wgfX1aNDPyv2izZMJpUS hDlE5PW14YgF9Uf7rE7DKqa5HQpjzJEoG7EJ6/1eeBQ1uDkMm8Hg5G7iCpU8OLudsIpG 9jUQ==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b="p2+jl/Dt"; spf=pass (google.com: domain of dario.binacchi@amarulasolutions.com designates 209.85.220.41 as permitted sender) smtp.mailfrom=dario.binacchi@amarulasolutions.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=amarulasolutions.com; dara=pass header.i=@amarulasolutions.com Received: from mail-sor-f41.google.com (mail-sor-f41.google.com. [209.85.220.41]) by mx.google.com with SMTPS id a640c23a62f3a-a8d258f297dsor478459266b.8.2024.09.13.02.57.27 for (Google Transport Security); Fri, 13 Sep 2024 02:57:27 -0700 (PDT) Received-SPF: pass (google.com: domain of dario.binacchi@amarulasolutions.com designates 209.85.220.41 as permitted sender) client-ip=209.85.220.41; X-Forwarded-Encrypted: i=1; AJvYcCUmv2S9/c9xUy8MmnqSx9aypF0dqzLtmjb6eUygPe8+vbnZhyzE6B270dob0Yf2QSpjv0EM/CuTxcNwu3Gn@amarulasolutions.com X-Received: by 2002:a17:907:e6e8:b0:a86:7ddf:2909 with SMTP id a640c23a62f3a-a90294fcf3bmr574413166b.14.1726221447125; Fri, 13 Sep 2024 02:57:27 -0700 (PDT) Received: from dario-ThinkPad-T14s-Gen-2i.homenet.telecomitalia.it (host-87-4-102-18.retail.telecomitalia.it. [87.4.102.18]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-a8d25cee72bsm863224766b.173.2024.09.13.02.57.26 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 13 Sep 2024 02:57:26 -0700 (PDT) From: Dario Binacchi To: u-boot@lists.denx.de Cc: Fabio Estevam , linux-amarula@amarulasolutions.com, michael@amarulasolutions.com, Miquel Raynal , Dario Binacchi , Anatolij Gustschin , Minkyu Kang , Tom Rini Subject: [PATCH 23/26] video: bridge: samsung: support simple frame-buffer Date: Fri, 13 Sep 2024 11:56:05 +0200 Message-ID: <20240913095622.72377-24-dario.binacchi@amarulasolutions.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240913095622.72377-1-dario.binacchi@amarulasolutions.com> References: <20240913095622.72377-1-dario.binacchi@amarulasolutions.com> MIME-Version: 1.0 X-Original-Sender: dario.binacchi@amarulasolutions.com X-Original-Authentication-Results: mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b="p2+jl/Dt"; spf=pass (google.com: domain of dario.binacchi@amarulasolutions.com designates 209.85.220.41 as permitted sender) smtp.mailfrom=dario.binacchi@amarulasolutions.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=amarulasolutions.com; dara=pass header.i=@amarulasolutions.com Content-Type: text/plain; charset="UTF-8" Precedence: list Mailing-list: list linux-amarula@amarulasolutions.com; contact linux-amarula+owners@amarulasolutions.com List-ID: X-Spam-Checked-In-Group: linux-amarula@amarulasolutions.com X-Google-Group-Id: 476853432473 List-Post: , List-Help: , List-Archive: List-Unsubscribe: , If you want to pass the frame-buffer to the kernel, the video output is initialized by U-Boot, and kept by the kernel. The patch does not turn off the power domains or disable the peripheral if you want to support such feature. Co-developed-by: Michael Trimarchi Signed-off-by: Michael Trimarchi Signed-off-by: Dario Binacchi --- drivers/video/bridge/samsung-dsi-host.c | 9 +++++++++ drivers/video/bridge/samsung-dsim.c | 3 +++ 2 files changed, 12 insertions(+) diff --git a/drivers/video/bridge/samsung-dsi-host.c b/drivers/video/bridge/samsung-dsi-host.c index dd3e33c4edc7..2d0e8f71a756 100644 --- a/drivers/video/bridge/samsung-dsi-host.c +++ b/drivers/video/bridge/samsung-dsi-host.c @@ -1281,6 +1281,7 @@ static void samsung_dsi_set_standby(struct samsung_dsi *dsim, bool standby) samsung_dsim_write(dsim, DSIM_MDRESOL_REG, mdresol); } +#if (!IS_ENABLED(CONFIG_VIDEO_DT_SIMPLEFB)) static void samsung_dsi_disable_clock(struct samsung_dsi *dsim) { u32 reg; @@ -1294,6 +1295,7 @@ static void samsung_dsi_disable_clock(struct samsung_dsi *dsim) reg &= ~DSIM_PLL_EN; samsung_dsim_write(dsim, DSIM_PLLCTRL_REG, reg); } +#endif static inline struct samsung_dsi *host_to_dsi(struct mipi_dsi_host *host) { @@ -1515,6 +1517,12 @@ static int samsung_dsi_enable(struct udevice *dev) return 0; } +#if IS_ENABLED(CONFIG_VIDEO_DT_SIMPLEFB) +static int samsung_dsi_disable(struct udevice *dev) +{ + return 0; +} +#else static int samsung_dsi_disable(struct udevice *dev) { u32 intsrc; @@ -1532,6 +1540,7 @@ static int samsung_dsi_disable(struct udevice *dev) return 0; } +#endif struct dsi_host_ops samsung_dsi_ops = { .init = samsung_dsi_init, diff --git a/drivers/video/bridge/samsung-dsim.c b/drivers/video/bridge/samsung-dsim.c index 986f1d830844..36e45abb3009 100644 --- a/drivers/video/bridge/samsung-dsim.c +++ b/drivers/video/bridge/samsung-dsim.c @@ -144,5 +144,8 @@ U_BOOT_DRIVER(samsung_dsim) = { .remove = samsung_dsim_remove, .probe = samsung_dsim_probe, .ops = &samsung_dsim_ops, +#if IS_ENABLED(CONFIG_VIDEO_DT_SIMPLEFB) + .flags = DM_FLAG_LEAVE_PD_ON, +#endif .priv_auto = sizeof(struct samsung_dsim_priv), };