diff --git a/.grub2.checksum b/.grub2.checksum
new file mode 100644
index 0000000000000000000000000000000000000000..27467d57fad3058660dc6809dcf3f10624e92f02
--- /dev/null
+++ b/.grub2.checksum
@@ -0,0 +1 @@
+8a5bff6712f7a47836754016f79c603edf99b74e0d2d9d708d01566d9a87ee9d
diff --git a/.grub2.metadata b/.grub2.metadata
index 3b8795415609aabef154a803de7245136321e845..3f85c530aa3fbb2515ec19cfa452c54b9a65c497 100644
--- a/.grub2.metadata
+++ b/.grub2.metadata
@@ -1,4 +1,4 @@
-d08376d97163f99ce0d61fce160d6f7667c5c944 SOURCES/gnulib-9f48fb992a3d7e96610c4ce8be969cff2d61a01b.tar.gz
-c9f93f1e195ec7a5a21d36a13b469788c0b29f0f SOURCES/grub-2.06.tar.xz
-cf0b7763c528902da7e8b05cfa248f20c8825ce5 SOURCES/theme.tar.bz2
-3b39cb0830367171760ec536cab805abdbe08bc5 SOURCES/unifont-13.0.06.pcf.gz
+b79ea44af91b93d17cd3fe80bdae6ed43770678a9a5ae192ccea803ebb657ee1 SOURCES/grub-2.06.tar.xz
+f3bd4a5087865b78217fc68fe2d1abc8be90bd48e3b9cb077c1979441a6f9e8d SOURCES/gnulib-9f48fb992a3d7e96610c4ce8be969cff2d61a01b.tar.gz
+1fddd06b4854598a18ff3742c472c6a5c609929ce1ab74ec9901812aaf30be02 SOURCES/theme.tar.bz2
+aea0ea746353c6c2b5b8874e65facd087bb0346ec198993f8aaaa21eea040378 SOURCES/unifont-13.0.06.pcf.gz
diff --git a/SOURCES/0323-util-Enable-default-kernel-for-updates.patch b/SOURCES/0323-util-Enable-default-kernel-for-updates.patch
new file mode 100644
index 0000000000000000000000000000000000000000..bdfa65af7ff7b08506618e7a6fe1d741437617a2
--- /dev/null
+++ b/SOURCES/0323-util-Enable-default-kernel-for-updates.patch
@@ -0,0 +1,34 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: Nicolas Frayer <nfrayer@redhat.com>
+Date: Wed, 24 May 2023 11:22:47 +0200
+Subject: [PATCH] util: Enable default kernel for updates
+
+Several kernel variants can be installed on a system in parallel.
+In order to allow the user to choose which kernel will be set to
+default after an update, re-enable grub's usage of DEFAULTKERNEL as
+set in /etc/sysconfig/kernel
+
+Signed-off-by: Nicolas Frayer <nfrayer@redhat.com>
+---
+ util/grub-get-kernel-settings.in | 8 ++++++++
+ 1 file changed, 8 insertions(+)
+
+diff --git a/util/grub-get-kernel-settings.in b/util/grub-get-kernel-settings.in
+index 7e87dfccc0..f71bc64360 100644
+--- a/util/grub-get-kernel-settings.in
++++ b/util/grub-get-kernel-settings.in
+@@ -68,6 +68,14 @@ if test -f /etc/sysconfig/kernel ; then
+     . /etc/sysconfig/kernel
+ fi
+ 
++GRUB_DEFAULT_KERNEL_TYPE=${DEFAULTKERNEL/-core/}
++if [ "$GRUB_DEFAULT_KERNEL_TYPE" != "kernel" ]; then
++    echo GRUB_NON_STANDARD_KERNEL=true
++    echo export GRUB_NON_STANDARD_KERNEL
++    GRUB_DEFAULT_KERNEL_TYPE=${GRUB_DEFAULT_KERNEL_TYPE/kernel-/}
++fi
++echo GRUB_DEFAULT_KERNEL_TYPE=$GRUB_DEFAULT_KERNEL_TYPE
++echo export GRUB_DEFAULT_KERNEL_TYPE
+ if [ "$MAKEDEBUG" = "yes" ]; then
+     echo GRUB_LINUX_MAKE_DEBUG=true
+     echo export GRUB_LINUX_MAKE_DEBUG
diff --git a/SOURCES/0324-kern-ieee1275-init-Convert-plain-numbers-to-constant.patch b/SOURCES/0324-kern-ieee1275-init-Convert-plain-numbers-to-constant.patch
new file mode 100644
index 0000000000000000000000000000000000000000..ca82e33c2ac004a712c88965e701de6eca17251b
--- /dev/null
+++ b/SOURCES/0324-kern-ieee1275-init-Convert-plain-numbers-to-constant.patch
@@ -0,0 +1,48 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: Avnish Chouhan <avnish@linux.vnet.ibm.com>
+Date: Mon, 27 Mar 2023 12:25:39 +0530
+Subject: [PATCH] kern/ieee1275/init: Convert plain numbers to constants in
+ Vec5
+
+This patch converts the plain numbers used in Vec5 properties to constants.
+
+1. LPAR: Client program supports logical partitioning and
+   associated hcall()s.
+2. SPLPAR: Client program supports the Shared
+   Processor LPAR Option.
+3. CMO: Enables the Cooperative Memory Over-commitment Option.
+4. MAX_CPU: Defines maximum number of CPUs supported.
+
+Signed-off-by: Avnish Chouhan <avnish@linux.vnet.ibm.com>
+Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
+(cherry picked from commit 8406cfe4774eb2da3db4bf0bc2b2ff6592ecbdaf)
+---
+ grub-core/kern/ieee1275/init.c | 8 +++++++-
+ 1 file changed, 7 insertions(+), 1 deletion(-)
+
+diff --git a/grub-core/kern/ieee1275/init.c b/grub-core/kern/ieee1275/init.c
+index 72d4fed312..5d79580341 100644
+--- a/grub-core/kern/ieee1275/init.c
++++ b/grub-core/kern/ieee1275/init.c
+@@ -72,6 +72,12 @@ extern char _end[];
+ grub_addr_t grub_ieee1275_original_stack;
+ #endif
+ 
++#define LPAR     0x80
++#define SPLPAR   0x40
++#define BYTE2    (LPAR | SPLPAR)
++#define CMO      0x80
++#define MAX_CPU  256
++
+ void
+ grub_exit (int rc __attribute__((unused)))
+ {
+@@ -575,7 +581,7 @@ grub_ieee1275_ibm_cas (void)
+     .vec4 = 0x0001, /* set required minimum capacity % to the lowest value */
+     .vec5_size = 1 + sizeof (struct option_vector5) - 2,
+     .vec5 = {
+-      0, 192, 0, 128, 0, 0, 0, 0, 256
++      0, BYTE2, 0, CMO, 0, 0, 0, 0, MAX_CPU
+     }
+   };
+ 
diff --git a/SOURCES/0325-kern-ieee1275-init-Extended-support-in-Vec5.patch b/SOURCES/0325-kern-ieee1275-init-Extended-support-in-Vec5.patch
new file mode 100644
index 0000000000000000000000000000000000000000..b8b481f9e6ded8e488d5fb3ee54640574d64bace
--- /dev/null
+++ b/SOURCES/0325-kern-ieee1275-init-Extended-support-in-Vec5.patch
@@ -0,0 +1,127 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: Avnish Chouhan <avnish@linux.vnet.ibm.com>
+Date: Mon, 27 Mar 2023 12:25:40 +0530
+Subject: [PATCH] kern/ieee1275/init: Extended support in Vec5
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+This patch enables multiple options in Vec5 which are required and
+solves the boot issues seen on some machines which are looking for
+these specific options.
+
+1. LPAR: Client program supports logical partitioning and
+   associated hcall()s.
+2. SPLPAR: Client program supports the Shared
+   Processor LPAR Option.
+3. DYN_RCON_MEM: Client program supports the
+   “ibm,dynamic-reconfiguration-memory” property and it may be
+   presented in the device tree.
+4. LARGE_PAGES: Client supports pages larger than 4 KB.
+5. DONATE_DCPU_CLS: Client supports donating dedicated processor cycles.
+6. PCI_EXP: Client supports PCI Express implementations
+   utilizing Message Signaled Interrupts (MSIs).
+
+7. CMOC: Enables the Cooperative Memory Over-commitment Option.
+8. EXT_CMO: Enables the Extended Cooperative Memory Over-commit Option.
+
+9. ASSOC_REF: Enables “ibm,associativity” and
+   “ibm,associativity-reference-points” properties.
+10. AFFINITY: Enables Platform Resource Reassignment Notification.
+11. NUMA: Supports NUMA Distance Lookup Table Option.
+
+12. HOTPLUG_INTRPT: Supports Hotplug Interrupts.
+13. HPT_RESIZE: Enable Hash Page Table Resize Option.
+
+14. MAX_CPU: Defines maximum number of CPUs supported.
+
+15. PFO_HWRNG: Supports Random Number Generator.
+16. PFO_HW_COMP: Supports Compression Engine.
+17. PFO_ENCRYPT: Supports Encryption Engine.
+
+18. SUB_PROCESSORS: Supports Sub-Processors.
+
+19. DY_MEM_V2: Client program supports the “ibm,dynamic-memory-v2” property in the
+    “ibm,dynamic-reconfiguration-memory” node and it may be presented in the device tree.
+20. DRC_INFO: Client program supports the “ibm,drc-info” property definition and it may be
+    presented in the device tree.
+
+Signed-off-by: Avnish Chouhan <avnish@linux.vnet.ibm.com>
+Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
+(cherry picked from commit 98d0df0351fbff7a4acc64c7594d538889a43e2d)
+---
+ grub-core/kern/ieee1275/init.c | 47 ++++++++++++++++++++++++++++++++++++------
+ 1 file changed, 41 insertions(+), 6 deletions(-)
+
+diff --git a/grub-core/kern/ieee1275/init.c b/grub-core/kern/ieee1275/init.c
+index 5d79580341..3d4ad9d1f1 100644
+--- a/grub-core/kern/ieee1275/init.c
++++ b/grub-core/kern/ieee1275/init.c
+@@ -72,11 +72,41 @@ extern char _end[];
+ grub_addr_t grub_ieee1275_original_stack;
+ #endif
+ 
+-#define LPAR     0x80
+-#define SPLPAR   0x40
+-#define BYTE2    (LPAR | SPLPAR)
+-#define CMO      0x80
+-#define MAX_CPU  256
++/* Options vector5 properties. */
++
++#define LPAR                0x80
++#define SPLPAR              0x40
++#define DYN_RCON_MEM        0x20
++#define LARGE_PAGES         0x10
++#define DONATE_DCPU_CLS     0x02
++#define PCI_EXP             0x01
++#define BYTE2               (LPAR | SPLPAR | DYN_RCON_MEM | LARGE_PAGES | DONATE_DCPU_CLS | PCI_EXP)
++
++#define CMOC                0x80
++#define EXT_CMO             0x40
++#define CMO                 (CMOC | EXT_CMO)
++
++#define ASSOC_REF           0x80
++#define AFFINITY            0x40
++#define NUMA                0x20
++#define ASSOCIATIVITY       (ASSOC_REF | AFFINITY | NUMA)
++
++#define HOTPLUG_INTRPT      0x04
++#define HPT_RESIZE          0x01
++#define BIN_OPTS            (HOTPLUG_INTRPT | HPT_RESIZE)
++
++#define MAX_CPU             256
++
++#define PFO_HWRNG           0x80000000
++#define PFO_HW_COMP         0x40000000
++#define PFO_ENCRYPT         0x20000000
++#define PLATFORM_FACILITIES (PFO_HWRNG | PFO_HW_COMP | PFO_ENCRYPT)
++
++#define SUB_PROCESSORS      1
++
++#define DY_MEM_V2           0x80
++#define DRC_INFO            0x40
++#define BYTE22              (DY_MEM_V2 | DRC_INFO)
+ 
+ void
+ grub_exit (int rc __attribute__((unused)))
+@@ -519,6 +549,11 @@ struct option_vector5
+   grub_uint8_t micro_checkpoint;
+   grub_uint8_t reserved0;
+   grub_uint32_t max_cpus;
++  grub_uint16_t base_papr;
++  grub_uint16_t mem_reference;
++  grub_uint32_t platform_facilities;
++  grub_uint8_t sub_processors;
++  grub_uint8_t byte22;
+ } GRUB_PACKED;
+ 
+ struct pvr_entry
+@@ -581,7 +616,7 @@ grub_ieee1275_ibm_cas (void)
+     .vec4 = 0x0001, /* set required minimum capacity % to the lowest value */
+     .vec5_size = 1 + sizeof (struct option_vector5) - 2,
+     .vec5 = {
+-      0, BYTE2, 0, CMO, 0, 0, 0, 0, MAX_CPU
++      0, BYTE2, 0, CMO, ASSOCIATIVITY, BIN_OPTS, 0, 0, MAX_CPU, 0, 0, PLATFORM_FACILITIES, SUB_PROCESSORS, BYTE22
+     }
+   };
+ 
diff --git a/SOURCES/0326-efi-http-change-uint32_t-to-uintn_t.patch b/SOURCES/0326-efi-http-change-uint32_t-to-uintn_t.patch
new file mode 100644
index 0000000000000000000000000000000000000000..d5f6eaa792afb7bee11384645a8b3d8081ad2140
--- /dev/null
+++ b/SOURCES/0326-efi-http-change-uint32_t-to-uintn_t.patch
@@ -0,0 +1,30 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: Keng-Yu Lin <kengyu@hpe.com>
+Date: Wed, 26 Apr 2023 01:43:16 -0400
+Subject: [PATCH] efi/http: change uint32_t to uintn_t
+
+Modify UINT32 to UINTN in EFI_HTTP_MESSAGE to
+be UEFI 2.9 compliant.
+
+Signed-off-by: Keng-Yu Lin <kengyu@hpe.com>
+Signed-off-by: Nicolas Frayer <nfrayer@redhat.com>
+---
+ include/grub/efi/http.h | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/include/grub/efi/http.h b/include/grub/efi/http.h
+index c5e9a89f50..ad164ba191 100644
+--- a/include/grub/efi/http.h
++++ b/include/grub/efi/http.h
+@@ -171,9 +171,9 @@ typedef struct {
+     grub_efi_http_request_data_t *request;
+     grub_efi_http_response_data_t *response;
+   } data;
+-  grub_efi_uint32_t header_count;
++  grub_efi_uintn_t header_count;
+   grub_efi_http_header_t *headers;
+-  grub_efi_uint32_t body_length;
++  grub_efi_uintn_t body_length;
+   void *body;
+ } grub_efi_http_message_t;
+ 
diff --git a/SOURCES/20-grub.install b/SOURCES/20-grub.install
index 2a0ac323725056a79408466f812f75f0b539af27..fe7ad8a5f5650e317224361b6e0e9a72c41bb43e 100755
--- a/SOURCES/20-grub.install
+++ b/SOURCES/20-grub.install
@@ -126,7 +126,11 @@ case "$COMMAND" in
                 sed -i -e "s,^initrd.*,initrd ${BOOTPREFIX}${INITRD},g" "${BLS_TARGET}"
             fi
 
