Received: by 2002:a25:4158:0:0:0:0:0 with SMTP id o85csp528538yba; Fri, 12 Apr 2019 08:20:24 -0700 (PDT) X-Google-Smtp-Source: APXvYqwbrSlF0X++xw6PGvZK0QAljncv9W4n2CPCX/zj3vqrhdQ3oxplnLrMZ8RuSkGdd4mmjAt0 X-Received: by 2002:a63:481:: with SMTP id 123mr55055174pge.167.1555082424454; Fri, 12 Apr 2019 08:20:24 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1555082424; cv=none; d=google.com; s=arc-20160816; b=DOFlcZhIxJWxc31hESsnjpmkmRQpYpRd9Ds6Y6NGdZqK4/bvRrdm4DhdJ76cbJsBRs zNX6H+8Ps4WzGtw8O8amfxtT5U7vebiegK67FmXevQUoT49LM0arOGS0kX+b5y/klSLl CsOqs/BrvMb3ATFoVdiyaPnA18szShFQj04sVbQdRplVaFo978vOGkqwVCBNoVFQCkHk yr0fJ6pA4qq71VjU8cXXtWUYvmd9gkUJdO5WdsVKAcI+KgH+ATcljJ+E6dVY+Y2cMYBw FGQzsVPTNPfvMKiUDJG9pAa4idce0WC+hppV1hZayD+X/UFTE2BkC63AsixKL9ApXOwt j0/w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature; bh=ZLFg354EJIlWaVX65q4goZaguwUVcySJyrgSwtdrOFw=; b=v35c1eBdnooX5O3v9cIEluMG5szz5MtHEEXjEgTezNUydR8H2zeHA3fTpfElPnLB7A 4IqmUFWw9W4bKFXkDW6D7mvAYtDK6st08dugMArHx2WUSeo8W9bXiJFU1KfieP8oCX8q 6wmlcHDJgaLyA5+RBwnOf1sUOLXvEnmZk2OkEneNFbM95wlkmngwMIZdwCyIstFjr3JC PbImS6tXCdZUYPp8DhF08pTgvXdX6Xbj3rZkN+6xm4Fgql2KxshfxFYzn5pYWHqW2GzI /NOF/8kqCO9oA0rs4BHwOo2lC3sRwVP59IgXLgMxUN4vD+rSDcM/09Z2SnwRidSRrgYq z34w== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=YEwJVVZA; 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=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id l186si20370381pge.128.2019.04.12.08.20.08; Fri, 12 Apr 2019 08:20:24 -0700 (PDT) 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=@gmail.com header.s=20161025 header.b=YEwJVVZA; 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=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726944AbfDLPTa (ORCPT + 99 others); Fri, 12 Apr 2019 11:19:30 -0400 Received: from mail-it1-f196.google.com ([209.85.166.196]:53204 "EHLO mail-it1-f196.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726327AbfDLPTa (ORCPT ); Fri, 12 Apr 2019 11:19:30 -0400 Received: by mail-it1-f196.google.com with SMTP id x132so16295480itf.2; Fri, 12 Apr 2019 08:19:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=ZLFg354EJIlWaVX65q4goZaguwUVcySJyrgSwtdrOFw=; b=YEwJVVZAF34covn+jRPIDQfXfqcNze69tN/ozHxR0+iu7ijr3kQKt+gCuEpmkdSZ9J 0Mm3uVnc/McBILIkQEgeTpjTXrfwkBWUTVyMqwf4qJLyDf7gHSE+xTGk9ejGE67jd4W3 hZeu1W2qN8hHYLUCrpkf3JzprtGB6+W8xKkTFlNkNsRDb1sUXuJHar2K5IqDoN3R88rW KnkG9yCrlBorn9enpMzIwoXcCTaSFzuzq1uZ/FRSDZcnX2Cn4nMKIClRCtPXHs8xbJnS w8DUtWv3VTloGS/ErGAk5LtZ5elzpOkiUSz34OQ1g8hvevl9qTV3h6t0u2Q4RZfPhZct iDkw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=ZLFg354EJIlWaVX65q4goZaguwUVcySJyrgSwtdrOFw=; b=Dgcs9t6H+z/m4ickqffc2OTziNjPc+HHCSoCvxMu5ZW3odpbtJxgnckYdMpOMfOTsV M/FYo7lsoabSDa+POWLY7asF/5+MziHjan5b9zrtp+S6Yz5QNuqzr3mNDZ86WhCl7/DB wkpQ3pNeWdpGOaFyuwoaNlDwZJ23cRGxSo/XpA5rgESEe9e/I19ovo74TJvSw/Nm09cY h/hcGa9SO2sIUpDMOOdg/mH/kRWkePa+iO7BcJs2npKG79cNjgON9/t3kcavVqrAZ5/8 X65VxSGxsPO3N91aCedx+bGcuX3+prl2MOt2ELWG5MXIhjrecAZ0wro1bL1xIQvGJRdZ ingg== X-Gm-Message-State: APjAAAVual1yI3YliLcHlud8VbuMF6/iKcAvgrUnYQiahaewEhCK9Wmr WPzf+bzoJ5gLWgtGXizW3LU9itk5c806USMnmJ4= X-Received: by 2002:a02:a916:: with SMTP id n22mr40211038jam.40.1555082369205; Fri, 12 Apr 2019 08:19:29 -0700 (PDT) MIME-Version: 1.0 References: <20190411205144.43557-1-jeffrey.l.hugo@gmail.com> <20190412144712.GA7481@lakrids.cambridge.arm.com> In-Reply-To: <20190412144712.GA7481@lakrids.cambridge.arm.com> From: Jeffrey Hugo Date: Fri, 12 Apr 2019 09:19:18 -0600 Message-ID: Subject: Re: [PATCH v2] arm64: dts: qcom: Add Lenovo Miix 630 To: Mark Rutland Cc: bjorn.andersson@linaro.org, agross@kernel.org, David Brown , robh+dt@kernel.org, Lee Jones , linux-arm-msm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org I'm sorry, I had completely missed your reply to v1. To answer your previous question, why do we need a DT? DT is the quick path to support for these systems. There is already a fair amount of support in mainline to support the core SoC (msm8998) which is/was heavily used in top tier phone products. All of that support is DT based, which is expected to also be leveraged to other products beyond these laptops, and the existing phones on the market. As far as I am aware, the ACPI for the laptops was developed only with Windows in mind, and it is expected, from initial investigations, that supporting the ACPI is going to be painful. Its on the road map, but getting full functionality, quickly, is what what we'd like to do to meet the demand for these systems. On Fri, Apr 12, 2019 at 8:47 AM Mark Rutland wrote: > > On Thu, Apr 11, 2019 at 01:51:44PM -0700, Jeffrey Hugo wrote: > > This adds the initial DT for the Lenovo Miix 630 laptop. Supported > > functionality includes USB (host), microSD-card, keyboard, and trackpad. > > > > Signed-off-by: Jeffrey Hugo > > --- > > > > v2: > > -Changed "cls" to "clam" since feedback indicated "cls" is too opaque, but > > "clamshell" is a mouthfull. "clam" seems to be a happy medium. > > Please use "clamshell". The extra 5 characters aren't going to hurt > anyone, and it avoids having yet another short name just confuses > matters further. Sure. Will queue this for the next rev. > > [...] > > > + keyboard@3a { > > + /* QTEC0001 is the ACPI HID, which could be used for quirks */ > > + compatible = "QTEC0001", "hid-over-i2c"; > > As mentioned last time, please drop the ACPI HID, and allocate a real > compatible string. So, I'm in a quandary with this device. As far as I can tell, its an off the shelf component, the device adheres to the "PNP0C50" spec (HID over I2C), and can be driven by the full "hid-over-i2c" driver (which is just a DT shim over the PNP0C50 ACPI driver). However, the device itself identifies itself as an ELAN 400 device, which is an ID that is also used for standalone touchpad devices. Per my understanding of the Linux drivers, there is a separate ELAN driver for the standalone touchpad devices as its been discovered though trial and error that the Linux PNP0C50 driver cannot drive those devices. To handle this, there is a quirk in hid-quirks which rejects ELAN 400 devices, except those which are "QTEC0001". We need that quirk bypass for this device because the ELAN driver cannot handle this device. I'd much rather have a single identifier to quirk on, rather than having one for DT and one for ACPI, and its not looking feasible to get the vendor to update the ACPI, so it seems like using the ACPI identifier is just simpler. So, if you want a different compatible string, I'll need to go put DT in a driver that is primarily ACPI. I'm not sure what the HID folks will think of that. I'll propose it, but what do you view is a "proper" compatible string? "ELAN0400-msm8998-clamshell"?