From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by mx.groups.io with SMTP id smtpd.web09.3110.1642814539708345311 for ; Fri, 21 Jan 2022 17:22:20 -0800 Authentication-Results: mx.groups.io; dkim=fail reason="unable to parse pub key" header.i=@intel.com header.s=intel header.b=oCM8x55o; spf=pass (domain: intel.com, ip: 192.55.52.151, mailfrom: isaac.w.oram@intel.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1642814539; x=1674350539; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=SF+zYqbKR2ZU0D+aQxWoJe6gP+3jdPsnId35D6jCYBM=; b=oCM8x55oRotbzZ5VktpBy3G7Tw91TQdaWqSruY8yxdYWSiVC9A3++Dbe nmLsi9LOsXz7ZeOlQuF7Lb40E8gds8qQ7447jFI/eI/04m1veHPkEO428 k93NKUsk6w7+Wm8dKQCmCCJPsxNy8weVoQYRes6W2Ostp4v/mpXusE+YD gOoB6LsAceMopraKzk257BdZdP+eVW4JmCZzoYH46yk5ew22i06SzsNZ8 MS2kWPf8p2oLHrGdf/HMAQbc5EexyhoNtwd7SOB9AKO2wk/yC5YnIhmis sGCMYkJY1Ti8vo4IaXxw6XvN906vSJoasL4yocFIsssFSBc67tydFMkI4 g==; X-IronPort-AV: E=McAfee;i="6200,9189,10234"; a="226452248" X-IronPort-AV: E=Sophos;i="5.88,307,1635231600"; d="scan'208";a="226452248" Received: from orsmga008.jf.intel.com ([10.7.209.65]) by fmsmga107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 21 Jan 2022 17:22:18 -0800 X-IronPort-AV: E=Sophos;i="5.88,307,1635231600"; d="scan'208";a="533498543" Received: from iworam-desk.amr.corp.intel.com ([10.7.150.79]) by orsmga008-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 21 Jan 2022 17:22:18 -0800 From: "Oram, Isaac W" To: devel@edk2.groups.io Cc: Nate DeSimone , Chasel Chiu , Daocheng Bu , Hongbin Zhang Subject: [edk2-devel][edk2-platforms][PATCH V1 0/2] WhitleyOpenBoardPkg board porting template Date: Fri, 21 Jan 2022 17:22:05 -0800 Message-Id: X-Mailer: git-send-email 2.27.0.windows.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit This series adds a template for board porting and the infrastruture to support. The WhitleyOpenBoardPkg/Readme.md documents the step by step instructions to create a new board tip that builds. The BoardPortTemplate contains build files and typically required Universal Board Abstraction (UBA) modules that enable detailed customization. The UBA modules are customized to have fewer deltas between board ports. For DXE, this means I removed the board names in data structures, functions, etc. Because they are all compiled into different drivers per board anyway. PEI still has decorated names as the UBA module is a library and thus multiple board name collisions are a concern. The only other changes to UBA modules was to use newer DEBUG_INFO and DEBUG_ERROR styles. I did not add the BoardPortTemplate to Platform/Intel/build.cfg. It is buildable so it could be added. Cc: Nate DeSimone Cc: Chasel Chiu Cc: Daocheng Bu Cc: Hongbin Zhang Isaac Oram (2): WhitleyOpenBoardPkg/BoardPortTemplate: Add a template for board porting. WhitleyOpenBoardPkg/PlatformInfo: Add board ID vendor range Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/Include/Dsc/UbaSingleBoardPei.dsc | 36 + Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/Include/Fdf/UbaSingleBoardDxe.fdf | 12 + Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/PlatformPkg.dsc | 40 + Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/PlatformPkg.fdf | 807 ++++++++++++++++++++ Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/Uba/TypeBoardPortTemplate/Dxe/IioCfgUpdateDxe/IioCfgUpdateDxe.c | 99 +++ Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/Uba/TypeBoardPortTemplate/Dxe/IioCfgUpdateDxe/IioCfgUpdateDxe.h | 118 +++ Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/Uba/TypeBoardPortTemplate/Dxe/IioCfgUpdateDxe/IioCfgUpdateDxe.inf | 47 ++ Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/Uba/TypeBoardPortTemplate/Dxe/SlotDataUpdateDxe/SlotDataUpdateDxe.c | 115 +++ Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/Uba/TypeBoardPortTemplate/Dxe/SlotDataUpdateDxe/SlotDataUpdateDxe.h | 57 ++ Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/Uba/TypeBoardPortTemplate/Dxe/SlotDataUpdateDxe/SlotDataUpdateDxe.inf | 47 ++ Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/Uba/TypeBoardPortTemplate/Dxe/UsbOcUpdateDxe/UsbOcUpdateDxe.c | 127 +++ Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/Uba/TypeBoardPortTemplate/Dxe/UsbOcUpdateDxe/UsbOcUpdateDxe.h | 27 + Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/Uba/TypeBoardPortTemplate/Dxe/UsbOcUpdateDxe/UsbOcUpdateDxe.inf | 44 ++ Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/Uba/TypeBoardPortTemplate/Pei/AcpiTablePcds.c | 52 ++ Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/Uba/TypeBoardPortTemplate/Pei/GpioTable.c | 287 +++++++ Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/Uba/TypeBoardPortTemplate/Pei/IioBifurInit.c | 246 ++++++ Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/Uba/TypeBoardPortTemplate/Pei/KtiEparam.c | 68 ++ Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/Uba/TypeBoardPortTemplate/Pei/PcdData.c | 273 +++++++ Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/Uba/TypeBoardPortTemplate/Pei/PchEarlyUpdate.c | 92 +++ Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/Uba/TypeBoardPortTemplate/Pei/PeiBoardInit.h | 77 ++ Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/Uba/TypeBoardPortTemplate/Pei/PeiBoardInitLib.c | 156 ++++ Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/Uba/TypeBoardPortTemplate/Pei/PeiBoardInitLib.inf | 166 ++++ Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/Uba/TypeBoardPortTemplate/Pei/SlotTable.c | 171 +++++ Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/Uba/TypeBoardPortTemplate/Pei/SoftStrapFixup.c | 119 +++ Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/Uba/TypeBoardPortTemplate/Pei/UsbOC.c | 124 +++ Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/build_board.py | 125 +++ Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/build_config.cfg | 36 + Platform/Intel/WhitleyOpenBoardPkg/Platform/Pei/PlatformInfo/PlatformInfo.c | 3 +- Platform/Intel/WhitleyOpenBoardPkg/Readme.md | 118 +++ Silicon/Intel/WhitleySiliconPkg/Include/PlatformInfoTypes.h | 8 +- 30 files changed, 3695 insertions(+), 2 deletions(-) create mode 100644 Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/Include/Dsc/UbaSingleBoardPei.dsc create mode 100644 Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/Include/Fdf/UbaSingleBoardDxe.fdf create mode 100644 Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/PlatformPkg.dsc create mode 100644 Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/PlatformPkg.fdf create mode 100644 Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/Uba/TypeBoardPortTemplate/Dxe/IioCfgUpdateDxe/IioCfgUpdateDxe.c create mode 100644 Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/Uba/TypeBoardPortTemplate/Dxe/IioCfgUpdateDxe/IioCfgUpdateDxe.h create mode 100644 Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/Uba/TypeBoardPortTemplate/Dxe/IioCfgUpdateDxe/IioCfgUpdateDxe.inf create mode 100644 Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/Uba/TypeBoardPortTemplate/Dxe/SlotDataUpdateDxe/SlotDataUpdateDxe.c create mode 100644 Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/Uba/TypeBoardPortTemplate/Dxe/SlotDataUpdateDxe/SlotDataUpdateDxe.h create mode 100644 Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/Uba/TypeBoardPortTemplate/Dxe/SlotDataUpdateDxe/SlotDataUpdateDxe.inf create mode 100644 Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/Uba/TypeBoardPortTemplate/Dxe/UsbOcUpdateDxe/UsbOcUpdateDxe.c create mode 100644 Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/Uba/TypeBoardPortTemplate/Dxe/UsbOcUpdateDxe/UsbOcUpdateDxe.h create mode 100644 Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/Uba/TypeBoardPortTemplate/Dxe/UsbOcUpdateDxe/UsbOcUpdateDxe.inf create mode 100644 Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/Uba/TypeBoardPortTemplate/Pei/AcpiTablePcds.c create mode 100644 Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/Uba/TypeBoardPortTemplate/Pei/GpioTable.c create mode 100644 Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/Uba/TypeBoardPortTemplate/Pei/IioBifurInit.c create mode 100644 Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/Uba/TypeBoardPortTemplate/Pei/KtiEparam.c create mode 100644 Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/Uba/TypeBoardPortTemplate/Pei/PcdData.c create mode 100644 Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/Uba/TypeBoardPortTemplate/Pei/PchEarlyUpdate.c create mode 100644 Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/Uba/TypeBoardPortTemplate/Pei/PeiBoardInit.h create mode 100644 Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/Uba/TypeBoardPortTemplate/Pei/PeiBoardInitLib.c create mode 100644 Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/Uba/TypeBoardPortTemplate/Pei/PeiBoardInitLib.inf create mode 100644 Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/Uba/TypeBoardPortTemplate/Pei/SlotTable.c create mode 100644 Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/Uba/TypeBoardPortTemplate/Pei/SoftStrapFixup.c create mode 100644 Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/Uba/TypeBoardPortTemplate/Pei/UsbOC.c create mode 100644 Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/build_board.py create mode 100644 Platform/Intel/WhitleyOpenBoardPkg/BoardPortTemplate/build_config.cfg create mode 100644 Platform/Intel/WhitleyOpenBoardPkg/Readme.md -- 2.27.0.windows.1