-            if [[ "$KERNEL_VERSION" == *\+* ]] && [ "x$GRUB_DEFAULT_TO_DEBUG" != "xtrue" ]; then
+            if ( [[ "$KERNEL_VERSION" != *${GRUB_DEFAULT_KERNEL_TYPE}* ]] && \
+                     [ "x$GRUB_NON_STANDARD_KERNEL" == "xtrue" ] ) || \
+                   ( echo "$KERNEL_VERSION" | grep -E -q "64k|auto|rt|uki" && \
+                     [ "x$GRUB_NON_STANDARD_KERNEL" != "xtrue" ] ) || \
+                   ( [[ "$KERNEL_VERSION" == *debug* ]] && [ "x$GRUB_DEFAULT_TO_DEBUG" != "xtrue" ] ); then
                 GRUB_UPDATE_DEFAULT_KERNEL=false
             fi
 
diff --git a/SOURCES/grub.patches b/SOURCES/grub.patches
index 510ab16f1197836d3e26e62bbee04a83c1d0844c..007432552bbe517597bbc3a4f252a0d58b9a5058 100644
--- a/SOURCES/grub.patches
+++ b/SOURCES/grub.patches
@@ -320,3 +320,7 @@ Patch0319: 0319-osdep-linux-hostdisk-Modify-sector-by-sysfs-as-disk-.patch
 Patch0320: 0320-mm-Adjust-new-region-size-to-take-management-overhea.patch
 Patch0321: 0321-mm-Preallocate-some-space-when-adding-new-regions.patch
 Patch0322: 0322-mm-Avoid-complex-heap-growth-math-in-hot-path.patch
