From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755066AbbFBJNq (ORCPT ); Tue, 2 Jun 2015 05:13:46 -0400 Received: from foss.arm.com ([217.140.101.70]:36566 "EHLO foss.arm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751582AbbFBJNf (ORCPT ); Tue, 2 Jun 2015 05:13:35 -0400 Message-ID: <556D73B6.4090608@arm.com> Date: Tue, 02 Jun 2015 10:13:26 +0100 From: Marc Zyngier Organization: ARM Ltd User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Icedove/31.4.0 MIME-Version: 1.0 To: Linus Walleij , Bintian Wang , Russell King - ARM Linux CC: "linux-arm-kernel@lists.infradead.org" , "linux-kernel@vger.kernel.org" , Catalin Marinas , Will Deacon , "devicetree@vger.kernel.org" , Rob Herring , Pawel Moll , Mark Rutland , "ijc+devicetree@hellion.org.uk" , Kumar Gala , Kevin Hilman , Mike Turquette , "rob.herring@linaro.org" , Zhangfei Gao , Haojian Zhuang , Xu Wei , Jaehoon Chung , Olof Johansson , "yanhaifeng@gmail.com" , Stephen Boyd , "xuejiancheng@huawei.com" , "sledge.yanwei@huawei.com" , Tomeu Vizoso , Guodong Xu , "jorge.ramirez-ortiz@linaro.org" , Tyler Baker , Kevin Hilman , Paul Bolle , Arnd Bergmann , "xuyiping@hisilicon.com" , "wangbinghui@hisilicon.com" , "zhenwei.wang@hisilicon.com" , "victor.lixin@hisilicon.com" , "puck.chen@hisilicon.com" , "dan.zhao@hisilicon.com" , "huxinwei@huawei.com" , "z.liuxinliang@huawei.com" , Yunlei He , XinWei Kong , "wangbintian@gmail.com" , "w.f@huawei.com" , "liguozhu@hisilicon.com" Subject: Re: [PATCH v9 4/6] Documentation: DT: PL011: hi6220: add compatible string for Hisilicon designed UART References: <1432950661-23060-1-git-send-email-bintian.wang@huawei.com> <1432950661-23060-5-git-send-email-bintian.wang@huawei.com> In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 02/06/15 09:59, Linus Walleij wrote: > On Sat, May 30, 2015 at 3:50 AM, Bintian Wang wrote: > >> Hisilicon does some performance enhancements based on PL011(e.g. larger >> FIFO length), so add one compatible string "hisilicon,hi6220-uart" for > > That compatible string in the commit message is not even > the same as in the patch. > >> future optimisations or workarounds works. >> >> Signed-off-by: Bintian Wang >> Suggested-by: Mark Rutland > > Maybe I missed out on the earlier conversation, but do you > mean that the PrimeCell ID has not been properly set up > to something unique in this HiSilicon version of the PL011 > block? > > Even if so: do not override the compatible string like this, > that is not the PrimeCell style. > > Define an 8 bit vendor ID (like tha ASCII for 'H' 0x48 > or whatever) and encode it for these variants, if the > hardware is just using the ARM default PrimeCell > ID, override it in the device tree like Broadcom > are doing in arch/arm/boot/dts/bcm2835.dtsi: > > arm,primecell-periphid = <0x00241011>; > > Maybe yours would be: > > arm,primecell-periphid = <0x00048011>; > > For a first HiSilicon variant, then do some > : > > enum amba_vendor { > AMBA_VENDOR_ARM = 0x41, > + AMBA_VENDOR_HISILICON = 0x48, > > Then patch drivers/tty/serial/amba_pl011.c to add vendor_hisilicon > and a match table for 0x00048011 just like everyone else. That feels weird. This amba_vendor enum is not under control of the DT author, nor the kernel. This is a set of codes that are managed by a third party (probably ARM). What if some company with a name starting with 'H' (Hilarious Inc?) comes up with some actual HW and ends up conflicting with the above? Thanks, M. -- Jazz is not dead. It just smells funny...