Received: by 10.223.185.116 with SMTP id b49csp6591185wrg; Thu, 8 Mar 2018 09:53:19 -0800 (PST) X-Google-Smtp-Source: AG47ELs3Oh0DKYp+i3guVl3ADhsdhf4dtJ6BCAe6oEPRBWQ3FVZXhYur2zYiDV2WaH4Ma8afRqY7 X-Received: by 2002:a17:902:4381:: with SMTP id j1-v6mr24460326pld.297.1520531599715; Thu, 08 Mar 2018 09:53:19 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1520531599; cv=none; d=google.com; s=arc-20160816; b=BPbu21lqB3EE/VyIJPWrzY0x8n11rXWEB70VNqhOb90sI1msNgUqKO1AnaX76w1MCM YLDlwKE+eLnldrtXZKBxQKbAw05yvLNdI87tgzu5pUI2akJtL7vzhd8D17w/3P0OMwzE /iOqnCybEqZC5feJfjtuVKB/lsGed1FusNqkq8G1xC9AikRFfzjAt3oqO5PaRTA0r652 QeXf6gZAaOO79pAyOWOVNjn/MCaYOc9RnZRyV5qriKv8grFtbaSU4eFIMwuG1ZMgGT// xv8EaYt+Von8XWnq246HyeLFwsGnhHqwPXA11WHvfOkz/shTQcaIJXT2rjbTxS5qdxlw xH8Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding :content-language:in-reply-to:mime-version:user-agent:date :message-id:from:references:cc:to:subject:dkim-signature :arc-authentication-results; bh=kVumjv8CZPy7GB2Jm8hL8XIVYLOHkzdT3LFJZ9+zOt8=; b=e9AquDvVEOj4zS025cVk/0htgbes+Yd97XDxlktWDkcGw35Yy/AeB9i2rO4JT1TW8M LLgEwgLItbBY553oy15JM0KsfK/Y+OIF1tcPWiEv95rBiT+poWIvZCdsJxkuCB3hOZaN Nuze9zZh0NWYbSO8ulNfGl3KK4sRA2PfQFgsuSO+7Lsao+fwV2zdDesmM3MuwWTT+2SN Vir7FQJZsoAwk/9WieuIgnSB+BwHu4u3MANDllHOioUU2zPhefYcRPC0rLG8XRLxS/Oi cPVN4Xamv+Zbpcuj5BWDwPHY5cZHM63BS0JHaQCyAe2tGTEz91govJ8pi1A9LtwNl6g0 yANw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=Kuya9hqm; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id bj1-v6si14912695plb.825.2018.03.08.09.52.53; Thu, 08 Mar 2018 09:53:19 -0800 (PST) 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; dkim=pass header.i=@linaro.org header.s=google header.b=Kuya9hqm; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S936079AbeCHRvm (ORCPT + 99 others); Thu, 8 Mar 2018 12:51:42 -0500 Received: from mail-wr0-f196.google.com ([209.85.128.196]:34494 "EHLO mail-wr0-f196.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S936058AbeCHRvi (ORCPT ); Thu, 8 Mar 2018 12:51:38 -0500 Received: by mail-wr0-f196.google.com with SMTP id o8so6563809wra.1 for ; Thu, 08 Mar 2018 09:51:37 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=subject:to:cc:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-language:content-transfer-encoding; bh=kVumjv8CZPy7GB2Jm8hL8XIVYLOHkzdT3LFJZ9+zOt8=; b=Kuya9hqmFoXPWWkekLVQf38hR/bhqwYcwwb5GL4nvZaPV8+kK1OnXzZ01M0zZF6U0K MfbAhBg5KXuisUEU7tBSpsHKaDk2IswFq3V4Hmz6TniUDYksBczH9eXo+fSaGXND+GWC KPWcmSC8A7BASl7KZfsLJefLP86x93VNuh3yo= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=kVumjv8CZPy7GB2Jm8hL8XIVYLOHkzdT3LFJZ9+zOt8=; b=Ouo75rUoQkzSjWd4Kd2NhHy+9BjgJTaMb+CLJIaYcxbU3sMnzrmSMZO5FFgDEY5l+I Mi6jB1EAdp2eTwujaFCXnw0WrwIQGofJ73FzJNiNJg/LG1v2k66qRHjwbgK3KYdYgfV/ I5IPD8nMm2qK4ST3nKP7/MXvjVswsWwh+bKDZhTt1rzylKSy4BVD/fa6FVgGMI5IH32g 8DKWpizVUNCRlnsU/6bHLF7KraqPK3h6lBee3YOqoN9NrrWbAPcT1+azKBAqHMb2WXWR tOR0rh0IJaclW2Ni6xB179dOrgOkGF65oKbv+nurLWuBR/4KiM0pDBkKsnTr3iQ+sagq wnuA== X-Gm-Message-State: APf1xPBBiJj1dVQMWs97/g2bou18lvvZv7uCivyKB7J9C6K5ALpU77aG ro3zPrsWKtPFSKlCONoIoWXZyA== X-Received: by 10.223.142.5 with SMTP id n5mr24990760wrb.28.1520531497194; Thu, 08 Mar 2018 09:51:37 -0800 (PST) Received: from holly.lan (cpc141214-aztw34-2-0-cust773.18-1.cable.virginm.net. [86.9.19.6]) by smtp.googlemail.com with ESMTPSA id x78sm30255689wmd.2.2018.03.08.09.51.35 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 08 Mar 2018 09:51:36 -0800 (PST) Subject: Re: [PATCH 1/2] backlight: Add RAVE SP backlight driver To: Andrey Smirnov Cc: Lee Jones , Jingoo Han , linux-kernel , Chris Healy , Lucas Stach , Aleksander Morgado References: <20180307024011.25033-1-andrew.smirnov@gmail.com> From: Daniel Thompson Message-ID: <49e36db6-6f53-348c-d758-7c20e5a72e9d@linaro.org> Date: Thu, 8 Mar 2018 17:51:35 +0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.6.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 08/03/18 17:29, Andrey Smirnov wrote: > On Thu, Mar 8, 2018 at 8:58 AM, Daniel Thompson > wrote: >> On 07/03/18 02:40, Andrey Smirnov wrote: >>> >>> This driver provides access to RAVE SP backlight control >>> functionality. >>> >>> Cc: Lee Jones >>> Cc: Daniel Thompson >>> Cc: Jingoo Han >>> Cc: linux-kernel@vger.kernel.org >>> Cc: Chris Healy >>> Cc: Lucas Stach >>> Cc: Aleksander Morgado >>> Signed-off-by: Andrey Smirnov >>> --- >>> drivers/video/backlight/Kconfig | 6 +++ >>> drivers/video/backlight/Makefile | 1 + >>> drivers/video/backlight/rave-sp-backlight.c | 82 >>> +++++++++++++++++++++++++++++ >>> include/linux/mfd/rave-sp.h | 1 + >>> 4 files changed, 90 insertions(+) >>> create mode 100644 drivers/video/backlight/rave-sp-backlight.c >>> >>> diff --git a/drivers/video/backlight/Kconfig >>> b/drivers/video/backlight/Kconfig >>> index 4e1d2ad50ba1..5d2d0d7e8100 100644 >>> --- a/drivers/video/backlight/Kconfig >>> +++ b/drivers/video/backlight/Kconfig >>> @@ -467,6 +467,12 @@ config BACKLIGHT_ARCXCNN >>> If you have an ARCxCnnnn family backlight say Y to enable >>> the backlight driver. >>> +config BACKLIGHT_RAVE_SP >>> + tristate "RAVE SP Backlight driver" >>> + depends on RAVE_SP_CORE >>> + help >>> + Support for backlight control on RAVE SP device. >>> + >>> endif # BACKLIGHT_CLASS_DEVICE >>> endif # BACKLIGHT_LCD_SUPPORT >>> diff --git a/drivers/video/backlight/Makefile >>> b/drivers/video/backlight/Makefile >>> index 5e28f01c8391..19da71d518bf 100644 >>> --- a/drivers/video/backlight/Makefile >>> +++ b/drivers/video/backlight/Makefile >>> @@ -57,3 +57,4 @@ obj-$(CONFIG_BACKLIGHT_TOSA) += tosa_bl.o >>> obj-$(CONFIG_BACKLIGHT_TPS65217) += tps65217_bl.o >>> obj-$(CONFIG_BACKLIGHT_WM831X) += wm831x_bl.o >>> obj-$(CONFIG_BACKLIGHT_ARCXCNN) += arcxcnn_bl.o >>> +obj-$(CONFIG_BACKLIGHT_RAVE_SP) += rave-sp-backlight.o >>> diff --git a/drivers/video/backlight/rave-sp-backlight.c >>> b/drivers/video/backlight/rave-sp-backlight.c >>> new file mode 100644 >>> index 000000000000..62836ba561db >>> --- /dev/null >>> +++ b/drivers/video/backlight/rave-sp-backlight.c >>> @@ -0,0 +1,82 @@ >>> +// SPDX-License-Identifier: GPL-2.0+ >>> + >>> +/* >>> + * LCD Backlight driver for RAVE SP >>> + * >>> + * Copyright (C) 2018 Zodiac Inflight Innovations >>> + * >>> + */ >>> + >>> +#include >>> +#include >>> +#include >>> +#include >>> +#include >>> + >>> +#define RAVE_SP_BACKLIGHT_LCD_EN BIT(7) >>> + >>> +static int rave_sp_backlight_update_status(struct backlight_device *bd) >>> +{ >>> + const struct backlight_properties *p = &bd->props; >>> + const u8 intensity = >>> + (p->power == FB_BLANK_UNBLANK) ? p->brightness : 0; >>> + struct rave_sp *sp = dev_get_drvdata(&bd->dev); >>> + u8 cmd[] = { >>> + [0] = RAVE_SP_CMD_SET_BACKLIGHT, >>> + [1] = 0, >>> + [2] = intensity ? RAVE_SP_BACKLIGHT_LCD_EN | intensity : >>> 0, >>> + [3] = 0, >>> + [4] = 0, >>> + }; >>> + >>> + return rave_sp_exec(sp, cmd, sizeof(cmd), NULL, 0); >>> +} >>> + >>> +static const struct backlight_ops rave_sp_backlight_ops = { >>> + .options = BL_CORE_SUSPENDRESUME, >>> + .update_status = rave_sp_backlight_update_status, >>> +}; >>> + >>> +static struct backlight_properties rave_sp_backlight_props = { >>> + .type = BACKLIGHT_FIRMWARE, >> >> >> I would have thought BACKLIGHT_PLATFORM would be more suitable here. >> BACKLIGHT_FIRMWARE is used for things like the ACPI backlight driver. >> >> Why did you select this one? >> > > Good point and I don't think I have any justification to choose > FIRMWARE over PLATFORM, will fix in v2. Thanks. With that fixed: Acked-by: Daniel Thompson Daniel.