+Patch0323: 0323-util-Enable-default-kernel-for-updates.patch
+Patch0324: 0324-kern-ieee1275-init-Convert-plain-numbers-to-constant.patch
+Patch0325: 0325-kern-ieee1275-init-Extended-support-in-Vec5.patch
+Patch0326: 0326-efi-http-change-uint32_t-to-uintn_t.patch
diff --git a/SPECS/grub2.spec b/SPECS/grub2.spec
index af4880d34a275339aee9213d4dc209a2dba2fcfd..5f2d4aa4744296a3290a4248852a7affa49ee9ee 100644
--- a/SPECS/grub2.spec
+++ b/SPECS/grub2.spec
@@ -16,7 +16,7 @@
 Name:                 grub2
 Epoch:                1
 Version:              2.06
-Release:              61%{?dist}.rocky.0.2
+Release:              61%{?dist}.1.rocky.0.2
 Summary:              Bootloader with support for Linux, Multiboot and more
 License:              GPLv3+
 URL:                  http://www.gnu.org/software/grub/
@@ -534,7 +534,7 @@ mv ${EFI_HOME}/grub.cfg.stb ${EFI_HOME}/grub.cfg
 %endif
 
 %changelog
-* Wed May 24 2023 Release Engineering <releng@rockylinux.org> - 2.06-61.rocky.0.2
+* Tue Aug 01 2023 Release Engineering <releng@rockylinux.org> - 2.06-61.rocky.0.2
 - Removing redhat old cert sources entries (Sherif Nagy)
 - Preserving rhel8 sbat entry based on shim-review feedback ticket no. 194
 - Adding prod cert
@@ -544,6 +544,10 @@ mv ${EFI_HOME}/grub.cfg.stb ${EFI_HOME}/grub.cfg
 - Adding Rocky testing CA, CERT and sbat files
 - Use DER for ppc64le builds from rocky-sb-certs (Louis Abel)
 
+* Fri Jun 16 2023 Nicolas Frayer <nfrayer@redhat.com> - 2.06-61.el9_2.1
+- Sync with 9.3 (actually 2.06-65)
+- Resolves: #2216022
+
 * Mon Feb 20 2023 Robbie Harwood <rharwood@redhat.com> - 2.06-61
 - ppc64le sysfs and mm update
 - Resolves: #2026579