From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=2a00:1450:400c:c09::241; helo=mail-wm0-x241.google.com; envelope-from=ard.biesheuvel@linaro.org; receiver=edk2-devel@lists.01.org Received: from mail-wm0-x241.google.com (mail-wm0-x241.google.com [IPv6:2a00:1450:400c:c09::241]) (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 03BA321B00DDB for ; Fri, 10 Nov 2017 06:18:13 -0800 (PST) Received: by mail-wm0-x241.google.com with SMTP id b189so3054959wmd.4 for ; Fri, 10 Nov 2017 06:22:17 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=A2wHrCaHaQqqVGNGv8u5ZLl17wFLCoK8lKQJLnLOAjU=; b=c2gEOsZZiM/6kxcWPZRyGKjZjIzA2NqNgPope5VsGMlkqBbZiPal3nOYgVL60Fw4VT Djd7ZG/Pv7vnU4jrUW/wsEL/YRTyXqfm6qUExJNT9H7n/ML/bSNa2CQqznJ+yZ9R7qMH 7irb6PkRoYCtSdUJVRAE2SzTWwMSfnlydUXZs= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=A2wHrCaHaQqqVGNGv8u5ZLl17wFLCoK8lKQJLnLOAjU=; b=XO1PgHILmp1Kr4oWIoP0vER35O7qTjtyDVGzTw4EY79/0InNSwWMFxzcTSQqZ0mla1 vXZnkaSk7CUVahm3gthGq1A/nX+PdEMd40YXrlJ1mKUfFaEB3yTESnYa4SxVoaiH5KGc g/4NQnhsTZw14/izPuiFzgvRvayEOeM5daW0yCk1KMvdcDrTvWx3ks6A70+HOripT1Qh TVdwKSFNgTHphjkYcRE1NOnS1BIuKHY3ehbolWgeaVmGbtYKGXEGwOK3IUb2qRrYjR7y 3jpW5IJS1+RY/P8lGvgvlgZuMs7vTpwExHBLf9GVRs7H3wYjHSNd9U5vFR/YtPPlJPRs jpQA== X-Gm-Message-State: AJaThX7R3ZMH12GCsYkOs6ABXGZ8W2MhSgBaDPRqVf9RmWik5w8mqgeA FAy7uNIqh7Kv9wqh54w7ibjRHBKxTvI= X-Google-Smtp-Source: AGs4zMZrxB4IfLrUdFgll9cZ8YJocmX9GdUOiNHAAHzVPwi8uFnuN1awVn/HMoYJ6rcb3WlzOgAJVw== X-Received: by 10.28.147.84 with SMTP id v81mr367954wmd.102.1510323735388; Fri, 10 Nov 2017 06:22:15 -0800 (PST) Received: from localhost.localdomain ([160.167.170.128]) by smtp.gmail.com with ESMTPSA id e131sm1036477wmg.15.2017.11.10.06.22.12 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 10 Nov 2017 06:22:14 -0800 (PST) From: Ard Biesheuvel To: edk2-devel@lists.01.org, leif.lindholm@linaro.org, daniel.thompson@linaro.org Cc: masami.hiramatsu@linaro.org, methavanitpong.pipat@socionext.com, masahisa.kojima@linaro.org, Ard Biesheuvel Date: Fri, 10 Nov 2017 14:21:03 +0000 Message-Id: <20171110142127.12018-11-ard.biesheuvel@linaro.org> X-Mailer: git-send-email 2.11.0 In-Reply-To: <20171110142127.12018-1-ard.biesheuvel@linaro.org> References: <20171110142127.12018-1-ard.biesheuvel@linaro.org> Subject: [PATCH edk2-platforms v4 10/34] Platform/SynQuacerEvalBoard: add PCI support X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.22 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 10 Nov 2017 14:18:14 -0000 Wire up the various drivers and libraries for the SynQuacerEvalBoard platform. Also enable the usual PCI suspects: XHCI, SATA and NVME, and the various bus, partition and file system drivers that we need to make use of PCIe devices. Given how PCI support enables USB support too, and taking the lack of a RNG on this SoC into account, let's enable the ChaosKey driver as well. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Ard Biesheuvel Reviewed-by: Leif Lindholm --- Platform/Socionext/SynQuacerEvalBoard/SynQuacerEvalBoard.dsc | 52 ++++++++++++++++++++ Platform/Socionext/SynQuacerEvalBoard/SynQuacerEvalBoard.fdf | 41 +++++++++++++++ 2 files changed, 93 insertions(+) diff --git a/Platform/Socionext/SynQuacerEvalBoard/SynQuacerEvalBoard.dsc b/Platform/Socionext/SynQuacerEvalBoard/SynQuacerEvalBoard.dsc index 59c55fe13af1..126a588de587 100644 --- a/Platform/Socionext/SynQuacerEvalBoard/SynQuacerEvalBoard.dsc +++ b/Platform/Socionext/SynQuacerEvalBoard/SynQuacerEvalBoard.dsc @@ -100,6 +100,7 @@ [LibraryClasses.common] DxeServicesLib|MdePkg/Library/DxeServicesLib/DxeServicesLib.inf SortLib|MdeModulePkg/Library/UefiSortLib/UefiSortLib.inf UefiUsbLib|MdePkg/Library/UefiUsbLib/UefiUsbLib.inf + UefiScsiLib|MdePkg/Library/UefiScsiLib/UefiScsiLib.inf # BDS Libraries UefiBootManagerLib|MdeModulePkg/Library/UefiBootManagerLib/UefiBootManagerLib.inf @@ -153,6 +154,12 @@ [LibraryClasses.common.DXE_DRIVER] SecurityManagementLib|MdeModulePkg/Library/DxeSecurityManagementLib/DxeSecurityManagementLib.inf PerformanceLib|MdeModulePkg/Library/DxePerformanceLib/DxePerformanceLib.inf + # + # PCI + # + PciSegmentLib|Silicon/Socionext/SynQuacer/Library/SynQuacerPciSegmentLib/SynQuacerPciSegmentLib.inf + PciHostBridgeLib|Silicon/Socionext/SynQuacer/Library/SynQuacerPciHostBridgeLib/SynQuacerPciHostBridgeLib.inf + [LibraryClasses.common.UEFI_APPLICATION] PerformanceLib|MdeModulePkg/Library/DxePerformanceLib/DxePerformanceLib.inf HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf @@ -196,6 +203,7 @@ [PcdsFixedAtBuild.common] gSynQuacerTokenSpaceGuid.PcdDramInfoBase|0x2E00FFC0 gEmbeddedTokenSpaceGuid.PcdPrePiCpuMemorySize|40 + gEmbeddedTokenSpaceGuid.PcdPrePiCpuIoSize|24 # 12x 2-core processor clusters gArmPlatformTokenSpaceGuid.PcdCoreCount|2 @@ -438,3 +446,47 @@ [Components.common] # Platform driver # Silicon/Socionext/SynQuacer/Drivers/PlatformDxe/PlatformDxe.inf + + # + # PCI + # + Silicon/Socionext/SynQuacer/Drivers/SynQuacerPciCpuIo2Dxe/SynQuacerPciCpuIo2Dxe.inf + MdeModulePkg/Bus/Pci/PciHostBridgeDxe/PciHostBridgeDxe.inf { + + gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x8010004F + } + MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf + MdeModulePkg/Bus/Pci/NvmExpressDxe/NvmExpressDxe.inf + MdeModulePkg/Universal/EbcDxe/EbcDxe.inf + + # + # AHCI Support + # + MdeModulePkg/Bus/Pci/SataControllerDxe/SataControllerDxe.inf + MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.inf + MdeModulePkg/Bus/Ata/AtaBusDxe/AtaBusDxe.inf + MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBusDxe.inf + MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDiskDxe.inf + + # + # USB + # + MdeModulePkg/Bus/Pci/UhciDxe/UhciDxe.inf + MdeModulePkg/Bus/Pci/EhciDxe/EhciDxe.inf + MdeModulePkg/Bus/Pci/XhciDxe/XhciDxe.inf + MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBusDxe.inf + MdeModulePkg/Bus/Usb/UsbMassStorageDxe/UsbMassStorageDxe.inf + MdeModulePkg/Bus/Usb/UsbKbDxe/UsbKbDxe.inf + + # + # FAT filesystem + GPT/MBR partitioning + # + MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf + MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf + MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf + FatPkg/EnhancedFatDxe/Fat.inf + + # + # RNG + # + Silicon/Openmoko/ChaosKeyDxe/ChaosKeyDxe.inf diff --git a/Platform/Socionext/SynQuacerEvalBoard/SynQuacerEvalBoard.fdf b/Platform/Socionext/SynQuacerEvalBoard/SynQuacerEvalBoard.fdf index cc5377b1413f..b72a8ef664c3 100644 --- a/Platform/Socionext/SynQuacerEvalBoard/SynQuacerEvalBoard.fdf +++ b/Platform/Socionext/SynQuacerEvalBoard/SynQuacerEvalBoard.fdf @@ -133,6 +133,47 @@ [FV.FvMain] # INF Silicon/Socionext/SynQuacer/Drivers/PlatformDxe/PlatformDxe.inf + # + # PCI + # + INF Silicon/Socionext/SynQuacer/Drivers/SynQuacerPciCpuIo2Dxe/SynQuacerPciCpuIo2Dxe.inf + INF MdeModulePkg/Bus/Pci/PciHostBridgeDxe/PciHostBridgeDxe.inf + INF MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf + INF MdeModulePkg/Bus/Pci/NvmExpressDxe/NvmExpressDxe.inf + INF MdeModulePkg/Universal/EbcDxe/EbcDxe.inf + + # + # AHCI Support + # + INF MdeModulePkg/Bus/Pci/SataControllerDxe/SataControllerDxe.inf + INF MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.inf + INF MdeModulePkg/Bus/Ata/AtaBusDxe/AtaBusDxe.inf + INF MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBusDxe.inf + INF MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDiskDxe.inf + + # + # USB + # + INF MdeModulePkg/Bus/Pci/UhciDxe/UhciDxe.inf + INF MdeModulePkg/Bus/Pci/EhciDxe/EhciDxe.inf + INF MdeModulePkg/Bus/Pci/XhciDxe/XhciDxe.inf + INF MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBusDxe.inf + INF MdeModulePkg/Bus/Usb/UsbMassStorageDxe/UsbMassStorageDxe.inf + INF MdeModulePkg/Bus/Usb/UsbKbDxe/UsbKbDxe.inf + + # + # FAT filesystem + GPT/MBR partitioning + # + INF MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf + INF MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf + INF MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf + INF FatPkg/EnhancedFatDxe/Fat.inf + + # + # RNG + # + INF Silicon/Openmoko/ChaosKeyDxe/ChaosKeyDxe.inf + [FV.FVMAIN_COMPACT] FvAlignment = 16 BlockSize = 0x10000 -- 2.11.0