From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=2a00:1450:4864:20::441; helo=mail-wr1-x441.google.com; envelope-from=leif.lindholm@linaro.org; receiver=edk2-devel@lists.01.org Received: from mail-wr1-x441.google.com (mail-wr1-x441.google.com [IPv6:2a00:1450:4864:20::441]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 632F3211B6982 for ; Fri, 11 Jan 2019 09:58:49 -0800 (PST) Received: by mail-wr1-x441.google.com with SMTP id p4so16136453wrt.7 for ; Fri, 11 Jan 2019 09:58:49 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=date:from:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to:user-agent; bh=d8Y9YDEXXLf7439Io3wPR+Zs9YxbLVm/eEPiT5TIU/s=; b=U0tKcUOLsdVCNtaPZZPo5aB9D5vY5o2IbZr4nWnJqQhfliOdY0is9lOH+07WO6Mav+ +Gvv7gTE56oVtthve1qcmbWG73DmnnrFR+7MCaT8IUDi2UovxAzsWjGQVMS6q3pkpQyu dueMwPfJ/Q0tr6hmLxz7J52mLH9XhTixuyKWI= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to:user-agent; bh=d8Y9YDEXXLf7439Io3wPR+Zs9YxbLVm/eEPiT5TIU/s=; b=ZkxFuh3Z+V9DtDM+/w/UFDmKuDFvTVNatb84uxMwZzVhihjGATpsF77iE1zTsQ+6QH HadtJNSalHtZ7kuXLG2PUBAHgVBc0grMkte3R6YcAgKsWnE4mMwh0LD2ZEQZbsqSng7m vTgv9kprP+y4Gn3fzkIhTOIUWhX0a/nSeVxS7CP+gBLLYNlybEHwUFm2kQUaMddNfgEm HRDG5DAkMTw4X9N+Z5SwJqu71RUS06eaatCPBvpL+9/ZasaMSEliBRwOXSesGuncX5wl jSk7QBEoP39DcDQxU1xhN4EClPv806pz5XAcZAlGL/1hiPuWa9fPGTrcLx+u23wPy50x XBbg== X-Gm-Message-State: AJcUukchzyVhvsonXWTAgnpXWHTbEA54FqMymTZz+Ud1OPGgHmkPOnOG JmeYUT730A76dDu75L62snfwgA== X-Google-Smtp-Source: ALg8bN4CjAO/+fEzuUI6TNqzfMRmw7m8VOnn6CTZV16IcvTFfJsvLVMSo3sNwzzKH03WvoTQSLzYsQ== X-Received: by 2002:adf:c711:: with SMTP id k17mr13910649wrg.197.1547229526795; Fri, 11 Jan 2019 09:58:46 -0800 (PST) Received: from bivouac.eciton.net (bivouac.eciton.net. [2a00:1098:0:86:1000:23:0:2]) by smtp.gmail.com with ESMTPSA id k15sm100188341wru.8.2019.01.11.09.58.45 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Fri, 11 Jan 2019 09:58:46 -0800 (PST) Date: Fri, 11 Jan 2019 17:58:44 +0000 From: Leif Lindholm To: Ard Biesheuvel Cc: edk2-devel@lists.01.org, masahisa.kojima@linaro.org Message-ID: <20190111175844.cvxsze74xylv7s3s@bivouac.eciton.net> References: <20181226132530.8445-1-ard.biesheuvel@linaro.org> <20181226132530.8445-4-ard.biesheuvel@linaro.org> MIME-Version: 1.0 In-Reply-To: <20181226132530.8445-4-ard.biesheuvel@linaro.org> User-Agent: NeoMutt/20170113 (1.7.2) Subject: Re: [PATCH edk2-platforms 3/3] Silicon/SynQuacer: add support for DEBUG output on second UART X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 11 Jan 2019 17:58:50 -0000 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline On Wed, Dec 26, 2018 at 02:25:30PM +0100, Ard Biesheuvel wrote: > On headless server systems where the PL011 serial port is the primary > console, having DEBUG output on the same port can be annoying, since > DEBUG output gets lost when the console driver clears the screen or > positions the cursor using control characters. > > So add the ability to emit the DEBUG output on the DesignWare FUART > (which is exposed via the LS connector on DeveloperBox) >>From what I can tell, the DesignWare component is 8250-compatible, yet here we're using the 16550 driver. I presume this makes no difference for how we're using it, but could you add a comment to this effect to the commit message? (If the FUART is indeed a 16550 clone, please add a statement to that effect instead.) With that, for the series: Reviewed-by: Leif Lindholm > Contributed-under: TianoCore Contribution Agreement 1.1 > Signed-off-by: Ard Biesheuvel > --- > Platform/Socionext/DeveloperBox/DeveloperBox.dsc | 42 +++++++++++++++++--- > Silicon/Socionext/SynQuacer/Library/SynQuacerMemoryInitPeiLib/SynQuacerMemoryInitPeiLib.c | 3 ++ > 2 files changed, 40 insertions(+), 5 deletions(-) > > diff --git a/Platform/Socionext/DeveloperBox/DeveloperBox.dsc b/Platform/Socionext/DeveloperBox/DeveloperBox.dsc > index ed11aed798b7..da450a132798 100644 > --- a/Platform/Socionext/DeveloperBox/DeveloperBox.dsc > +++ b/Platform/Socionext/DeveloperBox/DeveloperBox.dsc > @@ -28,6 +28,8 @@ > FLASH_DEFINITION = Platform/Socionext/DeveloperBox/DeveloperBox.fdf > BUILD_NUMBER = 1 > > + DEFINE DEBUG_ON_UART1 = FALSE > + > [BuildOptions] > RELEASE_*_*_CC_FLAGS = -DMDEPKG_NDEBUG -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=0 > > @@ -120,9 +122,17 @@ > DebugAgentLib|MdeModulePkg/Library/DebugAgentLibNull/DebugAgentLibNull.inf > DebugAgentTimerLib|EmbeddedPkg/Library/DebugAgentTimerLibNull/DebugAgentTimerLibNull.inf > PL011UartClockLib|ArmPlatformPkg/Library/PL011UartClockLib/PL011UartClockLib.inf > - SerialPortLib|ArmPlatformPkg/Library/PL011SerialPortLib/PL011SerialPortLib.inf > PL011UartLib|ArmPlatformPkg/Library/PL011UartLib/PL011UartLib.inf > > +!if $(DEBUG_ON_UART1) == FALSE > + SerialPortLib|ArmPlatformPkg/Library/PL011SerialPortLib/PL011SerialPortLib.inf > +!else > + SerialPortLib|MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf > + PlatformHookLib|MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf > + PciLib|MdePkg/Library/BasePciLibPciExpress/BasePciLibPciExpress.inf > + PciExpressLib|MdePkg/Library/BasePciExpressLib/BasePciExpressLib.inf > +!endif > + > HttpLib|MdeModulePkg/Library/DxeHttpLib/DxeHttpLib.inf > TcpIoLib|MdeModulePkg/Library/DxeTcpIoLib/DxeTcpIoLib.inf > > @@ -253,13 +263,26 @@ > !endif > > ## PL011 - Serial Terminal > - gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterBase|0x2a400000 > - gEfiMdePkgTokenSpaceGuid.PcdUartDefaultBaudRate|115200 > - gEfiMdePkgTokenSpaceGuid.PcdUartDefaultReceiveFifoDepth|0 > gArmPlatformTokenSpaceGuid.PL011UartInteger|0 > gArmPlatformTokenSpaceGuid.PL011UartFractional|0 > gArmPlatformTokenSpaceGuid.PL011UartClkInHz|62500000 > > + ## DesignWare FUART > + gEfiMdeModulePkgTokenSpaceGuid.PcdSerialUseMmio|TRUE > + gEfiMdeModulePkgTokenSpaceGuid.PcdSerialUseHardwareFlowControl|FALSE > + gEfiMdeModulePkgTokenSpaceGuid.PcdSerialClockRate|62500000 > + gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterStride|4 > + > + ## Shared UART settings > + gEfiMdePkgTokenSpaceGuid.PcdUartDefaultBaudRate|115200 > + gEfiMdePkgTokenSpaceGuid.PcdUartDefaultReceiveFifoDepth|0 > + > +!if $(DEBUG_ON_UART1) == FALSE > + gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterBase|0x2a400000 > +!else > + gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterBase|0x51040000 > +!endif > + > # > # ARM Generic Interrupt Controller > # > @@ -505,7 +528,16 @@ > } > > MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf > - MdeModulePkg/Universal/SerialDxe/SerialDxe.inf > + MdeModulePkg/Universal/SerialDxe/SerialDxe.inf { > +!if $(DEBUG_ON_UART1) == TRUE > + > + gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterBase|0x2a400000 > + > + SerialPortLib|ArmPlatformPkg/Library/PL011SerialPortLib/PL011SerialPortLib.inf > + # suppress debug output from SerialDxe itself which would go to the PL011 > + DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf > +!endif > + } > MdeModulePkg/Universal/Console/ConPlatformDxe/ConPlatformDxe.inf > MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterDxe.inf > MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsoleDxe.inf > diff --git a/Silicon/Socionext/SynQuacer/Library/SynQuacerMemoryInitPeiLib/SynQuacerMemoryInitPeiLib.c b/Silicon/Socionext/SynQuacer/Library/SynQuacerMemoryInitPeiLib/SynQuacerMemoryInitPeiLib.c > index 1402ecafce4a..e68997e05573 100644 > --- a/Silicon/Socionext/SynQuacer/Library/SynQuacerMemoryInitPeiLib/SynQuacerMemoryInitPeiLib.c > +++ b/Silicon/Socionext/SynQuacer/Library/SynQuacerMemoryInitPeiLib/SynQuacerMemoryInitPeiLib.c > @@ -118,6 +118,9 @@ STATIC CONST ARM_MEMORY_REGION_DESCRIPTOR mVirtualMemoryTable[] = { > > // NETSEC/eMMC SMMU > ARM_DEVICE_REGION (SYNQUACER_SCB_SMMU_BASE, SYNQUACER_SCB_SMMU_SIZE), > + > + // DesignWare FUART > + ARM_DEVICE_REGION (SYNQUACER_UART1_BASE, SYNQUACER_UART1_SIZE), > }; > > STATIC > -- > 2.19.2 >