Received: by 2002:a05:6a10:1a4d:0:0:0:0 with SMTP id nk13csp1659924pxb; Wed, 9 Feb 2022 01:28:39 -0800 (PST) X-Google-Smtp-Source: ABdhPJySE5tgGNCU0Rngr3k0qry0eo3/Mcs3WVO28pNwqvrbGFEItAFXN8R2bKgmU5ypd446XEga X-Received: by 2002:a17:902:9a88:: with SMTP id w8mr1286232plp.20.1644398919574; Wed, 09 Feb 2022 01:28:39 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1644398919; cv=none; d=google.com; s=arc-20160816; b=fUGPYARy4shqygWYa3zLJj1TXSGh/R6M+pXskdupDZDZOnvmnJEgRZZkFZlhdvICmC LM0V/mhLwsX7nXajrMLV9QaR0o1WBeB1wvJTaEux9KSUHvOyE243QRd5T8vW1KCNsXHf yFdJUizrdUfdCa/Vk3csHvN2Yf5KSm975rEzT9Dkn3b5oPI2BZAsVQixPo7V4c7Yzam8 xrBAH8UaDqWNe0GJ7sZRTVW3L16X1A7uIBSsquWPIZdQYVJEOaZHAJstgf2tA73tguvh 2Ct7nzy4c9SWwS/uOsz8FDY05UPra7krLUxXuTtZ4YrYbGaO7MpCmdN06pGX3TlmbJjR KCHA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:cc:to:subject :message-id:date:from:in-reply-to:references:mime-version :dkim-signature; bh=nu7/YVH6EUneCQklBZ5MS41to049uINEDS/3iIPXoMM=; b=EZPEoo26adHnAzggCXX49jsolM8XDs1Li6lqO/6OE+7zcqEHKWzcrEVmQL8X9J2nl7 h8RCKJ/hJBtpLQ2ri1k9MKwFu23/w8mcK62k1huy5gxo4FTW3iFkAVFzgL7Gyf7Gdovz LpaXW2s4LTYaX6XwRytiQKFgmN004/W5qxjPh0djhjCRIB67gnlwBwQcIJJK/CMCJG15 IiKGxYq3Uk2WZ8EoFcco5cg79588ABgnLfp1SsN1+Kc6pU1GNnfcs33vdaztd5kz/WmM JuuE94/Q4Mc+5ZqZULuZ8SEmkUTWeG/+EX8hbL8h2o15e0430PHbZstzlgADIh7RQ4AL ikrg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b="AVCxW/K+"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:18 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 lindbergh.monkeyblade.net (lindbergh.monkeyblade.net. [2620:137:e000::1:18]) by mx.google.com with ESMTPS id g13si7105302pfc.227.2022.02.09.01.28.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Feb 2022 01:28:39 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:18 as permitted sender) client-ip=2620:137:e000::1:18; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b="AVCxW/K+"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id 0A587E048E61; Wed, 9 Feb 2022 00:59:01 -0800 (PST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1357150AbiBHLgE (ORCPT + 99 others); Tue, 8 Feb 2022 06:36:04 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:39336 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1357010AbiBHLQj (ORCPT ); Tue, 8 Feb 2022 06:16:39 -0500 Received: from mail-yb1-xb2f.google.com (mail-yb1-xb2f.google.com [IPv6:2607:f8b0:4864:20::b2f]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 54857C03FEC0; Tue, 8 Feb 2022 03:16:39 -0800 (PST) Received: by mail-yb1-xb2f.google.com with SMTP id g14so48689794ybs.8; Tue, 08 Feb 2022 03:16:39 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=nu7/YVH6EUneCQklBZ5MS41to049uINEDS/3iIPXoMM=; b=AVCxW/K+sd6X3H3McN/ORZimi27QyU+E4rTwL57qwrLaqRtOYtASwb9CTB+41zgtlB xsJ7e6yG/UHvktqGc/lV3qQxjDllvsSpw6DGTj7ot7BG8+AbgGh955xF73s5CHEhwAbB QjhuGYGXEOCir9YbXYCxEKtHmzgew0aUgfRGbcrjKgiz1+T387Qokq7ufwJm7ZnP45pE PWDSukRXZnBK/z5R1Eu2rJIf7Kq0NqI3J9gQuklL2fKz6hOQx2/4M9fG39iXb122NQMg ZgvMG9BjYz29MfLVgsNHI/CIWdvqf7QStFMajgKL9LBjixChFljGNn5I1s1AX4pe1Sz5 IVMw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=nu7/YVH6EUneCQklBZ5MS41to049uINEDS/3iIPXoMM=; b=3rvetcpUbeRg7+wQNoqEDV//+9jNp/RpATY1y9ZKNHGoyDllD05uXrTS4bR58Jg/6y S33k4YYxmUxzeST6a7PaSfoN33J9pMIv2kD/BaGup2DXHekV8+qd0rrWZvEEVEKncvvj zFfdbvU8I/ERbpW63gDHxMUDM3WTekhBPvEZARYec9dAj+2vPIYOjtjuK0hdo8dgV37C xTuFluiL6JlCSqnE5Z9gcBJSw6PoBN8vCHD1CoSXDDHyuKsx6nEAgIUH4zwqea1WKQva 8aE6VnN9bCavGbgArBBoRU3z8qTXYmQnT/AIXDfddkOCvgNz8kq4GYEzcEoMml2UIyTT YPlQ== X-Gm-Message-State: AOAM5317I5b9Gb5hRnMAIZY/lZtd2QOJT16ObZf3XhTHDcb2c7bbAxxn QNFUcrRgX7+fbm3jnKlw6NnyqcqHOhADwtZGYOI= X-Received: by 2002:a81:ac09:: with SMTP id k9mr4332831ywh.356.1644318998417; Tue, 08 Feb 2022 03:16:38 -0800 (PST) MIME-Version: 1.0 References: <1644213481-20321-1-git-send-email-hammerh0314@gmail.com> <1644213481-20321-3-git-send-email-hammerh0314@gmail.com> <7aa14a1e-2814-0014-a682-f40666f635ac@kernel.org> In-Reply-To: <7aa14a1e-2814-0014-a682-f40666f635ac@kernel.org> From: hammer hsieh Date: Tue, 8 Feb 2022 19:16:52 +0800 Message-ID: Subject: Re: [PATCH v7 2/2] serial:sunplus-uart:Add Sunplus SoC UART Driver To: Jiri Slaby Cc: Greg KH , robh+dt@kernel.org, linux-serial@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, p.zabel@pengutronix.de, wells.lu@sunplus.com, "hammer.hsieh" Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spam-Status: No, score=-1.7 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,RDNS_NONE, SPF_HELO_NONE,T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Jiri Slaby =E6=96=BC 2022=E5=B9=B42=E6=9C=888=E6=97= =A5 =E9=80=B1=E4=BA=8C =E4=B8=8B=E5=8D=882:27=E5=AF=AB=E9=81=93=EF=BC=9A > > Hi, > > On 07. 02. 22, 6:58, Hammer Hsieh wrote: > > +static void sunplus_shutdown(struct uart_port *port) > > +{ > > + unsigned long flags; > > + unsigned int isc; > > + > > + spin_lock_irqsave(&port->lock, flags); > > + > > + isc =3D readl(port->membase + SUP_UART_ISC); > > + isc &=3D ~(SUP_UART_ISC_RXM | SUP_UART_ISC_TXM); > > Is this correct? I mean: will the SUP_UART_ISC read contain the control > bits, not only status bits? > I assume reviewers don't like writel(0,xxx). So I use definition to let the code easy to read. The purpose is to clear all interrupt. Bit[3:0] status bit only for read, write 1 or 0 no effect. > > + writel(isc, port->membase + SUP_UART_ISC); > > + > > + spin_unlock_irqrestore(&port->lock, flags); > > + > > + free_irq(port->irq, port); > > I am still waiting for explanation why this is safe with respect to > posted writes. > Actually I'm not IC designer, not expert for bus design. About data incoherence issue between memory bus and peripheral bus. In case of AXI bus, use non-posted write can avoid data incoherence issue. What if in case of posted write: Send a specific command after last write command. SDCTRL identify specific command, means previous write command done. Then send interrupt signal to interrupt controller. And then interrupt controller send done signal to Master. Master receive done signal, means write command done. Then issue a interrupt or proceed next write command. IC designer told us no problem, and as a uart driver maintainer. It is not my concern, but glad you ask. Let me have chance to know it from IC designer. > regards, > -- > js > suse labs