hikey, hikey960: edk2: fix build error with GCC 11.3

EDK2 fails to build when the cross-compiler is GCC 11.3. The error is
as follows:

/home/pelops2/hikey960/tee321/edk2/MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBus.c: In function ‘UsbIoBulkTransfer’:
/home/pelops2/hikey960/tee321/edk2/MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBus.c:259:12: error: ‘UsbHcBulkTransfer’ accessing 80 bytes in a region of size 8 [-Werror=stringop-overflow=]
  259 |   Status  = UsbHcBulkTransfer (
      |            ^~~~~~~~~~~~~~~~~~~~
  260 |               Dev->Bus,
      |               ~~~~~~~~~
  261 |               Dev->Address,
      |               ~~~~~~~~~~~~~
  262 |               Endpoint,
      |               ~~~~~~~~~
  263 |               Dev->Speed,
      |               ~~~~~~~~~~~
  264 |               EpDesc->Desc.MaxPacketSize,
      |               ~~~~~~~~~~~~~~~~~~~~~~~~~~~
  265 |               BufNum,
      |               ~~~~~~~
  266 |               &Data,
      |               ~~~~~~
  267 |               DataLength,
      |               ~~~~~~~~~~~
  268 |               &Toggle,
      |               ~~~~~~~~
  269 |               Timeout,
      |               ~~~~~~~~
  270 |               &Dev->Translator,
      |               ~~~~~~~~~~~~~~~~~
  271 |               UsbStatus
      |               ~~~~~~~~~
  272 |               );
      |               ~
/home/pelops2/hikey960/tee321/edk2/MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBus.c:259:12: note: referencing argument 7 of type ‘void **’
In file included from /home/pelops2/hikey960/tee321/edk2/MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBus.h:46,
                 from /home/pelops2/hikey960/tee321/edk2/MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBus.c:16:
/home/pelops2/hikey960/tee321/edk2/MdeModulePkg/Bus/Usb/UsbBusDxe/UsbUtility.h:200:1: note: in a call to function ‘UsbHcBulkTransfer’
  200 | UsbHcBulkTransfer (
      | ^~~~~~~~~~~~~~~~~
...

Let's add -Wno-stringop-overflow to avoid that error. The right place
for the fix would obviously be the upstream EDK2 repository [1] but
since it does not seem to be maintained anymore, patching the file at
build time is good enough.

Reported-by: Longlong LIAO <liaoll@hku.hk>
Link: https://github.com/96boards-hikey/edk2.git [1]
Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org>
Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
diff --git a/hikey.mk b/hikey.mk
index 7d3dc3d..4c74a82 100644
--- a/hikey.mk
+++ b/hikey.mk
@@ -134,6 +134,7 @@
 
 .PHONY: edk2
 edk2:
+	sed -i 's/\(^DEFINE GCC_ALL_CC_FLAGS.*-Wno-array-bounds\) -include/\1 -Wno-stringop-overflow -include/' $(EDK2_PATH)/BaseTools/Conf/tools_def.template
 	cd $(EDK2_PATH) && rm -rf OpenPlatformPkg && \
 		ln -s $(OPENPLATPKG_PATH)
 	set -e && cd $(EDK2_PATH) && source edksetup.sh && \