diff --git a/QDMA/linux-kernel/COPYING b/QDMA/linux-kernel/COPYING
old mode 100644
new mode 100755
diff --git a/QDMA/linux-kernel/LICENSE b/QDMA/linux-kernel/LICENSE
old mode 100644
new mode 100755
diff --git a/QDMA/linux-kernel/Makefile b/QDMA/linux-kernel/Makefile
old mode 100644
new mode 100755
index a85bc0c329217e70fd6859a54e5eb0b147038bef..e8fd7deba93c22fdab5f6fdc8315d1ebc129a027
--- a/QDMA/linux-kernel/Makefile
+++ b/QDMA/linux-kernel/Makefile
@@ -1,8 +1,8 @@
 #/*
 # * This file is part of the Xilinx DMA IP Core driver for Linux
 # *
-# * Copyright (c) 2017-2022,  Xilinx, Inc.
-# * All rights reserved.
+# * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+# * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
 # *
 # * This source code is free software; you can redistribute it and/or modify it
 # * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/RELEASE b/QDMA/linux-kernel/RELEASE
old mode 100644
new mode 100755
index 7f3b4c316ccdc7c8035cd238d0fc88408e4dd75c..67a56ec1351357e46b2b4badd235e5b3f1abb3b7
--- a/QDMA/linux-kernel/RELEASE
+++ b/QDMA/linux-kernel/RELEASE
@@ -1,9 +1,11 @@
-RELEASE: 2022.1.4 Patch
+RELEASE: 2022.1.5 Patch
 =======================
 
-This release is validated for
-	- QDMA4.0 2020.1 Patch based example design
-	- XCVP1202 for CPM5 2022.1 example design
+This release is validated
+	- On VCU1525 for QDMA5.0 2022.1 example design
+	- On VCU1525 for QDMA4.0 2020.2 example design
+	- On VCU1525 for QDMA3.1 2019.2 example design
+	- On XCVP1202 for CPM5 2022.1 example design
 
 SUPPORTED FEATURES:
 ===================
@@ -121,11 +123,14 @@ CPM5
 - Added support for more than 2K queues for PF/VF
 - Added support for Fedora36
 
+2022.1.5 Patch Updates
+----------------------
+- Added PF/VF 4K queues support for CPM5 design. This feature is applicable only when corresponding RTL support is added.
+
 KNOWN ISSUES:
 =============
 - CPM5 Only
-	- Sufficient host memory is required to accommodate 4K queues. Tested only upto 2099 queues for PFs with our test environment though driver supports 4K queues.
-	- VF 4K queue support is not fully verified due to pdi issues
+	- Adding >3000 queues using dma-ctl application throwing an error message even though the queues are added successfully. For now error message can be ignored and this will be fixed in subsequent releases.
 
 - All Designs
 	- In interrupt mode, Sometimes completions are not received when C2H PIDX updates are held for 64 descriptors
@@ -151,8 +156,8 @@ DRIVER LIMITATIONS:
 /*
  * This file is part of the Xilinx DMA IP Core driver for Linux
  *
- * Copyright (c) 2017-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/apps/Makefile b/QDMA/linux-kernel/apps/Makefile
old mode 100644
new mode 100755
index 8df2c526d3bee9d9bfcc76ef0ca85de6b61e7791..b4febd2643bfe9c49283fb8e11f91dfac8950bd7
--- a/QDMA/linux-kernel/apps/Makefile
+++ b/QDMA/linux-kernel/apps/Makefile
@@ -3,8 +3,8 @@
 # * This file is part of the QDMA userspace application
 # * to enable the user to execute the QDMA functionality
 # *
-# * Copyright (c) 2018-2022,  Xilinx, Inc.
-# * All rights reserved.
+# * Copyright (c) 2018-2022, Xilinx, Inc. All rights reserved.
+# * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
 # *
 # * This source code is licensed under BSD-style license (found in the
 # * LICENSE file in the root directory of this source tree)
diff --git a/QDMA/linux-kernel/apps/dma-ctl/Makefile b/QDMA/linux-kernel/apps/dma-ctl/Makefile
old mode 100644
new mode 100755
index 0d7fca67cdc0c078ba31a5fc63b34e9ef1d8b70e..04a5bed23c395fcd23327cf1f4f36ef81e5b9ee3
--- a/QDMA/linux-kernel/apps/dma-ctl/Makefile
+++ b/QDMA/linux-kernel/apps/dma-ctl/Makefile
@@ -3,8 +3,8 @@
 # * This file is part of the QDMA userspace application
 # * to enable the user to execute the QDMA functionality
 # *
-# * Copyright (c) 2018-2022,  Xilinx, Inc.
-# * All rights reserved.
+# * Copyright (c) 2018-2022, Xilinx, Inc. All rights reserved.
+# * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
 # *
 # * This source code is licensed under BSD-style license (found in the
 # * LICENSE file in the root directory of this source tree)
diff --git a/QDMA/linux-kernel/apps/dma-ctl/cmd_parse.c b/QDMA/linux-kernel/apps/dma-ctl/cmd_parse.c
old mode 100644
new mode 100755
index 9b1af52056609d736eb9ab138cba6fd099dcb686..b2a9202e10e73465b5924c7e0fdc84a291e67cf0
--- a/QDMA/linux-kernel/apps/dma-ctl/cmd_parse.c
+++ b/QDMA/linux-kernel/apps/dma-ctl/cmd_parse.c
@@ -2,8 +2,8 @@
  * This file is part of the QDMA userspace application
  * to enable the user to execute the QDMA functionality
  *
- * Copyright (c) 2018-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2018-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is licensed under BSD-style license (found in the
  * LICENSE file in the root directory of this source tree)
@@ -331,7 +331,7 @@ static int validate_regcmd(enum xnl_op_t qcmd, struct xcmd_reg	*regcmd)
 		case XNL_CMD_REG_RD:
 		case XNL_CMD_REG_INFO_READ:
 		case XNL_CMD_REG_WRT:
-			if ((regcmd->bar != 0) && (regcmd->bar != 2)) {
+			if ((regcmd->bar != 0) && (regcmd->bar != 2) && (regcmd->bar != 4)) {
 				printf("dmactl: bar %u number out of range\n",
 				       regcmd->bar);
 				invalid = -EINVAL;
diff --git a/QDMA/linux-kernel/apps/dma-ctl/cmd_parse.h b/QDMA/linux-kernel/apps/dma-ctl/cmd_parse.h
old mode 100644
new mode 100755
index c1c224a1b1e95b52454153792e8e3e2a255bad24..82518d8aaf9e0d74c5c8fee209a06dd0dc6c0ad4
--- a/QDMA/linux-kernel/apps/dma-ctl/cmd_parse.h
+++ b/QDMA/linux-kernel/apps/dma-ctl/cmd_parse.h
@@ -1,20 +1,20 @@
-/*
- * This file is part of the QDMA userspace application
- * to enable the user to execute the QDMA functionality
- *
- * Copyright (c) 2018-2022,  Xilinx, Inc.
- * All rights reserved.
- *
- * This source code is licensed under BSD-style license (found in the
- * LICENSE file in the root directory of this source tree)
- */
-
-#ifndef USER_CLI_CMD_PARSE_H_
-#define USER_CLI_CMD_PARSE_H_
-
-#include "qdma_nl.h"
-#include "dmautils.h"
-
-int parse_cmd(int argc, char *argv[], struct xcmd_info *xcmd);
-
-#endif /* USER_CLI_CMD_PARSE_H_ */
+/*
+ * This file is part of the QDMA userspace application
+ * to enable the user to execute the QDMA functionality
+ *
+ * Copyright (c) 2018-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
+ *
+ * This source code is licensed under BSD-style license (found in the
+ * LICENSE file in the root directory of this source tree)
+ */
+
+#ifndef USER_CLI_CMD_PARSE_H_
+#define USER_CLI_CMD_PARSE_H_
+
+#include "qdma_nl.h"
+#include "dmautils.h"
+
+int parse_cmd(int argc, char *argv[], struct xcmd_info *xcmd);
+
+#endif /* USER_CLI_CMD_PARSE_H_ */
diff --git a/QDMA/linux-kernel/apps/dma-ctl/main.c b/QDMA/linux-kernel/apps/dma-ctl/main.c
old mode 100644
new mode 100755
index 3b56f7f0719cdecc0a0407f2bd71eac7d4f66893..5c3e4c77057e3ea8bac3e2c6501a8bec3167cbc5
--- a/QDMA/linux-kernel/apps/dma-ctl/main.c
+++ b/QDMA/linux-kernel/apps/dma-ctl/main.c
@@ -2,8 +2,8 @@
  * This file is part of the QDMA userspace application
  * to enable the user to execute the QDMA functionality
  *
- * Copyright (c) 2018-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2018-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is licensed under BSD-style license (found in the
  * LICENSE file in the root directory of this source tree)
diff --git a/QDMA/linux-kernel/apps/dma-ctl/version.h b/QDMA/linux-kernel/apps/dma-ctl/version.h
old mode 100644
new mode 100755
index 8ca346eb6fa7babf43ea229e3ae69cb6156cf9c6..03188168cf602d98da889899e6f96896e5034375
--- a/QDMA/linux-kernel/apps/dma-ctl/version.h
+++ b/QDMA/linux-kernel/apps/dma-ctl/version.h
@@ -2,8 +2,8 @@
  * This file is part of the QDMA userspace application
  * to enable the user to execute the QDMA functionality
  *
- * Copyright (c) 2018-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2018-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is licensed under BSD-style license (found in the
  * LICENSE file in the root directory of this source tree)
@@ -13,7 +13,7 @@
 #define __DMA_CTL_VERSION_H
 
 #define PROGNAME "dma-ctl"
-#define VERSION "2022.1.0"
+#define VERSION "2022.2.0"
 #define COPYRIGHT "Copyright (c) 2018-2022 Xilinx Inc."
 
 #endif
diff --git a/QDMA/linux-kernel/apps/dma-from-device/Makefile b/QDMA/linux-kernel/apps/dma-from-device/Makefile
old mode 100644
new mode 100755
index 87cd35eaefdf0da2f52a694e68f90572d5cda575..95e66d2949dd1d43942c217c13cfd00568569cd7
--- a/QDMA/linux-kernel/apps/dma-from-device/Makefile
+++ b/QDMA/linux-kernel/apps/dma-from-device/Makefile
@@ -1,27 +1,27 @@
-CC ?= gcc
-
-CFLAGS += -g
-#CFLAGS += -O2 -fno-inline -Wall -Wstrict-prototypes
-CFLAGS += -I. -I../include -I../dma-utils
-CFLAGS += $(EXTRA_FLAGS)
-
-DMA-FROM-DEVICE = dma-from-device
-DMA-UTILS_OBJS := $(patsubst %.c,%.o,$(wildcard ../dma-utils/*.c))
-DMA-FROM-DEVICE_OBJS := dma_from_device.o
-DMA-FROM-DEVICE_OBJS += $(DMA-UTILS_OBJS)
-
-ifneq ($(CROSS_COMPILE_FLAG),)
-	CC=$(CROSS_COMPILE_FLAG)gcc
-endif
-
-all: clean dma-from-device
-
-dma-from-device: $(DMA-FROM-DEVICE_OBJS)
-	$(CC) -lrt -o $@ $< -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -D_LARGE_FILE_SOURCE
-
-%.o: %.c
-	$(CC) $(CFLAGS) -c -std=c99 -o $@ $< -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -D_LARGE_FILE_SOURCE -D_AIO_AIX_SOURCE
-
-clean:
-	@rm -f *.o */*.o ../dma-utils/*.o
-	rm -rf *.o *.bin dma-from-device
+CC ?= gcc
+
+CFLAGS += -g
+#CFLAGS += -O2 -fno-inline -Wall -Wstrict-prototypes
+CFLAGS += -I. -I../include -I../dma-utils
+CFLAGS += $(EXTRA_FLAGS)
+
+DMA-FROM-DEVICE = dma-from-device
+DMA-UTILS_OBJS := $(patsubst %.c,%.o,$(wildcard ../dma-utils/*.c))
+DMA-FROM-DEVICE_OBJS := dma_from_device.o
+DMA-FROM-DEVICE_OBJS += $(DMA-UTILS_OBJS)
+
+ifneq ($(CROSS_COMPILE_FLAG),)
+	CC=$(CROSS_COMPILE_FLAG)gcc
+endif
+
+all: clean dma-from-device
+
+dma-from-device: $(DMA-FROM-DEVICE_OBJS)
+	$(CC) -lrt -o $@ $< -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -D_LARGE_FILE_SOURCE
+
+%.o: %.c
+	$(CC) $(CFLAGS) -c -std=c99 -o $@ $< -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -D_LARGE_FILE_SOURCE -D_AIO_AIX_SOURCE
+
+clean:
+	@rm -f *.o */*.o ../dma-utils/*.o
+	rm -rf *.o *.bin dma-from-device
diff --git a/QDMA/linux-kernel/apps/dma-from-device/dma_from_device.c b/QDMA/linux-kernel/apps/dma-from-device/dma_from_device.c
old mode 100644
new mode 100755
index 18cda603d1ff6d5dc8502a96a408b40e2ea68bde..30623f4c27231b187e418c2c6fb5d980bf2af49f
--- a/QDMA/linux-kernel/apps/dma-from-device/dma_from_device.c
+++ b/QDMA/linux-kernel/apps/dma-from-device/dma_from_device.c
@@ -1,236 +1,236 @@
-/*
- * This file is part of the QDMA userspace application
- * to enable the user to execute the QDMA functionality
- *
- * Copyright (c) 2018-2022,  Xilinx, Inc.
- * All rights reserved.
- *
- * This source code is licensed under BSD-style license (found in the
- * LICENSE file in the root directory of this source tree)
- */
-
-#define _DEFAULT_SOURCE
-#define _XOPEN_SOURCE 500
-#include <assert.h>
-#include <fcntl.h>
-#include <getopt.h>
-#include <stdint.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <unistd.h>
-#include <time.h>
-
-#include <sys/mman.h>
-#include <sys/stat.h>
-#include <sys/time.h>
-#include <sys/types.h>
-#include <unistd.h>
-
-#include "dma_xfer_utils.c"
-
-#define DEVICE_NAME_DEFAULT "/dev/qdma01000-MM-0"
-#define SIZE_DEFAULT (32)
-#define COUNT_DEFAULT (1)
-
-
-
-
-static struct option const long_opts[] = {
-	{"device", required_argument, NULL, 'd'},
-	{"address", required_argument, NULL, 'a'},
-	{"size", required_argument, NULL, 's'},
-	{"offset", required_argument, NULL, 'o'},
-	{"count", required_argument, NULL, 'c'},
-	{"file", required_argument, NULL, 'f'},
-	{"help", no_argument, NULL, 'h'},
-	{"verbose", no_argument, NULL, 'v'},
-	{0, 0, 0, 0}
-};
-
-static int test_dma(char *devname, uint64_t addr, uint64_t size,
-		    uint64_t offset, uint64_t count, char *ofname);
-static int no_write = 0;
-
-static void usage(const char *name)
-{
-	int i = 0;
-	fprintf(stdout, "%s\n\n", name);
-	fprintf(stdout, "usage: %s [OPTIONS]\n\n", name);
-	fprintf(stdout, "Read via SGDMA, optionally save output to a file\n\n");
-
-	fprintf(stdout, "  -%c (--%s) device (defaults to %s)\n",
-		long_opts[i].val, long_opts[i].name, DEVICE_NAME_DEFAULT);
-	i++;
-	fprintf(stdout, "  -%c (--%s) the start address on the AXI bus\n",
-	       long_opts[i].val, long_opts[i].name);
-	i++;
-	fprintf(stdout,
-		"  -%c (--%s) size of a single transfer in bytes, default %d.\n",
-		long_opts[i].val, long_opts[i].name, SIZE_DEFAULT);
-	i++;
-	fprintf(stdout, "  -%c (--%s) page offset of transfer\n",
-		long_opts[i].val, long_opts[i].name);
-	i++;
-	fprintf(stdout, "  -%c (--%s) number of transfers, default is %d.\n",
-	       long_opts[i].val, long_opts[i].name, COUNT_DEFAULT);
-	i++;
-	fprintf(stdout,
-		"  -%c (--%s) file to write the data of the transfers\n",
-		long_opts[i].val, long_opts[i].name);
-	i++;
-	fprintf(stdout, "  -%c (--%s) print usage help and exit\n",
-		long_opts[i].val, long_opts[i].name);
-	i++;
-	fprintf(stdout, "  -%c (--%s) verbose output\n",
-		long_opts[i].val, long_opts[i].name);
-}
-
-int main(int argc, char *argv[])
-{
-	int cmd_opt;
-	char *device = DEVICE_NAME_DEFAULT;
-	uint64_t address = 0;
-	uint64_t size = SIZE_DEFAULT;
-	uint64_t offset = 0;
-	uint64_t count = COUNT_DEFAULT;
-	char *ofname = NULL;
-
-	while ((cmd_opt = getopt_long(argc, argv, "vhxc:f:d:a:s:o:", long_opts,
-			    NULL)) != -1) {
-		switch (cmd_opt) {
-		case 0:
-			/* long option */
-			break;
-		case 'd':
-			/* device node name */
-			device = strdup(optarg);
-			break;
-		case 'a':
-			/* RAM address on the AXI bus in bytes */
-			address = getopt_integer(optarg);
-			break;
-			/* RAM size in bytes */
-		case 's':
-			size = getopt_integer(optarg);
-			break;
-		case 'o':
-			offset = getopt_integer(optarg) & 4095;
-			break;
-			/* count */
-		case 'c':
-			count = getopt_integer(optarg);
-			break;
-			/* count */
-		case 'f':
-			ofname = strdup(optarg);
-			break;
-			/* print usage help and exit */
-    		case 'x':
-			no_write++;
-			break;
-		case 'v':
-			verbose = 1;
-			break;
-		case 'h':
-		default:
-			usage(argv[0]);
-			exit(0);
-			break;
-		}
-	}
-	if (verbose)
-	fprintf(stdout,
-		"dev %s, addr 0x%lx, size 0x%lx, offset 0x%lx, count %lu\n",
-		device, address, size, offset, count);
-
-	return test_dma(device, address, size, offset, count, ofname);
-}
-
-static int test_dma(char *devname, uint64_t addr, uint64_t size,
-		    uint64_t offset, uint64_t count, char *ofname)
-{
-	ssize_t rc;
-	uint64_t i;
-	char *buffer = NULL;
-	char *allocated = NULL;
-	struct timespec ts_start, ts_end;
-	int out_fd = -1;
-	int fpga_fd = open(devname, O_RDWR | O_NONBLOCK);
-	double total_time = 0;
-	double result;
-	double avg_time = 0;
-
-	if (fpga_fd < 0) {
-                fprintf(stderr, "unable to open device %s, %d.\n",
-                        devname, fpga_fd);
-		perror("open device");
-                return -EINVAL;
-        }
-
-	/* create file to write data to */
-	if (ofname) {
-		out_fd = open(ofname, O_RDWR | O_CREAT | O_TRUNC | O_SYNC,
-				0666);
-		if (out_fd < 0) {
-                        fprintf(stderr, "unable to open output file %s, %d.\n",
-                                ofname, out_fd);
-			perror("open output file");
-                        rc = -EINVAL;
-                        goto out;
-                }
-	}
-
-	posix_memalign((void **)&allocated, 4096 /*alignment */ , size + 4096);
-	if (!allocated) {
-		fprintf(stderr, "OOM %lu.\n", size + 4096);
-		rc = -ENOMEM;
-		goto out;
-	}
-
-	buffer = allocated + offset;
-	if (verbose)
-	fprintf(stdout, "host buffer 0x%lx, %p.\n", size + 4096, buffer);
-
-	for (i = 0; i < count; i++) {
-		clock_gettime(CLOCK_MONOTONIC, &ts_start);
-		/* lseek & read data from AXI MM into buffer using SGDMA */
-		rc = read_to_buffer(devname, fpga_fd, buffer, size, addr);
-		if (rc < 0)
-			goto out;
-		clock_gettime(CLOCK_MONOTONIC, &ts_end);
-
-		/* subtract the start time from the end time */
-		timespec_sub(&ts_end, &ts_start);
-		total_time += (ts_end.tv_sec + ((double)ts_end.tv_nsec/NSEC_DIV));
-		/* a bit less accurate but side-effects are accounted for */
-		if (verbose)
-		fprintf(stdout,
-			"#%lu: CLOCK_MONOTONIC %ld.%09ld sec. read %lu bytes\n",
-			i, ts_end.tv_sec, ts_end.tv_nsec, size);
-
-		/* file argument given? */
-		if ((out_fd >= 0) & (no_write == 0)) {
-			rc = write_from_buffer(ofname, out_fd, buffer,
-					 size, i*size);
-			if (rc < 0)
-				goto out;
-		}
-	}
-	avg_time = (double)total_time/(double)count;
-	result = ((double)size)/avg_time;
-	if (verbose)
-	printf("** Avg time device %s, total time %f nsec, avg_time = %f, size = %lu, BW = %f bytes/sec\n",
-		devname, total_time, avg_time, size, result);
-	dump_throughput_result(size, result);
-
-	rc = 0;
-
-out:
-	close(fpga_fd);
-	if (out_fd >= 0)
-		close(out_fd);
-	free(allocated);
-
-	return rc;
-}
+/*
+ * This file is part of the QDMA userspace application
+ * to enable the user to execute the QDMA functionality
+ *
+ * Copyright (c) 2018-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
+ *
+ * This source code is licensed under BSD-style license (found in the
+ * LICENSE file in the root directory of this source tree)
+ */
+
+#define _DEFAULT_SOURCE
+#define _XOPEN_SOURCE 500
+#include <assert.h>
+#include <fcntl.h>
+#include <getopt.h>
+#include <stdint.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <unistd.h>
+#include <time.h>
+
+#include <sys/mman.h>
+#include <sys/stat.h>
+#include <sys/time.h>
+#include <sys/types.h>
+#include <unistd.h>
+
+#include "dma_xfer_utils.c"
+
+#define DEVICE_NAME_DEFAULT "/dev/qdma01000-MM-0"
+#define SIZE_DEFAULT (32)
+#define COUNT_DEFAULT (1)
+
+
+
+
+static struct option const long_opts[] = {
+	{"device", required_argument, NULL, 'd'},
+	{"address", required_argument, NULL, 'a'},
+	{"size", required_argument, NULL, 's'},
+	{"offset", required_argument, NULL, 'o'},
+	{"count", required_argument, NULL, 'c'},
+	{"file", required_argument, NULL, 'f'},
+	{"help", no_argument, NULL, 'h'},
+	{"verbose", no_argument, NULL, 'v'},
+	{0, 0, 0, 0}
+};
+
+static int test_dma(char *devname, uint64_t addr, uint64_t size,
+		    uint64_t offset, uint64_t count, char *ofname);
+static int no_write = 0;
+
+static void usage(const char *name)
+{
+	int i = 0;
+	fprintf(stdout, "%s\n\n", name);
+	fprintf(stdout, "usage: %s [OPTIONS]\n\n", name);
+	fprintf(stdout, "Read via SGDMA, optionally save output to a file\n\n");
+
+	fprintf(stdout, "  -%c (--%s) device (defaults to %s)\n",
+		long_opts[i].val, long_opts[i].name, DEVICE_NAME_DEFAULT);
+	i++;
+	fprintf(stdout, "  -%c (--%s) the start address on the AXI bus\n",
+	       long_opts[i].val, long_opts[i].name);
+	i++;
+	fprintf(stdout,
+		"  -%c (--%s) size of a single transfer in bytes, default %d.\n",
+		long_opts[i].val, long_opts[i].name, SIZE_DEFAULT);
+	i++;
+	fprintf(stdout, "  -%c (--%s) page offset of transfer\n",
+		long_opts[i].val, long_opts[i].name);
+	i++;
+	fprintf(stdout, "  -%c (--%s) number of transfers, default is %d.\n",
+	       long_opts[i].val, long_opts[i].name, COUNT_DEFAULT);
+	i++;
+	fprintf(stdout,
+		"  -%c (--%s) file to write the data of the transfers\n",
+		long_opts[i].val, long_opts[i].name);
+	i++;
+	fprintf(stdout, "  -%c (--%s) print usage help and exit\n",
+		long_opts[i].val, long_opts[i].name);
+	i++;
+	fprintf(stdout, "  -%c (--%s) verbose output\n",
+		long_opts[i].val, long_opts[i].name);
+}
+
+int main(int argc, char *argv[])
+{
+	int cmd_opt;
+	char *device = DEVICE_NAME_DEFAULT;
+	uint64_t address = 0;
+	uint64_t size = SIZE_DEFAULT;
+	uint64_t offset = 0;
+	uint64_t count = COUNT_DEFAULT;
+	char *ofname = NULL;
+
+	while ((cmd_opt = getopt_long(argc, argv, "vhxc:f:d:a:s:o:", long_opts,
+			    NULL)) != -1) {
+		switch (cmd_opt) {
+		case 0:
+			/* long option */
+			break;
+		case 'd':
+			/* device node name */
+			device = strdup(optarg);
+			break;
+		case 'a':
+			/* RAM address on the AXI bus in bytes */
+			address = getopt_integer(optarg);
+			break;
+			/* RAM size in bytes */
+		case 's':
+			size = getopt_integer(optarg);
+			break;
+		case 'o':
+			offset = getopt_integer(optarg) & 4095;
+			break;
+			/* count */
+		case 'c':
+			count = getopt_integer(optarg);
+			break;
+			/* count */
+		case 'f':
+			ofname = strdup(optarg);
+			break;
+			/* print usage help and exit */
+    		case 'x':
+			no_write++;
+			break;
+		case 'v':
+			verbose = 1;
+			break;
+		case 'h':
+		default:
+			usage(argv[0]);
+			exit(0);
+			break;
+		}
+	}
+	if (verbose)
+	fprintf(stdout,
+		"dev %s, addr 0x%lx, size 0x%lx, offset 0x%lx, count %lu\n",
+		device, address, size, offset, count);
+
+	return test_dma(device, address, size, offset, count, ofname);
+}
+
+static int test_dma(char *devname, uint64_t addr, uint64_t size,
+		    uint64_t offset, uint64_t count, char *ofname)
+{
+	ssize_t rc;
+	uint64_t i;
+	char *buffer = NULL;
+	char *allocated = NULL;
+	struct timespec ts_start, ts_end;
+	int out_fd = -1;
+	int fpga_fd = open(devname, O_RDWR | O_NONBLOCK);
+	double total_time = 0;
+	double result;
+	double avg_time = 0;
+
+	if (fpga_fd < 0) {
+                fprintf(stderr, "unable to open device %s, %d.\n",
+                        devname, fpga_fd);
+		perror("open device");
+                return -EINVAL;
+        }
+
+	/* create file to write data to */
+	if (ofname) {
+		out_fd = open(ofname, O_RDWR | O_CREAT | O_TRUNC | O_SYNC,
+				0666);
+		if (out_fd < 0) {
+                        fprintf(stderr, "unable to open output file %s, %d.\n",
+                                ofname, out_fd);
+			perror("open output file");
+                        rc = -EINVAL;
+                        goto out;
+                }
+	}
+
+	posix_memalign((void **)&allocated, 4096 /*alignment */ , size + 4096);
+	if (!allocated) {
+		fprintf(stderr, "OOM %lu.\n", size + 4096);
+		rc = -ENOMEM;
+		goto out;
+	}
+
+	buffer = allocated + offset;
+	if (verbose)
+	fprintf(stdout, "host buffer 0x%lx, %p.\n", size + 4096, buffer);
+
+	for (i = 0; i < count; i++) {
+		clock_gettime(CLOCK_MONOTONIC, &ts_start);
+		/* lseek & read data from AXI MM into buffer using SGDMA */
+		rc = read_to_buffer(devname, fpga_fd, buffer, size, addr);
+		if (rc < 0)
+			goto out;
+		clock_gettime(CLOCK_MONOTONIC, &ts_end);
+
+		/* subtract the start time from the end time */
+		timespec_sub(&ts_end, &ts_start);
+		total_time += (ts_end.tv_sec + ((double)ts_end.tv_nsec/NSEC_DIV));
+		/* a bit less accurate but side-effects are accounted for */
+		if (verbose)
+		fprintf(stdout,
+			"#%lu: CLOCK_MONOTONIC %ld.%09ld sec. read %lu bytes\n",
+			i, ts_end.tv_sec, ts_end.tv_nsec, size);
+
+		/* file argument given? */
+		if ((out_fd >= 0) & (no_write == 0)) {
+			rc = write_from_buffer(ofname, out_fd, buffer,
+					 size, i*size);
+			if (rc < 0)
+				goto out;
+		}
+	}
+	avg_time = (double)total_time/(double)count;
+	result = ((double)size)/avg_time;
+	if (verbose)
+	printf("** Avg time device %s, total time %f nsec, avg_time = %f, size = %lu, BW = %f bytes/sec\n",
+		devname, total_time, avg_time, size, result);
+	dump_throughput_result(size, result);
+
+	rc = 0;
+
+out:
+	close(fpga_fd);
+	if (out_fd >= 0)
+		close(out_fd);
+	free(allocated);
+
+	return rc;
+}
diff --git a/QDMA/linux-kernel/apps/dma-from-device/version.h b/QDMA/linux-kernel/apps/dma-from-device/version.h
old mode 100644
new mode 100755
index 8211daa7ad677a8caa5a4b97a9e0b281812fffa4..f98c1dbe783c96cfb309960e976c986563dcc3a2
--- a/QDMA/linux-kernel/apps/dma-from-device/version.h
+++ b/QDMA/linux-kernel/apps/dma-from-device/version.h
@@ -2,8 +2,8 @@
  * This file is part of the QDMA userspace application
  * to enable the user to execute the QDMA functionality
  *
- * Copyright (c) 2018-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2018-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is licensed under BSD-style license (found in the
  * LICENSE file in the root directory of this source tree)
@@ -13,7 +13,7 @@
 #define __DMA_FROM_DEVICE_VERSION_H
 
 #define PROGNAME "dma-from-device"
-#define VERSION "2022.1.0"
+#define VERSION "2022.2.0"
 #define COPYRIGHT "Copyright (c) 2018-2022 Xilinx Inc."
 
 #endif
diff --git a/QDMA/linux-kernel/apps/dma-latency/Makefile b/QDMA/linux-kernel/apps/dma-latency/Makefile
old mode 100644
new mode 100755
index 8ff6e8edfecf1a17cbb684f25823c46a0f47ee1a..8e49270f67e2c0dc74f67cc3abc3d84c3ad15a26
--- a/QDMA/linux-kernel/apps/dma-latency/Makefile
+++ b/QDMA/linux-kernel/apps/dma-latency/Makefile
@@ -1,39 +1,39 @@
-#
-#/*
-# * This file is part of the QDMA userspace application
-# * to enable the user to execute the QDMA functionality
-# *
-# * Copyright (c) 2018-2022,  Xilinx, Inc.
-# * All rights reserved.
-# *
-# * This source code is licensed under BSD-style license (found in the
-# * LICENSE file in the root directory of this source tree)
-# */
-
-CC ?= gcc
-
-CFLAGS += -g
-#CFLAGS += -O2 -fno-inline -Wall -Wstrict-prototypes
-CFLAGS += -I. -I../include -I../dma-utils
-CFLAGS += $(EXTRA_FLAGS)
-
-DMA-LATENCY = dma-latency
-DMA-UTILS_OBJS := $(patsubst %.c,%.o,$(wildcard ../dma-utils/*.c))
-DMA-LAT_OBJS := dmalat.o
-DMA-LAT_OBJS += $(DMA-UTILS_OBJS)
-
-ifneq ($(CROSS_COMPILE_FLAG),)
-	CC=$(CROSS_COMPILE_FLAG)gcc
-endif
-
-all: clean dma-latency
-
-dma-latency: $(DMA-LAT_OBJS)
-	$(CC) -pthread -lrt -o $@ $^ -laio -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -D_LARGE_FILE_SOURCE
-
-%.o: %.c
-	$(CC) $(CFLAGS) -c -std=c99 -o $@ $< -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -D_LARGE_FILE_SOURCE -D_AIO_AIX_SOURCE
-
-clean:
-	@rm -f *.o */*.o ../dma-utils/*.o
-	rm -rf *.o *.bin dma-latency
+#
+#/*
+# * This file is part of the QDMA userspace application
+# * to enable the user to execute the QDMA functionality
+# *
+# * Copyright (c) 2018-2022, Xilinx, Inc. All rights reserved.
+# * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
+# *
+# * This source code is licensed under BSD-style license (found in the
+# * LICENSE file in the root directory of this source tree)
+# */
+
+CC ?= gcc
+
+CFLAGS += -g
+#CFLAGS += -O2 -fno-inline -Wall -Wstrict-prototypes
+CFLAGS += -I. -I../include -I../dma-utils
+CFLAGS += $(EXTRA_FLAGS)
+
+DMA-LATENCY = dma-latency
+DMA-UTILS_OBJS := $(patsubst %.c,%.o,$(wildcard ../dma-utils/*.c))
+DMA-LAT_OBJS := dmalat.o
+DMA-LAT_OBJS += $(DMA-UTILS_OBJS)
+
+ifneq ($(CROSS_COMPILE_FLAG),)
+	CC=$(CROSS_COMPILE_FLAG)gcc
+endif
+
+all: clean dma-latency
+
+dma-latency: $(DMA-LAT_OBJS)
+	$(CC) -pthread -lrt -o $@ $^ -laio -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -D_LARGE_FILE_SOURCE
+
+%.o: %.c
+	$(CC) $(CFLAGS) -c -std=c99 -o $@ $< -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -D_LARGE_FILE_SOURCE -D_AIO_AIX_SOURCE
+
+clean:
+	@rm -f *.o */*.o ../dma-utils/*.o
+	rm -rf *.o *.bin dma-latency
diff --git a/QDMA/linux-kernel/apps/dma-latency/Readme.txt b/QDMA/linux-kernel/apps/dma-latency/Readme.txt
old mode 100644
new mode 100755
index 6e75878e2aa8419d029486c6bdccaaa5dc351401..952f1dba0cc97efe9f46d9707df402c3567f5bf2
--- a/QDMA/linux-kernel/apps/dma-latency/Readme.txt
+++ b/QDMA/linux-kernel/apps/dma-latency/Readme.txt
@@ -1,8 +1,8 @@
 /*
  * This file is part of the Xilinx DMA IP Core driver for Linux
  *
- * Copyright (c) 2018-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2018-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is licensed under both the BSD-style license (found in the
  * LICENSE file in the root directory of this source tree) and the GPLv2 (found
diff --git a/QDMA/linux-kernel/apps/dma-latency/dmalat.c b/QDMA/linux-kernel/apps/dma-latency/dmalat.c
old mode 100644
new mode 100755
index 308a50b57be6abc542c617269578cc209ed7b9d7..24a53aaf7a1fff609a3f94808658803eed8d2130
--- a/QDMA/linux-kernel/apps/dma-latency/dmalat.c
+++ b/QDMA/linux-kernel/apps/dma-latency/dmalat.c
@@ -2,8 +2,8 @@
  * This file is part of the QDMA userspace application
  * to enable the user to execute the QDMA functionality
  *
- * Copyright (c) 2018-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2018-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is licensed under BSD-style license (found in the
  * LICENSE file in the root directory of this source tree)
@@ -871,7 +871,7 @@ static void parse_config_file(const char *cfg_fname)
 		printf("Could not open %s\n", rng_sz_path);
 		exit(1);
 	}
-	ret = read(rng_sz_fd, &rng_sz[1], 99);
+	ret = read(rng_sz_fd, &rng_sz[1], 100);
 	if (ret < 0) {
 		printf("Error: Could not read the file\n");
 		exit(1);
diff --git a/QDMA/linux-kernel/apps/dma-latency/sample_dma_latency_config.txt b/QDMA/linux-kernel/apps/dma-latency/sample_dma_latency_config.txt
old mode 100644
new mode 100755
index 679642884477ab24715d06b33b1a80fd0c7c6209..4ef735edaa27b9b098317b435ed63bf96d59ac54
--- a/QDMA/linux-kernel/apps/dma-latency/sample_dma_latency_config.txt
+++ b/QDMA/linux-kernel/apps/dma-latency/sample_dma_latency_config.txt
@@ -3,8 +3,8 @@
 # * This file is part of the QDMA userspace application
 # * to enable the user to execute the QDMA functionality
 # *
-# * Copyright (c) 2018-2022,  Xilinx, Inc.
-# * All rights reserved.
+# * Copyright (c) 2018-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
 # *
 # * This source code is licensed under BSD-style license (found in the
 # * LICENSE file in the root directory of this source tree)
diff --git a/QDMA/linux-kernel/apps/dma-latency/version.h b/QDMA/linux-kernel/apps/dma-latency/version.h
old mode 100644
new mode 100755
index 6b6b7693f1e8692da041d7f2ef10d7ffd37ae9d8..9a3e4aff4fb29b61ab9dc75258a8ea07893367bc
--- a/QDMA/linux-kernel/apps/dma-latency/version.h
+++ b/QDMA/linux-kernel/apps/dma-latency/version.h
@@ -2,8 +2,8 @@
  * This file is part of the QDMA userspace application
  * to enable the user to execute the QDMA functionality
  *
- * Copyright (c) 2018-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2018-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is licensed under BSD-style license (found in the
  * LICENSE file in the root directory of this source tree)
@@ -13,7 +13,7 @@
 #define __DMA_LATENCY_VERSION_H
 
 #define PROGNAME "dma-latency"
-#define VERSION "2022.1.0"
+#define VERSION "2022.2.0"
 #define COPYRIGHT "Copyright (c) 2018-2022 Xilinx Inc."
 
 #endif
diff --git a/QDMA/linux-kernel/apps/dma-perf/Makefile b/QDMA/linux-kernel/apps/dma-perf/Makefile
old mode 100644
new mode 100755
index 54bdb75195577ad4ab7cb47bba5550d4bf581fea..bacabd60bfa5bd5efb5f6f19a3691b96174fe881
--- a/QDMA/linux-kernel/apps/dma-perf/Makefile
+++ b/QDMA/linux-kernel/apps/dma-perf/Makefile
@@ -1,39 +1,39 @@
-#
-#/*
-# * This file is part of the QDMA userspace application
-# * to enable the user to execute the QDMA functionality
-# *
-# * Copyright (c) 2018-2022,  Xilinx, Inc.
-# * All rights reserved.
-# *
-# * This source code is licensed under BSD-style license (found in the
-# * LICENSE file in the root directory of this source tree)
-# */
-
-CC ?= gcc
-
-CFLAGS += -g
-#CFLAGS += -O2 -fno-inline -Wall -Wstrict-prototypes
-CFLAGS += -I. -I../include -I../dma-utils
-CFLAGS += $(EXTRA_FLAGS)
-
-DMA-PERF = dma-perf
-DMA-UTILS_OBJS := $(patsubst %.c,%.o,$(wildcard ../dma-utils/*.c))
-DMA-PERF_OBJS := dmaperf.o
-DMA-PERF_OBJS += $(DMA-UTILS_OBJS)
-
-ifneq ($(CROSS_COMPILE_FLAG),)
-	CC=$(CROSS_COMPILE_FLAG)gcc
-endif
-
-all: clean dma-perf
-
-dma-perf: $(DMA-PERF_OBJS)
-	$(CC) -pthread -lrt -o $@ $^ -laio -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -D_LARGE_FILE_SOURCE
-
-%.o: %.c
-	$(CC) $(CFLAGS) -c -std=c99 -o $@ $< -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -D_LARGE_FILE_SOURCE -D_AIO_AIX_SOURCE
-
-clean:
-	@rm -f *.o */*.o ../dma-utils/*.o
-	rm -rf *.o *.bin dma-perf
+#
+#/*
+# * This file is part of the QDMA userspace application
+# * to enable the user to execute the QDMA functionality
+# *
+# * Copyright (c) 2018-2022, Xilinx, Inc. All rights reserved.
+# * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
+# *
+# * This source code is licensed under BSD-style license (found in the
+# * LICENSE file in the root directory of this source tree)
+# */
+
+CC ?= gcc
+
+CFLAGS += -g
+#CFLAGS += -O2 -fno-inline -Wall -Wstrict-prototypes
+CFLAGS += -I. -I../include -I../dma-utils
+CFLAGS += $(EXTRA_FLAGS)
+
+DMA-PERF = dma-perf
+DMA-UTILS_OBJS := $(patsubst %.c,%.o,$(wildcard ../dma-utils/*.c))
+DMA-PERF_OBJS := dmaperf.o
+DMA-PERF_OBJS += $(DMA-UTILS_OBJS)
+
+ifneq ($(CROSS_COMPILE_FLAG),)
+	CC=$(CROSS_COMPILE_FLAG)gcc
+endif
+
+all: clean dma-perf
+
+dma-perf: $(DMA-PERF_OBJS)
+	$(CC) -pthread -lrt -o $@ $^ -laio -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -D_LARGE_FILE_SOURCE
+
+%.o: %.c
+	$(CC) $(CFLAGS) -c -std=c99 -o $@ $< -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -D_LARGE_FILE_SOURCE -D_AIO_AIX_SOURCE
+
+clean:
+	@rm -f *.o */*.o ../dma-utils/*.o
+	rm -rf *.o *.bin dma-perf
diff --git a/QDMA/linux-kernel/apps/dma-perf/dmaperf.c b/QDMA/linux-kernel/apps/dma-perf/dmaperf.c
old mode 100644
new mode 100755
index 03e3f0929f67af947c2d2a7ed7ad1a64fa301a75..3ff22bf4622919cd7ce55c13c39d1f1a524b4b31
--- a/QDMA/linux-kernel/apps/dma-perf/dmaperf.c
+++ b/QDMA/linux-kernel/apps/dma-perf/dmaperf.c
@@ -2,8 +2,8 @@
  * This file is part of the QDMA userspace application
  * to enable the user to execute the QDMA functionality
  *
- * Copyright (c) 2018-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2018-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is licensed under BSD-style license (found in the
  * LICENSE file in the root directory of this source tree)
@@ -1051,7 +1051,7 @@ static void parse_config_file(const char *cfg_fname)
 		printf("Could not open %s\n", rng_sz_path);
 		exit(1);
 	}
-	ret = read(rng_sz_fd, &rng_sz[1], 99);
+	ret = read(rng_sz_fd, &rng_sz[1], 100);
 	if (ret < 0) {
 		printf("Error: Could not read the file\n");
 		exit(1);
diff --git a/QDMA/linux-kernel/apps/dma-perf/dmaperf_config/mm-bi.zip b/QDMA/linux-kernel/apps/dma-perf/dmaperf_config/mm-bi.zip
deleted file mode 100644
index 548e1c8804b13ea7d67fb91e0fb3694e856f291e..0000000000000000000000000000000000000000
Binary files a/QDMA/linux-kernel/apps/dma-perf/dmaperf_config/mm-bi.zip and /dev/null differ
diff --git a/QDMA/linux-kernel/apps/dma-perf/dmaperf_config/mm-c2h.zip b/QDMA/linux-kernel/apps/dma-perf/dmaperf_config/mm-c2h.zip
deleted file mode 100644
index 64f01c3f65065b11324fcbd04798e243c226efba..0000000000000000000000000000000000000000
Binary files a/QDMA/linux-kernel/apps/dma-perf/dmaperf_config/mm-c2h.zip and /dev/null differ
diff --git a/QDMA/linux-kernel/apps/dma-perf/dmaperf_config/mm-h2c.zip b/QDMA/linux-kernel/apps/dma-perf/dmaperf_config/mm-h2c.zip
deleted file mode 100644
index 2ae62697b21ecaa3af4f58b59de729d20471f8d1..0000000000000000000000000000000000000000
Binary files a/QDMA/linux-kernel/apps/dma-perf/dmaperf_config/mm-h2c.zip and /dev/null differ
diff --git a/QDMA/linux-kernel/apps/dma-perf/dmaperf_config/st-bi.zip b/QDMA/linux-kernel/apps/dma-perf/dmaperf_config/st-bi.zip
deleted file mode 100644
index d7463397e04e20c4751af0b759ccf73336ee52e6..0000000000000000000000000000000000000000
Binary files a/QDMA/linux-kernel/apps/dma-perf/dmaperf_config/st-bi.zip and /dev/null differ
diff --git a/QDMA/linux-kernel/apps/dma-perf/dmaperf_config/st-c2h-pfetch1.zip b/QDMA/linux-kernel/apps/dma-perf/dmaperf_config/st-c2h-pfetch1.zip
deleted file mode 100644
index 47a9e2bf22af5d74892799394bf2a083759ce543..0000000000000000000000000000000000000000
Binary files a/QDMA/linux-kernel/apps/dma-perf/dmaperf_config/st-c2h-pfetch1.zip and /dev/null differ
diff --git a/QDMA/linux-kernel/apps/dma-perf/dmaperf_config/st-h2c.zip b/QDMA/linux-kernel/apps/dma-perf/dmaperf_config/st-h2c.zip
deleted file mode 100644
index bd5d571360ae445644cae508235359bb653dc278..0000000000000000000000000000000000000000
Binary files a/QDMA/linux-kernel/apps/dma-perf/dmaperf_config/st-h2c.zip and /dev/null differ
diff --git a/QDMA/linux-kernel/apps/dma-perf/version.h b/QDMA/linux-kernel/apps/dma-perf/version.h
old mode 100644
new mode 100755
index cd12b6c4d40df667cb6823ceb8039a63f9778f9b..392bc478c44b661e6e7f175ee276e3d87d8d61f9
--- a/QDMA/linux-kernel/apps/dma-perf/version.h
+++ b/QDMA/linux-kernel/apps/dma-perf/version.h
@@ -2,8 +2,8 @@
  * This file is part of the QDMA userspace application
  * to enable the user to execute the QDMA functionality
  *
- * Copyright (c) 2018-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2018-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is licensed under BSD-style license (found in the
  * LICENSE file in the root directory of this source tree)
@@ -13,7 +13,7 @@
 #define __DMA_PERF_VERSION_H
 
 #define PROGNAME "dma-perf"
-#define VERSION "2022.1.0"
+#define VERSION "2022.2.0"
 #define COPYRIGHT "Copyright (c) 2018-2022 Xilinx Inc."
 
 #endif
diff --git a/QDMA/linux-kernel/apps/dma-to-device/Makefile b/QDMA/linux-kernel/apps/dma-to-device/Makefile
old mode 100644
new mode 100755
index 85ceb650883f0b605194dd62fb0f51b18c74f60c..fab351e8c520651f28b286c03333f26cb05edc97
--- a/QDMA/linux-kernel/apps/dma-to-device/Makefile
+++ b/QDMA/linux-kernel/apps/dma-to-device/Makefile
@@ -1,39 +1,39 @@
-#
-#/*
-# * This file is part of the QDMA userspace application
-# * to enable the user to execute the QDMA functionality
-# *
-# * Copyright (c) 2018-2022,  Xilinx, Inc.
-# * All rights reserved.
-# *
-# * This source code is licensed under BSD-style license (found in the
-# * LICENSE file in the root directory of this source tree)
-# */
-
-CC ?= gcc
-
-CFLAGS += -g
-#CFLAGS += -O2 -fno-inline -Wall -Wstrict-prototypes
-CFLAGS += -I. -I../include -I../dma-utils
-CFLAGS += $(EXTRA_FLAGS)
-
-DMA-TO-DEVICE = dma-to-device
-DMA-UTILS_OBJS := $(patsubst %.c,%.o,$(wildcard ../dma-utils/*.c))
-DMA-TO-DEVICE_OBJS := dma_to_device.o
-DMA-TO-DEVICE_OBJS += $(DMA-UTILS_OBJS)
-
-ifneq ($(CROSS_COMPILE_FLAG),)
-	CC=$(CROSS_COMPILE_FLAG)gcc
-endif
-
-all: clean dma-to-device
-
-dma-to-device: $(DMA-TO-DEVICE_OBJS)
-	$(CC) -lrt -o $@ $< -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -D_LARGE_FILE_SOURCE
-
-%.o: %.c
-	$(CC) $(CFLAGS) -c -std=c99 -o $@ $< -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -D_LARGE_FILE_SOURCE -D_AIO_AIX_SOURCE
-
-clean:
-	@rm -f *.o */*.o ../dma-utils/*.o
-	rm -rf *.o *.bin dma-to-device
+#
+#/*
+# * This file is part of the QDMA userspace application
+# * to enable the user to execute the QDMA functionality
+# *
+# * Copyright (c) 2018-2022, Xilinx, Inc. All rights reserved.
+# * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
+# *
+# * This source code is licensed under BSD-style license (found in the
+# * LICENSE file in the root directory of this source tree)
+# */
+
+CC ?= gcc
+
+CFLAGS += -g
+#CFLAGS += -O2 -fno-inline -Wall -Wstrict-prototypes
+CFLAGS += -I. -I../include -I../dma-utils
+CFLAGS += $(EXTRA_FLAGS)
+
+DMA-TO-DEVICE = dma-to-device
+DMA-UTILS_OBJS := $(patsubst %.c,%.o,$(wildcard ../dma-utils/*.c))
+DMA-TO-DEVICE_OBJS := dma_to_device.o
+DMA-TO-DEVICE_OBJS += $(DMA-UTILS_OBJS)
+
+ifneq ($(CROSS_COMPILE_FLAG),)
+	CC=$(CROSS_COMPILE_FLAG)gcc
+endif
+
+all: clean dma-to-device
+
+dma-to-device: $(DMA-TO-DEVICE_OBJS)
+	$(CC) -lrt -o $@ $< -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -D_LARGE_FILE_SOURCE
+
+%.o: %.c
+	$(CC) $(CFLAGS) -c -std=c99 -o $@ $< -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -D_LARGE_FILE_SOURCE -D_AIO_AIX_SOURCE
+
+clean:
+	@rm -f *.o */*.o ../dma-utils/*.o
+	rm -rf *.o *.bin dma-to-device
diff --git a/QDMA/linux-kernel/apps/dma-to-device/dma_to_device.c b/QDMA/linux-kernel/apps/dma-to-device/dma_to_device.c
old mode 100644
new mode 100755
index a632472dabb1296a01e65ba7289abd95ef1c246f..9f121432452ed04dde32dfd13d1aa3b90d1cd8ad
--- a/QDMA/linux-kernel/apps/dma-to-device/dma_to_device.c
+++ b/QDMA/linux-kernel/apps/dma-to-device/dma_to_device.c
@@ -1,265 +1,265 @@
-/*
- * This file is part of the QDMA userspace application
- * to enable the user to execute the QDMA functionality
- *
- * Copyright (c) 2018-2022,  Xilinx, Inc.
- * All rights reserved.
- *
- * This source code is licensed under BSD-style license (found in the
- * LICENSE file in the root directory of this source tree)
- */
-
-#define _DEFAULT_SOURCE
-#define _XOPEN_SOURCE 500
-#include <assert.h>
-#include <fcntl.h>
-#include <getopt.h>
-#include <stdint.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <unistd.h>
-#include <errno.h>
-#include <time.h>
-
-#include <sys/mman.h>
-#include <sys/stat.h>
-#include <sys/time.h>
-#include <sys/types.h>
-#include <unistd.h>
-
-#include "dma_xfer_utils.c"
-
-#define DEVICE_NAME_DEFAULT "/dev/qdma01000-MM-0"
-#define SIZE_DEFAULT (32)
-#define COUNT_DEFAULT (1)
-
-static struct option const long_opts[] = {
-	{"device", required_argument, NULL, 'd'},
-	{"address", required_argument, NULL, 'a'},
-	{"size", required_argument, NULL, 's'},
-	{"offset", required_argument, NULL, 'o'},
-	{"count", required_argument, NULL, 'c'},
-	{"data infile", required_argument, NULL, 'f'},
-	{"data outfile", required_argument, NULL, 'w'},
-	{"help", no_argument, NULL, 'h'},
-	{"verbose", no_argument, NULL, 'v'},
-	{0, 0, 0, 0}
-};
-
-static int test_dma(char *devname, uint64_t addr, uint64_t size,
-		    uint64_t offset, uint64_t count, char *infname, char *);
-
-static void usage(const char *name)
-{
-	int i = 0;
-
-	fprintf(stdout, "%s\n\n", name);
-	fprintf(stdout, "usage: %s [OPTIONS]\n\n", name);
-	fprintf(stdout,
-		"Write via SGDMA, optionally read input from a file.\n\n");
-
-	fprintf(stdout, "  -%c (--%s) device (defaults to %s)\n",
-		long_opts[i].val, long_opts[i].name, DEVICE_NAME_DEFAULT);
-	i++;
-	fprintf(stdout, "  -%c (--%s) the start address on the AXI bus\n",
-		long_opts[i].val, long_opts[i].name);
-	i++;
-	fprintf(stdout,
-		"  -%c (--%s) size of a single transfer in bytes, default %d,\n",
-		long_opts[i].val, long_opts[i].name, SIZE_DEFAULT);
-	i++;
-	fprintf(stdout, "  -%c (--%s) page offset of transfer\n",
-		long_opts[i].val, long_opts[i].name);
-	i++;
-	fprintf(stdout, "  -%c (--%s) number of transfers, default %d\n",
-		long_opts[i].val, long_opts[i].name, COUNT_DEFAULT);
-	i++;
-	fprintf(stdout, "  -%c (--%s) filename to read the data from.\n",
-		long_opts[i].val, long_opts[i].name);
-	i++;
-	fprintf(stdout,
-		"  -%c (--%s) filename to write the data of the transfers\n",
-		long_opts[i].val, long_opts[i].name);
-	i++;
-	fprintf(stdout, "  -%c (--%s) print usage help and exit\n",
-		long_opts[i].val, long_opts[i].name);
-	i++;
-	fprintf(stdout, "  -%c (--%s) verbose output\n",
-		long_opts[i].val, long_opts[i].name);
-}
-
-int main(int argc, char *argv[])
-{
-	int cmd_opt;
-	char *device = DEVICE_NAME_DEFAULT;
-	uint64_t address = 0;
-	uint64_t size = SIZE_DEFAULT;
-	uint64_t offset = 0;
-	uint64_t count = COUNT_DEFAULT;
-	char *infname = NULL;
-	char *ofname = NULL;
-
-	while ((cmd_opt =
-		getopt_long(argc, argv, "vhc:f:d:a:s:o:w:", long_opts,
-			    NULL)) != -1) {
-		switch (cmd_opt) {
-		case 0:
-			/* long option */
-			break;
-		case 'd':
-			/* device node name */
-			//fprintf(stdout, "'%s'\n", optarg);
-			device = strdup(optarg);
-			break;
-		case 'a':
-			/* RAM address on the AXI bus in bytes */
-			address = getopt_integer(optarg);
-			break;
-		case 's':
-			/* size in bytes */
-			size = getopt_integer(optarg);
-			break;
-		case 'o':
-			offset = getopt_integer(optarg) & 4095;
-			break;
-			/* count */
-		case 'c':
-			count = getopt_integer(optarg);
-			break;
-			/* count */
-		case 'f':
-			infname = strdup(optarg);
-			break;
-		case 'w':
-			ofname = strdup(optarg);
-			break;
-			/* print usage help and exit */
-		case 'v':
-			verbose = 1;
-			break;
-		case 'h':
-		default:
-			usage(argv[0]);
-			exit(0);
-			break;
-		}
-	}
-
-	if (verbose)
-		fprintf(stdout,
-		"dev %s, address 0x%lx, size 0x%lx, offset 0x%lx, count %lu\n",
-		device, address, size, offset, count);
-
-	return test_dma(device, address, size, offset, count, infname, ofname);
-}
-
-static int test_dma(char *devname, uint64_t addr, uint64_t size,
-		    uint64_t offset, uint64_t count, char *infname,
-		    char *ofname)
-{
-	uint64_t i;
-	ssize_t rc;
-	char *buffer = NULL;
-	char *allocated = NULL;
-	struct timespec ts_start, ts_end;
-	int infile_fd = -1;
-	int outfile_fd = -1;
-	int fpga_fd = open(devname, O_RDWR);
-	double total_time = 0;
-	double result;
-	double avg_time = 0;
-
-
-	if (fpga_fd < 0) {
-		fprintf(stderr, "unable to open device %s, %d.\n",
-			devname, fpga_fd);
-		perror("open device");
-		return -EINVAL;
-	}
-
-	if (infname) {
-		infile_fd = open(infname, O_RDONLY);
-		if (infile_fd < 0) {
-			fprintf(stderr, "unable to open input file %s, %d.\n",
-				infname, infile_fd);
-			perror("open input file");
-			rc = -EINVAL;
-			goto out;
-		}
-	}
-
-	if (ofname) {
-		outfile_fd =
-		    open(ofname, O_RDWR | O_CREAT | O_TRUNC | O_SYNC,
-			 0666);
-		if (outfile_fd < 0) {
-			fprintf(stderr, "unable to open output file %s, %d.\n",
-				ofname, outfile_fd);
-			perror("open output file");
-			rc = -EINVAL;
-			goto out;
-		}
-	}
-
-	posix_memalign((void **)&allocated, 4096 /*alignment */ , size + 4096);
-	if (!allocated) {
-		fprintf(stderr, "OOM %lu.\n", size + 4096);
-		rc = -ENOMEM;
-		goto out;
-	}
-	buffer = allocated + offset;
-	if (verbose)
-		fprintf(stdout, "host buffer 0x%lx = %p\n",
-			size + 4096, buffer);
-
-	if (infile_fd >= 0) {
-		rc = read_to_buffer(infname, infile_fd, buffer, size, 0);
-		if (rc < 0)
-			goto out;
-	}
-
-	for (i = 0; i < count; i++) {
-		/* write buffer to AXI MM address using SGDMA */
-		clock_gettime(CLOCK_MONOTONIC, &ts_start);
-
-		rc = write_from_buffer(devname, fpga_fd, buffer, size, addr);
-		if (rc < 0)
-			goto out;
-
-		rc = clock_gettime(CLOCK_MONOTONIC, &ts_end);
-		/* subtract the start time from the end time */
-		timespec_sub(&ts_end, &ts_start);
-		total_time += (ts_end.tv_sec + ((double)ts_end.tv_nsec/NSEC_DIV));
-		/* a bit less accurate but side-effects are accounted for */
-		if (verbose)
-		fprintf(stdout,
-			"#%lu: CLOCK_MONOTONIC %ld.%09ld sec. write %lu bytes\n",
-			i, ts_end.tv_sec, ts_end.tv_nsec, size);
-
-		if (outfile_fd >= 0) {
-			rc = write_from_buffer(ofname, outfile_fd, buffer,
-						 size, i * size);
-			if (rc < 0)
-				goto out;
-		}
-	}
-	avg_time = (double)total_time/(double)count;
-	result = ((double)size)/avg_time;
-	if (verbose)
-	printf("** Avg time device %s, total time %f nsec, avg_time = %f, size = %lu, BW = %f bytes/sec\n",
-		devname, total_time, avg_time, size, result);
-	dump_throughput_result(size, result);
-
-	rc = 0;
-
-out:
-	close(fpga_fd);
-	if (infile_fd >= 0)
-		close(infile_fd);
-	if (outfile_fd >= 0)
-		close(outfile_fd);
-	free(allocated);
-
-	return rc;
-}
+/*
+ * This file is part of the QDMA userspace application
+ * to enable the user to execute the QDMA functionality
+ *
+ * Copyright (c) 2018-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
+ *
+ * This source code is licensed under BSD-style license (found in the
+ * LICENSE file in the root directory of this source tree)
+ */
+
+#define _DEFAULT_SOURCE
+#define _XOPEN_SOURCE 500
+#include <assert.h>
+#include <fcntl.h>
+#include <getopt.h>
+#include <stdint.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <unistd.h>
+#include <errno.h>
+#include <time.h>
+
+#include <sys/mman.h>
+#include <sys/stat.h>
+#include <sys/time.h>
+#include <sys/types.h>
+#include <unistd.h>
+
+#include "dma_xfer_utils.c"
+
+#define DEVICE_NAME_DEFAULT "/dev/qdma01000-MM-0"
+#define SIZE_DEFAULT (32)
+#define COUNT_DEFAULT (1)
+
+static struct option const long_opts[] = {
+	{"device", required_argument, NULL, 'd'},
+	{"address", required_argument, NULL, 'a'},
+	{"size", required_argument, NULL, 's'},
+	{"offset", required_argument, NULL, 'o'},
+	{"count", required_argument, NULL, 'c'},
+	{"data infile", required_argument, NULL, 'f'},
+	{"data outfile", required_argument, NULL, 'w'},
+	{"help", no_argument, NULL, 'h'},
+	{"verbose", no_argument, NULL, 'v'},
+	{0, 0, 0, 0}
+};
+
+static int test_dma(char *devname, uint64_t addr, uint64_t size,
+		    uint64_t offset, uint64_t count, char *infname, char *);
+
+static void usage(const char *name)
+{
+	int i = 0;
+
+	fprintf(stdout, "%s\n\n", name);
+	fprintf(stdout, "usage: %s [OPTIONS]\n\n", name);
+	fprintf(stdout,
+		"Write via SGDMA, optionally read input from a file.\n\n");
+
+	fprintf(stdout, "  -%c (--%s) device (defaults to %s)\n",
+		long_opts[i].val, long_opts[i].name, DEVICE_NAME_DEFAULT);
+	i++;
+	fprintf(stdout, "  -%c (--%s) the start address on the AXI bus\n",
+		long_opts[i].val, long_opts[i].name);
+	i++;
+	fprintf(stdout,
+		"  -%c (--%s) size of a single transfer in bytes, default %d,\n",
+		long_opts[i].val, long_opts[i].name, SIZE_DEFAULT);
+	i++;
+	fprintf(stdout, "  -%c (--%s) page offset of transfer\n",
+		long_opts[i].val, long_opts[i].name);
+	i++;
+	fprintf(stdout, "  -%c (--%s) number of transfers, default %d\n",
+		long_opts[i].val, long_opts[i].name, COUNT_DEFAULT);
+	i++;
+	fprintf(stdout, "  -%c (--%s) filename to read the data from.\n",
+		long_opts[i].val, long_opts[i].name);
+	i++;
+	fprintf(stdout,
+		"  -%c (--%s) filename to write the data of the transfers\n",
+		long_opts[i].val, long_opts[i].name);
+	i++;
+	fprintf(stdout, "  -%c (--%s) print usage help and exit\n",
+		long_opts[i].val, long_opts[i].name);
+	i++;
+	fprintf(stdout, "  -%c (--%s) verbose output\n",
+		long_opts[i].val, long_opts[i].name);
+}
+
+int main(int argc, char *argv[])
+{
+	int cmd_opt;
+	char *device = DEVICE_NAME_DEFAULT;
+	uint64_t address = 0;
+	uint64_t size = SIZE_DEFAULT;
+	uint64_t offset = 0;
+	uint64_t count = COUNT_DEFAULT;
+	char *infname = NULL;
+	char *ofname = NULL;
+
+	while ((cmd_opt =
+		getopt_long(argc, argv, "vhc:f:d:a:s:o:w:", long_opts,
+			    NULL)) != -1) {
+		switch (cmd_opt) {
+		case 0:
+			/* long option */
+			break;
+		case 'd':
+			/* device node name */
+			//fprintf(stdout, "'%s'\n", optarg);
+			device = strdup(optarg);
+			break;
+		case 'a':
+			/* RAM address on the AXI bus in bytes */
+			address = getopt_integer(optarg);
+			break;
+		case 's':
+			/* size in bytes */
+			size = getopt_integer(optarg);
+			break;
+		case 'o':
+			offset = getopt_integer(optarg) & 4095;
+			break;
+			/* count */
+		case 'c':
+			count = getopt_integer(optarg);
+			break;
+			/* count */
+		case 'f':
+			infname = strdup(optarg);
+			break;
+		case 'w':
+			ofname = strdup(optarg);
+			break;
+			/* print usage help and exit */
+		case 'v':
+			verbose = 1;
+			break;
+		case 'h':
+		default:
+			usage(argv[0]);
+			exit(0);
+			break;
+		}
+	}
+
+	if (verbose)
+		fprintf(stdout,
+		"dev %s, address 0x%lx, size 0x%lx, offset 0x%lx, count %lu\n",
+		device, address, size, offset, count);
+
+	return test_dma(device, address, size, offset, count, infname, ofname);
+}
+
+static int test_dma(char *devname, uint64_t addr, uint64_t size,
+		    uint64_t offset, uint64_t count, char *infname,
+		    char *ofname)
+{
+	uint64_t i;
+	ssize_t rc;
+	char *buffer = NULL;
+	char *allocated = NULL;
+	struct timespec ts_start, ts_end;
+	int infile_fd = -1;
+	int outfile_fd = -1;
+	int fpga_fd = open(devname, O_RDWR);
+	double total_time = 0;
+	double result;
+	double avg_time = 0;
+
+
+	if (fpga_fd < 0) {
+		fprintf(stderr, "unable to open device %s, %d.\n",
+			devname, fpga_fd);
+		perror("open device");
+		return -EINVAL;
+	}
+
+	if (infname) {
+		infile_fd = open(infname, O_RDONLY);
+		if (infile_fd < 0) {
+			fprintf(stderr, "unable to open input file %s, %d.\n",
+				infname, infile_fd);
+			perror("open input file");
+			rc = -EINVAL;
+			goto out;
+		}
+	}
+
+	if (ofname) {
+		outfile_fd =
+		    open(ofname, O_RDWR | O_CREAT | O_TRUNC | O_SYNC,
+			 0666);
+		if (outfile_fd < 0) {
+			fprintf(stderr, "unable to open output file %s, %d.\n",
+				ofname, outfile_fd);
+			perror("open output file");
+			rc = -EINVAL;
+			goto out;
+		}
+	}
+
+	posix_memalign((void **)&allocated, 4096 /*alignment */ , size + 4096);
+	if (!allocated) {
+		fprintf(stderr, "OOM %lu.\n", size + 4096);
+		rc = -ENOMEM;
+		goto out;
+	}
+	buffer = allocated + offset;
+	if (verbose)
+		fprintf(stdout, "host buffer 0x%lx = %p\n",
+			size + 4096, buffer);
+
+	if (infile_fd >= 0) {
+		rc = read_to_buffer(infname, infile_fd, buffer, size, 0);
+		if (rc < 0)
+			goto out;
+	}
+
+	for (i = 0; i < count; i++) {
+		/* write buffer to AXI MM address using SGDMA */
+		clock_gettime(CLOCK_MONOTONIC, &ts_start);
+
+		rc = write_from_buffer(devname, fpga_fd, buffer, size, addr);
+		if (rc < 0)
+			goto out;
+
+		rc = clock_gettime(CLOCK_MONOTONIC, &ts_end);
+		/* subtract the start time from the end time */
+		timespec_sub(&ts_end, &ts_start);
+		total_time += (ts_end.tv_sec + ((double)ts_end.tv_nsec/NSEC_DIV));
+		/* a bit less accurate but side-effects are accounted for */
+		if (verbose)
+		fprintf(stdout,
+			"#%lu: CLOCK_MONOTONIC %ld.%09ld sec. write %lu bytes\n",
+			i, ts_end.tv_sec, ts_end.tv_nsec, size);
+
+		if (outfile_fd >= 0) {
+			rc = write_from_buffer(ofname, outfile_fd, buffer,
+						 size, i * size);
+			if (rc < 0)
+				goto out;
+		}
+	}
+	avg_time = (double)total_time/(double)count;
+	result = ((double)size)/avg_time;
+	if (verbose)
+	printf("** Avg time device %s, total time %f nsec, avg_time = %f, size = %lu, BW = %f bytes/sec\n",
+		devname, total_time, avg_time, size, result);
+	dump_throughput_result(size, result);
+
+	rc = 0;
+
+out:
+	close(fpga_fd);
+	if (infile_fd >= 0)
+		close(infile_fd);
+	if (outfile_fd >= 0)
+		close(outfile_fd);
+	free(allocated);
+
+	return rc;
+}
diff --git a/QDMA/linux-kernel/apps/dma-to-device/version.h b/QDMA/linux-kernel/apps/dma-to-device/version.h
old mode 100644
new mode 100755
index 32560b8c94289138358eb355d3d2a48ac80c42aa..2cd20e0577f1fd823ea3bbaa4e792ec55797726e
--- a/QDMA/linux-kernel/apps/dma-to-device/version.h
+++ b/QDMA/linux-kernel/apps/dma-to-device/version.h
@@ -2,8 +2,8 @@
  * This file is part of the QDMA userspace application
  * to enable the user to execute the QDMA functionality
  *
- * Copyright (c) 2018-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2018-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is licensed under BSD-style license (found in the
  * LICENSE file in the root directory of this source tree)
@@ -13,7 +13,7 @@
 #define __DMA_TO_DEVICE_VERSION_H
 
 #define PROGNAME "dma-to-device"
-#define VERSION "2022.1.0"
+#define VERSION "2022.2.0"
 #define COPYRIGHT "Copyright (c) 2018-2022 Xilinx Inc."
 
 #endif
diff --git a/QDMA/linux-kernel/apps/dma-utils/Makefile b/QDMA/linux-kernel/apps/dma-utils/Makefile
old mode 100644
new mode 100755
index ec67873cda8cbe56df07d87a3b6129e30f275198..1fb355812a58ad0c4772adf9292c46753419e829
--- a/QDMA/linux-kernel/apps/dma-utils/Makefile
+++ b/QDMA/linux-kernel/apps/dma-utils/Makefile
@@ -1,26 +1,26 @@
-#
-#/*
-# * This file is part of the QDMA userspace application
-# * to enable the user to execute the QDMA functionality
-# *
-# * Copyright (c) 2018-2022,  Xilinx, Inc.
-# * All rights reserved.
-# *
-# * This source code is licensed under BSD-style license (found in the
-# * LICENSE file in the root directory of this source tree)
-# */
-
-CC ?= gcc
-
-CFLAGS += -g
-#CFLAGS += -O2 -fno-inline -Wall -Wstrict-prototypes
-CFLAGS += -I. -I../include
-CFLAGS += $(EXTRA_FLAGS)
-
-all: dmautils.o dmactl.o dmactl_reg.o dmaxfer.o dma_xfer_utils.o
-
-%.o: %.c
-	$(CC) $(CFLAGS) -c -std=c99 -o $@ $< -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -D_LARGE_FILE_SOURCE -D_AIO_AIX_SOURCE
-
-clean:
-	rm -rf *.o
+#
+#/*
+# * This file is part of the QDMA userspace application
+# * to enable the user to execute the QDMA functionality
+# *
+# * Copyright (c) 2018-2022, Xilinx, Inc. All rights reserved.
+# * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
+# *
+# * This source code is licensed under BSD-style license (found in the
+# * LICENSE file in the root directory of this source tree)
+# */
+
+CC ?= gcc
+
+CFLAGS += -g
+#CFLAGS += -O2 -fno-inline -Wall -Wstrict-prototypes
+CFLAGS += -I. -I../include
+CFLAGS += $(EXTRA_FLAGS)
+
+all: dmautils.o dmactl.o dmactl_reg.o dmaxfer.o dma_xfer_utils.o
+
+%.o: %.c
+	$(CC) $(CFLAGS) -c -std=c99 -o $@ $< -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -D_LARGE_FILE_SOURCE -D_AIO_AIX_SOURCE
+
+clean:
+	rm -rf *.o
diff --git a/QDMA/linux-kernel/apps/dma-utils/dma_xfer_utils.c b/QDMA/linux-kernel/apps/dma-utils/dma_xfer_utils.c
old mode 100644
new mode 100755
index 3d9b224f25ec9145ab0c879d9470b125b7916548..0dbc313ab62595fb71342429583ce854f767ed71
--- a/QDMA/linux-kernel/apps/dma-utils/dma_xfer_utils.c
+++ b/QDMA/linux-kernel/apps/dma-utils/dma_xfer_utils.c
@@ -1,214 +1,214 @@
-/*
- * This file is part of the QDMA userspace application
- * to enable the user to execute the QDMA functionality
- *
- * Copyright (c) 2018-2022,  Xilinx, Inc.
- * All rights reserved.
- *
- * This source code is licensed under BSD-style license (found in the
- * LICENSE file in the root directory of this source tree)
- */
-
-#include <stdio.h>
-#include <stdint.h>
-#include <unistd.h>
-#include <time.h>
-#include <errno.h>
-#include <sys/types.h>
-
-/*
- * man 2 write:
- * On Linux, write() (and similar system calls) will transfer at most
- * 	0x7ffff000 (2,147,479,552) bytes, returning the number of bytes
- *	actually transferred.  (This is true on both 32-bit and 64-bit
- *	systems.)
- */
-
-#define RW_MAX_SIZE	0x7ffff000
-#define GB_DIV 1000000000
-#define MB_DIV 1000000
-#define KB_DIV 1000
-#define NSEC_DIV 1000000000
-
-int verbose = 0;
-
-void dump_throughput_result(uint64_t size, float result) {
-	printf("size=%lu ", size);
-	if (((long long)(result)/GB_DIV)) {
-		printf("Average BW = %f GB/sec\n", ((double)result/GB_DIV));
-	} else if (((long long)(result)/MB_DIV)) {
-		printf("Average BW = %f MB/sec\n", ((double)result/MB_DIV));
-	} else if (((long long)(result)/KB_DIV)) {
-		printf("Average BW = %f KB/sec\n", ((double)result/KB_DIV));
-	} else
-		printf("Average BW = %f Bytes/sec\n", ((double)result));
-}
-
-uint64_t getopt_integer(char *optarg)
-{
-	int rc;
-	uint64_t value;
-
-	rc = sscanf(optarg, "0x%lx", &value);
-	if (rc <= 0)
-		sscanf(optarg, "%lu", &value);
-	//printf("sscanf() = %d, value = 0x%lx\n", rc, value);
-
-	return value;
-}
-
-ssize_t read_to_buffer(char *fname, int fd, char *buffer, uint64_t size,
-			uint64_t base)
-{
-	ssize_t rc;
-	uint64_t count = 0;
-	char *buf = buffer;
-	off_t offset = base;
-
-	do { /* Support zero byte transfer */
-		uint64_t bytes = size - count;
-
-		if (bytes > RW_MAX_SIZE)
-			bytes = RW_MAX_SIZE;
-
-		if (offset) {
-			rc = lseek(fd, offset, SEEK_SET);
-			if (rc < 0) {
-				fprintf(stderr,
-					"%s, seek off 0x%lx failed %zd.\n",
-					fname, offset, rc);
-				perror("seek file");
-				return -EIO;
-			}
-			if (rc != offset) {
-				fprintf(stderr,
-					"%s, seek off 0x%lx != 0x%lx.\n",
-					fname, rc, offset);
-				return -EIO;
-			}
-		}
-
-		/* read data from file into memory buffer */
-		rc = read(fd, buf, bytes);
-		if (rc < 0) {
-			fprintf(stderr,
-				"%s, read off 0x%lx + 0x%lx failed %zd.\n",
-				fname, offset, bytes, rc);
-			perror("read file");
-			return -EIO;
-		}
-		if (rc != bytes) {
-			fprintf(stderr,
-				"%s, R off 0x%lx, 0x%lx != 0x%lx.\n",
-				fname, count, rc, bytes);
-			return -EIO;
-		}
-
-		count += bytes;
-		buf += bytes;
-		offset += bytes;
-	} while (count < size);
-
-	if (count != size) {
-		fprintf(stderr, "%s, R failed 0x%lx != 0x%lx.\n",
-				fname, count, size);
-		return -EIO;
-	}
-	return count;
-}
-
-ssize_t write_from_buffer(char *fname, int fd, char *buffer, uint64_t size,
-			uint64_t base)
-{
-	ssize_t rc;
-	uint64_t count = 0;
-	char *buf = buffer;
-	off_t offset = base;
-
-	do { /* Support zero byte transfer */
-		uint64_t bytes = size - count;
-
-		if (bytes > RW_MAX_SIZE)
-			bytes = RW_MAX_SIZE;
-
-		if (offset) {
-			rc = lseek(fd, offset, SEEK_SET);
-			if (rc < 0) {
-				fprintf(stderr,
-					"%s, seek off 0x%lx failed %zd.\n",
-					fname, offset, rc);
-				perror("seek file");
-				return -EIO;
-			}
-			if (rc != offset) {
-				fprintf(stderr,
-					"%s, seek off 0x%lx != 0x%lx.\n",
-					fname, rc, offset);
-				return -EIO;
-			}
-		}
-
-		/* write data to file from memory buffer */
-		rc = write(fd, buf, bytes);
-		if (rc < 0) {
-			fprintf(stderr, "%s, W off 0x%lx, 0x%lx failed %zd.\n",
-				fname, offset, bytes, rc);
-			perror("write file");
-			return -EIO;
-		}
-		if (rc != bytes) {
-			fprintf(stderr, "%s, W off 0x%lx, 0x%lx != 0x%lx.\n",
-				fname, offset, rc, bytes);
-			return -EIO;
-		}
-
-		count += bytes;
-		buf += bytes;
-		offset += bytes;
-	} while (count < size);
-
-	if (count != size) {
-		fprintf(stderr, "%s, R failed 0x%lx != 0x%lx.\n",
-				fname, count, size);
-		return -EIO;
-	}
-	return count;
-}
-
-
-/* Subtract timespec t2 from t1
- *
- * Both t1 and t2 must already be normalized
- * i.e. 0 <= nsec < 1000000000
- */
-static int timespec_check(struct timespec *t)
-{
-	if ((t->tv_nsec < 0) || (t->tv_nsec >= 1000000000))
-		return -1;
-	return 0;
-
-}
-
-void timespec_sub(struct timespec *t1, struct timespec *t2)
-{
-	if (timespec_check(t1) < 0) {
-		fprintf(stderr, "invalid time #1: %lld.%.9ld.\n",
-			(long long)t1->tv_sec, t1->tv_nsec);
-		return;
-	}
-	if (timespec_check(t2) < 0) {
-		fprintf(stderr, "invalid time #2: %lld.%.9ld.\n",
-			(long long)t2->tv_sec, t2->tv_nsec);
-		return;
-	}
-	t1->tv_sec -= t2->tv_sec;
-	t1->tv_nsec -= t2->tv_nsec;
-	if (t1->tv_nsec >= 1000000000) {
-		t1->tv_sec++;
-		t1->tv_nsec -= 1000000000;
-	} else if (t1->tv_nsec < 0) {
-		t1->tv_sec--;
-		t1->tv_nsec += 1000000000;
-	}
-}
-
+/*
+ * This file is part of the QDMA userspace application
+ * to enable the user to execute the QDMA functionality
+ *
+ * Copyright (c) 2018-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
+ *
+ * This source code is licensed under BSD-style license (found in the
+ * LICENSE file in the root directory of this source tree)
+ */
+
+#include <stdio.h>
+#include <stdint.h>
+#include <unistd.h>
+#include <time.h>
+#include <errno.h>
+#include <sys/types.h>
+
+/*
+ * man 2 write:
+ * On Linux, write() (and similar system calls) will transfer at most
+ * 	0x7ffff000 (2,147,479,552) bytes, returning the number of bytes
+ *	actually transferred.  (This is true on both 32-bit and 64-bit
+ *	systems.)
+ */
+
+#define RW_MAX_SIZE	0x7ffff000
+#define GB_DIV 1000000000
+#define MB_DIV 1000000
+#define KB_DIV 1000
+#define NSEC_DIV 1000000000
+
+int verbose = 0;
+
+void dump_throughput_result(uint64_t size, float result) {
+	printf("size=%lu ", size);
+	if (((long long)(result)/GB_DIV)) {
+		printf("Average BW = %f GB/sec\n", ((double)result/GB_DIV));
+	} else if (((long long)(result)/MB_DIV)) {
+		printf("Average BW = %f MB/sec\n", ((double)result/MB_DIV));
+	} else if (((long long)(result)/KB_DIV)) {
+		printf("Average BW = %f KB/sec\n", ((double)result/KB_DIV));
+	} else
+		printf("Average BW = %f Bytes/sec\n", ((double)result));
+}
+
+uint64_t getopt_integer(char *optarg)
+{
+	int rc;
+	uint64_t value;
+
+	rc = sscanf(optarg, "0x%lx", &value);
+	if (rc <= 0)
+		sscanf(optarg, "%lu", &value);
+	//printf("sscanf() = %d, value = 0x%lx\n", rc, value);
+
+	return value;
+}
+
+ssize_t read_to_buffer(char *fname, int fd, char *buffer, uint64_t size,
+			uint64_t base)
+{
+	ssize_t rc;
+	uint64_t count = 0;
+	char *buf = buffer;
+	off_t offset = base;
+
+	do { /* Support zero byte transfer */
+		uint64_t bytes = size - count;
+
+		if (bytes > RW_MAX_SIZE)
+			bytes = RW_MAX_SIZE;
+
+		if (offset) {
+			rc = lseek(fd, offset, SEEK_SET);
+			if (rc < 0) {
+				fprintf(stderr,
+					"%s, seek off 0x%lx failed %zd.\n",
+					fname, offset, rc);
+				perror("seek file");
+				return -EIO;
+			}
+			if (rc != offset) {
+				fprintf(stderr,
+					"%s, seek off 0x%lx != 0x%lx.\n",
+					fname, rc, offset);
+				return -EIO;
+			}
+		}
+
+		/* read data from file into memory buffer */
+		rc = read(fd, buf, bytes);
+		if (rc < 0) {
+			fprintf(stderr,
+				"%s, read off 0x%lx + 0x%lx failed %zd.\n",
+				fname, offset, bytes, rc);
+			perror("read file");
+			return -EIO;
+		}
+		if (rc != bytes) {
+			fprintf(stderr,
+				"%s, R off 0x%lx, 0x%lx != 0x%lx.\n",
+				fname, count, rc, bytes);
+			return -EIO;
+		}
+
+		count += bytes;
+		buf += bytes;
+		offset += bytes;
+	} while (count < size);
+
+	if (count != size) {
+		fprintf(stderr, "%s, R failed 0x%lx != 0x%lx.\n",
+				fname, count, size);
+		return -EIO;
+	}
+	return count;
+}
+
+ssize_t write_from_buffer(char *fname, int fd, char *buffer, uint64_t size,
+			uint64_t base)
+{
+	ssize_t rc;
+	uint64_t count = 0;
+	char *buf = buffer;
+	off_t offset = base;
+
+	do { /* Support zero byte transfer */
+		uint64_t bytes = size - count;
+
+		if (bytes > RW_MAX_SIZE)
+			bytes = RW_MAX_SIZE;
+
+		if (offset) {
+			rc = lseek(fd, offset, SEEK_SET);
+			if (rc < 0) {
+				fprintf(stderr,
+					"%s, seek off 0x%lx failed %zd.\n",
+					fname, offset, rc);
+				perror("seek file");
+				return -EIO;
+			}
+			if (rc != offset) {
+				fprintf(stderr,
+					"%s, seek off 0x%lx != 0x%lx.\n",
+					fname, rc, offset);
+				return -EIO;
+			}
+		}
+
+		/* write data to file from memory buffer */
+		rc = write(fd, buf, bytes);
+		if (rc < 0) {
+			fprintf(stderr, "%s, W off 0x%lx, 0x%lx failed %zd.\n",
+				fname, offset, bytes, rc);
+			perror("write file");
+			return -EIO;
+		}
+		if (rc != bytes) {
+			fprintf(stderr, "%s, W off 0x%lx, 0x%lx != 0x%lx.\n",
+				fname, offset, rc, bytes);
+			return -EIO;
+		}
+
+		count += bytes;
+		buf += bytes;
+		offset += bytes;
+	} while (count < size);
+
+	if (count != size) {
+		fprintf(stderr, "%s, R failed 0x%lx != 0x%lx.\n",
+				fname, count, size);
+		return -EIO;
+	}
+	return count;
+}
+
+
+/* Subtract timespec t2 from t1
+ *
+ * Both t1 and t2 must already be normalized
+ * i.e. 0 <= nsec < 1000000000
+ */
+static int timespec_check(struct timespec *t)
+{
+	if ((t->tv_nsec < 0) || (t->tv_nsec >= 1000000000))
+		return -1;
+	return 0;
+
+}
+
+void timespec_sub(struct timespec *t1, struct timespec *t2)
+{
+	if (timespec_check(t1) < 0) {
+		fprintf(stderr, "invalid time #1: %lld.%.9ld.\n",
+			(long long)t1->tv_sec, t1->tv_nsec);
+		return;
+	}
+	if (timespec_check(t2) < 0) {
+		fprintf(stderr, "invalid time #2: %lld.%.9ld.\n",
+			(long long)t2->tv_sec, t2->tv_nsec);
+		return;
+	}
+	t1->tv_sec -= t2->tv_sec;
+	t1->tv_nsec -= t2->tv_nsec;
+	if (t1->tv_nsec >= 1000000000) {
+		t1->tv_sec++;
+		t1->tv_nsec -= 1000000000;
+	} else if (t1->tv_nsec < 0) {
+		t1->tv_sec--;
+		t1->tv_nsec += 1000000000;
+	}
+}
+
diff --git a/QDMA/linux-kernel/apps/dma-utils/dmactl.c b/QDMA/linux-kernel/apps/dma-utils/dmactl.c
old mode 100644
new mode 100755
index ba57858ebd66d76bd05bf2679191ac9b84807264..84ef8cc72ccffc23ee047322ef7ac6bef564923b
--- a/QDMA/linux-kernel/apps/dma-utils/dmactl.c
+++ b/QDMA/linux-kernel/apps/dma-utils/dmactl.c
@@ -2,8 +2,8 @@
  * This file is part of the QDMA userspace application
  * to enable the user to execute the QDMA functionality
  *
- * Copyright (c) 2019-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2019-2022,  Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022,  Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is licensed under BSD-style license (found in the
  * LICENSE file in the root directory of this source tree)
@@ -175,12 +175,11 @@ static int xnl_connect(struct xnl_cb *cb, int vf, void (*log_err)(const char *))
 	cb->family = CTRL_ATTR_FAMILY_NAME;
 
 	if (vf) {
-        	attr->nla_len = strlen(XNL_NAME_VF) + 1 + NLA_HDRLEN;
-        	strcpy((char *)(attr + 1), XNL_NAME_VF);
-
+		attr->nla_len = strlen(XNL_NAME_VF) + 1 + NLA_HDRLEN;
+		memcpy((char *)(attr + 1), XNL_NAME_VF, sizeof(XNL_NAME_VF) - 1);
 	} else {
-        	attr->nla_len = strlen(XNL_NAME_PF) + 1 + NLA_HDRLEN;
-        	strcpy((char *)(attr + 1), XNL_NAME_PF);
+		attr->nla_len = strlen(XNL_NAME_PF) + 1 + NLA_HDRLEN;
+		memcpy((char *)(attr + 1), XNL_NAME_PF, sizeof(XNL_NAME_PF) - 1);
 	}
         hdr->n.nlmsg_len += NLMSG_ALIGN(attr->nla_len);
 
diff --git a/QDMA/linux-kernel/apps/dma-utils/dmactl_internal.h b/QDMA/linux-kernel/apps/dma-utils/dmactl_internal.h
old mode 100644
new mode 100755
index 8b038546075f29cbeafc4827c4300b870326c397..7283f7cc1a2614f64203b6c3381365789bb614ab
--- a/QDMA/linux-kernel/apps/dma-utils/dmactl_internal.h
+++ b/QDMA/linux-kernel/apps/dma-utils/dmactl_internal.h
@@ -1,23 +1,23 @@
-/*
- * This file is part of the QDMA userspace application
- * to enable the user to execute the QDMA functionality
- *
- * Copyright (c) 2019 - 2022,  Xilinx, Inc.
- * All rights reserved.
- *
- * This source code is licensed under BSD-style license (found in the
- * LICENSE file in the root directory of this source tree)
- */
-
-#ifndef _QDMACTL_INTERNAL_H_
-#define _QDMACTL_INTERNAL_H_
-
-#include <stdint.h>
-
-#include "dmautils.h"
-
-int proc_reg_cmd(struct xcmd_info *xcmd);
-int is_valid_addr(unsigned char bar_no, unsigned int reg_addr);
-int xnl_common_msg_send(struct xcmd_info *cmd, uint32_t *attrs);
-
-#endif /* _QDMACTL_INTERNAL_H_ */
+/*
+ * This file is part of the QDMA userspace application
+ * to enable the user to execute the QDMA functionality
+ *
+ * Copyright (c) 2019 - 2022,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is licensed under BSD-style license (found in the
+ * LICENSE file in the root directory of this source tree)
+ */
+
+#ifndef _QDMACTL_INTERNAL_H_
+#define _QDMACTL_INTERNAL_H_
+
+#include <stdint.h>
+
+#include "dmautils.h"
+
+int proc_reg_cmd(struct xcmd_info *xcmd);
+int is_valid_addr(unsigned char bar_no, unsigned int reg_addr);
+int xnl_common_msg_send(struct xcmd_info *cmd, uint32_t *attrs);
+
+#endif /* _QDMACTL_INTERNAL_H_ */
diff --git a/QDMA/linux-kernel/apps/dma-utils/dmactl_reg.c b/QDMA/linux-kernel/apps/dma-utils/dmactl_reg.c
old mode 100644
new mode 100755
diff --git a/QDMA/linux-kernel/apps/dma-utils/dmautils.c b/QDMA/linux-kernel/apps/dma-utils/dmautils.c
old mode 100644
new mode 100755
diff --git a/QDMA/linux-kernel/apps/dma-utils/dmautils.h b/QDMA/linux-kernel/apps/dma-utils/dmautils.h
old mode 100644
new mode 100755
diff --git a/QDMA/linux-kernel/apps/dma-utils/dmaxfer.c b/QDMA/linux-kernel/apps/dma-utils/dmaxfer.c
old mode 100644
new mode 100755
index a151a640e192c1cbbf6b377caf50d3a73a213365..db94d7dea524408c4d453930cb61f2d624505982
--- a/QDMA/linux-kernel/apps/dma-utils/dmaxfer.c
+++ b/QDMA/linux-kernel/apps/dma-utils/dmaxfer.c
@@ -2,8 +2,8 @@
  * This file is part of the QDMA userspace application
  * to enable the user to execute the QDMA functionality
  *
- * Copyright (c) 2018-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2018-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is licensed under BSD-style license (found in the
  * LICENSE file in the root directory of this source tree)
diff --git a/QDMA/linux-kernel/apps/dma-utils/dmaxfer.h b/QDMA/linux-kernel/apps/dma-utils/dmaxfer.h
old mode 100644
new mode 100755
diff --git a/QDMA/linux-kernel/apps/dma-utils/version.h b/QDMA/linux-kernel/apps/dma-utils/version.h
old mode 100644
new mode 100755
index 0a6dabdccc76e83eb4e7380f2d7a092a11bf66a3..30d8b17563086ae6ab5e253bef66041b4b942593
--- a/QDMA/linux-kernel/apps/dma-utils/version.h
+++ b/QDMA/linux-kernel/apps/dma-utils/version.h
@@ -2,8 +2,8 @@
  * This file is part of the QDMA userspace application
  * to enable the user to execute the QDMA functionality
  *
- * Copyright (c) 2019-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2019-2022,  Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022,  Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is licensed under BSD-style license (found in the
  * LICENSE file in the root directory of this source tree)
@@ -13,7 +13,7 @@
 #define __DMA_UTILS_VERSION_H
 
 #define LIBNAME "dma-utils"
-#define QDMATUILS_VERSION "2022.1.0"
+#define QDMATUILS_VERSION "2022.2.0"
 #define COPYRIGHT "Copyright (c) 2019-2022 Xilinx Inc."
 
 #endif
diff --git a/QDMA/linux-kernel/apps/dma-xfer/Makefile b/QDMA/linux-kernel/apps/dma-xfer/Makefile
old mode 100644
new mode 100755
index dbfeb1812f3c96dc9981c2d6f534a38ec1f5a15d..b89fe3bcb15c56ab0c28076937b21c3be8c589c5
--- a/QDMA/linux-kernel/apps/dma-xfer/Makefile
+++ b/QDMA/linux-kernel/apps/dma-xfer/Makefile
@@ -3,8 +3,8 @@
 # * This file is part of the QDMA userspace application
 # * to enable the user to execute the QDMA functionality
 # *
-# * Copyright (c) 2018-2022,  Xilinx, Inc.
-# * All rights reserved.
+# * Copyright (c) 2018-2022, Xilinx, Inc. All rights reserved.
+# * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
 # *
 # * This source code is licensed under BSD-style license (found in the
 # * LICENSE file in the root directory of this source tree)
diff --git a/QDMA/linux-kernel/apps/dma-xfer/dmaxfer.c b/QDMA/linux-kernel/apps/dma-xfer/dmaxfer.c
old mode 100644
new mode 100755
index 2878e8de9b58f770bca09da0655cc3ed2bfdcffd..cab603167fe999f814a5fb48f951895423cb33dd
--- a/QDMA/linux-kernel/apps/dma-xfer/dmaxfer.c
+++ b/QDMA/linux-kernel/apps/dma-xfer/dmaxfer.c
@@ -2,8 +2,8 @@
  * This file is part of the QDMA userspace application
  * to enable the user to execute the QDMA functionality
  *
- * Copyright (c) 2018-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2018-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is licensed under BSD-style license (found in the
  * LICENSE file in the root directory of this source tree)
diff --git a/QDMA/linux-kernel/apps/dma-xfer/sample_qdma_xfer_config.txt b/QDMA/linux-kernel/apps/dma-xfer/sample_qdma_xfer_config.txt
old mode 100644
new mode 100755
index 93382dafba1a07f67255886e9221f135c3d0997e..5f364f063444ba370ac205fbaeaeb266944b0435
--- a/QDMA/linux-kernel/apps/dma-xfer/sample_qdma_xfer_config.txt
+++ b/QDMA/linux-kernel/apps/dma-xfer/sample_qdma_xfer_config.txt
@@ -3,8 +3,8 @@
 # * This file is part of the QDMA userspace application
 # * to enable the user to execute the QDMA functionality
 # *
-# * Copyright (c) 2018-2022,  Xilinx, Inc.
-# * All rights reserved.
+# * Copyright (c) 2018-2022, Xilinx, Inc. All rights reserved.
+# * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
 # *
 # * This source code is licensed under BSD-style license (found in the
 # * LICENSE file in the root directory of this source tree)
diff --git a/QDMA/linux-kernel/apps/dma-xfer/version.h b/QDMA/linux-kernel/apps/dma-xfer/version.h
old mode 100644
new mode 100755
index fb29da1bb93630380d8993ea8f19b8bb051c8709..0f1d5ecab20e23fd61200407fab54eecd71e6949
--- a/QDMA/linux-kernel/apps/dma-xfer/version.h
+++ b/QDMA/linux-kernel/apps/dma-xfer/version.h
@@ -2,8 +2,8 @@
  * This file is part of the QDMA userspace application
  * to enable the user to execute the QDMA functionality
  *
- * Copyright (c) 2019-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2019-2022,  Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022,  Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is licensed under BSD-style license (found in the
  * LICENSE file in the root directory of this source tree)
@@ -12,7 +12,7 @@
 #define __DMA_XFER_VERSION_H
 
 #define PROGNAME "dma-xfer"
-#define VERSION "2022.1.0"
+#define VERSION "2022.2.0"
 #define COPYRIGHT "Copyright (c) 2019-2022 Xilinx Inc."
 
 #endif
diff --git a/QDMA/linux-kernel/apps/include/qdma_nl.h b/QDMA/linux-kernel/apps/include/qdma_nl.h
old mode 100644
new mode 100755
index 614bc3f632932dd0c326560ffcc87a2a4329b24a..09d7ad1ecfd65e850b7393858a022902e53a1441
--- a/QDMA/linux-kernel/apps/include/qdma_nl.h
+++ b/QDMA/linux-kernel/apps/include/qdma_nl.h
@@ -1,15 +1,15 @@
-/*
- * This file is part of the Xilinx DMA IP Core driver for Linux
- *
- * Copyright (c) 2018-2022,  Xilinx, Inc.
- * All rights reserved.
- *
- * This source code is licensed under both the BSD-style license (found in the
- * LICENSE file in the root directory of this source tree) and the GPLv2 (found
- * in the COPYING file in the root directory of this source tree).
- * You may select, at your option, one of the above-listed licenses.
- */
-
+/*
+ * This file is part of the Xilinx DMA IP Core driver for Linux
+ *
+ * Copyright (c) 2018-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
+ *
+ * This source code is licensed under both the BSD-style license (found in the
+ * LICENSE file in the root directory of this source tree) and the GPLv2 (found
+ * in the COPYING file in the root directory of this source tree).
+ * You may select, at your option, one of the above-listed licenses.
+ */
+
 #ifndef QDMA_NL_H__
 #define QDMA_NL_H__
 /**
diff --git a/QDMA/linux-kernel/apps/include/qdma_user_reg_dump.h b/QDMA/linux-kernel/apps/include/qdma_user_reg_dump.h
old mode 100644
new mode 100755
index c76a3e7d9f3ed9b6552547432147b636f5eb8c60..337ce81af5b8ccaf67c5cc0a36b162d5817c4180
--- a/QDMA/linux-kernel/apps/include/qdma_user_reg_dump.h
+++ b/QDMA/linux-kernel/apps/include/qdma_user_reg_dump.h
@@ -1,15 +1,15 @@
-/*
- * This file is part of the Xilinx DMA IP Core driver for Linux
- *
- * Copyright (c) 2018-2022,  Xilinx, Inc.
- * All rights reserved.
- *
- * This source code is licensed under both the BSD-style license (found in the
- * LICENSE file in the root directory of this source tree) and the GPLv2 (found
- * in the COPYING file in the root directory of this source tree).
- * You may select, at your option, one of the above-listed licenses.
- */
-
+/*
+ * This file is part of the Xilinx DMA IP Core driver for Linux
+ *
+ * Copyright (c) 2018-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
+ *
+ * This source code is licensed under both the BSD-style license (found in the
+ * LICENSE file in the root directory of this source tree) and the GPLv2 (found
+ * in the COPYING file in the root directory of this source tree).
+ * You may select, at your option, one of the above-listed licenses.
+ */
+
 #include "qdma_reg_dump.h"
 
 #ifndef __QDMA_USER_REG_DUMP_H__
diff --git a/QDMA/linux-kernel/apps/include/xdev_regs.h b/QDMA/linux-kernel/apps/include/xdev_regs.h
old mode 100644
new mode 100755
index 7efbad4ba8dfcf193c30cc13d00a09dc699dec1b..feebb98d264e39190a6bc8195283ae7f7a042909
--- a/QDMA/linux-kernel/apps/include/xdev_regs.h
+++ b/QDMA/linux-kernel/apps/include/xdev_regs.h
@@ -1,15 +1,15 @@
-/*
- * This file is part of the Xilinx DMA IP Core driver for Linux
- *
- * Copyright (c) 2018-2022,  Xilinx, Inc.
- * All rights reserved.
- *
- * This source code is licensed under both the BSD-style license (found in the
- * LICENSE file in the root directory of this source tree) and the GPLv2 (found
- * in the COPYING file in the root directory of this source tree).
- * You may select, at your option, one of the above-listed licenses.
- */
-
+/*
+ * This file is part of the Xilinx DMA IP Core driver for Linux
+ *
+ * Copyright (c) 2018-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
+ *
+ * This source code is licensed under both the BSD-style license (found in the
+ * LICENSE file in the root directory of this source tree) and the GPLv2 (found
+ * in the COPYING file in the root directory of this source tree).
+ * You may select, at your option, one of the above-listed licenses.
+ */
+
 #ifndef __XDEV_REGS_H__
 #define __XDEV_REGS_H__
 
diff --git a/QDMA/linux-kernel/bsd_license.txt b/QDMA/linux-kernel/bsd_license.txt
old mode 100644
new mode 100755
index 82d71f1739bc20651faf0d62ef4248eae1883d13..0759917fc0c0afba4f88552de1e5a6c4022fca20
--- a/QDMA/linux-kernel/bsd_license.txt
+++ b/QDMA/linux-kernel/bsd_license.txt
@@ -1,12 +1,12 @@
-/*
- * This file is part of the Xilinx DMA IP Core driver for Linux
- *
- * Copyright (c) 2018-2022,  Xilinx, Inc.
- * All rights reserved.
- *
- * This source code is licensed under both the BSD-style license (found in the
- * LICENSE file in the root directory of this source tree) and the GPLv2 (found
- * in the COPYING file in the root directory of this source tree).
- * You may select, at your option, one of the above-listed licenses.
- */
-
+/*
+ * This file is part of the Xilinx DMA IP Core driver for Linux
+ *
+ * Copyright (c) 2018-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
+ *
+ * This source code is licensed under both the BSD-style license (found in the
+ * LICENSE file in the root directory of this source tree) and the GPLv2 (found
+ * in the COPYING file in the root directory of this source tree).
+ * You may select, at your option, one of the above-listed licenses.
+ */
+
diff --git a/QDMA/linux-kernel/docs/README b/QDMA/linux-kernel/docs/README
old mode 100644
new mode 100755
index 4a8ca1451634a03fe342042cef9f790f75186e1d..bc04f890ee2894a2fee1dcf4ba0497e3551a4ae6
--- a/QDMA/linux-kernel/docs/README
+++ b/QDMA/linux-kernel/docs/README
@@ -302,8 +302,8 @@ _____________________________________________________________________________
   /*
   * This file is part of the Xilinx DMA IP Core driver for Linux
   *
-  * Copyright (c) 2017-2022,  Xilinx, Inc.
-  * All rights reserved.
+  * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+  * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
   *
   * This source code is free software; you can redistribute it and/or modify it
   * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/docs/dma-ctl.8.gz b/QDMA/linux-kernel/docs/dma-ctl.8.gz
old mode 100644
new mode 100755
diff --git a/QDMA/linux-kernel/docs/dmactl.8.gz b/QDMA/linux-kernel/docs/dmactl.8.gz
deleted file mode 100644
index 54119d1b01f92a4a76eed90bf7bcb1b8dd9b7969..0000000000000000000000000000000000000000
Binary files a/QDMA/linux-kernel/docs/dmactl.8.gz and /dev/null differ
diff --git a/QDMA/linux-kernel/driver/Makefile b/QDMA/linux-kernel/driver/Makefile
old mode 100644
new mode 100755
index 28935bbf8da0e0f6413b6bbe818f72340c376943..9b8e6a39b18df8be7e7a3650262d81cc283f4241
--- a/QDMA/linux-kernel/driver/Makefile
+++ b/QDMA/linux-kernel/driver/Makefile
@@ -1,8 +1,8 @@
 #/*
 # * This file is part of the Xilinx DMA IP Core driver for Linux
 # *
-# * Copyright (c) 2017-2022,  Xilinx, Inc.
-# * All rights reserved.
+# * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+# * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
 # *
 # * This source code is free software; you can redistribute it and/or modify it
 # * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/include/qdma_nl.h b/QDMA/linux-kernel/driver/include/qdma_nl.h
old mode 100644
new mode 100755
index 82ca667228e901f4216a52fca03320342009c1c9..eaa10d74b8179c4590abdff40dbda499f6848c52
--- a/QDMA/linux-kernel/driver/include/qdma_nl.h
+++ b/QDMA/linux-kernel/driver/include/qdma_nl.h
@@ -1,8 +1,8 @@
 /*
  * This file is part of the Xilinx DMA IP Core driver for Linux
  *
- * Copyright (c) 2017-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/include/qdma_user_reg_dump.h b/QDMA/linux-kernel/driver/include/qdma_user_reg_dump.h
old mode 100644
new mode 100755
index 79c25a949b0c4fc64a8d764d38b24477d873b8a9..89758251109dd523dfbc029efaabe05fd57650e7
--- a/QDMA/linux-kernel/driver/include/qdma_user_reg_dump.h
+++ b/QDMA/linux-kernel/driver/include/qdma_user_reg_dump.h
@@ -1,8 +1,8 @@
 /*
  * This file is part of the Xilinx DMA IP Core driver for Linux
  *
- * Copyright (c) 2018-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2018-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/include/xdev_regs.h b/QDMA/linux-kernel/driver/include/xdev_regs.h
old mode 100644
new mode 100755
index e27040fb86ff353bbf73b0da643ab8f5b7abac96..73091dccbbc65b2ed3e8afaff0839201d93aaa82
--- a/QDMA/linux-kernel/driver/include/xdev_regs.h
+++ b/QDMA/linux-kernel/driver/include/xdev_regs.h
@@ -1,8 +1,8 @@
 /*
  * This file is part of the Xilinx DMA IP Core driver for Linux
  *
- * Copyright (c) 2018-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2018-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/libqdma/Makefile b/QDMA/linux-kernel/driver/libqdma/Makefile
old mode 100644
new mode 100755
index b854f62e7da78a2ce163122f1987114b860b2d4a..3184572c95c7a890caf1758f2f8c398e34875e03
--- a/QDMA/linux-kernel/driver/libqdma/Makefile
+++ b/QDMA/linux-kernel/driver/libqdma/Makefile
@@ -1,8 +1,8 @@
 #/*
 # * This file is part of the Xilinx DMA IP Core driver for Linux
 # *
-# * Copyright (c) 2017-2022,  Xilinx, Inc.
-# * All rights reserved.
+# * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+# * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
 # *
 # * This source code is free software; you can redistribute it and/or modify it
 # * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/libqdma/libqdma_config.c b/QDMA/linux-kernel/driver/libqdma/libqdma_config.c
old mode 100644
new mode 100755
index d3895a4195c3ba79b17743cad2dee577cc09b270..69fbf63ec8a679fa588b30dfeca94a79a6bf1d12
--- a/QDMA/linux-kernel/driver/libqdma/libqdma_config.c
+++ b/QDMA/linux-kernel/driver/libqdma/libqdma_config.c
@@ -1,8 +1,8 @@
 /*
  * This file is part of the Xilinx DMA IP Core driver for Linux
  *
- * Copyright (c) 2017-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/libqdma/libqdma_config.h b/QDMA/linux-kernel/driver/libqdma/libqdma_config.h
old mode 100644
new mode 100755
index c0ebb1fafefa45eee2065708fd505cf19b58eda3..99ae2613713dee4f8ec5093325e5a14431d1b0cf
--- a/QDMA/linux-kernel/driver/libqdma/libqdma_config.h
+++ b/QDMA/linux-kernel/driver/libqdma/libqdma_config.h
@@ -1,8 +1,8 @@
 /*
  * This file is part of the Xilinx DMA IP Core driver for Linux
  *
- * Copyright (c) 2017-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/libqdma/libqdma_export.c b/QDMA/linux-kernel/driver/libqdma/libqdma_export.c
old mode 100644
new mode 100755
index 1b2672af05ce8a590c840a4ecfc0c8e0a4611b55..9add26fe9bb3ebdaf5ae266ca5c2ca27508d2aa2
--- a/QDMA/linux-kernel/driver/libqdma/libqdma_export.c
+++ b/QDMA/linux-kernel/driver/libqdma/libqdma_export.c
@@ -1,8 +1,8 @@
 /*
  * This file is part of the Xilinx DMA IP Core driver for Linux
  *
- * Copyright (c) 2017-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/libqdma/libqdma_export.h b/QDMA/linux-kernel/driver/libqdma/libqdma_export.h
old mode 100644
new mode 100755
index f9b2eb325014d39d4c06995c4518e5c7116f0584..2cf6c2738d4fa38ee734c5d58232db2f189d74c7
--- a/QDMA/linux-kernel/driver/libqdma/libqdma_export.h
+++ b/QDMA/linux-kernel/driver/libqdma/libqdma_export.h
@@ -1,8 +1,8 @@
 /*
  * This file is part of the Xilinx DMA IP Core driver for Linux
  *
- * Copyright (c) 2017-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
@@ -486,7 +486,8 @@ struct qdma_dev_conf {
 	 *  @param irq_index    Interrupt index
 	 *  @param uld		upper layer data, i.e. callback data
 	 */
-	void (*fp_user_isr_handler)(unsigned long dev_hndl,int irq_index, unsigned long uld);
+	void (*fp_user_isr_handler)(unsigned long dev_hndl, int irq_index,
+			unsigned long uld);
 #endif
 	/**
 	 *  @brief  Q interrupt top,
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_access/eqdma_cpm5_access/eqdma_cpm5_access.c b/QDMA/linux-kernel/driver/libqdma/qdma_access/eqdma_cpm5_access/eqdma_cpm5_access.c
old mode 100644
new mode 100755
index 59fc504184623f59d15eeb110970d45a493224f4..239105bf3aa35a08de98ae90970a212f1fa2aa6c
--- a/QDMA/linux-kernel/driver/libqdma/qdma_access/eqdma_cpm5_access/eqdma_cpm5_access.c
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_access/eqdma_cpm5_access/eqdma_cpm5_access.c
@@ -1,5 +1,6 @@
 /*
- * Copyright(c) 2019-2022 Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2019-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
@@ -2776,7 +2777,7 @@ int eqdma_cpm5_get_version(void *dev_hndl, uint8_t is_vf,
 
 	reg_val = qdma_reg_read(dev_hndl, reg_addr);
 
-	qdma_fetch_version_details(is_vf, reg_val, version_info);
+	qdma_fetch_version_details(dev_hndl, is_vf, reg_val, version_info);
 
 	return QDMA_SUCCESS;
 }
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_access/eqdma_cpm5_access/eqdma_cpm5_access.h b/QDMA/linux-kernel/driver/libqdma/qdma_access/eqdma_cpm5_access/eqdma_cpm5_access.h
old mode 100644
new mode 100755
index a302e7857ce3524b7e23f40a17e9646451aeedd5..93662d22fd81f89830a4bf084fd48023c0968b5a
--- a/QDMA/linux-kernel/driver/libqdma/qdma_access/eqdma_cpm5_access/eqdma_cpm5_access.h
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_access/eqdma_cpm5_access/eqdma_cpm5_access.h
@@ -1,5 +1,6 @@
 /*
- * Copyright(c) 2019-2022 Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2019-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_access/eqdma_cpm5_access/eqdma_cpm5_reg.h b/QDMA/linux-kernel/driver/libqdma/qdma_access/eqdma_cpm5_access/eqdma_cpm5_reg.h
old mode 100644
new mode 100755
index cf3cc139bf97fa8f8d87bf6fc5686a2a97ffc6b4..402748439242019ac02149ed0ca921780fde7428
--- a/QDMA/linux-kernel/driver/libqdma/qdma_access/eqdma_cpm5_access/eqdma_cpm5_reg.h
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_access/eqdma_cpm5_access/eqdma_cpm5_reg.h
@@ -1,5 +1,6 @@
 /*
- * Copyright(c) 2019-2022 Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2019-2022 Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
@@ -14,8 +15,8 @@
  * the file called "COPYING".
  */
 
-#ifndef __EQDMA_SOFT_REG_H
-#define __EQDMA_SOFT_REG_H
+#ifndef __EQDMA_CPM5_REG_H
+#define __EQDMA_CPM5_REG_H
 
 
 #ifdef __cplusplus
@@ -73,49 +74,49 @@ extern "C" {
 
 uint32_t eqdma_cpm5_config_num_regs_get(void);
 struct xreg_info *eqdma_cpm5_config_regs_get(void);
-#define EQDMA_CPM5_CFG_BLK_IDENTIFIER_ADDR                      0x00
+#define EQDMA_CPM5_CFG_BLK_IDENTIFIER_ADDR                 0x00
 #define CFG_BLK_IDENTIFIER_MASK                           GENMASK(31, 20)
 #define CFG_BLK_IDENTIFIER_1_MASK                         GENMASK(19, 16)
 #define CFG_BLK_IDENTIFIER_RSVD_1_MASK                     GENMASK(15, 8)
 #define CFG_BLK_IDENTIFIER_VERSION_MASK                    GENMASK(7, 0)
-#define EQDMA_CPM5_CFG_BLK_PCIE_MAX_PLD_SIZE_ADDR               0x08
+#define EQDMA_CPM5_CFG_BLK_PCIE_MAX_PLD_SIZE_ADDR          0x08
 #define CFG_BLK_PCIE_MAX_PLD_SIZE_RSVD_1_MASK              GENMASK(31, 7)
 #define CFG_BLK_PCIE_MAX_PLD_SIZE_PROG_MASK                GENMASK(6, 4)
 #define CFG_BLK_PCIE_MAX_PLD_SIZE_RSVD_2_MASK              BIT(3)
 #define CFG_BLK_PCIE_MAX_PLD_SIZE_ISSUED_MASK              GENMASK(2, 0)
-#define EQDMA_CPM5_CFG_BLK_PCIE_MAX_READ_REQ_SIZE_ADDR          0x0C
+#define EQDMA_CPM5_CFG_BLK_PCIE_MAX_READ_REQ_SIZE_ADDR     0x0C
 #define CFG_BLK_PCIE_MAX_READ_REQ_SIZE_RSVD_1_MASK         GENMASK(31, 7)
 #define CFG_BLK_PCIE_MAX_READ_REQ_SIZE_PROG_MASK           GENMASK(6, 4)
 #define CFG_BLK_PCIE_MAX_READ_REQ_SIZE_RSVD_2_MASK         BIT(3)
 #define CFG_BLK_PCIE_MAX_READ_REQ_SIZE_ISSUED_MASK         GENMASK(2, 0)
-#define EQDMA_CPM5_CFG_BLK_SYSTEM_ID_ADDR                       0x10
+#define EQDMA_CPM5_CFG_BLK_SYSTEM_ID_ADDR                  0x10
 #define CFG_BLK_SYSTEM_ID_RSVD_1_MASK                      GENMASK(31, 17)
 #define CFG_BLK_SYSTEM_ID_INST_TYPE_MASK                   BIT(16)
 #define CFG_BLK_SYSTEM_ID_MASK                            GENMASK(15, 0)
-#define EQDMA_CPM5_CFG_BLK_MSIX_ENABLE_ADDR                     0x014
+#define EQDMA_CPM5_CFG_BLK_MSIX_ENABLE_ADDR                0x014
 #define CFG_BLK_MSIX_ENABLE_MASK                          GENMASK(31, 0)
-#define EQDMA_CPM5_CFG_PCIE_DATA_WIDTH_ADDR                     0x18
+#define EQDMA_CPM5_CFG_PCIE_DATA_WIDTH_ADDR                0x18
 #define CFG_PCIE_DATA_WIDTH_RSVD_1_MASK                    GENMASK(31, 3)
 #define CFG_PCIE_DATA_WIDTH_DATAPATH_MASK                  GENMASK(2, 0)
-#define EQDMA_CPM5_CFG_PCIE_CTL_ADDR                            0x1C
+#define EQDMA_CPM5_CFG_PCIE_CTL_ADDR                       0x1C
 #define CFG_PCIE_CTL_RSVD_1_MASK                           GENMASK(31, 18)
 #define CFG_PCIE_CTL_MGMT_AXIL_CTRL_MASK                   GENMASK(17, 16)
 #define CFG_PCIE_CTL_RSVD_2_MASK                           GENMASK(15, 2)
 #define CFG_PCIE_CTL_RRQ_DISABLE_MASK                      BIT(1)
 #define CFG_PCIE_CTL_RELAXED_ORDERING_MASK                 BIT(0)
-#define EQDMA_CPM5_CFG_BLK_MSI_ENABLE_ADDR                      0x20
+#define EQDMA_CPM5_CFG_BLK_MSI_ENABLE_ADDR                 0x20
 #define CFG_BLK_MSI_ENABLE_MASK                           GENMASK(31, 0)
-#define EQDMA_CPM5_CFG_AXI_USER_MAX_PLD_SIZE_ADDR               0x40
+#define EQDMA_CPM5_CFG_AXI_USER_MAX_PLD_SIZE_ADDR          0x40
 #define CFG_AXI_USER_MAX_PLD_SIZE_RSVD_1_MASK              GENMASK(31, 7)
 #define CFG_AXI_USER_MAX_PLD_SIZE_ISSUED_MASK              GENMASK(6, 4)
 #define CFG_AXI_USER_MAX_PLD_SIZE_RSVD_2_MASK              BIT(3)
 #define CFG_AXI_USER_MAX_PLD_SIZE_PROG_MASK                GENMASK(2, 0)
-#define EQDMA_CPM5_CFG_AXI_USER_MAX_READ_REQ_SIZE_ADDR          0x44
+#define EQDMA_CPM5_CFG_AXI_USER_MAX_READ_REQ_SIZE_ADDR     0x44
 #define CFG_AXI_USER_MAX_READ_REQ_SIZE_RSVD_1_MASK         GENMASK(31, 7)
 #define CFG_AXI_USER_MAX_READ_REQ_SIZE_USISSUED_MASK       GENMASK(6, 4)
 #define CFG_AXI_USER_MAX_READ_REQ_SIZE_RSVD_2_MASK         BIT(3)
 #define CFG_AXI_USER_MAX_READ_REQ_SIZE_USPROG_MASK         GENMASK(2, 0)
-#define EQDMA_CPM5_CFG_BLK_MISC_CTL_ADDR                        0x4C
+#define EQDMA_CPM5_CFG_BLK_MISC_CTL_ADDR                   0x4C
 #define CFG_BLK_MISC_CTL_RSVD_1_MASK                       GENMASK(31, 24)
 #define CFG_BLK_MISC_CTL_10B_TAG_EN_MASK                   BIT(23)
 #define CFG_BLK_MISC_CTL_RSVD_2_MASK                       BIT(22)
@@ -124,37 +125,37 @@ struct xreg_info *eqdma_cpm5_config_regs_get(void);
 #define CFG_BLK_MISC_CTL_NUM_TAG_MASK                      GENMASK(19, 8)
 #define CFG_BLK_MISC_CTL_RSVD_3_MASK                       GENMASK(7, 5)
 #define CFG_BLK_MISC_CTL_RQ_METERING_MULTIPLIER_MASK       GENMASK(4, 0)
-#define EQDMA_CPM5_CFG_PL_CRED_CTL_ADDR                         0x68
+#define EQDMA_CPM5_CFG_PL_CRED_CTL_ADDR                    0x68
 #define CFG_PL_CRED_CTL_RSVD_1_MASK                        GENMASK(31, 5)
 #define CFG_PL_CRED_CTL_SLAVE_CRD_RLS_MASK                 BIT(4)
 #define CFG_PL_CRED_CTL_RSVD_2_MASK                        GENMASK(3, 1)
 #define CFG_PL_CRED_CTL_MASTER_CRD_RST_MASK                BIT(0)
-#define EQDMA_CPM5_CFG_BLK_SCRATCH_ADDR                         0x80
+#define EQDMA_CPM5_CFG_BLK_SCRATCH_ADDR                    0x80
 #define CFG_BLK_SCRATCH_MASK                              GENMASK(31, 0)
-#define EQDMA_CPM5_CFG_GIC_ADDR                                 0xA0
+#define EQDMA_CPM5_CFG_GIC_ADDR                            0xA0
 #define CFG_GIC_RSVD_1_MASK                                GENMASK(31, 1)
 #define CFG_GIC_GIC_IRQ_MASK                               BIT(0)
-#define EQDMA_CPM5_RAM_SBE_MSK_1_A_ADDR                         0xE0
+#define EQDMA_CPM5_RAM_SBE_MSK_1_A_ADDR                    0xE0
 #define RAM_SBE_MSK_1_A_MASK                          GENMASK(31, 0)
-#define EQDMA_CPM5_RAM_SBE_STS_1_A_ADDR                         0xE4
+#define EQDMA_CPM5_RAM_SBE_STS_1_A_ADDR                    0xE4
 #define RAM_SBE_STS_1_A_RSVD_MASK                          GENMASK(31, 5)
 #define RAM_SBE_STS_1_A_PFCH_CTXT_CAM_RAM_1_MASK           BIT(4)
 #define RAM_SBE_STS_1_A_PFCH_CTXT_CAM_RAM_0_MASK           BIT(3)
 #define RAM_SBE_STS_1_A_TAG_EVEN_RAM_MASK                  BIT(2)
 #define RAM_SBE_STS_1_A_TAG_ODD_RAM_MASK                   BIT(1)
 #define RAM_SBE_STS_1_A_RC_RRQ_EVEN_RAM_MASK               BIT(0)
-#define EQDMA_CPM5_RAM_DBE_MSK_1_A_ADDR                         0xE8
+#define EQDMA_CPM5_RAM_DBE_MSK_1_A_ADDR                    0xE8
 #define RAM_DBE_MSK_1_A_MASK                          GENMASK(31, 0)
-#define EQDMA_CPM5_RAM_DBE_STS_1_A_ADDR                         0xEC
+#define EQDMA_CPM5_RAM_DBE_STS_1_A_ADDR                    0xEC
 #define RAM_DBE_STS_1_A_RSVD_MASK                          GENMASK(31, 5)
 #define RAM_DBE_STS_1_A_PFCH_CTXT_CAM_RAM_1_MASK           BIT(4)
 #define RAM_DBE_STS_1_A_PFCH_CTXT_CAM_RAM_0_MASK           BIT(3)
 #define RAM_DBE_STS_1_A_TAG_EVEN_RAM_MASK                  BIT(2)
 #define RAM_DBE_STS_1_A_TAG_ODD_RAM_MASK                   BIT(1)
 #define RAM_DBE_STS_1_A_RC_RRQ_EVEN_RAM_MASK               BIT(0)
-#define EQDMA_CPM5_RAM_SBE_MSK_A_ADDR                           0xF0
+#define EQDMA_CPM5_RAM_SBE_MSK_A_ADDR                      0xF0
 #define RAM_SBE_MSK_A_MASK                            GENMASK(31, 0)
-#define EQDMA_CPM5_RAM_SBE_STS_A_ADDR                           0xF4
+#define EQDMA_CPM5_RAM_SBE_STS_A_ADDR                      0xF4
 #define RAM_SBE_STS_A_RC_RRQ_ODD_RAM_MASK                  BIT(31)
 #define RAM_SBE_STS_A_PEND_FIFO_RAM_MASK                   BIT(30)
 #define RAM_SBE_STS_A_PFCH_LL_RAM_MASK                     BIT(29)
@@ -184,9 +185,9 @@ struct xreg_info *eqdma_cpm5_config_regs_get(void);
 #define RAM_SBE_STS_A_MI_H2C2_DAT_MASK                     BIT(2)
 #define RAM_SBE_STS_A_MI_H2C1_DAT_MASK                     BIT(1)
 #define RAM_SBE_STS_A_MI_H2C0_DAT_MASK                     BIT(0)
-#define EQDMA_CPM5_RAM_DBE_MSK_A_ADDR                           0xF8
+#define EQDMA_CPM5_RAM_DBE_MSK_A_ADDR                      0xF8
 #define RAM_DBE_MSK_A_MASK                            GENMASK(31, 0)
-#define EQDMA_CPM5_RAM_DBE_STS_A_ADDR                           0xFC
+#define EQDMA_CPM5_RAM_DBE_STS_A_ADDR                      0xFC
 #define RAM_DBE_STS_A_RC_RRQ_ODD_RAM_MASK                  BIT(31)
 #define RAM_DBE_STS_A_PEND_FIFO_RAM_MASK                   BIT(30)
 #define RAM_DBE_STS_A_PFCH_LL_RAM_MASK                     BIT(29)
@@ -216,10 +217,10 @@ struct xreg_info *eqdma_cpm5_config_regs_get(void);
 #define RAM_DBE_STS_A_MI_H2C2_DAT_MASK                     BIT(2)
 #define RAM_DBE_STS_A_MI_H2C1_DAT_MASK                     BIT(1)
 #define RAM_DBE_STS_A_MI_H2C0_DAT_MASK                     BIT(0)
-#define EQDMA_CPM5_GLBL2_IDENTIFIER_ADDR                        0x100
+#define EQDMA_CPM5_GLBL2_IDENTIFIER_ADDR                   0x100
 #define GLBL2_IDENTIFIER_MASK                             GENMASK(31, 8)
 #define GLBL2_IDENTIFIER_VERSION_MASK                      GENMASK(7, 0)
-#define EQDMA_CPM5_GLBL2_CHANNEL_INST_ADDR                      0x114
+#define EQDMA_CPM5_GLBL2_CHANNEL_INST_ADDR                 0x114
 #define GLBL2_CHANNEL_INST_RSVD_1_MASK                     GENMASK(31, 18)
 #define GLBL2_CHANNEL_INST_C2H_ST_MASK                     BIT(17)
 #define GLBL2_CHANNEL_INST_H2C_ST_MASK                     BIT(16)
@@ -227,7 +228,7 @@ struct xreg_info *eqdma_cpm5_config_regs_get(void);
 #define GLBL2_CHANNEL_INST_C2H_ENG_MASK                    GENMASK(11, 8)
 #define GLBL2_CHANNEL_INST_RSVD_3_MASK                     GENMASK(7, 4)
 #define GLBL2_CHANNEL_INST_H2C_ENG_MASK                    GENMASK(3, 0)
-#define EQDMA_CPM5_GLBL2_CHANNEL_MDMA_ADDR                      0x118
+#define EQDMA_CPM5_GLBL2_CHANNEL_MDMA_ADDR                 0x118
 #define GLBL2_CHANNEL_MDMA_RSVD_1_MASK                     GENMASK(31, 18)
 #define GLBL2_CHANNEL_MDMA_C2H_ST_MASK                     BIT(17)
 #define GLBL2_CHANNEL_MDMA_H2C_ST_MASK                     BIT(16)
@@ -235,7 +236,7 @@ struct xreg_info *eqdma_cpm5_config_regs_get(void);
 #define GLBL2_CHANNEL_MDMA_C2H_ENG_MASK                    GENMASK(11, 8)
 #define GLBL2_CHANNEL_MDMA_RSVD_3_MASK                     GENMASK(7, 4)
 #define GLBL2_CHANNEL_MDMA_H2C_ENG_MASK                    GENMASK(3, 0)
-#define EQDMA_CPM5_GLBL2_CHANNEL_STRM_ADDR                      0x11C
+#define EQDMA_CPM5_GLBL2_CHANNEL_STRM_ADDR                 0x11C
 #define GLBL2_CHANNEL_STRM_RSVD_1_MASK                     GENMASK(31, 18)
 #define GLBL2_CHANNEL_STRM_C2H_ST_MASK                     BIT(17)
 #define GLBL2_CHANNEL_STRM_H2C_ST_MASK                     BIT(16)
@@ -243,24 +244,24 @@ struct xreg_info *eqdma_cpm5_config_regs_get(void);
 #define GLBL2_CHANNEL_STRM_C2H_ENG_MASK                    GENMASK(11, 8)
 #define GLBL2_CHANNEL_STRM_RSVD_3_MASK                     GENMASK(7, 4)
 #define GLBL2_CHANNEL_STRM_H2C_ENG_MASK                    GENMASK(3, 0)
-#define EQDMA_CPM5_GLBL2_CHANNEL_CAP_ADDR                       0x120
+#define EQDMA_CPM5_GLBL2_CHANNEL_CAP_ADDR                  0x120
 #define GLBL2_CHANNEL_CAP_RSVD_1_MASK                      GENMASK(31, 12)
 #define GLBL2_CHANNEL_CAP_MULTIQ_MAX_MASK                  GENMASK(11, 0)
-#define EQDMA_CPM5_GLBL2_CHANNEL_PASID_CAP_ADDR                 0x128
+#define EQDMA_CPM5_GLBL2_CHANNEL_PASID_CAP_ADDR            0x128
 #define GLBL2_CHANNEL_PASID_CAP_RSVD_1_MASK                GENMASK(31, 2)
 #define GLBL2_CHANNEL_PASID_CAP_BRIDGEEN_MASK              BIT(1)
 #define GLBL2_CHANNEL_PASID_CAP_DMAEN_MASK                 BIT(0)
-#define EQDMA_CPM5_GLBL2_SYSTEM_ID_ADDR                         0x130
+#define EQDMA_CPM5_GLBL2_SYSTEM_ID_ADDR                    0x130
 #define GLBL2_SYSTEM_ID_RSVD_1_MASK                        GENMASK(31, 16)
 #define GLBL2_SYSTEM_ID_MASK                              GENMASK(15, 0)
-#define EQDMA_CPM5_GLBL2_MISC_CAP_ADDR                          0x134
+#define EQDMA_CPM5_GLBL2_MISC_CAP_ADDR                     0x134
 #define GLBL2_MISC_CAP_MASK                               GENMASK(31, 0)
-#define EQDMA_CPM5_GLBL2_DBG_PCIE_RQ0_ADDR                      0x1B8
+#define EQDMA_CPM5_GLBL2_DBG_PCIE_RQ0_ADDR                 0x1B8
 #define GLBL2_PCIE_RQ0_NPH_AVL_MASK                    GENMASK(31, 20)
 #define GLBL2_PCIE_RQ0_RCB_AVL_MASK                    GENMASK(19, 9)
 #define GLBL2_PCIE_RQ0_SLV_RD_CREDS_MASK               GENMASK(8, 2)
 #define GLBL2_PCIE_RQ0_TAG_EP_MASK                     GENMASK(1, 0)
-#define EQDMA_CPM5_GLBL2_DBG_PCIE_RQ1_ADDR                      0x1BC
+#define EQDMA_CPM5_GLBL2_DBG_PCIE_RQ1_ADDR                 0x1BC
 #define GLBL2_PCIE_RQ1_RSVD_1_MASK                     GENMASK(31, 21)
 #define GLBL2_PCIE_RQ1_TAG_FL_MASK                     GENMASK(20, 19)
 #define GLBL2_PCIE_RQ1_WTLP_HEADER_FIFO_FL_MASK        BIT(18)
@@ -278,7 +279,7 @@ struct xreg_info *eqdma_cpm5_config_regs_get(void);
 #define GLBL2_PCIE_RQ1_RREQ1_RDY_MASK                  BIT(2)
 #define GLBL2_PCIE_RQ1_WTLP_REQ_MASK                   BIT(1)
 #define GLBL2_PCIE_RQ1_WTLP_STRADDLE_MASK              BIT(0)
-#define EQDMA_CPM5_GLBL2_DBG_AXIMM_WR0_ADDR                     0x1C0
+#define EQDMA_CPM5_GLBL2_DBG_AXIMM_WR0_ADDR                0x1C0
 #define GLBL2_AXIMM_WR0_RSVD_1_MASK                    GENMASK(31, 27)
 #define GLBL2_AXIMM_WR0_WR_REQ_MASK                    BIT(26)
 #define GLBL2_AXIMM_WR0_WR_CHN_MASK                    GENMASK(25, 23)
@@ -294,14 +295,14 @@ struct xreg_info *eqdma_cpm5_config_regs_get(void);
 #define GLBL2_AXIMM_WR0_AWID_MASK                      GENMASK(4, 2)
 #define GLBL2_AXIMM_WR0_AWVALID_MASK                   BIT(1)
 #define GLBL2_AXIMM_WR0_AWREADY_MASK                   BIT(0)
-#define EQDMA_CPM5_GLBL2_DBG_AXIMM_WR1_ADDR                     0x1C4
+#define EQDMA_CPM5_GLBL2_DBG_AXIMM_WR1_ADDR                0x1C4
 #define GLBL2_AXIMM_WR1_RSVD_1_MASK                    GENMASK(31, 30)
 #define GLBL2_AXIMM_WR1_BRSP_CNT4_MASK                 GENMASK(29, 24)
 #define GLBL2_AXIMM_WR1_BRSP_CNT3_MASK                 GENMASK(23, 18)
 #define GLBL2_AXIMM_WR1_BRSP_CNT2_MASK                 GENMASK(17, 12)
 #define GLBL2_AXIMM_WR1_BRSP_CNT1_MASK                 GENMASK(11, 6)
 #define GLBL2_AXIMM_WR1_BRSP_CNT0_MASK                 GENMASK(5, 0)
-#define EQDMA_CPM5_GLBL2_DBG_AXIMM_RD0_ADDR                     0x1C8
+#define EQDMA_CPM5_GLBL2_DBG_AXIMM_RD0_ADDR                0x1C8
 #define GLBL2_AXIMM_RD0_RSVD_1_MASK                    GENMASK(31, 23)
 #define GLBL2_AXIMM_RD0_PND_CNT_MASK                   GENMASK(22, 17)
 #define GLBL2_AXIMM_RD0_RD_REQ_MASK                    BIT(16)
@@ -313,14 +314,14 @@ struct xreg_info *eqdma_cpm5_config_regs_get(void);
 #define GLBL2_AXIMM_RD0_ARID_MASK                      GENMASK(4, 2)
 #define GLBL2_AXIMM_RD0_ARVALID_MASK                   BIT(1)
 #define GLBL2_AXIMM_RD0_ARREADY_MASK                   BIT(0)
-#define EQDMA_CPM5_GLBL2_DBG_AXIMM_RD1_ADDR                     0x1CC
+#define EQDMA_CPM5_GLBL2_DBG_AXIMM_RD1_ADDR                0x1CC
 #define GLBL2_AXIMM_RD1_RSVD_1_MASK                    GENMASK(31, 30)
 #define GLBL2_AXIMM_RD1_RRSP_CNT4_MASK                 GENMASK(29, 24)
 #define GLBL2_AXIMM_RD1_RRSP_CNT3_MASK                 GENMASK(23, 18)
 #define GLBL2_AXIMM_RD1_RRSP_CNT2_MASK                 GENMASK(17, 12)
 #define GLBL2_AXIMM_RD1_RRSP_CNT1_MASK                 GENMASK(11, 6)
 #define GLBL2_AXIMM_RD1_RRSP_CNT0_MASK                 GENMASK(5, 0)
-#define EQDMA_CPM5_GLBL2_DBG_FAB0_ADDR                          0x1D0
+#define EQDMA_CPM5_GLBL2_DBG_FAB0_ADDR                     0x1D0
 #define GLBL2_FAB0_H2C_INB_CONV_IN_VLD_MASK            BIT(31)
 #define GLBL2_FAB0_H2C_INB_CONV_IN_RDY_MASK            BIT(30)
 #define GLBL2_FAB0_H2C_SEG_IN_VLD_MASK                 BIT(29)
@@ -341,7 +342,7 @@ struct xreg_info *eqdma_cpm5_config_regs_get(void);
 #define GLBL2_FAB0_IRQ_IN_AFIFO_FULL_MASK              BIT(2)
 #define GLBL2_FAB0_IRQ_IN_AFIFO_EMPTY_MASK             BIT(1)
 #define GLBL2_FAB0_IMM_CRD_AFIFO_EMPTY_MASK            BIT(0)
-#define EQDMA_CPM5_GLBL2_DBG_FAB1_ADDR                          0x1D4
+#define EQDMA_CPM5_GLBL2_DBG_FAB1_ADDR                     0x1D4
 #define GLBL2_FAB1_BYP_OUT_CRDT_STAT_MASK              GENMASK(31, 25)
 #define GLBL2_FAB1_TM_DSC_STS_CRDT_STAT_MASK           GENMASK(24, 18)
 #define GLBL2_FAB1_C2H_CMN_AFIFO_FULL_MASK             BIT(17)
@@ -354,66 +355,66 @@ struct xreg_info *eqdma_cpm5_config_regs_get(void);
 #define GLBL2_FAB1_H2C_BYP_IN_AFIFO_FULL_MASK          BIT(4)
 #define GLBL2_FAB1_RSVD_4_MASK                         GENMASK(3, 1)
 #define GLBL2_FAB1_H2C_BYP_IN_AFIFO_EMPTY_MASK         BIT(0)
-#define EQDMA_CPM5_GLBL2_DBG_MATCH_SEL_ADDR                     0x1F4
+#define EQDMA_CPM5_GLBL2_DBG_MATCH_SEL_ADDR                0x1F4
 #define GLBL2_MATCH_SEL_RSV_MASK                       GENMASK(31, 18)
 #define GLBL2_MATCH_SEL_CSR_SEL_MASK                   GENMASK(17, 13)
 #define GLBL2_MATCH_SEL_CSR_EN_MASK                    BIT(12)
 #define GLBL2_MATCH_SEL_ROTATE1_MASK                   GENMASK(11, 10)
 #define GLBL2_MATCH_SEL_ROTATE0_MASK                   GENMASK(9, 8)
 #define GLBL2_MATCH_SEL_SEL_MASK                       GENMASK(7, 0)
-#define EQDMA_CPM5_GLBL2_DBG_MATCH_MSK_ADDR                     0x1F8
+#define EQDMA_CPM5_GLBL2_DBG_MATCH_MSK_ADDR                0x1F8
 #define GLBL2_MATCH_MSK_MASK                      GENMASK(31, 0)
-#define EQDMA_CPM5_GLBL2_DBG_MATCH_PAT_ADDR                     0x1FC
+#define EQDMA_CPM5_GLBL2_DBG_MATCH_PAT_ADDR                0x1FC
 #define GLBL2_MATCH_PAT_PATTERN_MASK                   GENMASK(31, 0)
-#define EQDMA_CPM5_GLBL_RNG_SZ_1_ADDR                           0x204
+#define EQDMA_CPM5_GLBL_RNG_SZ_1_ADDR                      0x204
 #define GLBL_RNG_SZ_1_RSVD_1_MASK                          GENMASK(31, 16)
 #define GLBL_RNG_SZ_1_RING_SIZE_MASK                       GENMASK(15, 0)
-#define EQDMA_CPM5_GLBL_RNG_SZ_2_ADDR                           0x208
+#define EQDMA_CPM5_GLBL_RNG_SZ_2_ADDR                      0x208
 #define GLBL_RNG_SZ_2_RSVD_1_MASK                          GENMASK(31, 16)
 #define GLBL_RNG_SZ_2_RING_SIZE_MASK                       GENMASK(15, 0)
-#define EQDMA_CPM5_GLBL_RNG_SZ_3_ADDR                           0x20C
+#define EQDMA_CPM5_GLBL_RNG_SZ_3_ADDR                      0x20C
 #define GLBL_RNG_SZ_3_RSVD_1_MASK                          GENMASK(31, 16)
 #define GLBL_RNG_SZ_3_RING_SIZE_MASK                       GENMASK(15, 0)
-#define EQDMA_CPM5_GLBL_RNG_SZ_4_ADDR                           0x210
+#define EQDMA_CPM5_GLBL_RNG_SZ_4_ADDR                      0x210
 #define GLBL_RNG_SZ_4_RSVD_1_MASK                          GENMASK(31, 16)
 #define GLBL_RNG_SZ_4_RING_SIZE_MASK                       GENMASK(15, 0)
-#define EQDMA_CPM5_GLBL_RNG_SZ_5_ADDR                           0x214
+#define EQDMA_CPM5_GLBL_RNG_SZ_5_ADDR                      0x214
 #define GLBL_RNG_SZ_5_RSVD_1_MASK                          GENMASK(31, 16)
 #define GLBL_RNG_SZ_5_RING_SIZE_MASK                       GENMASK(15, 0)
-#define EQDMA_CPM5_GLBL_RNG_SZ_6_ADDR                           0x218
+#define EQDMA_CPM5_GLBL_RNG_SZ_6_ADDR                      0x218
 #define GLBL_RNG_SZ_6_RSVD_1_MASK                          GENMASK(31, 16)
 #define GLBL_RNG_SZ_6_RING_SIZE_MASK                       GENMASK(15, 0)
-#define EQDMA_CPM5_GLBL_RNG_SZ_7_ADDR                           0x21C
+#define EQDMA_CPM5_GLBL_RNG_SZ_7_ADDR                      0x21C
 #define GLBL_RNG_SZ_7_RSVD_1_MASK                          GENMASK(31, 16)
 #define GLBL_RNG_SZ_7_RING_SIZE_MASK                       GENMASK(15, 0)
-#define EQDMA_CPM5_GLBL_RNG_SZ_8_ADDR                           0x220
+#define EQDMA_CPM5_GLBL_RNG_SZ_8_ADDR                      0x220
 #define GLBL_RNG_SZ_8_RSVD_1_MASK                          GENMASK(31, 16)
 #define GLBL_RNG_SZ_8_RING_SIZE_MASK                       GENMASK(15, 0)
-#define EQDMA_CPM5_GLBL_RNG_SZ_9_ADDR                           0x224
+#define EQDMA_CPM5_GLBL_RNG_SZ_9_ADDR                      0x224
 #define GLBL_RNG_SZ_9_RSVD_1_MASK                          GENMASK(31, 16)
 #define GLBL_RNG_SZ_9_RING_SIZE_MASK                       GENMASK(15, 0)
-#define EQDMA_CPM5_GLBL_RNG_SZ_A_ADDR                           0x228
+#define EQDMA_CPM5_GLBL_RNG_SZ_A_ADDR                      0x228
 #define GLBL_RNG_SZ_A_RSVD_1_MASK                          GENMASK(31, 16)
 #define GLBL_RNG_SZ_A_RING_SIZE_MASK                       GENMASK(15, 0)
-#define EQDMA_CPM5_GLBL_RNG_SZ_B_ADDR                           0x22C
+#define EQDMA_CPM5_GLBL_RNG_SZ_B_ADDR                      0x22C
 #define GLBL_RNG_SZ_B_RSVD_1_MASK                          GENMASK(31, 16)
 #define GLBL_RNG_SZ_B_RING_SIZE_MASK                       GENMASK(15, 0)
-#define EQDMA_CPM5_GLBL_RNG_SZ_C_ADDR                           0x230
+#define EQDMA_CPM5_GLBL_RNG_SZ_C_ADDR                      0x230
 #define GLBL_RNG_SZ_C_RSVD_1_MASK                          GENMASK(31, 16)
 #define GLBL_RNG_SZ_C_RING_SIZE_MASK                       GENMASK(15, 0)
-#define EQDMA_CPM5_GLBL_RNG_SZ_D_ADDR                           0x234
+#define EQDMA_CPM5_GLBL_RNG_SZ_D_ADDR                      0x234
 #define GLBL_RNG_SZ_D_RSVD_1_MASK                          GENMASK(31, 16)
 #define GLBL_RNG_SZ_D_RING_SIZE_MASK                       GENMASK(15, 0)
-#define EQDMA_CPM5_GLBL_RNG_SZ_E_ADDR                           0x238
+#define EQDMA_CPM5_GLBL_RNG_SZ_E_ADDR                      0x238
 #define GLBL_RNG_SZ_E_RSVD_1_MASK                          GENMASK(31, 16)
 #define GLBL_RNG_SZ_E_RING_SIZE_MASK                       GENMASK(15, 0)
-#define EQDMA_CPM5_GLBL_RNG_SZ_F_ADDR                           0x23C
+#define EQDMA_CPM5_GLBL_RNG_SZ_F_ADDR                      0x23C
 #define GLBL_RNG_SZ_F_RSVD_1_MASK                          GENMASK(31, 16)
 #define GLBL_RNG_SZ_F_RING_SIZE_MASK                       GENMASK(15, 0)
-#define EQDMA_CPM5_GLBL_RNG_SZ_10_ADDR                          0x240
+#define EQDMA_CPM5_GLBL_RNG_SZ_10_ADDR                     0x240
 #define GLBL_RNG_SZ_10_RSVD_1_MASK                         GENMASK(31, 16)
 #define GLBL_RNG_SZ_10_RING_SIZE_MASK                      GENMASK(15, 0)
-#define EQDMA_CPM5_GLBL_ERR_STAT_ADDR                           0x248
+#define EQDMA_CPM5_GLBL_ERR_STAT_ADDR                      0x248
 #define GLBL_ERR_STAT_RSVD_1_MASK                          GENMASK(31, 18)
 #define GLBL_ERR_STAT_ERR_FAB_MASK                         BIT(17)
 #define GLBL_ERR_STAT_ERR_H2C_ST_MASK                      BIT(16)
@@ -428,16 +429,16 @@ struct xreg_info *eqdma_cpm5_config_regs_get(void);
 #define GLBL_ERR_STAT_ERR_DSC_MASK                         BIT(2)
 #define GLBL_ERR_STAT_ERR_RAM_DBE_MASK                     BIT(1)
 #define GLBL_ERR_STAT_ERR_RAM_SBE_MASK                     BIT(0)
-#define EQDMA_CPM5_GLBL_ERR_MASK_ADDR                           0x24C
+#define EQDMA_CPM5_GLBL_ERR_MASK_ADDR                      0x24C
 #define GLBL_ERR_MASK                            GENMASK(31, 0)
-#define EQDMA_CPM5_GLBL_DSC_CFG_ADDR                            0x250
+#define EQDMA_CPM5_GLBL_DSC_CFG_ADDR                       0x250
 #define GLBL_DSC_CFG_RSVD_1_MASK                           GENMASK(31, 10)
 #define GLBL_DSC_CFG_UNC_OVR_COR_MASK                      BIT(9)
 #define GLBL_DSC_CFG_CTXT_FER_DIS_MASK                     BIT(8)
 #define GLBL_DSC_CFG_RSVD_2_MASK                           GENMASK(7, 6)
 #define GLBL_DSC_CFG_MAXFETCH_MASK                         GENMASK(5, 3)
 #define GLBL_DSC_CFG_WB_ACC_INT_MASK                       GENMASK(2, 0)
-#define EQDMA_CPM5_GLBL_DSC_ERR_STS_ADDR                        0x254
+#define EQDMA_CPM5_GLBL_DSC_ERR_STS_ADDR                   0x254
 #define GLBL_DSC_ERR_STS_RSVD_1_MASK                       GENMASK(31, 26)
 #define GLBL_DSC_ERR_STS_PORT_ID_MASK                      BIT(25)
 #define GLBL_DSC_ERR_STS_SBE_MASK                          BIT(24)
@@ -456,20 +457,20 @@ struct xreg_info *eqdma_cpm5_config_regs_get(void);
 #define GLBL_DSC_ERR_STS_BCNT_MASK                         BIT(3)
 #define GLBL_DSC_ERR_STS_UR_CA_MASK                        BIT(2)
 #define GLBL_DSC_ERR_STS_POISON_MASK                       BIT(1)
-#define EQDMA_CPM5_GLBL_DSC_ERR_MSK_ADDR                        0x258
+#define EQDMA_CPM5_GLBL_DSC_ERR_MSK_ADDR                   0x258
 #define GLBL_DSC_ERR_MSK_MASK                         GENMASK(31, 0)
-#define EQDMA_CPM5_GLBL_DSC_ERR_LOG0_ADDR                       0x25C
+#define EQDMA_CPM5_GLBL_DSC_ERR_LOG0_ADDR                  0x25C
 #define GLBL_DSC_ERR_LOG0_VALID_MASK                       BIT(31)
 #define GLBL_DSC_ERR_LOG0_SEL_MASK                         BIT(30)
 #define GLBL_DSC_ERR_LOG0_RSVD_1_MASK                      GENMASK(29, 13)
 #define GLBL_DSC_ERR_LOG0_QID_MASK                         GENMASK(12, 0)
-#define EQDMA_CPM5_GLBL_DSC_ERR_LOG1_ADDR                       0x260
+#define EQDMA_CPM5_GLBL_DSC_ERR_LOG1_ADDR                  0x260
 #define GLBL_DSC_ERR_LOG1_RSVD_1_MASK                      GENMASK(31, 28)
 #define GLBL_DSC_ERR_LOG1_CIDX_MASK                        GENMASK(27, 12)
 #define GLBL_DSC_ERR_LOG1_RSVD_2_MASK                      GENMASK(11, 9)
 #define GLBL_DSC_ERR_LOG1_SUB_TYPE_MASK                    GENMASK(8, 5)
 #define GLBL_DSC_ERR_LOG1_ERR_TYPE_MASK                    GENMASK(4, 0)
-#define EQDMA_CPM5_GLBL_TRQ_ERR_STS_ADDR                        0x264
+#define EQDMA_CPM5_GLBL_TRQ_ERR_STS_ADDR                   0x264
 #define GLBL_TRQ_ERR_STS_RSVD_1_MASK                       GENMASK(31, 8)
 #define GLBL_TRQ_ERR_STS_TCP_QSPC_TIMEOUT_MASK             BIT(7)
 #define GLBL_TRQ_ERR_STS_RSVD_2_MASK                       BIT(6)
@@ -479,14 +480,14 @@ struct xreg_info *eqdma_cpm5_config_regs_get(void);
 #define GLBL_TRQ_ERR_STS_RSVD_3_MASK                       BIT(2)
 #define GLBL_TRQ_ERR_STS_VF_ACCESS_ERR_MASK                BIT(1)
 #define GLBL_TRQ_ERR_STS_CSR_UNMAPPED_MASK                 BIT(0)
-#define EQDMA_CPM5_GLBL_TRQ_ERR_MSK_ADDR                        0x268
+#define EQDMA_CPM5_GLBL_TRQ_ERR_MSK_ADDR                   0x268
 #define GLBL_TRQ_ERR_MSK_MASK                         GENMASK(31, 0)
-#define EQDMA_CPM5_GLBL_TRQ_ERR_LOG_ADDR                        0x26C
+#define EQDMA_CPM5_GLBL_TRQ_ERR_LOG_ADDR                   0x26C
 #define GLBL_TRQ_ERR_LOG_SRC_MASK                          BIT(31)
 #define GLBL_TRQ_ERR_LOG_TARGET_MASK                       GENMASK(30, 27)
 #define GLBL_TRQ_ERR_LOG_FUNC_MASK                         GENMASK(26, 17)
 #define GLBL_TRQ_ERR_LOG_ADDRESS_MASK                      GENMASK(16, 0)
-#define EQDMA_CPM5_GLBL_DSC_DBG_DAT0_ADDR                       0x270
+#define EQDMA_CPM5_GLBL_DSC_DBG_DAT0_ADDR                  0x270
 #define GLBL_DSC_DAT0_RSVD_1_MASK                      GENMASK(31, 30)
 #define GLBL_DSC_DAT0_CTXT_ARB_DIR_MASK                BIT(29)
 #define GLBL_DSC_DAT0_CTXT_ARB_QID_MASK                GENMASK(28, 17)
@@ -498,23 +499,23 @@ struct xreg_info *eqdma_cpm5_config_regs_get(void);
 #define GLBL_DSC_DAT0_RRQ_FIFO_SPC_STALL_MASK          GENMASK(5, 4)
 #define GLBL_DSC_DAT0_FAB_MRKR_RSP_STALL_MASK          GENMASK(3, 2)
 #define GLBL_DSC_DAT0_DSC_OUT_STALL_MASK               GENMASK(1, 0)
-#define EQDMA_CPM5_GLBL_DSC_DBG_DAT1_ADDR                       0x274
+#define EQDMA_CPM5_GLBL_DSC_DBG_DAT1_ADDR                  0x274
 #define GLBL_DSC_DAT1_RSVD_1_MASK                      GENMASK(31, 28)
 #define GLBL_DSC_DAT1_EVT_SPC_C2H_MASK                 GENMASK(27, 22)
 #define GLBL_DSC_DAT1_EVT_SP_H2C_MASK                  GENMASK(21, 16)
 #define GLBL_DSC_DAT1_DSC_SPC_C2H_MASK                 GENMASK(15, 8)
 #define GLBL_DSC_DAT1_DSC_SPC_H2C_MASK                 GENMASK(7, 0)
-#define EQDMA_CPM5_GLBL_DSC_DBG_CTL_ADDR                        0x278
+#define EQDMA_CPM5_GLBL_DSC_DBG_CTL_ADDR                   0x278
 #define GLBL_DSC_CTL_RSVD_1_MASK                       GENMASK(31, 3)
 #define GLBL_DSC_CTL_SELECT_MASK                       GENMASK(2, 0)
-#define EQDMA_CPM5_GLBL_DSC_ERR_LOG2_ADDR                       0x27c
+#define EQDMA_CPM5_GLBL_DSC_ERR_LOG2_ADDR                  0x27c
 #define GLBL_DSC_ERR_LOG2_OLD_PIDX_MASK                    GENMASK(31, 16)
 #define GLBL_DSC_ERR_LOG2_NEW_PIDX_MASK                    GENMASK(15, 0)
-#define EQDMA_CPM5_GLBL_GLBL_INTERRUPT_CFG_ADDR                 0x2c4
+#define EQDMA_CPM5_GLBL_GLBL_INTERRUPT_CFG_ADDR            0x2c4
 #define GLBL_GLBL_INTERRUPT_CFG_RSVD_1_MASK                GENMASK(31, 2)
 #define GLBL_GLBL_INTERRUPT_CFG_LGCY_INTR_PENDING_MASK     BIT(1)
 #define GLBL_GLBL_INTERRUPT_CFG_EN_LGCY_INTR_MASK          BIT(0)
-#define EQDMA_CPM5_GLBL_VCH_HOST_PROFILE_ADDR                   0x2c8
+#define EQDMA_CPM5_GLBL_VCH_HOST_PROFILE_ADDR              0x2c8
 #define GLBL_VCH_HOST_PROFILE_RSVD_1_MASK                  GENMASK(31, 28)
 #define GLBL_VCH_HOST_PROFILE_2C_MM_MASK                   GENMASK(27, 24)
 #define GLBL_VCH_HOST_PROFILE_2C_ST_MASK                   GENMASK(23, 20)
@@ -523,68 +524,63 @@ struct xreg_info *eqdma_cpm5_config_regs_get(void);
 #define GLBL_VCH_HOST_PROFILE_VCH_INT_AGGR_MASK            GENMASK(11, 8)
 #define GLBL_VCH_HOST_PROFILE_VCH_CMPT_MASK                GENMASK(7, 4)
 #define GLBL_VCH_HOST_PROFILE_VCH_C2H_PLD_MASK             GENMASK(3, 0)
-#define EQDMA_CPM5_GLBL_BRIDGE_HOST_PROFILE_ADDR                0x308
+#define EQDMA_CPM5_GLBL_BRIDGE_HOST_PROFILE_ADDR           0x308
 #define GLBL_BRIDGE_HOST_PROFILE_RSVD_1_MASK               GENMASK(31, 4)
 #define GLBL_BRIDGE_HOST_PROFILE_BDGID_MASK                GENMASK(3, 0)
-#define EQDMA_CPM5_AXIMM_IRQ_DEST_ADDR_ADDR                     0x30c
+#define EQDMA_CPM5_AXIMM_IRQ_DEST_ADDR_ADDR                0x30c
 #define AXIMM_IRQ_DEST_ADDR_ADDR_MASK                      GENMASK(31, 0)
-#define EQDMA_CPM5_FAB_ERR_LOG_ADDR                             0x314
+#define EQDMA_CPM5_FAB_ERR_LOG_ADDR                        0x314
 #define FAB_ERR_LOG_RSVD_1_MASK                            GENMASK(31, 7)
 #define FAB_ERR_LOG_SRC_MASK                               GENMASK(6, 0)
-#define EQDMA_CPM5_GLBL_REQ_ERR_STS_ADDR                        0x318
-#define GLBL_REQ_ERR_STS_RSVD_1_MASK                       GENMASK(31, 11)
-#define GLBL_REQ_ERR_STS_RC_DISCONTINUE_MASK               BIT(10)
-#define GLBL_REQ_ERR_STS_RC_PRTY_MASK                      BIT(9)
-#define GLBL_REQ_ERR_STS_RC_FLR_MASK                       BIT(8)
-#define GLBL_REQ_ERR_STS_RC_TIMEOUT_MASK                   BIT(7)
-#define GLBL_REQ_ERR_STS_RC_INV_BCNT_MASK                  BIT(6)
-#define GLBL_REQ_ERR_STS_RC_INV_TAG_MASK                   BIT(5)
-#define GLBL_REQ_ERR_STS_RC_START_ADDR_MISMCH_MASK         BIT(4)
-#define GLBL_REQ_ERR_STS_RC_RID_TC_ATTR_MISMCH_MASK        BIT(3)
-#define GLBL_REQ_ERR_STS_RC_NO_DATA_MASK                   BIT(2)
-#define GLBL_REQ_ERR_STS_RC_UR_CA_CRS_MASK                 BIT(1)
-#define GLBL_REQ_ERR_STS_RC_POISONED_MASK                  BIT(0)
-#define EQDMA_CPM5_GLBL_REQ_ERR_MSK_ADDR                        0x31C
-#define GLBL_REQ_ERR_MSK_MASK                         GENMASK(31, 0)
-#define EQDMA_CPM5_IND_CTXT_DATA_ADDR                           0x804
+#define EQDMA_CPM5_IND_CTXT_DATA_ADDR                      0x804
 #define IND_CTXT_DATA_DATA_MASK                            GENMASK(31, 0)
-#define EQDMA_CPM5_IND_CTXT_MASK_ADDR                           0x824
+#define EQDMA_CPM5_IND_CTXT_MASK_ADDR                      0x824
 #define IND_CTXT_MASK                            GENMASK(31, 0)
-#define EQDMA_CPM5_IND_CTXT_CMD_ADDR                            0x844
+#define EQDMA_CPM5_IND_CTXT_CMD_ADDR                       0x844
 #define IND_CTXT_CMD_RSVD_1_MASK                           GENMASK(31, 20)
 #define IND_CTXT_CMD_QID_MASK                              GENMASK(19, 7)
 #define IND_CTXT_CMD_OP_MASK                               GENMASK(6, 5)
 #define IND_CTXT_CMD_SEL_MASK                              GENMASK(4, 1)
 #define IND_CTXT_CMD_BUSY_MASK                             BIT(0)
-#define EQDMA_CPM5_C2H_TIMER_CNT_ADDR                           0xA00
+#define EQDMA_CPM5_C2H_TIMER_CNT_ADDR                      0xA00
 #define C2H_TIMER_CNT_RSVD_1_MASK                          GENMASK(31, 16)
 #define C2H_TIMER_CNT_MASK                                GENMASK(15, 0)
-#define EQDMA_CPM5_C2H_CNT_TH_ADDR                              0xA40
+#define EQDMA_CPM5_C2H_CNT_TH_ADDR                         0xA40
 #define C2H_CNT_TH_RSVD_1_MASK                             GENMASK(31, 16)
 #define C2H_CNT_TH_THESHOLD_CNT_MASK                       GENMASK(15, 0)
-#define EQDMA_CPM5_C2H_STAT_S_AXIS_C2H_ACCEPTED_ADDR            0xA88
-#define C2H_STAT_S_AXIS_C2H_ACCEPTED_MASK                 GENMASK(31, 0)
-#define EQDMA_CPM5_C2H_STAT_S_AXIS_WRB_ACCEPTED_ADDR            0xA8C
-#define C2H_STAT_S_AXIS_WRB_ACCEPTED_MASK                 GENMASK(31, 0)
-#define EQDMA_CPM5_C2H_STAT_DESC_RSP_PKT_ACCEPTED_ADDR          0xA90
-#define C2H_STAT_DESC_RSP_PKT_ACCEPTED_D_MASK              GENMASK(31, 0)
-#define EQDMA_CPM5_C2H_STAT_AXIS_PKG_CMP_ADDR                   0xA94
-#define C2H_STAT_AXIS_PKG_CMP_MASK                        GENMASK(31, 0)
-#define EQDMA_CPM5_C2H_STAT_DESC_RSP_ACCEPTED_ADDR              0xA98
-#define C2H_STAT_DESC_RSP_ACCEPTED_D_MASK                  GENMASK(31, 0)
-#define EQDMA_CPM5_C2H_STAT_DESC_RSP_CMP_ADDR                   0xA9C
-#define C2H_STAT_DESC_RSP_CMP_D_MASK                       GENMASK(31, 0)
-#define EQDMA_CPM5_C2H_STAT_WRQ_OUT_ADDR                        0xAA0
-#define C2H_STAT_WRQ_OUT_MASK                             GENMASK(31, 0)
-#define EQDMA_CPM5_C2H_STAT_WPL_REN_ACCEPTED_ADDR               0xAA4
-#define C2H_STAT_WPL_REN_ACCEPTED_MASK                    GENMASK(31, 0)
-#define EQDMA_CPM5_C2H_STAT_TOTAL_WRQ_LEN_ADDR                  0xAA8
-#define C2H_STAT_TOTAL_WRQ_LEN_MASK                       GENMASK(31, 0)
-#define EQDMA_CPM5_C2H_STAT_TOTAL_WPL_LEN_ADDR                  0xAAC
-#define C2H_STAT_TOTAL_WPL_LEN_MASK                       GENMASK(31, 0)
-#define EQDMA_CPM5_C2H_BUF_SZ_ADDR                              0xAB0
+#define EQDMA_CPM5_C2H_STAT_S_AXIS_C2H_ACCEPTED_ADDR       0xA88
+#define C2H_STAT_S_AXIS_C2H_ACCEPTED_RSVD_1_MASK           GENMASK(31, 18)
+#define C2H_STAT_S_AXIS_C2H_ACCEPTED_MASK                 GENMASK(17, 0)
+#define EQDMA_CPM5_C2H_STAT_S_AXIS_WRB_ACCEPTED_ADDR       0xA8C
+#define C2H_STAT_S_AXIS_WRB_ACCEPTED_RSVD_1_MASK           GENMASK(31, 18)
+#define C2H_STAT_S_AXIS_WRB_ACCEPTED_MASK                 GENMASK(17, 0)
+#define EQDMA_CPM5_C2H_STAT_DESC_RSP_PKT_ACCEPTED_ADDR     0xA90
+#define C2H_STAT_DESC_RSP_PKT_ACCEPTED_RSVD_1_MASK         GENMASK(31, 18)
+#define C2H_STAT_DESC_RSP_PKT_ACCEPTED_D_MASK              GENMASK(17, 0)
+#define EQDMA_CPM5_C2H_STAT_AXIS_PKG_CMP_ADDR              0xA94
+#define C2H_STAT_AXIS_PKG_CMP_RSVD_1_MASK                  GENMASK(31, 18)
+#define C2H_STAT_AXIS_PKG_CMP_MASK                        GENMASK(17, 0)
+#define EQDMA_CPM5_C2H_STAT_DESC_RSP_ACCEPTED_ADDR         0xA98
+#define C2H_STAT_DESC_RSP_ACCEPTED_RSVD_1_MASK             GENMASK(31, 18)
+#define C2H_STAT_DESC_RSP_ACCEPTED_D_MASK                  GENMASK(17, 0)
+#define EQDMA_CPM5_C2H_STAT_DESC_RSP_CMP_ADDR              0xA9C
+#define C2H_STAT_DESC_RSP_CMP_RSVD_1_MASK                  GENMASK(31, 18)
+#define C2H_STAT_DESC_RSP_CMP_D_MASK                       GENMASK(17, 0)
+#define EQDMA_CPM5_C2H_STAT_WRQ_OUT_ADDR                   0xAA0
+#define C2H_STAT_WRQ_OUT_RSVD_1_MASK                       GENMASK(31, 18)
+#define C2H_STAT_WRQ_OUT_MASK                             GENMASK(17, 0)
+#define EQDMA_CPM5_C2H_STAT_WPL_REN_ACCEPTED_ADDR          0xAA4
+#define C2H_STAT_WPL_REN_ACCEPTED_RSVD_1_MASK              GENMASK(31, 18)
+#define C2H_STAT_WPL_REN_ACCEPTED_MASK                    GENMASK(17, 0)
+#define EQDMA_CPM5_C2H_STAT_TOTAL_WRQ_LEN_ADDR             0xAA8
+#define C2H_STAT_TOTAL_WRQ_LEN_RSVD_1_MASK                 GENMASK(31, 18)
+#define C2H_STAT_TOTAL_WRQ_LEN_MASK                       GENMASK(17, 0)
+#define EQDMA_CPM5_C2H_STAT_TOTAL_WPL_LEN_ADDR             0xAAC
+#define C2H_STAT_TOTAL_WPL_LEN_RSVD_1_MASK                 GENMASK(31, 18)
+#define C2H_STAT_TOTAL_WPL_LEN_MASK                       GENMASK(17, 0)
+#define EQDMA_CPM5_C2H_BUF_SZ_ADDR                         0xAB0
 #define C2H_BUF_SZ_IZE_MASK                                GENMASK(31, 0)
-#define EQDMA_CPM5_C2H_ERR_STAT_ADDR                            0xAF0
+#define EQDMA_CPM5_C2H_ERR_STAT_ADDR                       0xAF0
 #define C2H_ERR_STAT_RSVD_1_MASK                           GENMASK(31, 21)
 #define C2H_ERR_STAT_WRB_PORT_ID_ERR_MASK                  BIT(20)
 #define C2H_ERR_STAT_HDR_PAR_ERR_MASK                      BIT(19)
@@ -607,9 +603,9 @@ struct xreg_info *eqdma_cpm5_config_regs_get(void);
 #define C2H_ERR_STAT_SH_CMPT_DSC_ERR_MASK                  BIT(2)
 #define C2H_ERR_STAT_LEN_MISMATCH_MASK                     BIT(1)
 #define C2H_ERR_STAT_MTY_MISMATCH_MASK                     BIT(0)
-#define EQDMA_CPM5_C2H_ERR_MASK_ADDR                            0xAF4
+#define EQDMA_CPM5_C2H_ERR_MASK_ADDR                       0xAF4
 #define C2H_ERR_EN_MASK                          GENMASK(31, 0)
-#define EQDMA_CPM5_C2H_FATAL_ERR_STAT_ADDR                      0xAF8
+#define EQDMA_CPM5_C2H_FATAL_ERR_STAT_ADDR                 0xAF8
 #define C2H_FATAL_ERR_STAT_RSVD_1_MASK                     GENMASK(31, 21)
 #define C2H_FATAL_ERR_STAT_HDR_ECC_UNC_ERR_MASK            BIT(20)
 #define C2H_FATAL_ERR_STAT_AVL_RING_FIFO_RAM_RDBE_MASK     BIT(19)
@@ -629,13 +625,13 @@ struct xreg_info *eqdma_cpm5_config_regs_get(void);
 #define C2H_FATAL_ERR_STAT_RESERVED1_MASK                  BIT(2)
 #define C2H_FATAL_ERR_STAT_LEN_MISMATCH_MASK               BIT(1)
 #define C2H_FATAL_ERR_STAT_MTY_MISMATCH_MASK               BIT(0)
-#define EQDMA_CPM5_C2H_FATAL_ERR_MASK_ADDR                      0xAFC
+#define EQDMA_CPM5_C2H_FATAL_ERR_MASK_ADDR                 0xAFC
 #define C2H_FATAL_ERR_C2HEN_MASK                 GENMASK(31, 0)
-#define EQDMA_CPM5_C2H_FATAL_ERR_ENABLE_ADDR                    0xB00
+#define EQDMA_CPM5_C2H_FATAL_ERR_ENABLE_ADDR               0xB00
 #define C2H_FATAL_ERR_ENABLE_RSVD_1_MASK                   GENMASK(31, 2)
 #define C2H_FATAL_ERR_ENABLE_WPL_PAR_INV_MASK             BIT(1)
 #define C2H_FATAL_ERR_ENABLE_WRQ_DIS_MASK                 BIT(0)
-#define EQDMA_CPM5_GLBL_ERR_INT_ADDR                            0xB04
+#define EQDMA_CPM5_GLBL_ERR_INT_ADDR                       0xB04
 #define GLBL_ERR_INT_RSVD_1_MASK                           GENMASK(31, 30)
 #define GLBL_ERR_INT_HOST_ID_MASK                          GENMASK(29, 26)
 #define GLBL_ERR_INT_DIS_INTR_ON_VF_MASK                   BIT(25)
@@ -643,28 +639,31 @@ struct xreg_info *eqdma_cpm5_config_regs_get(void);
 #define GLBL_ERR_INT_EN_COAL_MASK                          BIT(23)
 #define GLBL_ERR_INT_VEC_MASK                              GENMASK(22, 12)
 #define GLBL_ERR_INT_FUNC_MASK                             GENMASK(11, 0)
-#define EQDMA_CPM5_C2H_PFCH_CFG_ADDR                            0xB08
+#define EQDMA_CPM5_C2H_PFCH_CFG_ADDR                       0xB08
 #define C2H_PFCH_CFG_EVTFL_TH_MASK                         GENMASK(31, 16)
 #define C2H_PFCH_CFG_FL_TH_MASK                            GENMASK(15, 0)
-#define EQDMA_CPM5_C2H_PFCH_CFG_1_ADDR                          0xA80
+#define EQDMA_CPM5_C2H_PFCH_CFG_1_ADDR                     0xA80
 #define C2H_PFCH_CFG_1_EVT_QCNT_TH_MASK                    GENMASK(31, 16)
 #define C2H_PFCH_CFG_1_QCNT_MASK                           GENMASK(15, 0)
-#define EQDMA_CPM5_C2H_PFCH_CFG_2_ADDR                          0xA84
+#define EQDMA_CPM5_C2H_PFCH_CFG_2_ADDR                     0xA84
 #define C2H_PFCH_CFG_2_FENCE_MASK                          BIT(31)
 #define C2H_PFCH_CFG_2_RSVD_MASK                           GENMASK(30, 29)
 #define C2H_PFCH_CFG_2_VAR_DESC_NO_DROP_MASK               BIT(28)
 #define C2H_PFCH_CFG_2_LL_SZ_TH_MASK                       GENMASK(27, 12)
 #define C2H_PFCH_CFG_2_VAR_DESC_NUM_MASK                   GENMASK(11, 6)
 #define C2H_PFCH_CFG_2_NUM_MASK                            GENMASK(5, 0)
-#define EQDMA_CPM5_C2H_INT_TIMER_TICK_ADDR                      0xB0C
+#define EQDMA_CPM5_C2H_INT_TIMER_TICK_ADDR                 0xB0C
 #define C2H_INT_TIMER_TICK_MASK                           GENMASK(31, 0)
-#define EQDMA_CPM5_C2H_STAT_DESC_RSP_DROP_ACCEPTED_ADDR         0xB10
-#define C2H_STAT_DESC_RSP_DROP_ACCEPTED_D_MASK             GENMASK(31, 0)
-#define EQDMA_CPM5_C2H_STAT_DESC_RSP_ERR_ACCEPTED_ADDR          0xB14
-#define C2H_STAT_DESC_RSP_ERR_ACCEPTED_D_MASK              GENMASK(31, 0)
-#define EQDMA_CPM5_C2H_STAT_DESC_REQ_ADDR                       0xB18
-#define C2H_STAT_DESC_REQ_MASK                            GENMASK(31, 0)
-#define EQDMA_CPM5_C2H_STAT_DBG_DMA_ENG_0_ADDR                  0xB1C
+#define EQDMA_CPM5_C2H_STAT_DESC_RSP_DROP_ACCEPTED_ADDR    0xB10
+#define C2H_STAT_DESC_RSP_DROP_ACCEPTED_RSVD_1_MASK        GENMASK(31, 18)
+#define C2H_STAT_DESC_RSP_DROP_ACCEPTED_D_MASK             GENMASK(17, 0)
+#define EQDMA_CPM5_C2H_STAT_DESC_RSP_ERR_ACCEPTED_ADDR     0xB14
+#define C2H_STAT_DESC_RSP_ERR_ACCEPTED_RSVD_1_MASK         GENMASK(31, 18)
+#define C2H_STAT_DESC_RSP_ERR_ACCEPTED_D_MASK              GENMASK(17, 0)
+#define EQDMA_CPM5_C2H_STAT_DESC_REQ_ADDR                  0xB18
+#define C2H_STAT_DESC_REQ_RSVD_1_MASK                      GENMASK(31, 18)
+#define C2H_STAT_DESC_REQ_MASK                            GENMASK(17, 0)
+#define EQDMA_CPM5_C2H_STAT_DBG_DMA_ENG_0_ADDR             0xB1C
 #define C2H_STAT_DMA_ENG_0_S_AXIS_C2H_TVALID_MASK      BIT(31)
 #define C2H_STAT_DMA_ENG_0_S_AXIS_C2H_TREADY_MASK      BIT(30)
 #define C2H_STAT_DMA_ENG_0_S_AXIS_WRB_TVALID_MASK      GENMASK(29, 27)
@@ -677,17 +676,17 @@ struct xreg_info *eqdma_cpm5_config_regs_get(void);
 #define C2H_STAT_DMA_ENG_0_WRB_FIFO_OUT_CNT_MASK       GENMASK(7, 5)
 #define C2H_STAT_DMA_ENG_0_WRB_SM_CS_MASK              BIT(4)
 #define C2H_STAT_DMA_ENG_0_MAIN_SM_CS_MASK             GENMASK(3, 0)
-#define EQDMA_CPM5_C2H_STAT_DBG_DMA_ENG_1_ADDR                  0xB20
+#define EQDMA_CPM5_C2H_STAT_DBG_DMA_ENG_1_ADDR             0xB20
 #define C2H_STAT_DMA_ENG_1_RSVD_1_MASK                 GENMASK(31, 29)
 #define C2H_STAT_DMA_ENG_1_QID_FIFO_OUT_CNT_MASK       GENMASK(28, 18)
 #define C2H_STAT_DMA_ENG_1_PLD_FIFO_OUT_CNT_MASK       GENMASK(17, 7)
 #define C2H_STAT_DMA_ENG_1_PLD_ST_FIFO_CNT_MASK        GENMASK(6, 0)
-#define EQDMA_CPM5_C2H_STAT_DBG_DMA_ENG_2_ADDR                  0xB24
+#define EQDMA_CPM5_C2H_STAT_DBG_DMA_ENG_2_ADDR             0xB24
 #define C2H_STAT_DMA_ENG_2_RSVD_1_MASK                 GENMASK(31, 29)
 #define C2H_STAT_DMA_ENG_2_QID_FIFO_OUT_CNT_MASK       GENMASK(28, 18)
 #define C2H_STAT_DMA_ENG_2_PLD_FIFO_OUT_CNT_MASK       GENMASK(17, 7)
 #define C2H_STAT_DMA_ENG_2_PLD_ST_FIFO_CNT_MASK        GENMASK(6, 0)
-#define EQDMA_CPM5_C2H_STAT_DBG_DMA_ENG_3_ADDR                  0xB28
+#define EQDMA_CPM5_C2H_STAT_DBG_DMA_ENG_3_ADDR             0xB28
 #define C2H_STAT_DMA_ENG_3_RSVD_1_MASK                 GENMASK(31, 24)
 #define C2H_STAT_DMA_ENG_3_WRQ_FIFO_OUT_CNT_MASK       GENMASK(23, 19)
 #define C2H_STAT_DMA_ENG_3_QID_FIFO_OUT_VLD_MASK       BIT(18)
@@ -709,84 +708,84 @@ struct xreg_info *eqdma_cpm5_config_regs_get(void);
 #define C2H_STAT_DMA_ENG_3_WRQ_PACKET_PRE_EOR_MASK     BIT(2)
 #define C2H_STAT_DMA_ENG_3_WCP_FIFO_IN_RDY_MASK        BIT(1)
 #define C2H_STAT_DMA_ENG_3_PLD_ST_FIFO_IN_RDY_MASK     BIT(0)
-#define EQDMA_CPM5_C2H_DBG_PFCH_ERR_CTXT_ADDR                   0xB2C
+#define EQDMA_CPM5_C2H_DBG_PFCH_ERR_CTXT_ADDR              0xB2C
 #define C2H_PFCH_ERR_CTXT_RSVD_1_MASK                  GENMASK(31, 14)
 #define C2H_PFCH_ERR_CTXT_ERR_STAT_MASK                BIT(13)
 #define C2H_PFCH_ERR_CTXT_CMD_WR_MASK                  BIT(12)
 #define C2H_PFCH_ERR_CTXT_QID_MASK                     GENMASK(11, 1)
 #define C2H_PFCH_ERR_CTXT_DONE_MASK                    BIT(0)
-#define EQDMA_CPM5_C2H_FIRST_ERR_QID_ADDR                       0xB30
+#define EQDMA_CPM5_C2H_FIRST_ERR_QID_ADDR                  0xB30
 #define C2H_FIRST_ERR_QID_RSVD_1_MASK                      GENMASK(31, 21)
 #define C2H_FIRST_ERR_QID_ERR_TYPE_MASK                    GENMASK(20, 16)
 #define C2H_FIRST_ERR_QID_RSVD_MASK                        GENMASK(15, 13)
 #define C2H_FIRST_ERR_QID_QID_MASK                         GENMASK(12, 0)
-#define EQDMA_CPM5_STAT_NUM_WRB_IN_ADDR                         0xB34
+#define EQDMA_CPM5_STAT_NUM_WRB_IN_ADDR                    0xB34
 #define STAT_NUM_WRB_IN_RSVD_1_MASK                        GENMASK(31, 16)
 #define STAT_NUM_WRB_IN_WRB_CNT_MASK                       GENMASK(15, 0)
-#define EQDMA_CPM5_STAT_NUM_WRB_OUT_ADDR                        0xB38
+#define EQDMA_CPM5_STAT_NUM_WRB_OUT_ADDR                   0xB38
 #define STAT_NUM_WRB_OUT_RSVD_1_MASK                       GENMASK(31, 16)
 #define STAT_NUM_WRB_OUT_WRB_CNT_MASK                      GENMASK(15, 0)
-#define EQDMA_CPM5_STAT_NUM_WRB_DRP_ADDR                        0xB3C
+#define EQDMA_CPM5_STAT_NUM_WRB_DRP_ADDR                   0xB3C
 #define STAT_NUM_WRB_DRP_RSVD_1_MASK                       GENMASK(31, 16)
 #define STAT_NUM_WRB_DRP_WRB_CNT_MASK                      GENMASK(15, 0)
-#define EQDMA_CPM5_STAT_NUM_STAT_DESC_OUT_ADDR                  0xB40
+#define EQDMA_CPM5_STAT_NUM_STAT_DESC_OUT_ADDR             0xB40
 #define STAT_NUM_STAT_DESC_OUT_RSVD_1_MASK                 GENMASK(31, 16)
 #define STAT_NUM_STAT_DESC_OUT_CNT_MASK                    GENMASK(15, 0)
-#define EQDMA_CPM5_STAT_NUM_DSC_CRDT_SENT_ADDR                  0xB44
+#define EQDMA_CPM5_STAT_NUM_DSC_CRDT_SENT_ADDR             0xB44
 #define STAT_NUM_DSC_CRDT_SENT_RSVD_1_MASK                 GENMASK(31, 16)
 #define STAT_NUM_DSC_CRDT_SENT_CNT_MASK                    GENMASK(15, 0)
-#define EQDMA_CPM5_STAT_NUM_FCH_DSC_RCVD_ADDR                   0xB48
+#define EQDMA_CPM5_STAT_NUM_FCH_DSC_RCVD_ADDR              0xB48
 #define STAT_NUM_FCH_DSC_RCVD_RSVD_1_MASK                  GENMASK(31, 16)
 #define STAT_NUM_FCH_DSC_RCVD_DSC_CNT_MASK                 GENMASK(15, 0)
-#define EQDMA_CPM5_STAT_NUM_BYP_DSC_RCVD_ADDR                   0xB4C
+#define EQDMA_CPM5_STAT_NUM_BYP_DSC_RCVD_ADDR              0xB4C
 #define STAT_NUM_BYP_DSC_RCVD_RSVD_1_MASK                  GENMASK(31, 11)
 #define STAT_NUM_BYP_DSC_RCVD_DSC_CNT_MASK                 GENMASK(10, 0)
-#define EQDMA_CPM5_C2H_WRB_COAL_CFG_ADDR                        0xB50
+#define EQDMA_CPM5_C2H_WRB_COAL_CFG_ADDR                   0xB50
 #define C2H_WRB_COAL_CFG_MAX_BUF_SZ_MASK                   GENMASK(31, 26)
 #define C2H_WRB_COAL_CFG_TICK_VAL_MASK                     GENMASK(25, 14)
 #define C2H_WRB_COAL_CFG_TICK_CNT_MASK                     GENMASK(13, 2)
 #define C2H_WRB_COAL_CFG_SET_GLB_FLUSH_MASK                BIT(1)
 #define C2H_WRB_COAL_CFG_DONE_GLB_FLUSH_MASK               BIT(0)
-#define EQDMA_CPM5_C2H_INTR_H2C_REQ_ADDR                        0xB54
+#define EQDMA_CPM5_C2H_INTR_H2C_REQ_ADDR                   0xB54
 #define C2H_INTR_H2C_REQ_RSVD_1_MASK                       GENMASK(31, 18)
 #define C2H_INTR_H2C_REQ_CNT_MASK                          GENMASK(17, 0)
-#define EQDMA_CPM5_C2H_INTR_C2H_MM_REQ_ADDR                     0xB58
+#define EQDMA_CPM5_C2H_INTR_C2H_MM_REQ_ADDR                0xB58
 #define C2H_INTR_C2H_MM_REQ_RSVD_1_MASK                    GENMASK(31, 18)
 #define C2H_INTR_C2H_MM_REQ_CNT_MASK                       GENMASK(17, 0)
-#define EQDMA_CPM5_C2H_INTR_ERR_INT_REQ_ADDR                    0xB5C
+#define EQDMA_CPM5_C2H_INTR_ERR_INT_REQ_ADDR               0xB5C
 #define C2H_INTR_ERR_INT_REQ_RSVD_1_MASK                   GENMASK(31, 18)
 #define C2H_INTR_ERR_INT_REQ_CNT_MASK                      GENMASK(17, 0)
-#define EQDMA_CPM5_C2H_INTR_C2H_ST_REQ_ADDR                     0xB60
+#define EQDMA_CPM5_C2H_INTR_C2H_ST_REQ_ADDR                0xB60
 #define C2H_INTR_C2H_ST_REQ_RSVD_1_MASK                    GENMASK(31, 18)
 #define C2H_INTR_C2H_ST_REQ_CNT_MASK                       GENMASK(17, 0)
-#define EQDMA_CPM5_C2H_INTR_H2C_ERR_C2H_MM_MSIX_ACK_ADDR        0xB64
+#define EQDMA_CPM5_C2H_INTR_H2C_ERR_C2H_MM_MSIX_ACK_ADDR   0xB64
 #define C2H_INTR_H2C_ERR_C2H_MM_MSIX_ACK_RSVD_1_MASK       GENMASK(31, 18)
 #define C2H_INTR_H2C_ERR_C2H_MM_MSIX_ACK_CNT_MASK          GENMASK(17, 0)
-#define EQDMA_CPM5_C2H_INTR_H2C_ERR_C2H_MM_MSIX_FAIL_ADDR       0xB68
+#define EQDMA_CPM5_C2H_INTR_H2C_ERR_C2H_MM_MSIX_FAIL_ADDR  0xB68
 #define C2H_INTR_H2C_ERR_C2H_MM_MSIX_FAIL_RSVD_1_MASK      GENMASK(31, 18)
 #define C2H_INTR_H2C_ERR_C2H_MM_MSIX_FAIL_CNT_MASK         GENMASK(17, 0)
-#define EQDMA_CPM5_C2H_INTR_H2C_ERR_C2H_MM_MSIX_NO_MSIX_ADDR    0xB6C
+#define EQDMA_CPM5_C2H_INTR_H2C_ERR_C2H_MM_MSIX_NO_MSIX_ADDR 0xB6C
 #define C2H_INTR_H2C_ERR_C2H_MM_MSIX_NO_MSIX_RSVD_1_MASK   GENMASK(31, 18)
 #define C2H_INTR_H2C_ERR_C2H_MM_MSIX_NO_MSIX_CNT_MASK      GENMASK(17, 0)
-#define EQDMA_CPM5_C2H_INTR_H2C_ERR_C2H_MM_CTXT_INVAL_ADDR      0xB70
+#define EQDMA_CPM5_C2H_INTR_H2C_ERR_C2H_MM_CTXT_INVAL_ADDR 0xB70
 #define C2H_INTR_H2C_ERR_C2H_MM_CTXT_INVAL_RSVD_1_MASK     GENMASK(31, 18)
 #define C2H_INTR_H2C_ERR_C2H_MM_CTXT_INVAL_CNT_MASK        GENMASK(17, 0)
-#define EQDMA_CPM5_C2H_INTR_C2H_ST_MSIX_ACK_ADDR                0xB74
+#define EQDMA_CPM5_C2H_INTR_C2H_ST_MSIX_ACK_ADDR           0xB74
 #define C2H_INTR_C2H_ST_MSIX_ACK_RSVD_1_MASK               GENMASK(31, 18)
 #define C2H_INTR_C2H_ST_MSIX_ACK_CNT_MASK                  GENMASK(17, 0)
-#define EQDMA_CPM5_C2H_INTR_C2H_ST_MSIX_FAIL_ADDR               0xB78
+#define EQDMA_CPM5_C2H_INTR_C2H_ST_MSIX_FAIL_ADDR          0xB78
 #define C2H_INTR_C2H_ST_MSIX_FAIL_RSVD_1_MASK              GENMASK(31, 18)
 #define C2H_INTR_C2H_ST_MSIX_FAIL_CNT_MASK                 GENMASK(17, 0)
-#define EQDMA_CPM5_C2H_INTR_C2H_ST_NO_MSIX_ADDR                 0xB7C
+#define EQDMA_CPM5_C2H_INTR_C2H_ST_NO_MSIX_ADDR            0xB7C
 #define C2H_INTR_C2H_ST_NO_MSIX_RSVD_1_MASK                GENMASK(31, 18)
 #define C2H_INTR_C2H_ST_NO_MSIX_CNT_MASK                   GENMASK(17, 0)
-#define EQDMA_CPM5_C2H_INTR_C2H_ST_CTXT_INVAL_ADDR              0xB80
+#define EQDMA_CPM5_C2H_INTR_C2H_ST_CTXT_INVAL_ADDR         0xB80
 #define C2H_INTR_C2H_ST_CTXT_INVAL_RSVD_1_MASK             GENMASK(31, 18)
 #define C2H_INTR_C2H_ST_CTXT_INVAL_CNT_MASK                GENMASK(17, 0)
-#define EQDMA_CPM5_C2H_STAT_WR_CMP_ADDR                         0xB84
+#define EQDMA_CPM5_C2H_STAT_WR_CMP_ADDR                    0xB84
 #define C2H_STAT_WR_CMP_RSVD_1_MASK                        GENMASK(31, 18)
 #define C2H_STAT_WR_CMP_CNT_MASK                           GENMASK(17, 0)
-#define EQDMA_CPM5_C2H_STAT_DBG_DMA_ENG_4_ADDR                  0xB88
+#define EQDMA_CPM5_C2H_STAT_DBG_DMA_ENG_4_ADDR             0xB88
 #define C2H_STAT_DMA_ENG_4_RSVD_1_MASK                 GENMASK(31, 24)
 #define C2H_STAT_DMA_ENG_4_WRQ_FIFO_OUT_CNT_MASK       GENMASK(23, 19)
 #define C2H_STAT_DMA_ENG_4_QID_FIFO_OUT_VLD_MASK       BIT(18)
@@ -808,7 +807,7 @@ struct xreg_info *eqdma_cpm5_config_regs_get(void);
 #define C2H_STAT_DMA_ENG_4_WRQ_PACKET_PRE_EOR_MASK     BIT(2)
 #define C2H_STAT_DMA_ENG_4_WCP_FIFO_IN_RDY_MASK        BIT(1)
 #define C2H_STAT_DMA_ENG_4_PLD_ST_FIFO_IN_RDY_MASK     BIT(0)
-#define EQDMA_CPM5_C2H_STAT_DBG_DMA_ENG_5_ADDR                  0xB8C
+#define EQDMA_CPM5_C2H_STAT_DBG_DMA_ENG_5_ADDR             0xB8C
 #define C2H_STAT_DMA_ENG_5_RSVD_1_MASK                 GENMASK(31, 30)
 #define C2H_STAT_DMA_ENG_5_WRB_SM_VIRT_CH_MASK         BIT(29)
 #define C2H_STAT_DMA_ENG_5_WRB_FIFO_IN_REQ_MASK        GENMASK(28, 24)
@@ -820,93 +819,93 @@ struct xreg_info *eqdma_cpm5_config_regs_get(void);
 #define C2H_STAT_DMA_ENG_5_ARB_FIFO_OUT_DATA_NUM_BUF_OV_MASK BIT(2)
 #define C2H_STAT_DMA_ENG_5_ARB_FIFO_OUT_DATA_MARKER_MASK BIT(1)
 #define C2H_STAT_DMA_ENG_5_ARB_FIFO_OUT_DATA_HAS_CMPT_MASK BIT(0)
-#define EQDMA_CPM5_C2H_DBG_PFCH_QID_ADDR                        0xB90
+#define EQDMA_CPM5_C2H_DBG_PFCH_QID_ADDR                   0xB90
 #define C2H_PFCH_QID_RSVD_1_MASK                       GENMASK(31, 16)
 #define C2H_PFCH_QID_ERR_CTXT_MASK                     BIT(15)
 #define C2H_PFCH_QID_TARGET_MASK                       GENMASK(14, 12)
 #define C2H_PFCH_QID_QID_OR_TAG_MASK                   GENMASK(11, 0)
-#define EQDMA_CPM5_C2H_DBG_PFCH_ADDR                            0xB94
+#define EQDMA_CPM5_C2H_DBG_PFCH_ADDR                       0xB94
 #define C2H_PFCH_DATA_MASK                             GENMASK(31, 0)
-#define EQDMA_CPM5_C2H_INT_DBG_ADDR                             0xB98
+#define EQDMA_CPM5_C2H_INT_DBG_ADDR                        0xB98
 #define C2H_INT_RSVD_1_MASK                            GENMASK(31, 8)
 #define C2H_INT_INT_COAL_SM_MASK                       GENMASK(7, 4)
 #define C2H_INT_INT_SM_MASK                            GENMASK(3, 0)
-#define EQDMA_CPM5_C2H_STAT_IMM_ACCEPTED_ADDR                   0xB9C
+#define EQDMA_CPM5_C2H_STAT_IMM_ACCEPTED_ADDR              0xB9C
 #define C2H_STAT_IMM_ACCEPTED_RSVD_1_MASK                  GENMASK(31, 18)
 #define C2H_STAT_IMM_ACCEPTED_CNT_MASK                     GENMASK(17, 0)
-#define EQDMA_CPM5_C2H_STAT_MARKER_ACCEPTED_ADDR                0xBA0
+#define EQDMA_CPM5_C2H_STAT_MARKER_ACCEPTED_ADDR           0xBA0
 #define C2H_STAT_MARKER_ACCEPTED_RSVD_1_MASK               GENMASK(31, 18)
 #define C2H_STAT_MARKER_ACCEPTED_CNT_MASK                  GENMASK(17, 0)
-#define EQDMA_CPM5_C2H_STAT_DISABLE_CMP_ACCEPTED_ADDR           0xBA4
+#define EQDMA_CPM5_C2H_STAT_DISABLE_CMP_ACCEPTED_ADDR      0xBA4
 #define C2H_STAT_DISABLE_CMP_ACCEPTED_RSVD_1_MASK          GENMASK(31, 18)
 #define C2H_STAT_DISABLE_CMP_ACCEPTED_CNT_MASK             GENMASK(17, 0)
-#define EQDMA_CPM5_C2H_PLD_FIFO_CRDT_CNT_ADDR                   0xBA8
+#define EQDMA_CPM5_C2H_PLD_FIFO_CRDT_CNT_ADDR              0xBA8
 #define C2H_PLD_FIFO_CRDT_CNT_RSVD_1_MASK                  GENMASK(31, 18)
 #define C2H_PLD_FIFO_CRDT_CNT_CNT_MASK                     GENMASK(17, 0)
-#define EQDMA_CPM5_C2H_INTR_DYN_REQ_ADDR                        0xBAC
+#define EQDMA_CPM5_C2H_INTR_DYN_REQ_ADDR                   0xBAC
 #define C2H_INTR_DYN_REQ_RSVD_1_MASK                       GENMASK(31, 18)
 #define C2H_INTR_DYN_REQ_CNT_MASK                          GENMASK(17, 0)
-#define EQDMA_CPM5_C2H_INTR_DYN_MISC_ADDR                       0xBB0
+#define EQDMA_CPM5_C2H_INTR_DYN_MISC_ADDR                  0xBB0
 #define C2H_INTR_DYN_MISC_RSVD_1_MASK                      GENMASK(31, 18)
 #define C2H_INTR_DYN_MISC_CNT_MASK                         GENMASK(17, 0)
-#define EQDMA_CPM5_C2H_DROP_LEN_MISMATCH_ADDR                   0xBB4
+#define EQDMA_CPM5_C2H_DROP_LEN_MISMATCH_ADDR              0xBB4
 #define C2H_DROP_LEN_MISMATCH_RSVD_1_MASK                  GENMASK(31, 18)
 #define C2H_DROP_LEN_MISMATCH_CNT_MASK                     GENMASK(17, 0)
-#define EQDMA_CPM5_C2H_DROP_DESC_RSP_LEN_ADDR                   0xBB8
+#define EQDMA_CPM5_C2H_DROP_DESC_RSP_LEN_ADDR              0xBB8
 #define C2H_DROP_DESC_RSP_LEN_RSVD_1_MASK                  GENMASK(31, 18)
 #define C2H_DROP_DESC_RSP_LEN_CNT_MASK                     GENMASK(17, 0)
-#define EQDMA_CPM5_C2H_DROP_QID_FIFO_LEN_ADDR                   0xBBC
+#define EQDMA_CPM5_C2H_DROP_QID_FIFO_LEN_ADDR              0xBBC
 #define C2H_DROP_QID_FIFO_LEN_RSVD_1_MASK                  GENMASK(31, 18)
 #define C2H_DROP_QID_FIFO_LEN_CNT_MASK                     GENMASK(17, 0)
-#define EQDMA_CPM5_C2H_DROP_PLD_CNT_ADDR                        0xBC0
+#define EQDMA_CPM5_C2H_DROP_PLD_CNT_ADDR                   0xBC0
 #define C2H_DROP_PLD_CNT_RSVD_1_MASK                       GENMASK(31, 18)
 #define C2H_DROP_PLD_CNT_CNT_MASK                          GENMASK(17, 0)
-#define EQDMA_CPM5_C2H_CMPT_FORMAT_0_ADDR                       0xBC4
+#define EQDMA_CPM5_C2H_CMPT_FORMAT_0_ADDR                  0xBC4
 #define C2H_CMPT_FORMAT_0_DESC_ERR_LOC_MASK                GENMASK(31, 16)
 #define C2H_CMPT_FORMAT_0_COLOR_LOC_MASK                   GENMASK(15, 0)
-#define EQDMA_CPM5_C2H_CMPT_FORMAT_1_ADDR                       0xBC8
+#define EQDMA_CPM5_C2H_CMPT_FORMAT_1_ADDR                  0xBC8
 #define C2H_CMPT_FORMAT_1_DESC_ERR_LOC_MASK                GENMASK(31, 16)
 #define C2H_CMPT_FORMAT_1_COLOR_LOC_MASK                   GENMASK(15, 0)
-#define EQDMA_CPM5_C2H_CMPT_FORMAT_2_ADDR                       0xBCC
+#define EQDMA_CPM5_C2H_CMPT_FORMAT_2_ADDR                  0xBCC
 #define C2H_CMPT_FORMAT_2_DESC_ERR_LOC_MASK                GENMASK(31, 16)
 #define C2H_CMPT_FORMAT_2_COLOR_LOC_MASK                   GENMASK(15, 0)
-#define EQDMA_CPM5_C2H_CMPT_FORMAT_3_ADDR                       0xBD0
+#define EQDMA_CPM5_C2H_CMPT_FORMAT_3_ADDR                  0xBD0
 #define C2H_CMPT_FORMAT_3_DESC_ERR_LOC_MASK                GENMASK(31, 16)
 #define C2H_CMPT_FORMAT_3_COLOR_LOC_MASK                   GENMASK(15, 0)
-#define EQDMA_CPM5_C2H_CMPT_FORMAT_4_ADDR                       0xBD4
+#define EQDMA_CPM5_C2H_CMPT_FORMAT_4_ADDR                  0xBD4
 #define C2H_CMPT_FORMAT_4_DESC_ERR_LOC_MASK                GENMASK(31, 16)
 #define C2H_CMPT_FORMAT_4_COLOR_LOC_MASK                   GENMASK(15, 0)
-#define EQDMA_CPM5_C2H_CMPT_FORMAT_5_ADDR                       0xBD8
+#define EQDMA_CPM5_C2H_CMPT_FORMAT_5_ADDR                  0xBD8
 #define C2H_CMPT_FORMAT_5_DESC_ERR_LOC_MASK                GENMASK(31, 16)
 #define C2H_CMPT_FORMAT_5_COLOR_LOC_MASK                   GENMASK(15, 0)
-#define EQDMA_CPM5_C2H_CMPT_FORMAT_6_ADDR                       0xBDC
+#define EQDMA_CPM5_C2H_CMPT_FORMAT_6_ADDR                  0xBDC
 #define C2H_CMPT_FORMAT_6_DESC_ERR_LOC_MASK                GENMASK(31, 16)
 #define C2H_CMPT_FORMAT_6_COLOR_LOC_MASK                   GENMASK(15, 0)
-#define EQDMA_CPM5_C2H_PFCH_CACHE_DEPTH_ADDR                    0xBE0
+#define EQDMA_CPM5_C2H_PFCH_CACHE_DEPTH_ADDR               0xBE0
 #define C2H_PFCH_CACHE_DEPTH_MAX_STBUF_MASK                GENMASK(23, 16)
 #define C2H_PFCH_CACHE_DEPTH_MASK                         GENMASK(7, 0)
-#define EQDMA_CPM5_C2H_WRB_COAL_BUF_DEPTH_ADDR                  0xBE4
+#define EQDMA_CPM5_C2H_WRB_COAL_BUF_DEPTH_ADDR             0xBE4
 #define C2H_WRB_COAL_BUF_DEPTH_RSVD_1_MASK                 GENMASK(31, 8)
 #define C2H_WRB_COAL_BUF_DEPTH_BUFFER_MASK                 GENMASK(7, 0)
-#define EQDMA_CPM5_C2H_PFCH_CRDT_ADDR                           0xBE8
+#define EQDMA_CPM5_C2H_PFCH_CRDT_ADDR                      0xBE8
 #define C2H_PFCH_CRDT_RSVD_1_MASK                          GENMASK(31, 1)
 #define C2H_PFCH_CRDT_RSVD_2_MASK                          BIT(0)
-#define EQDMA_CPM5_C2H_STAT_HAS_CMPT_ACCEPTED_ADDR              0xBEC
+#define EQDMA_CPM5_C2H_STAT_HAS_CMPT_ACCEPTED_ADDR         0xBEC
 #define C2H_STAT_HAS_CMPT_ACCEPTED_RSVD_1_MASK             GENMASK(31, 18)
 #define C2H_STAT_HAS_CMPT_ACCEPTED_CNT_MASK                GENMASK(17, 0)
-#define EQDMA_CPM5_C2H_STAT_HAS_PLD_ACCEPTED_ADDR               0xBF0
+#define EQDMA_CPM5_C2H_STAT_HAS_PLD_ACCEPTED_ADDR          0xBF0
 #define C2H_STAT_HAS_PLD_ACCEPTED_RSVD_1_MASK              GENMASK(31, 18)
 #define C2H_STAT_HAS_PLD_ACCEPTED_CNT_MASK                 GENMASK(17, 0)
-#define EQDMA_CPM5_C2H_PLD_PKT_ID_ADDR                          0xBF4
+#define EQDMA_CPM5_C2H_PLD_PKT_ID_ADDR                     0xBF4
 #define C2H_PLD_PKT_ID_CMPT_WAIT_MASK                      GENMASK(31, 16)
 #define C2H_PLD_PKT_ID_DATA_MASK                           GENMASK(15, 0)
-#define EQDMA_CPM5_C2H_PLD_PKT_ID_1_ADDR                        0xBF8
+#define EQDMA_CPM5_C2H_PLD_PKT_ID_1_ADDR                   0xBF8
 #define C2H_PLD_PKT_ID_1_CMPT_WAIT_MASK                    GENMASK(31, 16)
 #define C2H_PLD_PKT_ID_1_DATA_MASK                         GENMASK(15, 0)
-#define EQDMA_CPM5_C2H_DROP_PLD_CNT_1_ADDR                      0xBFC
+#define EQDMA_CPM5_C2H_DROP_PLD_CNT_1_ADDR                 0xBFC
 #define C2H_DROP_PLD_CNT_1_RSVD_1_MASK                     GENMASK(31, 18)
 #define C2H_DROP_PLD_CNT_1_CNT_MASK                        GENMASK(17, 0)
-#define EQDMA_CPM5_H2C_ERR_STAT_ADDR                            0xE00
+#define EQDMA_CPM5_H2C_ERR_STAT_ADDR                       0xE00
 #define H2C_ERR_STAT_RSVD_1_MASK                           GENMASK(31, 6)
 #define H2C_ERR_STAT_PAR_ERR_MASK                          BIT(5)
 #define H2C_ERR_STAT_SBE_MASK                              BIT(4)
@@ -914,23 +913,23 @@ struct xreg_info *eqdma_cpm5_config_regs_get(void);
 #define H2C_ERR_STAT_NO_DMA_DS_MASK                        BIT(2)
 #define H2C_ERR_STAT_SDI_MRKR_REQ_MOP_ERR_MASK             BIT(1)
 #define H2C_ERR_STAT_ZERO_LEN_DS_MASK                      BIT(0)
-#define EQDMA_CPM5_H2C_ERR_MASK_ADDR                            0xE04
+#define EQDMA_CPM5_H2C_ERR_MASK_ADDR                       0xE04
 #define H2C_ERR_EN_MASK                          GENMASK(31, 0)
-#define EQDMA_CPM5_H2C_FIRST_ERR_QID_ADDR                       0xE08
+#define EQDMA_CPM5_H2C_FIRST_ERR_QID_ADDR                  0xE08
 #define H2C_FIRST_ERR_QID_RSVD_1_MASK                      GENMASK(31, 20)
 #define H2C_FIRST_ERR_QID_ERR_TYPE_MASK                    GENMASK(19, 16)
 #define H2C_FIRST_ERR_QID_RSVD_2_MASK                      GENMASK(15, 13)
 #define H2C_FIRST_ERR_QID_QID_MASK                         GENMASK(12, 0)
-#define EQDMA_CPM5_H2C_DBG_REG0_ADDR                            0xE0C
+#define EQDMA_CPM5_H2C_DBG_REG0_ADDR                       0xE0C
 #define H2C_REG0_NUM_DSC_RCVD_MASK                     GENMASK(31, 16)
 #define H2C_REG0_NUM_WRB_SENT_MASK                     GENMASK(15, 0)
-#define EQDMA_CPM5_H2C_DBG_REG1_ADDR                            0xE10
+#define EQDMA_CPM5_H2C_DBG_REG1_ADDR                       0xE10
 #define H2C_REG1_NUM_REQ_SENT_MASK                     GENMASK(31, 16)
 #define H2C_REG1_NUM_CMP_SENT_MASK                     GENMASK(15, 0)
-#define EQDMA_CPM5_H2C_DBG_REG2_ADDR                            0xE14
+#define EQDMA_CPM5_H2C_DBG_REG2_ADDR                       0xE14
 #define H2C_REG2_RSVD_1_MASK                           GENMASK(31, 16)
 #define H2C_REG2_NUM_ERR_DSC_RCVD_MASK                 GENMASK(15, 0)
-#define EQDMA_CPM5_H2C_DBG_REG3_ADDR                            0xE18
+#define EQDMA_CPM5_H2C_DBG_REG3_ADDR                       0xE18
 #define H2C_REG3_RSVD_1_MASK                           BIT(31)
 #define H2C_REG3_DSCO_FIFO_EMPTY_MASK                  BIT(30)
 #define H2C_REG3_DSCO_FIFO_FULL_MASK                   BIT(29)
@@ -942,34 +941,34 @@ struct xreg_info *eqdma_cpm5_config_regs_get(void);
 #define H2C_REG3_CUR_RQ_STATE_MASK                     GENMASK(3, 2)
 #define H2C_REG3_DSCI_FIFO_FULL_MASK                   BIT(1)
 #define H2C_REG3_DSCI_FIFO_EMPTY_MASK                  BIT(0)
-#define EQDMA_CPM5_H2C_DBG_REG4_ADDR                            0xE1C
+#define EQDMA_CPM5_H2C_DBG_REG4_ADDR                       0xE1C
 #define H2C_REG4_RDREQ_ADDR_MASK                       GENMASK(31, 0)
-#define EQDMA_CPM5_H2C_FATAL_ERR_EN_ADDR                        0xE20
+#define EQDMA_CPM5_H2C_FATAL_ERR_EN_ADDR                   0xE20
 #define H2C_FATAL_ERR_EN_RSVD_1_MASK                       GENMASK(31, 1)
 #define H2C_FATAL_ERR_EN_H2C_MASK                          BIT(0)
-#define EQDMA_CPM5_H2C_REQ_THROT_PCIE_ADDR                      0xE24
+#define EQDMA_CPM5_H2C_REQ_THROT_PCIE_ADDR                 0xE24
 #define H2C_REQ_THROT_PCIE_EN_REQ_MASK                     BIT(31)
 #define H2C_REQ_THROT_PCIE_MASK                           GENMASK(30, 19)
 #define H2C_REQ_THROT_PCIE_EN_DATA_MASK                    BIT(18)
 #define H2C_REQ_THROT_PCIE_DATA_THRESH_MASK                GENMASK(17, 0)
-#define EQDMA_CPM5_H2C_ALN_DBG_REG0_ADDR                        0xE28
+#define EQDMA_CPM5_H2C_ALN_DBG_REG0_ADDR                   0xE28
 #define H2C_ALN_REG0_NUM_PKT_SENT_MASK                 GENMASK(15, 0)
-#define EQDMA_CPM5_H2C_REQ_THROT_AXIMM_ADDR                     0xE2C
+#define EQDMA_CPM5_H2C_REQ_THROT_AXIMM_ADDR                0xE2C
 #define H2C_REQ_THROT_AXIMM_EN_REQ_MASK                    BIT(31)
 #define H2C_REQ_THROT_AXIMM_MASK                          GENMASK(30, 19)
 #define H2C_REQ_THROT_AXIMM_EN_DATA_MASK                   BIT(18)
 #define H2C_REQ_THROT_AXIMM_DATA_THRESH_MASK               GENMASK(17, 0)
-#define EQDMA_CPM5_C2H_MM_CTL_ADDR                              0x1004
+#define EQDMA_CPM5_C2H_MM_CTL_ADDR                         0x1004
 #define C2H_MM_CTL_RESERVED1_MASK                          GENMASK(31, 9)
 #define C2H_MM_CTL_ERRC_EN_MASK                            BIT(8)
 #define C2H_MM_CTL_RESERVED0_MASK                          GENMASK(7, 1)
 #define C2H_MM_CTL_RUN_MASK                                BIT(0)
-#define EQDMA_CPM5_C2H_MM_STATUS_ADDR                           0x1040
+#define EQDMA_CPM5_C2H_MM_STATUS_ADDR                      0x1040
 #define C2H_MM_STATUS_RSVD_1_MASK                          GENMASK(31, 1)
 #define C2H_MM_STATUS_RUN_MASK                             BIT(0)
-#define EQDMA_CPM5_C2H_MM_CMPL_DESC_CNT_ADDR                    0x1048
+#define EQDMA_CPM5_C2H_MM_CMPL_DESC_CNT_ADDR               0x1048
 #define C2H_MM_CMPL_DESC_CNT_C2H_CO_MASK                   GENMASK(31, 0)
-#define EQDMA_CPM5_C2H_MM_ERR_CODE_ENABLE_MASK_ADDR             0x1054
+#define EQDMA_CPM5_C2H_MM_ERR_CODE_ENABLE_MASK_ADDR        0x1054
 #define C2H_MM_ERR_CODE_ENABLE_RESERVED1_MASK         BIT(31)
 #define C2H_MM_ERR_CODE_ENABLE_WR_UC_RAM_MASK         BIT(30)
 #define C2H_MM_ERR_CODE_ENABLE_WR_UR_MASK             BIT(29)
@@ -977,34 +976,34 @@ struct xreg_info *eqdma_cpm5_config_regs_get(void);
 #define C2H_MM_ERR_CODE_ENABLE_RESERVED0_MASK         GENMASK(27, 2)
 #define C2H_MM_ERR_CODE_ENABLE_RD_SLV_ERR_MASK        BIT(1)
 #define C2H_MM_ERR_CODE_ENABLE_WR_SLV_ERR_MASK        BIT(0)
-#define EQDMA_CPM5_C2H_MM_ERR_CODE_ADDR                         0x1058
+#define EQDMA_CPM5_C2H_MM_ERR_CODE_ADDR                    0x1058
 #define C2H_MM_ERR_CODE_RESERVED1_MASK                     GENMASK(31, 28)
 #define C2H_MM_ERR_CODE_CIDX_MASK                          GENMASK(27, 12)
 #define C2H_MM_ERR_CODE_RESERVED0_MASK                     GENMASK(11, 10)
 #define C2H_MM_ERR_CODE_SUB_TYPE_MASK                      GENMASK(9, 5)
 #define C2H_MM_ERR_CODE_MASK                              GENMASK(4, 0)
-#define EQDMA_CPM5_C2H_MM_ERR_INFO_ADDR                         0x105C
+#define EQDMA_CPM5_C2H_MM_ERR_INFO_ADDR                    0x105C
 #define C2H_MM_ERR_INFO_VALID_MASK                         BIT(31)
 #define C2H_MM_ERR_INFO_SEL_MASK                           BIT(30)
 #define C2H_MM_ERR_INFO_RSVD_1_MASK                        GENMASK(29, 24)
 #define C2H_MM_ERR_INFO_QID_MASK                           GENMASK(23, 0)
-#define EQDMA_CPM5_C2H_MM_PERF_MON_CTL_ADDR                     0x10C0
+#define EQDMA_CPM5_C2H_MM_PERF_MON_CTL_ADDR                0x10C0
 #define C2H_MM_PERF_MON_CTL_RSVD_1_MASK                    GENMASK(31, 4)
 #define C2H_MM_PERF_MON_CTL_IMM_START_MASK                 BIT(3)
 #define C2H_MM_PERF_MON_CTL_RUN_START_MASK                 BIT(2)
 #define C2H_MM_PERF_MON_CTL_IMM_CLEAR_MASK                 BIT(1)
 #define C2H_MM_PERF_MON_CTL_RUN_CLEAR_MASK                 BIT(0)
-#define EQDMA_CPM5_C2H_MM_PERF_MON_CYCLE_CNT0_ADDR              0x10C4
+#define EQDMA_CPM5_C2H_MM_PERF_MON_CYCLE_CNT0_ADDR         0x10C4
 #define C2H_MM_PERF_MON_CYCLE_CNT0_CYC_CNT_MASK            GENMASK(31, 0)
-#define EQDMA_CPM5_C2H_MM_PERF_MON_CYCLE_CNT1_ADDR              0x10C8
+#define EQDMA_CPM5_C2H_MM_PERF_MON_CYCLE_CNT1_ADDR         0x10C8
 #define C2H_MM_PERF_MON_CYCLE_CNT1_RSVD_1_MASK             GENMASK(31, 10)
 #define C2H_MM_PERF_MON_CYCLE_CNT1_CYC_CNT_MASK            GENMASK(9, 0)
-#define EQDMA_CPM5_C2H_MM_PERF_MON_DATA_CNT0_ADDR               0x10CC
+#define EQDMA_CPM5_C2H_MM_PERF_MON_DATA_CNT0_ADDR          0x10CC
 #define C2H_MM_PERF_MON_DATA_CNT0_DCNT_MASK                GENMASK(31, 0)
-#define EQDMA_CPM5_C2H_MM_PERF_MON_DATA_CNT1_ADDR               0x10D0
+#define EQDMA_CPM5_C2H_MM_PERF_MON_DATA_CNT1_ADDR          0x10D0
 #define C2H_MM_PERF_MON_DATA_CNT1_RSVD_1_MASK              GENMASK(31, 10)
 #define C2H_MM_PERF_MON_DATA_CNT1_DCNT_MASK                GENMASK(9, 0)
-#define EQDMA_CPM5_C2H_MM_DBG_ADDR                              0x10E8
+#define EQDMA_CPM5_C2H_MM_DBG_ADDR                         0x10E8
 #define C2H_MM_RSVD_1_MASK                             GENMASK(31, 24)
 #define C2H_MM_RRQ_ENTRIES_MASK                        GENMASK(23, 17)
 #define C2H_MM_DAT_FIFO_SPC_MASK                       GENMASK(16, 7)
@@ -1015,17 +1014,17 @@ struct xreg_info *eqdma_cpm5_config_regs_get(void);
 #define C2H_MM_WBK_STALL_MASK                          BIT(2)
 #define C2H_MM_DSC_FIFO_EP_MASK                        BIT(1)
 #define C2H_MM_DSC_FIFO_FL_MASK                        BIT(0)
-#define EQDMA_CPM5_H2C_MM_CTL_ADDR                              0x1204
+#define EQDMA_CPM5_H2C_MM_CTL_ADDR                         0x1204
 #define H2C_MM_CTL_RESERVED1_MASK                          GENMASK(31, 9)
 #define H2C_MM_CTL_ERRC_EN_MASK                            BIT(8)
 #define H2C_MM_CTL_RESERVED0_MASK                          GENMASK(7, 1)
 #define H2C_MM_CTL_RUN_MASK                                BIT(0)
-#define EQDMA_CPM5_H2C_MM_STATUS_ADDR                           0x1240
+#define EQDMA_CPM5_H2C_MM_STATUS_ADDR                      0x1240
 #define H2C_MM_STATUS_RSVD_1_MASK                          GENMASK(31, 1)
 #define H2C_MM_STATUS_RUN_MASK                             BIT(0)
-#define EQDMA_CPM5_H2C_MM_CMPL_DESC_CNT_ADDR                    0x1248
+#define EQDMA_CPM5_H2C_MM_CMPL_DESC_CNT_ADDR               0x1248
 #define H2C_MM_CMPL_DESC_CNT_H2C_CO_MASK                   GENMASK(31, 0)
-#define EQDMA_CPM5_H2C_MM_ERR_CODE_ENABLE_MASK_ADDR             0x1254
+#define EQDMA_CPM5_H2C_MM_ERR_CODE_ENABLE_MASK_ADDR        0x1254
 #define H2C_MM_ERR_CODE_ENABLE_RESERVED5_MASK         GENMASK(31, 30)
 #define H2C_MM_ERR_CODE_ENABLE_WR_SLV_ERR_MASK        BIT(29)
 #define H2C_MM_ERR_CODE_ENABLE_WR_DEC_ERR_MASK        BIT(28)
@@ -1042,34 +1041,34 @@ struct xreg_info *eqdma_cpm5_config_regs_get(void);
 #define H2C_MM_ERR_CODE_ENABLE_RD_UR_CA_MASK          BIT(2)
 #define H2C_MM_ERR_CODE_ENABLE_RD_HRD_POISON_ERR_MASK BIT(1)
 #define H2C_MM_ERR_CODE_ENABLE_RESERVED0_MASK         BIT(0)
-#define EQDMA_CPM5_H2C_MM_ERR_CODE_ADDR                         0x1258
+#define EQDMA_CPM5_H2C_MM_ERR_CODE_ADDR                    0x1258
 #define H2C_MM_ERR_CODE_RSVD_1_MASK                        GENMASK(31, 28)
 #define H2C_MM_ERR_CODE_CIDX_MASK                          GENMASK(27, 12)
 #define H2C_MM_ERR_CODE_RESERVED0_MASK                     GENMASK(11, 10)
 #define H2C_MM_ERR_CODE_SUB_TYPE_MASK                      GENMASK(9, 5)
 #define H2C_MM_ERR_CODE_MASK                              GENMASK(4, 0)
-#define EQDMA_CPM5_H2C_MM_ERR_INFO_ADDR                         0x125C
+#define EQDMA_CPM5_H2C_MM_ERR_INFO_ADDR                    0x125C
 #define H2C_MM_ERR_INFO_VALID_MASK                         BIT(31)
 #define H2C_MM_ERR_INFO_SEL_MASK                           BIT(30)
 #define H2C_MM_ERR_INFO_RSVD_1_MASK                        GENMASK(29, 24)
 #define H2C_MM_ERR_INFO_QID_MASK                           GENMASK(23, 0)
-#define EQDMA_CPM5_H2C_MM_PERF_MON_CTL_ADDR                     0x12C0
+#define EQDMA_CPM5_H2C_MM_PERF_MON_CTL_ADDR                0x12C0
 #define H2C_MM_PERF_MON_CTL_RSVD_1_MASK                    GENMASK(31, 4)
 #define H2C_MM_PERF_MON_CTL_IMM_START_MASK                 BIT(3)
 #define H2C_MM_PERF_MON_CTL_RUN_START_MASK                 BIT(2)
 #define H2C_MM_PERF_MON_CTL_IMM_CLEAR_MASK                 BIT(1)
 #define H2C_MM_PERF_MON_CTL_RUN_CLEAR_MASK                 BIT(0)
-#define EQDMA_CPM5_H2C_MM_PERF_MON_CYCLE_CNT0_ADDR              0x12C4
+#define EQDMA_CPM5_H2C_MM_PERF_MON_CYCLE_CNT0_ADDR         0x12C4
 #define H2C_MM_PERF_MON_CYCLE_CNT0_CYC_CNT_MASK            GENMASK(31, 0)
-#define EQDMA_CPM5_H2C_MM_PERF_MON_CYCLE_CNT1_ADDR              0x12C8
+#define EQDMA_CPM5_H2C_MM_PERF_MON_CYCLE_CNT1_ADDR         0x12C8
 #define H2C_MM_PERF_MON_CYCLE_CNT1_RSVD_1_MASK             GENMASK(31, 10)
 #define H2C_MM_PERF_MON_CYCLE_CNT1_CYC_CNT_MASK            GENMASK(9, 0)
-#define EQDMA_CPM5_H2C_MM_PERF_MON_DATA_CNT0_ADDR               0x12CC
+#define EQDMA_CPM5_H2C_MM_PERF_MON_DATA_CNT0_ADDR          0x12CC
 #define H2C_MM_PERF_MON_DATA_CNT0_DCNT_MASK                GENMASK(31, 0)
-#define EQDMA_CPM5_H2C_MM_PERF_MON_DATA_CNT1_ADDR               0x12D0
+#define EQDMA_CPM5_H2C_MM_PERF_MON_DATA_CNT1_ADDR          0x12D0
 #define H2C_MM_PERF_MON_DATA_CNT1_RSVD_1_MASK              GENMASK(31, 10)
 #define H2C_MM_PERF_MON_DATA_CNT1_DCNT_MASK                GENMASK(9, 0)
-#define EQDMA_CPM5_H2C_MM_DBG_ADDR                              0x12E8
+#define EQDMA_CPM5_H2C_MM_DBG_ADDR                         0x12E8
 #define H2C_MM_RSVD_1_MASK                             GENMASK(31, 24)
 #define H2C_MM_RRQ_ENTRIES_MASK                        GENMASK(23, 17)
 #define H2C_MM_DAT_FIFO_SPC_MASK                       GENMASK(16, 7)
@@ -1080,26 +1079,41 @@ struct xreg_info *eqdma_cpm5_config_regs_get(void);
 #define H2C_MM_WBK_STALL_MASK                          BIT(2)
 #define H2C_MM_DSC_FIFO_EP_MASK                        BIT(1)
 #define H2C_MM_DSC_FIFO_FL_MASK                        BIT(0)
-#define EQDMA_CPM5_C2H_CRDT_COAL_CFG_1_ADDR                     0x1400
+#define EQDMA_CPM5_C2H_CRDT_COAL_CFG_1_ADDR                0x1400
 #define C2H_CRDT_COAL_CFG_1_RSVD_1_MASK                    GENMASK(31, 18)
 #define C2H_CRDT_COAL_CFG_1_PLD_FIFO_TH_MASK               GENMASK(17, 10)
 #define C2H_CRDT_COAL_CFG_1_TIMER_TH_MASK                  GENMASK(9, 0)
-#define EQDMA_CPM5_C2H_CRDT_COAL_CFG_2_ADDR                     0x1404
+#define EQDMA_CPM5_C2H_CRDT_COAL_CFG_2_ADDR                0x1404
 #define C2H_CRDT_COAL_CFG_2_RSVD_1_MASK                    GENMASK(31, 24)
 #define C2H_CRDT_COAL_CFG_2_FIFO_TH_MASK                   GENMASK(23, 16)
 #define C2H_CRDT_COAL_CFG_2_RESERVED1_MASK                 GENMASK(15, 11)
 #define C2H_CRDT_COAL_CFG_2_NT_TH_MASK                     GENMASK(10, 0)
-#define EQDMA_CPM5_C2H_PFCH_BYP_QID_ADDR                        0x1408
+#define EQDMA_CPM5_C2H_PFCH_BYP_QID_ADDR                   0x1408
 #define C2H_PFCH_BYP_QID_RSVD_1_MASK                       GENMASK(31, 12)
 #define C2H_PFCH_BYP_QID_MASK                             GENMASK(11, 0)
-#define EQDMA_CPM5_C2H_PFCH_BYP_TAG_ADDR                        0x140C
+#define EQDMA_CPM5_C2H_PFCH_BYP_TAG_ADDR                   0x140C
 #define C2H_PFCH_BYP_TAG_RSVD_1_MASK                       GENMASK(31, 20)
 #define C2H_PFCH_BYP_TAG_BYP_QID_MASK                      GENMASK(19, 8)
 #define C2H_PFCH_BYP_TAG_RSVD_2_MASK                       BIT(7)
 #define C2H_PFCH_BYP_TAG_MASK                             GENMASK(6, 0)
-#define EQDMA_CPM5_C2H_WATER_MARK_ADDR                          0x1500
+#define EQDMA_CPM5_C2H_WATER_MARK_ADDR                     0x1500
 #define C2H_WATER_MARK_HIGH_WM_MASK                        GENMASK(31, 16)
 #define C2H_WATER_MARK_LOW_WM_MASK                         GENMASK(15, 0)
+#define EQDMA_CPM5_C2H_NOTIFY_EMPTY_ADDR                   0x1800
+#define C2H_NOTIFY_EMPTY_RSVD_1_MASK                       GENMASK(31, 16)
+#define C2H_NOTIFY_EMPTY_NOE_MASK                          GENMASK(15, 0)
+#define EQDMA_CPM5_C2H_STAT_S_AXIS_C2H_ACCEPTED_1_ADDR     0x1804
+#define C2H_STAT_S_AXIS_C2H_ACCEPTED_1_MASK               GENMASK(31, 0)
+#define EQDMA_CPM5_C2H_STAT_S_AXIS_WRB_ACCEPTED_1_ADDR     0x1808
+#define C2H_STAT_S_AXIS_WRB_ACCEPTED_1_MASK               GENMASK(31, 0)
+#define EQDMA_CPM5_C2H_STAT_DESC_RSP_PKT_ACCEPTED_1_ADDR   0x180C
+#define C2H_STAT_DESC_RSP_PKT_ACCEPTED_1_D_MASK            GENMASK(31, 0)
+#define EQDMA_CPM5_C2H_STAT_AXIS_PKG_CMP_1_ADDR            0x1810
+#define C2H_STAT_AXIS_PKG_CMP_1_MASK                      GENMASK(31, 0)
+#define EQDMA_CPM5_C2H_STAT_S_AXIS_WRB_ACCEPTED_2_ADDR     0x1814
+#define C2H_STAT_S_AXIS_WRB_ACCEPTED_2_MASK               GENMASK(31, 0)
+#define EQDMA_CPM5_C2H_ST_PLD_FIFO_DEPTH_ADDR              0x1818
+#define C2H_ST_PLD_FIFO_DEPTH_MASK                        GENMASK(31, 0)
 #define SW_IND_CTXT_DATA_W7_VIRTIO_DSC_BASE_H_MASK        GENMASK(10, 0)
 #define SW_IND_CTXT_DATA_W6_VIRTIO_DSC_BASE_M_MASK        GENMASK(31, 0)
 #define SW_IND_CTXT_DATA_W5_VIRTIO_DSC_BASE_L_MASK        GENMASK(31, 11)
@@ -1217,6 +1231,50 @@ struct xreg_info *eqdma_cpm5_config_regs_get(void);
 #define INTR_CTXT_DATA_W0_RSVD1_MASK                      BIT(12)
 #define INTR_CTXT_DATA_W0_VEC_MASK                        GENMASK(11, 1)
 #define INTR_CTXT_DATA_W0_VALID_MASK                      BIT(0)
+#define HOSTID_TABLE_W6_SMID_MASK                          GENMASK(9, 0)
+#define HOSTID_TABLE_W5_H2C_MM_AWPROT_MASK                 GENMASK(27, 26)
+#define HOSTID_TABLE_W5_H2C_MM_AWCACHE_MASK                GENMASK(25, 22)
+#define HOSTID_TABLE_W5_H2C_MM_AWSTEERING_MASK             GENMASK(20, 18)
+#define HOSTID_TABLE_W5_DSC_AWPROT_MASK                    GENMASK(17, 16)
+#define HOSTID_TABLE_W5_DSC_AWCACHE_MASK                   GENMASK(15, 12)
+#define HOSTID_TABLE_W5_DSC_AWSTEERING_MASK                GENMASK(11, 8)
+#define HOSTID_TABLE_W5_INT_MSG_AWPROT_MASK                GENMASK(7, 6)
+#define HOSTID_TABLE_W5_INT_MSG_AWCACHE_MASK               GENMASK(5, 2)
+#define HOSTID_TABLE_W5_INT_MSG_AWSTEERING_H_MASK          GENMASK(0, 0)
+#define HOSTID_TABLE_W4_INT_MSG_AWSTEERING_L_MASK          GENMASK(31, 30)
+#define HOSTID_TABLE_W4_INT_AGGR_AWPROT_MASK               GENMASK(29, 28)
+#define HOSTID_TABLE_W4_INT_AGGR_AWCACHE_MASK              GENMASK(27, 24)
+#define HOSTID_TABLE_W4_INT_AGGR_AWSTEERING_MASK           GENMASK(22, 20)
+#define HOSTID_TABLE_W4_CMPT_AWPROT_MASK                   GENMASK(19, 18)
+#define HOSTID_TABLE_W4_CMPT_AWCACHE_MASK                  GENMASK(17, 14)
+#define HOSTID_TABLE_W4_CMPT_AWSTEERING_MASK               GENMASK(12, 10)
+#define HOSTID_TABLE_W4_C2H_PLD_AWPROT_MASK                GENMASK(9, 8)
+#define HOSTID_TABLE_W4_C2H_PLD_AWCACHE_MASK               GENMASK(7, 4)
+#define HOSTID_TABLE_W4_C2H_PLD_AWSTEERING_MASK            GENMASK(2, 0)
+#define HOSTID_TABLE_W3_C2H_MM_ARPROT_MASK                 GENMASK(7, 6)
+#define HOSTID_TABLE_W3_C2H_MM_ARCACHE_MASK                GENMASK(5, 2)
+#define HOSTID_TABLE_W3_C2H_MM_ARSTEERING_H_MASK           GENMASK(0, 0)
+#define HOSTID_TABLE_W2_C2H_MM_ARSTEERING_L_MASK           GENMASK(31, 30)
+#define HOSTID_TABLE_W2_H2C_MM_ARPROT_MASK                 GENMASK(29, 28)
+#define HOSTID_TABLE_W2_H2C_MM_ARCACHE_MASK                GENMASK(27, 24)
+#define HOSTID_TABLE_W2_H2C_MM_ARSTEERING_MASK             GENMASK(22, 20)
+#define HOSTID_TABLE_W2_H2C_ST_ARPROT_MASK                 GENMASK(19, 18)
+#define HOSTID_TABLE_W2_H2C_ST_ARCACHE_MASK                GENMASK(17, 14)
+#define HOSTID_TABLE_W2_H2C_ST_ARSTEERING_MASK             GENMASK(12, 10)
+#define HOSTID_TABLE_W2_DSC_ARPOT_MASK                     GENMASK(9, 8)
+#define HOSTID_TABLE_W2_DSC_ARCACHE_MASK                   GENMASK(7, 4)
+#define HOSTID_TABLE_W2_DSC_ARSTEERING_MASK                GENMASK(2, 0)
+#define HOSTID_TABLE_W0_VCH_H2C_MM_MASK                    GENMASK(27, 24)
+#define HOSTID_TABLE_W0_VCH_H2C_ST_MASK                    GENMASK(23, 20)
+#define HOSTID_TABLE_W0_VCH_DSC_MASK                       GENMASK(19, 16)
+#define HOSTID_TABLE_W0_VCH_INT_MSG_MASK                   GENMASK(15, 12)
+#define HOSTID_TABLE_W0_VCH_INT_AGGR_MASK                  GENMASK(11, 8)
+#define HOSTID_TABLE_W0_VCH_CMPT_MASK                      GENMASK(7, 4)
+#define HOSTID_TABLE_W0_VCH_H2C_PLD_MASK                   GENMASK(3, 0)
+#define CTXT_SELC_FNC_STS_W0_MSIX_MASK                GENMASK(3, 3)
+#define CTXT_SELC_FNC_STS_W0_MSIX_ENABLE_MASK              GENMASK(2, 2)
+#define CTXT_SELC_FNC_STS_W0_MEM_SPACE_ENABLE_MASK         GENMASK(1, 1)
+#define CTXT_SELC_FNC_STS_W0_BUS_MASTER_ENABLE_MASK        GENMASK(0, 0)
 
 #ifdef __cplusplus
 }
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_access/eqdma_cpm5_access/eqdma_cpm5_reg_dump.c b/QDMA/linux-kernel/driver/libqdma/qdma_access/eqdma_cpm5_access/eqdma_cpm5_reg_dump.c
old mode 100644
new mode 100755
index 38d897cd948ddb102916355980ae7a8118d15c0b..2c71d016622bbad26961fe29fba43a12497e2d42
--- a/QDMA/linux-kernel/driver/libqdma/qdma_access/eqdma_cpm5_access/eqdma_cpm5_reg_dump.c
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_access/eqdma_cpm5_access/eqdma_cpm5_reg_dump.c
@@ -1,5 +1,6 @@
 /*
- * Copyright(c) 2019-2022 Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2019-2022 Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
@@ -1166,42 +1167,6 @@ static struct regfield_info
 };
 
 
-static struct regfield_info
-	glbl_req_err_sts_field_info[] = {
-	{"GLBL_REQ_ERR_STS_RSVD_1",
-		GLBL_REQ_ERR_STS_RSVD_1_MASK},
-	{"GLBL_REQ_ERR_STS_RC_DISCONTINUE",
-		GLBL_REQ_ERR_STS_RC_DISCONTINUE_MASK},
-	{"GLBL_REQ_ERR_STS_RC_PRTY",
-		GLBL_REQ_ERR_STS_RC_PRTY_MASK},
-	{"GLBL_REQ_ERR_STS_RC_FLR",
-		GLBL_REQ_ERR_STS_RC_FLR_MASK},
-	{"GLBL_REQ_ERR_STS_RC_TIMEOUT",
-		GLBL_REQ_ERR_STS_RC_TIMEOUT_MASK},
-	{"GLBL_REQ_ERR_STS_RC_INV_BCNT",
-		GLBL_REQ_ERR_STS_RC_INV_BCNT_MASK},
-	{"GLBL_REQ_ERR_STS_RC_INV_TAG",
-		GLBL_REQ_ERR_STS_RC_INV_TAG_MASK},
-	{"GLBL_REQ_ERR_STS_RC_START_ADDR_MISMCH",
-		GLBL_REQ_ERR_STS_RC_START_ADDR_MISMCH_MASK},
-	{"GLBL_REQ_ERR_STS_RC_RID_TC_ATTR_MISMCH",
-		GLBL_REQ_ERR_STS_RC_RID_TC_ATTR_MISMCH_MASK},
-	{"GLBL_REQ_ERR_STS_RC_NO_DATA",
-		GLBL_REQ_ERR_STS_RC_NO_DATA_MASK},
-	{"GLBL_REQ_ERR_STS_RC_UR_CA_CRS",
-		GLBL_REQ_ERR_STS_RC_UR_CA_CRS_MASK},
-	{"GLBL_REQ_ERR_STS_RC_POISONED",
-		GLBL_REQ_ERR_STS_RC_POISONED_MASK},
-};
-
-
-static struct regfield_info
-	glbl_req_err_msk_field_info[] = {
-	{"GLBL_REQ_ERR_MSK",
-		GLBL_REQ_ERR_MSK_MASK},
-};
-
-
 static struct regfield_info
 	ind_ctxt_data_field_info[] = {
 	{"IND_CTXT_DATA_DATA",
@@ -1251,6 +1216,8 @@ static struct regfield_info
 
 static struct regfield_info
 	c2h_stat_s_axis_c2h_accepted_field_info[] = {
+	{"C2H_STAT_S_AXIS_C2H_ACCEPTED_RSVD_1",
+		C2H_STAT_S_AXIS_C2H_ACCEPTED_RSVD_1_MASK},
 	{"C2H_STAT_S_AXIS_C2H_ACCEPTED",
 		C2H_STAT_S_AXIS_C2H_ACCEPTED_MASK},
 };
@@ -1258,6 +1225,8 @@ static struct regfield_info
 
 static struct regfield_info
 	c2h_stat_s_axis_wrb_accepted_field_info[] = {
+	{"C2H_STAT_S_AXIS_WRB_ACCEPTED_RSVD_1",
+		C2H_STAT_S_AXIS_WRB_ACCEPTED_RSVD_1_MASK},
 	{"C2H_STAT_S_AXIS_WRB_ACCEPTED",
 		C2H_STAT_S_AXIS_WRB_ACCEPTED_MASK},
 };
@@ -1265,6 +1234,8 @@ static struct regfield_info
 
 static struct regfield_info
 	c2h_stat_desc_rsp_pkt_accepted_field_info[] = {
+	{"C2H_STAT_DESC_RSP_PKT_ACCEPTED_RSVD_1",
+		C2H_STAT_DESC_RSP_PKT_ACCEPTED_RSVD_1_MASK},
 	{"C2H_STAT_DESC_RSP_PKT_ACCEPTED_D",
 		C2H_STAT_DESC_RSP_PKT_ACCEPTED_D_MASK},
 };
@@ -1272,6 +1243,8 @@ static struct regfield_info
 
 static struct regfield_info
 	c2h_stat_axis_pkg_cmp_field_info[] = {
+	{"C2H_STAT_AXIS_PKG_CMP_RSVD_1",
+		C2H_STAT_AXIS_PKG_CMP_RSVD_1_MASK},
 	{"C2H_STAT_AXIS_PKG_CMP",
 		C2H_STAT_AXIS_PKG_CMP_MASK},
 };
@@ -1279,6 +1252,8 @@ static struct regfield_info
 
 static struct regfield_info
 	c2h_stat_desc_rsp_accepted_field_info[] = {
+	{"C2H_STAT_DESC_RSP_ACCEPTED_RSVD_1",
+		C2H_STAT_DESC_RSP_ACCEPTED_RSVD_1_MASK},
 	{"C2H_STAT_DESC_RSP_ACCEPTED_D",
 		C2H_STAT_DESC_RSP_ACCEPTED_D_MASK},
 };
@@ -1286,6 +1261,8 @@ static struct regfield_info
 
 static struct regfield_info
 	c2h_stat_desc_rsp_cmp_field_info[] = {
+	{"C2H_STAT_DESC_RSP_CMP_RSVD_1",
+		C2H_STAT_DESC_RSP_CMP_RSVD_1_MASK},
 	{"C2H_STAT_DESC_RSP_CMP_D",
 		C2H_STAT_DESC_RSP_CMP_D_MASK},
 };
@@ -1293,6 +1270,8 @@ static struct regfield_info
 
 static struct regfield_info
 	c2h_stat_wrq_out_field_info[] = {
+	{"C2H_STAT_WRQ_OUT_RSVD_1",
+		C2H_STAT_WRQ_OUT_RSVD_1_MASK},
 	{"C2H_STAT_WRQ_OUT",
 		C2H_STAT_WRQ_OUT_MASK},
 };
@@ -1300,6 +1279,8 @@ static struct regfield_info
 
 static struct regfield_info
 	c2h_stat_wpl_ren_accepted_field_info[] = {
+	{"C2H_STAT_WPL_REN_ACCEPTED_RSVD_1",
+		C2H_STAT_WPL_REN_ACCEPTED_RSVD_1_MASK},
 	{"C2H_STAT_WPL_REN_ACCEPTED",
 		C2H_STAT_WPL_REN_ACCEPTED_MASK},
 };
@@ -1307,6 +1288,8 @@ static struct regfield_info
 
 static struct regfield_info
 	c2h_stat_total_wrq_len_field_info[] = {
+	{"C2H_STAT_TOTAL_WRQ_LEN_RSVD_1",
+		C2H_STAT_TOTAL_WRQ_LEN_RSVD_1_MASK},
 	{"C2H_STAT_TOTAL_WRQ_LEN",
 		C2H_STAT_TOTAL_WRQ_LEN_MASK},
 };
@@ -1314,6 +1297,8 @@ static struct regfield_info
 
 static struct regfield_info
 	c2h_stat_total_wpl_len_field_info[] = {
+	{"C2H_STAT_TOTAL_WPL_LEN_RSVD_1",
+		C2H_STAT_TOTAL_WPL_LEN_RSVD_1_MASK},
 	{"C2H_STAT_TOTAL_WPL_LEN",
 		C2H_STAT_TOTAL_WPL_LEN_MASK},
 };
@@ -1506,6 +1491,8 @@ static struct regfield_info
 
 static struct regfield_info
 	c2h_stat_desc_rsp_drop_accepted_field_info[] = {
+	{"C2H_STAT_DESC_RSP_DROP_ACCEPTED_RSVD_1",
+		C2H_STAT_DESC_RSP_DROP_ACCEPTED_RSVD_1_MASK},
 	{"C2H_STAT_DESC_RSP_DROP_ACCEPTED_D",
 		C2H_STAT_DESC_RSP_DROP_ACCEPTED_D_MASK},
 };
@@ -1513,6 +1500,8 @@ static struct regfield_info
 
 static struct regfield_info
 	c2h_stat_desc_rsp_err_accepted_field_info[] = {
+	{"C2H_STAT_DESC_RSP_ERR_ACCEPTED_RSVD_1",
+		C2H_STAT_DESC_RSP_ERR_ACCEPTED_RSVD_1_MASK},
 	{"C2H_STAT_DESC_RSP_ERR_ACCEPTED_D",
 		C2H_STAT_DESC_RSP_ERR_ACCEPTED_D_MASK},
 };
@@ -1520,6 +1509,8 @@ static struct regfield_info
 
 static struct regfield_info
 	c2h_stat_desc_req_field_info[] = {
+	{"C2H_STAT_DESC_REQ_RSVD_1",
+		C2H_STAT_DESC_REQ_RSVD_1_MASK},
 	{"C2H_STAT_DESC_REQ",
 		C2H_STAT_DESC_REQ_MASK},
 };
@@ -2690,6 +2681,57 @@ static struct regfield_info
 		C2H_WATER_MARK_LOW_WM_MASK},
 };
 
+
+static struct regfield_info
+	c2h_notify_empty_field_info[] = {
+	{"C2H_NOTIFY_EMPTY_RSVD_1",
+		C2H_NOTIFY_EMPTY_RSVD_1_MASK},
+	{"C2H_NOTIFY_EMPTY_NOE",
+		C2H_NOTIFY_EMPTY_NOE_MASK},
+};
+
+
+static struct regfield_info
+	c2h_stat_s_axis_c2h_accepted_1_field_info[] = {
+	{"C2H_STAT_S_AXIS_C2H_ACCEPTED_1",
+		C2H_STAT_S_AXIS_C2H_ACCEPTED_1_MASK},
+};
+
+
+static struct regfield_info
+	c2h_stat_s_axis_wrb_accepted_1_field_info[] = {
+	{"C2H_STAT_S_AXIS_WRB_ACCEPTED_1",
+		C2H_STAT_S_AXIS_WRB_ACCEPTED_1_MASK},
+};
+
+
+static struct regfield_info
+	c2h_stat_desc_rsp_pkt_accepted_1_field_info[] = {
+	{"C2H_STAT_DESC_RSP_PKT_ACCEPTED_1_D",
+		C2H_STAT_DESC_RSP_PKT_ACCEPTED_1_D_MASK},
+};
+
+
+static struct regfield_info
+	c2h_stat_axis_pkg_cmp_1_field_info[] = {
+	{"C2H_STAT_AXIS_PKG_CMP_1",
+		C2H_STAT_AXIS_PKG_CMP_1_MASK},
+};
+
+
+static struct regfield_info
+	c2h_stat_s_axis_wrb_accepted_2_field_info[] = {
+	{"C2H_STAT_S_AXIS_WRB_ACCEPTED_2",
+		C2H_STAT_S_AXIS_WRB_ACCEPTED_2_MASK},
+};
+
+
+static struct regfield_info
+	c2h_st_pld_fifo_depth_field_info[] = {
+	{"C2H_ST_PLD_FIFO_DEPTH",
+		C2H_ST_PLD_FIFO_DEPTH_MASK},
+};
+
 static struct xreg_info eqdma_cpm5_config_regs[] = {
 {"CFG_BLK_IDENTIFIER", 0x00,
 	1, 0, 0, 0,
@@ -3147,18 +3189,6 @@ static struct xreg_info eqdma_cpm5_config_regs[] = {
 	ARRAY_SIZE(fab_err_log_field_info),
 	fab_err_log_field_info
 },
-{"GLBL_REQ_ERR_STS", 0x318,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(glbl_req_err_sts_field_info),
-	glbl_req_err_sts_field_info
-},
-{"GLBL_REQ_ERR_MSK", 0x31c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(glbl_req_err_msk_field_info),
-	glbl_req_err_msk_field_info
-},
 {"IND_CTXT_DATA", 0x804,
 	1, 0, 0, 0,
 	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
@@ -3191,61 +3221,61 @@ static struct xreg_info eqdma_cpm5_config_regs[] = {
 },
 {"C2H_STAT_S_AXIS_C2H_ACCEPTED", 0xa88,
 	1, 0, 0, 0,
-	1, QDMA_ST_MODE, QDMA_REG_READ_PF_VF,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_VF,
 	ARRAY_SIZE(c2h_stat_s_axis_c2h_accepted_field_info),
 	c2h_stat_s_axis_c2h_accepted_field_info
 },
 {"C2H_STAT_S_AXIS_WRB_ACCEPTED", 0xa8c,
 	1, 0, 0, 0,
-	1, QDMA_ST_MODE, QDMA_REG_READ_PF_VF,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_VF,
 	ARRAY_SIZE(c2h_stat_s_axis_wrb_accepted_field_info),
 	c2h_stat_s_axis_wrb_accepted_field_info
 },
 {"C2H_STAT_DESC_RSP_PKT_ACCEPTED", 0xa90,
 	1, 0, 0, 0,
-	1, QDMA_ST_MODE, QDMA_REG_READ_PF_VF,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_VF,
 	ARRAY_SIZE(c2h_stat_desc_rsp_pkt_accepted_field_info),
 	c2h_stat_desc_rsp_pkt_accepted_field_info
 },
 {"C2H_STAT_AXIS_PKG_CMP", 0xa94,
 	1, 0, 0, 0,
-	1, QDMA_ST_MODE, QDMA_REG_READ_PF_VF,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_VF,
 	ARRAY_SIZE(c2h_stat_axis_pkg_cmp_field_info),
 	c2h_stat_axis_pkg_cmp_field_info
 },
 {"C2H_STAT_DESC_RSP_ACCEPTED", 0xa98,
 	1, 0, 0, 0,
-	1, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
 	ARRAY_SIZE(c2h_stat_desc_rsp_accepted_field_info),
 	c2h_stat_desc_rsp_accepted_field_info
 },
 {"C2H_STAT_DESC_RSP_CMP", 0xa9c,
 	1, 0, 0, 0,
-	1, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
 	ARRAY_SIZE(c2h_stat_desc_rsp_cmp_field_info),
 	c2h_stat_desc_rsp_cmp_field_info
 },
 {"C2H_STAT_WRQ_OUT", 0xaa0,
 	1, 0, 0, 0,
-	1, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
 	ARRAY_SIZE(c2h_stat_wrq_out_field_info),
 	c2h_stat_wrq_out_field_info
 },
 {"C2H_STAT_WPL_REN_ACCEPTED", 0xaa4,
 	1, 0, 0, 0,
-	1, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
 	ARRAY_SIZE(c2h_stat_wpl_ren_accepted_field_info),
 	c2h_stat_wpl_ren_accepted_field_info
 },
 {"C2H_STAT_TOTAL_WRQ_LEN", 0xaa8,
 	1, 0, 0, 0,
-	1, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
 	ARRAY_SIZE(c2h_stat_total_wrq_len_field_info),
 	c2h_stat_total_wrq_len_field_info
 },
 {"C2H_STAT_TOTAL_WPL_LEN", 0xaac,
 	1, 0, 0, 0,
-	1, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
 	ARRAY_SIZE(c2h_stat_total_wpl_len_field_info),
 	c2h_stat_total_wpl_len_field_info
 },
@@ -3299,13 +3329,13 @@ static struct xreg_info eqdma_cpm5_config_regs[] = {
 },
 {"C2H_PFCH_CFG_1", 0xa80,
 	1, 0, 0, 0,
-	0, QDMA_COMPLETION_MODE, QDMA_REG_READ_PF_ONLY,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_VF,
 	ARRAY_SIZE(c2h_pfch_cfg_1_field_info),
 	c2h_pfch_cfg_1_field_info
 },
 {"C2H_PFCH_CFG_2", 0xa84,
 	1, 0, 0, 0,
-	0, QDMA_COMPLETION_MODE, QDMA_REG_READ_PF_ONLY,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_VF,
 	ARRAY_SIZE(c2h_pfch_cfg_2_field_info),
 	c2h_pfch_cfg_2_field_info
 },
@@ -3317,43 +3347,43 @@ static struct xreg_info eqdma_cpm5_config_regs[] = {
 },
 {"C2H_STAT_DESC_RSP_DROP_ACCEPTED", 0xb10,
 	1, 0, 0, 0,
-	1, QDMA_ST_MODE, QDMA_REG_READ_PF_VF,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_VF,
 	ARRAY_SIZE(c2h_stat_desc_rsp_drop_accepted_field_info),
 	c2h_stat_desc_rsp_drop_accepted_field_info
 },
 {"C2H_STAT_DESC_RSP_ERR_ACCEPTED", 0xb14,
 	1, 0, 0, 0,
-	1, QDMA_ST_MODE, QDMA_REG_READ_PF_VF,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_VF,
 	ARRAY_SIZE(c2h_stat_desc_rsp_err_accepted_field_info),
 	c2h_stat_desc_rsp_err_accepted_field_info
 },
 {"C2H_STAT_DESC_REQ", 0xb18,
 	1, 0, 0, 0,
-	1, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
 	ARRAY_SIZE(c2h_stat_desc_req_field_info),
 	c2h_stat_desc_req_field_info
 },
 {"C2H_STAT_DBG_DMA_ENG_0", 0xb1c,
 	1, 0, 0, 0,
-	1, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
 	ARRAY_SIZE(c2h_stat_dbg_dma_eng_0_field_info),
 	c2h_stat_dbg_dma_eng_0_field_info
 },
 {"C2H_STAT_DBG_DMA_ENG_1", 0xb20,
 	1, 0, 0, 0,
-	1, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
 	ARRAY_SIZE(c2h_stat_dbg_dma_eng_1_field_info),
 	c2h_stat_dbg_dma_eng_1_field_info
 },
 {"C2H_STAT_DBG_DMA_ENG_2", 0xb24,
 	1, 0, 0, 0,
-	1, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
 	ARRAY_SIZE(c2h_stat_dbg_dma_eng_2_field_info),
 	c2h_stat_dbg_dma_eng_2_field_info
 },
 {"C2H_STAT_DBG_DMA_ENG_3", 0xb28,
 	1, 0, 0, 0,
-	1, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
 	ARRAY_SIZE(c2h_stat_dbg_dma_eng_3_field_info),
 	c2h_stat_dbg_dma_eng_3_field_info
 },
@@ -3371,25 +3401,25 @@ static struct xreg_info eqdma_cpm5_config_regs[] = {
 },
 {"STAT_NUM_WRB_IN", 0xb34,
 	1, 0, 0, 0,
-	1, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
 	ARRAY_SIZE(stat_num_wrb_in_field_info),
 	stat_num_wrb_in_field_info
 },
 {"STAT_NUM_WRB_OUT", 0xb38,
 	1, 0, 0, 0,
-	1, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
 	ARRAY_SIZE(stat_num_wrb_out_field_info),
 	stat_num_wrb_out_field_info
 },
 {"STAT_NUM_WRB_DRP", 0xb3c,
 	1, 0, 0, 0,
-	1, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
 	ARRAY_SIZE(stat_num_wrb_drp_field_info),
 	stat_num_wrb_drp_field_info
 },
 {"STAT_NUM_STAT_DESC_OUT", 0xb40,
 	1, 0, 0, 0,
-	1, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
 	ARRAY_SIZE(stat_num_stat_desc_out_field_info),
 	stat_num_stat_desc_out_field_info
 },
@@ -3647,13 +3677,13 @@ static struct xreg_info eqdma_cpm5_config_regs[] = {
 },
 {"C2H_STAT_HAS_CMPT_ACCEPTED", 0xbec,
 	1, 0, 0, 0,
-	1, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
 	ARRAY_SIZE(c2h_stat_has_cmpt_accepted_field_info),
 	c2h_stat_has_cmpt_accepted_field_info
 },
 {"C2H_STAT_HAS_PLD_ACCEPTED", 0xbf0,
 	1, 0, 0, 0,
-	1, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
 	ARRAY_SIZE(c2h_stat_has_pld_accepted_field_info),
 	c2h_stat_has_pld_accepted_field_info
 },
@@ -3695,31 +3725,31 @@ static struct xreg_info eqdma_cpm5_config_regs[] = {
 },
 {"H2C_DBG_REG0", 0xe0c,
 	1, 0, 0, 0,
-	1, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
 	ARRAY_SIZE(h2c_dbg_reg0_field_info),
 	h2c_dbg_reg0_field_info
 },
 {"H2C_DBG_REG1", 0xe10,
 	1, 0, 0, 0,
-	1, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
 	ARRAY_SIZE(h2c_dbg_reg1_field_info),
 	h2c_dbg_reg1_field_info
 },
 {"H2C_DBG_REG2", 0xe14,
 	1, 0, 0, 0,
-	1, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
 	ARRAY_SIZE(h2c_dbg_reg2_field_info),
 	h2c_dbg_reg2_field_info
 },
 {"H2C_DBG_REG3", 0xe18,
 	1, 0, 0, 0,
-	1, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
 	ARRAY_SIZE(h2c_dbg_reg3_field_info),
 	h2c_dbg_reg3_field_info
 },
 {"H2C_DBG_REG4", 0xe1c,
 	1, 0, 0, 0,
-	1, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
 	ARRAY_SIZE(h2c_dbg_reg4_field_info),
 	h2c_dbg_reg4_field_info
 },
@@ -3737,7 +3767,7 @@ static struct xreg_info eqdma_cpm5_config_regs[] = {
 },
 {"H2C_ALN_DBG_REG0", 0xe28,
 	1, 0, 0, 0,
-	1, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
 	ARRAY_SIZE(h2c_aln_dbg_reg0_field_info),
 	h2c_aln_dbg_reg0_field_info
 },
@@ -3921,6 +3951,48 @@ static struct xreg_info eqdma_cpm5_config_regs[] = {
 	ARRAY_SIZE(c2h_water_mark_field_info),
 	c2h_water_mark_field_info
 },
+{"C2H_NOTIFY_EMPTY", 0x1800,
+	1, 0, 0, 0,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(c2h_notify_empty_field_info),
+	c2h_notify_empty_field_info
+},
+{"C2H_STAT_S_AXIS_C2H_ACCEPTED_1", 0x1804,
+	1, 0, 0, 0,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(c2h_stat_s_axis_c2h_accepted_1_field_info),
+	c2h_stat_s_axis_c2h_accepted_1_field_info
+},
+{"C2H_STAT_S_AXIS_WRB_ACCEPTED_1", 0x1808,
+	1, 0, 0, 0,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(c2h_stat_s_axis_wrb_accepted_1_field_info),
+	c2h_stat_s_axis_wrb_accepted_1_field_info
+},
+{"C2H_STAT_DESC_RSP_PKT_ACCEPTED_1", 0x180c,
+	1, 0, 0, 0,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(c2h_stat_desc_rsp_pkt_accepted_1_field_info),
+	c2h_stat_desc_rsp_pkt_accepted_1_field_info
+},
+{"C2H_STAT_AXIS_PKG_CMP_1", 0x1810,
+	1, 0, 0, 0,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(c2h_stat_axis_pkg_cmp_1_field_info),
+	c2h_stat_axis_pkg_cmp_1_field_info
+},
+{"C2H_STAT_S_AXIS_WRB_ACCEPTED_2", 0x1814,
+	1, 0, 0, 0,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(c2h_stat_s_axis_wrb_accepted_2_field_info),
+	c2h_stat_s_axis_wrb_accepted_2_field_info
+},
+{"C2H_ST_PLD_FIFO_DEPTH", 0x1818,
+	1, 0, 0, 0,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(c2h_st_pld_fifo_depth_field_info),
+	c2h_st_pld_fifo_depth_field_info
+},
 
 };
 
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_access/eqdma_soft_access/eqdma_soft_access.c b/QDMA/linux-kernel/driver/libqdma/qdma_access/eqdma_soft_access/eqdma_soft_access.c
old mode 100644
new mode 100755
index f918f1b57cc6d519646ef351532a6f837f39fa86..19105c153908bbd206abf2aea4d1cacdc9c045e6
--- a/QDMA/linux-kernel/driver/libqdma/qdma_access/eqdma_soft_access/eqdma_soft_access.c
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_access/eqdma_soft_access/eqdma_soft_access.c
@@ -1,5 +1,6 @@
 /*
- * Copyright(c) 2019-2022 Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2019-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
@@ -49,12 +50,23 @@
 #define EQDMA_MM_C2H_ERR_ALL_MASK			0X70000003
 #define EQDMA_MM_H2C0_ERR_ALL_MASK		    0X3041013E
 
-/* H2C Throttle settings */
+/* H2C Throttle settings for QDMA 4.0 */
 #define EQDMA_H2C_THROT_DATA_THRESH       0x5000
 #define EQDMA_THROT_EN_DATA               1
 #define EQDMA_THROT_EN_REQ                0
 #define EQDMA_H2C_THROT_REQ_THRESH        0xC0
 
+/* H2C Throttle settings for QDMA 5.0 */
+#define EQDMA5_H2C_THROT_DATA_THRESH       0x5000
+#define EQDMA5_THROT_EN_DATA               1
+#define EQDMA5_THROT_EN_REQ                1
+#define EQDMA5_H2C_THROT_REQ_THRESH        0xC0
+
+/* CSR Default values for QDMA 5.0 */
+#define EQDMA5_DEFAULT_H2C_UODSC_LIMIT     4
+#define EQDMA5_DEFAULT_MAX_DSC_FETCH       3
+#define EQDMA5_DEFAULT_WRB_INT             QDMA_WRB_INTERVAL_128
+
 /** Auxillary Bitmasks for fields spanning multiple words */
 #define EQDMA_SW_CTXT_PASID_GET_H_MASK              GENMASK(21, 12)
 #define EQDMA_SW_CTXT_PASID_GET_L_MASK              GENMASK(11, 0)
@@ -84,6 +96,9 @@
 #define EQDMA_FMAP_CTXT_W1_QID_MAX_MASK         GENMASK(11, 0)
 #define EQDMA_FMAP_CTXT_W0_QID_MASK             GENMASK(10, 0)
 
+#define EQDMA_GLBL2_IP_VERSION_MASK             GENMASK(23, 20)
+#define EQDMA_GLBL2_VF_IP_VERSION_MASK          GENMASK(7, 4)
+
 static void eqdma_hw_st_h2c_err_process(void *dev_hndl);
 static void eqdma_hw_st_c2h_err_process(void *dev_hndl);
 static void eqdma_hw_desc_err_process(void *dev_hndl);
@@ -1877,6 +1892,34 @@ static int eqdma_indirect_reg_write(void *dev_hndl, enum ind_ctxt_cmd_sel sel,
 	return QDMA_SUCCESS;
 }
 
+int eqdma_get_ip_version(void *dev_hndl, uint8_t is_vf,
+			uint32_t *ip_version)
+{
+	uint32_t ver_reg_val = 0;
+	uint32_t reg_addr = (is_vf) ? EQDMA_OFFSET_VF_VERSION :
+			EQDMA_GLBL2_MISC_CAP_ADDR;
+
+	if (!dev_hndl) {
+		qdma_log_error("%s: dev_handle is NULL, err:%d\n",
+				__func__, -QDMA_ERR_INV_PARAM);
+		return -QDMA_ERR_INV_PARAM;
+	}
+
+	ver_reg_val = qdma_reg_read(dev_hndl, reg_addr);
+
+	if (!is_vf) {
+		*ip_version =
+			FIELD_GET(EQDMA_GLBL2_IP_VERSION_MASK,
+				ver_reg_val);
+	} else {
+		*ip_version =
+			FIELD_GET(EQDMA_GLBL2_VF_IP_VERSION_MASK,
+					ver_reg_val);
+	}
+
+	return QDMA_SUCCESS;
+}
+
 /*
  * eqdma_fill_sw_ctxt() - Helper function to fill sw context into structure
  *
@@ -2056,6 +2099,8 @@ static void eqdma_fill_intr_ctxt(struct qdma_indirect_intr_ctxt *intr_ctxt)
  *****************************************************************************/
 int eqdma_set_default_global_csr(void *dev_hndl)
 {
+	int rv = QDMA_SUCCESS;
+
 	/* Default values */
 	uint32_t cfg_val = 0, reg_val = 0;
 	uint32_t rng_sz[QDMA_NUM_RING_SIZES] = {2049, 65, 129, 193, 257, 385,
@@ -2068,6 +2113,7 @@ int eqdma_set_default_global_csr(void *dev_hndl)
 		2048, 3968, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 8192,
 		9018, 16384};
 	struct qdma_dev_attributes dev_cap;
+	uint32_t eqdma_ip_version;
 
 	if (!dev_hndl) {
 		qdma_log_error("%s: dev_handle is NULL, err:%d\n", __func__,
@@ -2077,6 +2123,10 @@ int eqdma_set_default_global_csr(void *dev_hndl)
 
 	eqdma_get_device_attributes(dev_hndl, &dev_cap);
 
+	rv = eqdma_get_ip_version(dev_hndl, 0, &eqdma_ip_version);
+	if (rv != QDMA_SUCCESS)
+		return rv;
+
 	/* Configuring CSR registers */
 	/* Global ring sizes */
 	qdma_write_csr_values(dev_hndl, EQDMA_GLBL_RNG_SZ_1_ADDR, 0,
@@ -2091,13 +2141,30 @@ int eqdma_set_default_global_csr(void *dev_hndl)
 		qdma_write_csr_values(dev_hndl, EQDMA_C2H_TIMER_CNT_ADDR, 0,
 				QDMA_NUM_C2H_TIMERS, tmr_cnt);
 
-
 		/* Writeback Interval */
-		reg_val =
-			FIELD_SET(GLBL_DSC_CFG_MAXFETCH_MASK,
-					DEFAULT_MAX_DSC_FETCH) |
-			FIELD_SET(GLBL_DSC_CFG_WB_ACC_INT_MASK,
-					DEFAULT_WRB_INT);
+		if (eqdma_ip_version == EQDMA_IP_VERSION_4) {
+			reg_val =
+				FIELD_SET(GLBL_DSC_CFG_MAXFETCH_MASK,
+						DEFAULT_MAX_DSC_FETCH) |
+				FIELD_SET(GLBL_DSC_CFG_WB_ACC_INT_MASK,
+						DEFAULT_WRB_INT);
+		} else if (eqdma_ip_version == EQDMA_IP_VERSION_5) {
+			/* For QDMA4.0 and QDMA5.0, HW design and register map
+			 * is same except some performance optimizations
+			 */
+			reg_val =
+				FIELD_SET(GLBL_DSC_CFG_H2C_UODSC_LIMIT_MASK,
+					EQDMA5_DEFAULT_H2C_UODSC_LIMIT) |
+				FIELD_SET(GLBL_DSC_CFG_MAXFETCH_MASK,
+					EQDMA5_DEFAULT_MAX_DSC_FETCH) |
+				FIELD_SET(GLBL_DSC_CFG_WB_ACC_INT_MASK,
+					EQDMA5_DEFAULT_WRB_INT);
+		} else {
+			qdma_log_error("%s: ip_type = %d is invalid, err:%d\n",
+				__func__, eqdma_ip_version,
+				-QDMA_ERR_INV_PARAM);
+			return -QDMA_ERR_INV_PARAM;
+		}
 		qdma_reg_write(dev_hndl, EQDMA_GLBL_DSC_CFG_ADDR, reg_val);
 	}
 
@@ -2135,16 +2202,35 @@ int eqdma_set_default_global_csr(void *dev_hndl)
 		qdma_reg_write(dev_hndl, EQDMA_C2H_WRB_COAL_CFG_ADDR, reg_val);
 
 		/* H2C throttle Configuration*/
-
-		reg_val =
-			FIELD_SET(H2C_REQ_THROT_PCIE_DATA_THRESH_MASK,
-					EQDMA_H2C_THROT_DATA_THRESH) |
-			FIELD_SET(H2C_REQ_THROT_PCIE_EN_DATA_MASK,
-					EQDMA_THROT_EN_DATA) |
-			FIELD_SET(H2C_REQ_THROT_PCIE_MASK,
-					EQDMA_H2C_THROT_REQ_THRESH) |
-			FIELD_SET(H2C_REQ_THROT_PCIE_EN_REQ_MASK,
-					EQDMA_THROT_EN_REQ);
+		if (eqdma_ip_version == EQDMA_IP_VERSION_4) {
+			reg_val =
+				FIELD_SET(H2C_REQ_THROT_PCIE_DATA_THRESH_MASK,
+						EQDMA_H2C_THROT_DATA_THRESH) |
+				FIELD_SET(H2C_REQ_THROT_PCIE_EN_DATA_MASK,
+						EQDMA_THROT_EN_DATA) |
+				FIELD_SET(H2C_REQ_THROT_PCIE_MASK,
+						EQDMA_H2C_THROT_REQ_THRESH) |
+				FIELD_SET(H2C_REQ_THROT_PCIE_EN_REQ_MASK,
+						EQDMA_THROT_EN_REQ);
+		} else if (eqdma_ip_version == EQDMA_IP_VERSION_5) {
+			/* For QDMA4.0 and QDMA5.0, HW design and register map
+			 * is same except some performance optimizations
+			 */
+			reg_val =
+				FIELD_SET(H2C_REQ_THROT_PCIE_DATA_THRESH_MASK,
+						EQDMA5_H2C_THROT_DATA_THRESH) |
+				FIELD_SET(H2C_REQ_THROT_PCIE_EN_DATA_MASK,
+						EQDMA5_THROT_EN_DATA) |
+				FIELD_SET(H2C_REQ_THROT_PCIE_MASK,
+						EQDMA5_H2C_THROT_REQ_THRESH) |
+				FIELD_SET(H2C_REQ_THROT_PCIE_EN_REQ_MASK,
+						EQDMA5_THROT_EN_REQ);
+		} else {
+			qdma_log_error("%s: ip_type = %d is invalid, err:%d\n",
+						__func__, eqdma_ip_version,
+					   -QDMA_ERR_INV_PARAM);
+			return -QDMA_ERR_INV_PARAM;
+		}
 		qdma_reg_write(dev_hndl, EQDMA_H2C_REQ_THROT_PCIE_ADDR,
 			reg_val);
 	}
@@ -2746,7 +2832,7 @@ int eqdma_get_version(void *dev_hndl, uint8_t is_vf,
 
 	reg_val = qdma_reg_read(dev_hndl, reg_addr);
 
-	qdma_fetch_version_details(is_vf, reg_val, version_info);
+	qdma_fetch_version_details(dev_hndl, is_vf, reg_val, version_info);
 
 	return QDMA_SUCCESS;
 }
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_access/eqdma_soft_access/eqdma_soft_access.h b/QDMA/linux-kernel/driver/libqdma/qdma_access/eqdma_soft_access/eqdma_soft_access.h
old mode 100644
new mode 100755
index 1574b4467bb1f2d62fd9ef10f3e1fd23fad7d302..4cc8ca96b1676c6446745522012bfd5fc422bd64
--- a/QDMA/linux-kernel/driver/libqdma/qdma_access/eqdma_soft_access/eqdma_soft_access.h
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_access/eqdma_soft_access/eqdma_soft_access.h
@@ -1,5 +1,6 @@
 /*
- * Copyright(c) 2019-2022 Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2019-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
@@ -217,6 +218,13 @@ struct eqdma_hw_err_info {
 	void (*eqdma_hw_err_process)(void *dev_hndl);
 };
 
+/* In QDMA_GLBL2_MISC_CAP(0x134) register,
+ * Bits [23:20] gives QDMA IP version.
+ * 0: QDMA3.1, 1: QDMA4.0, 2: QDMA5.0
+ */
+#define EQDMA_IP_VERSION_4                1
+#define EQDMA_IP_VERSION_5                2
+
 #define EQDMA_OFFSET_VF_VERSION           0x5014
 #define EQDMA_OFFSET_VF_USER_BAR		  0x5018
 
@@ -232,6 +240,9 @@ int eqdma_init_ctxt_memory(void *dev_hndl);
 int eqdma_get_version(void *dev_hndl, uint8_t is_vf,
 		struct qdma_hw_version_info *version_info);
 
+int eqdma_get_ip_version(void *dev_hndl, uint8_t is_vf,
+			uint32_t *ip_version);
+
 int eqdma_sw_ctx_conf(void *dev_hndl, uint8_t c2h, uint16_t hw_qid,
 			struct qdma_descq_sw_ctxt *ctxt,
 			enum qdma_hw_access_type access_type);
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_access/eqdma_soft_access/eqdma_soft_reg.h b/QDMA/linux-kernel/driver/libqdma/qdma_access/eqdma_soft_access/eqdma_soft_reg.h
old mode 100644
new mode 100755
index 6589573f307bc824602a97035e6ba4b5f44994ef..0905d5093ab08182bac7f6ed04ccafdba7de808e
--- a/QDMA/linux-kernel/driver/libqdma/qdma_access/eqdma_soft_access/eqdma_soft_reg.h
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_access/eqdma_soft_access/eqdma_soft_reg.h
@@ -1,5 +1,6 @@
 /*
- * Copyright(c) 2019-2022 Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2019-2022 Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
@@ -255,6 +256,35 @@ struct xreg_info *eqdma_config_regs_get(void);
 #define GLBL2_SYSTEM_ID_MASK                              GENMASK(15, 0)
 #define EQDMA_GLBL2_MISC_CAP_ADDR                          0x134
 #define GLBL2_MISC_CAP_MASK                               GENMASK(31, 0)
+#define EQDMA_GLBL2_RRQ_BRG_THROT_ADDR                     0x158
+#define GLBL2_RRQ_BRG_THROT_REQ_EN_MASK                    BIT(31)
+#define GLBL2_RRQ_BRG_THROT_REQ_MASK                       GENMASK(30, 19)
+#define GLBL2_RRQ_BRG_THROT_DAT_EN_MASK                    BIT(18)
+#define GLBL2_RRQ_BRG_THROT_DAT_MASK                       GENMASK(17, 0)
+#define EQDMA_GLBL2_RRQ_PCIE_THROT_ADDR                    0x15C
+#define GLBL2_RRQ_PCIE_THROT_REQ_EN_MASK                   BIT(31)
+#define GLBL2_RRQ_PCIE_THROT_REQ_MASK                      GENMASK(30, 19)
+#define GLBL2_RRQ_PCIE_THROT_DAT_EN_MASK                   BIT(18)
+#define GLBL2_RRQ_PCIE_THROT_DAT_MASK                      GENMASK(17, 0)
+#define EQDMA_GLBL2_RRQ_AXIMM_THROT_ADDR                   0x160
+#define GLBL2_RRQ_AXIMM_THROT_REQ_EN_MASK                  BIT(31)
+#define GLBL2_RRQ_AXIMM_THROT_REQ_MASK                     GENMASK(30, 19)
+#define GLBL2_RRQ_AXIMM_THROT_DAT_EN_MASK                  BIT(18)
+#define GLBL2_RRQ_AXIMM_THROT_DAT_MASK                     GENMASK(17, 0)
+#define EQDMA_GLBL2_RRQ_PCIE_LAT0_ADDR                     0x164
+#define GLBL2_RRQ_PCIE_LAT0_MAX_MASK                      GENMASK(31, 16)
+#define GLBL2_RRQ_PCIE_LAT0_MIN_MASK                      GENMASK(15, 0)
+#define EQDMA_GLBL2_RRQ_PCIE_LAT1_ADDR                     0x168
+#define GLBL2_RRQ_PCIE_LAT1_RSVD_MASK                      GENMASK(31, 17)
+#define GLBL2_RRQ_PCIE_LAT1_OVFL_MASK                     BIT(16)
+#define GLBL2_RRQ_PCIE_LAT1_AVG_MASK                      GENMASK(15, 0)
+#define EQDMA_GLBL2_RRQ_AXIMM_LAT0_ADDR                    0x16C
+#define GLBL2_RRQ_AXIMM_LAT0_MAX_MASK                     GENMASK(31, 16)
+#define GLBL2_RRQ_AXIMM_LAT0_MIN_MASK                     GENMASK(15, 0)
+#define EQDMA_GLBL2_RRQ_AXIMM_LAT1_ADDR                    0x170
+#define GLBL2_RRQ_AXIMM_LAT1_RSVD_MASK                     GENMASK(31, 17)
+#define GLBL2_RRQ_AXIMM_LAT1_OVFL_MASK                    BIT(16)
+#define GLBL2_RRQ_AXIMM_LAT1_AVG_MASK                     GENMASK(15, 0)
 #define EQDMA_GLBL2_DBG_PCIE_RQ0_ADDR                      0x1B8
 #define GLBL2_PCIE_RQ0_NPH_AVL_MASK                    GENMASK(31, 20)
 #define GLBL2_PCIE_RQ0_RCB_AVL_MASK                    GENMASK(19, 9)
@@ -431,7 +461,9 @@ struct xreg_info *eqdma_config_regs_get(void);
 #define EQDMA_GLBL_ERR_MASK_ADDR                           0x24C
 #define GLBL_ERR_MASK                            GENMASK(31, 0)
 #define EQDMA_GLBL_DSC_CFG_ADDR                            0x250
-#define GLBL_DSC_CFG_RSVD_1_MASK                           GENMASK(31, 10)
+#define GLBL_DSC_CFG_RSVD_1_MASK                           GENMASK(31, 30)
+#define GLBL_DSC_CFG_C2H_UODSC_LIMIT_MASK                  GENMASK(29, 20)
+#define GLBL_DSC_CFG_H2C_UODSC_LIMIT_MASK                  GENMASK(19, 10)
 #define GLBL_DSC_CFG_UNC_OVR_COR_MASK                      BIT(9)
 #define GLBL_DSC_CFG_CTXT_FER_DIS_MASK                     BIT(8)
 #define GLBL_DSC_CFG_RSVD_2_MASK                           GENMASK(7, 6)
@@ -505,7 +537,9 @@ struct xreg_info *eqdma_config_regs_get(void);
 #define GLBL_DSC_DAT1_DSC_SPC_C2H_MASK                 GENMASK(15, 8)
 #define GLBL_DSC_DAT1_DSC_SPC_H2C_MASK                 GENMASK(7, 0)
 #define EQDMA_GLBL_DSC_DBG_CTL_ADDR                        0x278
-#define GLBL_DSC_CTL_RSVD_1_MASK                       GENMASK(31, 3)
+#define GLBL_DSC_CTL_RSVD_1_MASK                       GENMASK(31, 16)
+#define GLBL_DSC_CTL_LAT_QID_MASK                  GENMASK(15, 4)
+#define GLBL_DSC_CTL_DSC_ENG_LAT_CLR_MASK              BIT(3)
 #define GLBL_DSC_CTL_SELECT_MASK                       GENMASK(2, 0)
 #define EQDMA_GLBL_DSC_ERR_LOG2_ADDR                       0x27c
 #define GLBL_DSC_ERR_LOG2_OLD_PIDX_MASK                    GENMASK(31, 16)
@@ -546,6 +580,183 @@ struct xreg_info *eqdma_config_regs_get(void);
 #define GLBL_REQ_ERR_STS_RC_POISONED_MASK                  BIT(0)
 #define EQDMA_GLBL_REQ_ERR_MSK_ADDR                        0x31C
 #define GLBL_REQ_ERR_MSK_MASK                         GENMASK(31, 0)
+#define EQDMA_GLBL_DSC_DBG_LAT0_A_ADDR                     0x320
+#define GLBL_DSC_LAT0_A_LAT_MAX_MASK                   GENMASK(31, 16)
+#define GLBL_DSC_LAT0_A_LAT_MIN_MASK                   GENMASK(15, 0)
+#define EQDMA_GLBL_DSC_DBG_LAT1_A_ADDR                     0x324
+#define GLBL_DSC_LAT1_A_RSVD_MASK                      GENMASK(31, 17)
+#define GLBL_DSC_LAT1_A_LAT_OVF_MASK                   BIT(16)
+#define GLBL_DSC_LAT1_A_LAT_AVG_MASK                   GENMASK(15, 0)
+#define EQDMA_GLBL_DSC_CRD_CTR0_A_ADDR                     0x328
+#define GLBL_DSC_CRD_CTR0_A_CRD_RCV_CNT_MASK               GENMASK(31, 0)
+#define EQDMA_GLBL_DSC_CRD_CTR1_A_ADDR                     0x32C
+#define GLBL_DSC_CRD_CTR1_A_CRD_RCV_CNT_MASK               GENMASK(31, 0)
+#define EQDMA_GLBL_DSC_CRD_CTR2_A_ADDR                     0x330
+#define GLBL_DSC_CRD_CTR2_A_CRD_RCV_NRDY_CNT_MASK          GENMASK(31, 0)
+#define EQDMA_GLBL_DSC_CRD_CTR3_A_ADDR                     0x334
+#define GLBL_DSC_CRD_CTR3_A_CRD_RCV_NRDY_CNT_MASK          GENMASK(31, 0)
+#define EQDMA_GLBL_DSC_IMM_CRD_CTR0_A_ADDR                 0x338
+#define GLBL_DSC_IMM_CRD_CTR0_A_RCV_CNT_MASK               GENMASK(31, 0)
+#define EQDMA_GLBL_DSC_IMM_CRD_CTR1_A_ADDR                 0x33C
+#define GLBL_DSC_IMM_CRD_CTR1_A_RCV_CNT_MASK               GENMASK(31, 0)
+#define EQDMA_GLBL_DSC_IMM_CRD_CTR2_A_ADDR                 0x340
+#define GLBL_DSC_IMM_CRD_CTR2_A_RCV_NRDY_CNT_MASK          GENMASK(31, 0)
+#define EQDMA_GLBL_DSC_IMM_CRD_CTR3_A_ADDR                 0x344
+#define GLBL_DSC_IMM_CRD_CTR3_A_RCV_NRDY_CNT_MASK          GENMASK(31, 0)
+#define EQDMA_GLBL_DSC_H2C_OUT_CTR0_A_ADDR                 0x348
+#define GLBL_DSC_H2C_OUT_CTR0_A_H2CVLD_CNT_MASK            GENMASK(31, 0)
+#define EQDMA_GLBL_DSC_H2C_OUT_CTR1_A_ADDR                 0x34C
+#define GLBL_DSC_H2C_OUT_CTR1_A_H2CVLD_CNT_MASK            GENMASK(31, 0)
+#define EQDMA_GLBL_DSC_H2C_OUT_CTR2_A_ADDR                 0x350
+#define GLBL_DSC_H2C_OUT_CTR2_A_H2CVLD_NRDY_CNT_MASK       GENMASK(31, 0)
+#define EQDMA_GLBL_DSC_H2C_OUT_CTR3_A_ADDR                 0x354
+#define GLBL_DSC_H2C_OUT_CTR3_A_H2CVLD_NRDY_CNT_MASK       GENMASK(31, 0)
+#define EQDMA_GLBL_DSC_C2H_OUT_CTR0_A_ADDR                 0x358
+#define GLBL_DSC_C2H_OUT_CTR0_A_C2HVLD_CNT_MASK            GENMASK(31, 0)
+#define EQDMA_GLBL_DSC_C2H_OUT_CTR1_A_ADDR                 0x35C
+#define GLBL_DSC_C2H_OUT_CTR1_A_C2HVLD_CNT_MASK            GENMASK(31, 0)
+#define EQDMA_GLBL_DSC_C2H_OUT_CTR2_A_ADDR                 0x360
+#define GLBL_DSC_C2H_OUT_CTR2_A_C2HVLD_NRDY_CNT_MASK       GENMASK(31, 0)
+#define EQDMA_GLBL_DSC_C2H_OUT_CTR3_A_ADDR                 0x364
+#define GLBL_DSC_C2H_OUT_CTR3_A_C2HVLD_NRDY_CNT_MASK       GENMASK(31, 0)
+#define EQDMA_T_ADDR                                       0x368
+#define T_USER_CTR_MAX_MASK                                GENMASK(31, 0)
+#define EQDMA_GLBL_PERF_CNTR_CTL_A1_ADDR                   0x36C
+#define GLBL_PERF_CNTR_CTL_A1_RSVD_MASK                    GENMASK(31, 18)
+#define GLBL_PERF_CNTR_CTL_A1_USER_CTR_CLEAR_MASK          BIT(17)
+#define GLBL_PERF_CNTR_CTL_A1_USER_CTR_READ_MASK           BIT(16)
+#define GLBL_PERF_CNTR_CTL_A1_USER_CTR_MAX_MASK            GENMASK(15, 0)
+#define EQDMA_GLBL_FREE_CNT_A0_ADDR                        0x370
+#define GLBL_FREE_CNT_A0_S_MASK                            GENMASK(31, 0)
+#define EQDMA_GLBL_FREE_CNT_A1_ADDR                        0x374
+#define GLBL_FREE_CNT_A1_RSVD_MASK                         GENMASK(31, 16)
+#define GLBL_FREE_CNT_A1_S_MASK                            GENMASK(15, 0)
+#define EQDMA_GLBL_AXIS_H2C_CNT_A0_ADDR                    0x378
+#define GLBL_AXIS_H2C_CNT_A0_MPKT_CNTS_MASK                GENMASK(31, 0)
+#define EQDMA_GLBL_AXIS_H2C_CNT_A1_ADDR                    0x37C
+#define GLBL_AXIS_H2C_CNT_A1_MIDLE_CNTS_MASK               GENMASK(15, 0)
+#define GLBL_AXIS_H2C_CNT_A1_MPKT_CNTS_MASK                GENMASK(15, 0)
+#define EQDMA_GLBL_AXIS_H2C_CNT_A2_ADDR                    0x380
+#define GLBL_AXIS_H2C_CNT_A2_MIDLE_CNTS_MASK               GENMASK(31, 0)
+#define EQDMA_GLBL_AXIS_H2C_CNT_A3_ADDR                    0x384
+#define GLBL_AXIS_H2C_CNT_A3_MACTV_CNTS_MASK               GENMASK(31, 0)
+#define EQDMA_GLBL_AXIS_H2C_CNT_A4_ADDR                    0x388
+#define GLBL_AXIS_H2C_CNT_A4_MBUSY_CNTS_MASK               GENMASK(15, 0)
+#define GLBL_AXIS_H2C_CNT_A4_MACTV_CNTS_MASK               GENMASK(15, 0)
+#define EQDMA_GLBL_AXIS_H2C_CNT_A5_ADDR                    0x38C
+#define GLBL_AXIS_H2C_CNT_A5_MBUSY_CNTS_MASK               GENMASK(31, 0)
+#define EQDMA_GLBL_AXIS_C2H_CNT_A0_ADDR                    0x390
+#define GLBL_AXIS_C2H_CNT_A0_SPKT_CNTS_MASK                GENMASK(31, 0)
+#define EQDMA_GLBL_AXIS_C2H_CNT_A1_ADDR                    0x394
+#define GLBL_AXIS_C2H_CNT_A1_SIDLE_CNTS_MASK               GENMASK(15, 0)
+#define GLBL_AXIS_C2H_CNT_A1_SPKT_CNTS_MASK                GENMASK(15, 0)
+#define EQDMA_GLBL_AXIS_C2H_CNT_A2_ADDR                    0x398
+#define GLBL_AXIS_C2H_CNT_A2_SIDLE_CNTS_MASK               GENMASK(31, 0)
+#define EQDMA_GLBL_AXIS_C2H_CNT_A3_ADDR                    0x39C
+#define GLBL_AXIS_C2H_CNT_A3_SACTV_CNTS_MASK               GENMASK(31, 0)
+#define EQDMA_GLBL_AXIS_C2H_CNT_A4_ADDR                    0x3A0
+#define GLBL_AXIS_C2H_CNT_A4_SBUSY_CNTS_MASK               GENMASK(15, 0)
+#define GLBL_AXIS_C2H_CNT_A4_SACTV_CNTS_MASK               GENMASK(15, 0)
+#define EQDMA_GLBL_AXIS_C2H_CNT_A5_ADDR                    0x3A4
+#define GLBL_AXIS_C2H_CNT_A5_SBUSY_CNTS_MASK               GENMASK(31, 0)
+#define EQDMA_GLBL_M_AXI_WR_CNT_A0_ADDR                    0x3A8
+#define GLBL_M_AXI_WR_CNT_A0_PKT_CNTS_MASK                 GENMASK(31, 0)
+#define EQDMA_GLBL_M_AXI_WR_CNT_A1_ADDR                    0x3AC
+#define GLBL_M_AXI_WR_CNT_A1_IDLE_CNTS_MASK                GENMASK(15, 0)
+#define GLBL_M_AXI_WR_CNT_A1_PKT_CNTS_MASK                 GENMASK(15, 0)
+#define EQDMA_GLBL_M_AXI_WR_CNT_A2_ADDR                    0x3B0
+#define GLBL_M_AXI_WR_CNT_A2_IDLE_CNTS_MASK                GENMASK(31, 0)
+#define EQDMA_GLBL_M_AXI_WR_CNT_A3_ADDR                    0x3B4
+#define GLBL_M_AXI_WR_CNT_A3_ACTV_CNTS_MASK                GENMASK(31, 0)
+#define EQDMA_GLBL_M_AXI_WR_CNT_A4_ADDR                    0x3B8
+#define GLBL_M_AXI_WR_CNT_A4_BUSY_CNTS_MASK                GENMASK(15, 0)
+#define GLBL_M_AXI_WR_CNT_A4_ACTV_CNTS_MASK                GENMASK(15, 0)
+#define EQDMA_GLBL_M_AXI_WR_CNT_A5_ADDR                    0x3BC
+#define GLBL_M_AXI_WR_CNT_A5_BUSY_CNTS_MASK                GENMASK(31, 0)
+#define EQDMA_GLBL_M_AXI_RD_CNT_A0_ADDR                    0x3C0
+#define GLBL_M_AXI_RD_CNT_A0_PKT_CNTS_MASK                 GENMASK(31, 0)
+#define EQDMA_GLBL_M_AXI_RD_CNT_A1_ADDR                    0x3C4
+#define GLBL_M_AXI_RD_CNT_A1_IDLE_CNTS_MASK                GENMASK(15, 0)
+#define GLBL_M_AXI_RD_CNT_A1_PKT_CNTS_MASK                 GENMASK(15, 0)
+#define EQDMA_GLBL_M_AXI_RD_CNT_A2_ADDR                    0x3C8
+#define GLBL_M_AXI_RD_CNT_A2_IDLE_CNTS_MASK                GENMASK(31, 0)
+#define EQDMA_GLBL_M_AXI_RD_CNT_A3_ADDR                    0x3CC
+#define GLBL_M_AXI_RD_CNT_A3_ACTV_CNTS_MASK                GENMASK(31, 0)
+#define EQDMA_GLBL_M_AXI_RD_CNT_A4_ADDR                    0x3D0
+#define GLBL_M_AXI_RD_CNT_A4_BUSY_CNTS_MASK                GENMASK(15, 0)
+#define GLBL_M_AXI_RD_CNT_A4_ACTV_CNTS_MASK                GENMASK(15, 0)
+#define EQDMA_GLBL_M_AXI_RD_CNT_A5_ADDR                    0x3D4
+#define GLBL_M_AXI_RD_CNT_A5_BUSY_CNTS_MASK                GENMASK(31, 0)
+#define EQDMA_GLBL_M_AXIB_WR_CNT_A0_ADDR                   0x3D8
+#define GLBL_M_AXIB_WR_CNT_A0_PKT_CNTS_MASK                GENMASK(31, 0)
+#define EQDMA_GLBL_M_AXIB_WR_CNT_A1_ADDR                   0x3DC
+#define GLBL_M_AXIB_WR_CNT_A1_IDLE_CNTS_MASK               GENMASK(15, 0)
+#define GLBL_M_AXIB_WR_CNT_A1_PKT_CNTS_MASK                GENMASK(15, 0)
+#define EQDMA_GLBL_M_AXIB_WR_CNT_A2_ADDR                   0x3E0
+#define GLBL_M_AXIB_WR_CNT_A2_IDLE_CNTS_MASK               GENMASK(31, 0)
+#define EQDMA_GLBL_M_AXIB_WR_CNT_A3_ADDR                   0x3E4
+#define GLBL_M_AXIB_WR_CNT_A3_ACTV_CNTS_MASK               GENMASK(31, 0)
+#define EQDMA_GLBL_M_AXIB_WR_CNT_A4_ADDR                   0x3E8
+#define GLBL_M_AXIB_WR_CNT_A4_BUSY_CNTS_MASK               GENMASK(15, 0)
+#define GLBL_M_AXIB_WR_CNT_A4_ACTV_CNTS_MASK               GENMASK(15, 0)
+#define EQDMA_GLBL_M_AXIB_WR_CNT_A5_ADDR                   0x3EC
+#define GLBL_M_AXIB_WR_CNT_A5_BUSY_CNTS_MASK               GENMASK(31, 0)
+#define EQDMA_GLBL_M_AXIB_RD_CNT_A0_ADDR                   0x3F0
+#define GLBL_M_AXIB_RD_CNT_A0_PKT_CNTS_MASK                GENMASK(31, 0)
+#define EQDMA_GLBL_M_AXIB_RD_CNT_A1_ADDR                   0x3F4
+#define GLBL_M_AXIB_RD_CNT_A1_IDLE_CNTS_MASK               GENMASK(15, 0)
+#define GLBL_M_AXIB_RD_CNT_A1_PKT_CNTS_MASK                GENMASK(15, 0)
+#define EQDMA_GLBL_M_AXIB_RD_CNT_A2_ADDR                   0x3F8
+#define GLBL_M_AXIB_RD_CNT_A2_IDLE_CNTS_MASK               GENMASK(31, 0)
+#define EQDMA_GLBL_M_AXIB_RD_CNT_A3_ADDR                   0x3FC
+#define GLBL_M_AXIB_RD_CNT_A3_ACTV_CNTS_MASK               GENMASK(31, 0)
+#define EQDMA_GLBL_M_AXIB_RD_CNT_A4_ADDR                   0x400
+#define GLBL_M_AXIB_RD_CNT_A4_BUSY_CNTS_MASK               GENMASK(15, 0)
+#define GLBL_M_AXIB_RD_CNT_A4_ACTV_CNTS_MASK               GENMASK(15, 0)
+#define EQDMA_GLBL_M_AXIB_RD_CNT_A5_ADDR                   0x404
+#define GLBL_M_AXIB_RD_CNT_A5_BUSY_CNTS_MASK               GENMASK(31, 0)
+#define EQDMA_GLBL_S_AXI_WR_CNT_A0_ADDR                    0x408
+#define GLBL_S_AXI_WR_CNT_A0_PKT_CNTS_MASK                 GENMASK(31, 0)
+#define EQDMA_GLBL_S_AXI_WR_CNT_A1_ADDR                    0x40C
+#define GLBL_S_AXI_WR_CNT_A1_IDLE_CNTS_MASK                GENMASK(15, 0)
+#define GLBL_S_AXI_WR_CNT_A1_PKT_CNTS_MASK                 GENMASK(15, 0)
+#define EQDMA_GLBL_S_AXI_WR_CNT_A2_ADDR                    0x410
+#define GLBL_S_AXI_WR_CNT_A2_IDLE_CNTS_MASK                GENMASK(31, 0)
+#define EQDMA_GLBL_S_AXI_WR_CNT_A3_ADDR                    0x414
+#define GLBL_S_AXI_WR_CNT_A3_ACTV_CNTS_MASK                GENMASK(31, 0)
+#define EQDMA_GLBL_S_AXI_WR_CNT_A4_ADDR                    0x418
+#define GLBL_S_AXI_WR_CNT_A4_BUSY_CNTS_MASK                GENMASK(15, 0)
+#define GLBL_S_AXI_WR_CNT_A4_ACTV_CNTS_MASK                GENMASK(15, 0)
+#define EQDMA_GLBL_S_AXI_WR_CNT_A5_ADDR                    0x41C
+#define GLBL_S_AXI_WR_CNT_A5_BUSY_CNTS_MASK                GENMASK(31, 0)
+#define EQDMA_GLBL_S_AXI_RD_CNT_A0_ADDR                    0x420
+#define GLBL_S_AXI_RD_CNT_A0_PKT_CNTS_MASK                 GENMASK(31, 0)
+#define EQDMA_GLBL_S_AXI_RD_CNT_A1_ADDR                    0x424
+#define GLBL_S_AXI_RD_CNT_A1_IDLE_CNTS_MASK                GENMASK(15, 0)
+#define GLBL_S_AXI_RD_CNT_A1_PKT_CNTS_MASK                 GENMASK(15, 0)
+#define EQDMA_GLBL_S_AXI_RD_CNT_A2_ADDR                    0x428
+#define GLBL_S_AXI_RD_CNT_A2_IDLE_CNTS_MASK                GENMASK(31, 0)
+#define EQDMA_GLBL_S_AXI_RD_CNT_A3_ADDR                    0x42C
+#define GLBL_S_AXI_RD_CNT_A3_ACTV_CNTS_MASK                GENMASK(31, 0)
+#define EQDMA_GLBL_S_AXI_RD_CNT_A4_ADDR                    0x430
+#define GLBL_S_AXI_RD_CNT_A4_BUSY_CNTS_MASK                GENMASK(15, 0)
+#define GLBL_S_AXI_RD_CNT_A4_ACTV_CNTS_MASK                GENMASK(15, 0)
+#define EQDMA_GLBL_S_AXI_RD_CNT_A5_ADDR                    0x434
+#define GLBL_S_AXI_RD_CNT_A5_BUSY_CNTS_MASK                GENMASK(31, 0)
+#define EQDMA_GLBL_S_AXIS_CMP_CNT_A0_ADDR                  0x438
+#define GLBL_S_AXIS_CMP_CNT_A0_PKT_CNTS_MASK               GENMASK(31, 0)
+#define EQDMA_GLBL_S_AXIS_CMP_CNT_A1_ADDR                  0x43C
+#define GLBL_S_AXIS_CMP_CNT_A1_IDLE_CNTS_MASK              GENMASK(15, 0)
+#define GLBL_S_AXIS_CMP_CNT_A1_PKT_CNTS_MASK               GENMASK(15, 0)
+#define EQDMA_GLBL_S_AXIS_CMP_CNT_A2_ADDR                  0x440
+#define GLBL_S_AXIS_CMP_CNT_A2_IDLE_CNTS_MASK              GENMASK(31, 0)
+#define EQDMA_GLBL_S_AXIS_CMP_CNT_A3_ADDR                  0x444
+#define GLBL_S_AXIS_CMP_CNT_A3_ACTV_CNTS_MASK              GENMASK(31, 0)
+#define EQDMA_GLBL_S_AXIS_CMP_CNT_A4_ADDR                  0x448
+#define GLBL_S_AXIS_CMP_CNT_A4_BUSY_CNTS_MASK              GENMASK(15, 0)
+#define GLBL_S_AXIS_CMP_CNT_A4_ACTV_CNTS_MASK              GENMASK(15, 0)
+#define EQDMA_GLBL_S_AXIS_CMP_CNT_A5_ADDR                  0x44C
+#define GLBL_S_AXIS_CMP_CNT_A5_BUSY_CNTS_MASK              GENMASK(31, 0)
 #define EQDMA_IND_CTXT_DATA_ADDR                           0x804
 #define IND_CTXT_DATA_DATA_MASK                            GENMASK(31, 0)
 #define EQDMA_IND_CTXT_MASK_ADDR                           0x824
@@ -562,6 +773,16 @@ struct xreg_info *eqdma_config_regs_get(void);
 #define EQDMA_C2H_CNT_TH_ADDR                              0xA40
 #define C2H_CNT_TH_RSVD_1_MASK                             GENMASK(31, 16)
 #define C2H_CNT_TH_THESHOLD_CNT_MASK                       GENMASK(15, 0)
+#define EQDMA_C2H_PFCH_CFG_1_ADDR                          0xA80
+#define C2H_PFCH_CFG_1_EVT_QCNT_TH_MASK                    GENMASK(31, 16)
+#define C2H_PFCH_CFG_1_QCNT_MASK                           GENMASK(15, 0)
+#define EQDMA_C2H_PFCH_CFG_2_ADDR                          0xA84
+#define C2H_PFCH_CFG_2_FENCE_MASK                          BIT(31)
+#define C2H_PFCH_CFG_2_RSVD_MASK                           GENMASK(30, 29)
+#define C2H_PFCH_CFG_2_VAR_DESC_NO_DROP_MASK               BIT(28)
+#define C2H_PFCH_CFG_2_LL_SZ_TH_MASK                       GENMASK(27, 12)
+#define C2H_PFCH_CFG_2_VAR_DESC_NUM_MASK                   GENMASK(11, 6)
+#define C2H_PFCH_CFG_2_NUM_MASK                            GENMASK(5, 0)
 #define EQDMA_C2H_STAT_S_AXIS_C2H_ACCEPTED_ADDR            0xA88
 #define C2H_STAT_S_AXIS_C2H_ACCEPTED_MASK                 GENMASK(31, 0)
 #define EQDMA_C2H_STAT_S_AXIS_WRB_ACCEPTED_ADDR            0xA8C
@@ -646,16 +867,6 @@ struct xreg_info *eqdma_config_regs_get(void);
 #define EQDMA_C2H_PFCH_CFG_ADDR                            0xB08
 #define C2H_PFCH_CFG_EVTFL_TH_MASK                         GENMASK(31, 16)
 #define C2H_PFCH_CFG_FL_TH_MASK                            GENMASK(15, 0)
-#define EQDMA_C2H_PFCH_CFG_1_ADDR                          0xA80
-#define C2H_PFCH_CFG_1_EVT_QCNT_TH_MASK                    GENMASK(31, 16)
-#define C2H_PFCH_CFG_1_QCNT_MASK                           GENMASK(15, 0)
-#define EQDMA_C2H_PFCH_CFG_2_ADDR                          0xA84
-#define C2H_PFCH_CFG_2_FENCE_MASK                          BIT(31)
-#define C2H_PFCH_CFG_2_RSVD_MASK                           GENMASK(30, 29)
-#define C2H_PFCH_CFG_2_VAR_DESC_NO_DROP_MASK               BIT(28)
-#define C2H_PFCH_CFG_2_LL_SZ_TH_MASK                       GENMASK(27, 12)
-#define C2H_PFCH_CFG_2_VAR_DESC_NUM_MASK                   GENMASK(11, 6)
-#define C2H_PFCH_CFG_2_NUM_MASK                            GENMASK(5, 0)
 #define EQDMA_C2H_INT_TIMER_TICK_ADDR                      0xB0C
 #define C2H_INT_TIMER_TICK_MASK                           GENMASK(31, 0)
 #define EQDMA_C2H_STAT_DESC_RSP_DROP_ACCEPTED_ADDR         0xB10
@@ -678,35 +889,33 @@ struct xreg_info *eqdma_config_regs_get(void);
 #define C2H_STAT_DMA_ENG_0_WRB_SM_CS_MASK              BIT(4)
 #define C2H_STAT_DMA_ENG_0_MAIN_SM_CS_MASK             GENMASK(3, 0)
 #define EQDMA_C2H_STAT_DBG_DMA_ENG_1_ADDR                  0xB20
-#define C2H_STAT_DMA_ENG_1_RSVD_1_MASK                 GENMASK(31, 29)
+#define C2H_STAT_DMA_ENG_1_WRB_USER_0_CMPT_TYPE_MASK   GENMASK(31, 30)
+#define C2H_STAT_DMA_ENG_1_DESC_RSP_FIFO_OUT_VLD_MASK  GENMASK(29, 29)
 #define C2H_STAT_DMA_ENG_1_QID_FIFO_OUT_CNT_MASK       GENMASK(28, 18)
 #define C2H_STAT_DMA_ENG_1_PLD_FIFO_OUT_CNT_MASK       GENMASK(17, 7)
 #define C2H_STAT_DMA_ENG_1_PLD_ST_FIFO_CNT_MASK        GENMASK(6, 0)
 #define EQDMA_C2H_STAT_DBG_DMA_ENG_2_ADDR                  0xB24
-#define C2H_STAT_DMA_ENG_2_RSVD_1_MASK                 GENMASK(31, 29)
-#define C2H_STAT_DMA_ENG_2_QID_FIFO_OUT_CNT_MASK       GENMASK(28, 18)
-#define C2H_STAT_DMA_ENG_2_PLD_FIFO_OUT_CNT_MASK       GENMASK(17, 7)
-#define C2H_STAT_DMA_ENG_2_PLD_ST_FIFO_CNT_MASK        GENMASK(6, 0)
+#define C2H_STAT_DMA_ENG_2_WRB_USER_1_CMPT_TYPE_MASK   GENMASK(31, 30)
+#define C2H_STAT_DMA_ENG_2_DESC_RSP_FIFO_OUT_VLD_1_MASK GENMASK(29, 29)
+#define C2H_STAT_DMA_ENG_2_QID_FIFO_OUT_CNT_1_MASK     GENMASK(28, 18)
+#define C2H_STAT_DMA_ENG_2_PLD_FIFO_OUT_CNT_1_MASK     GENMASK(17, 7)
+#define C2H_STAT_DMA_ENG_2_PLD_ST_FIFO_CNT_1_MASK      GENMASK(6, 0)
 #define EQDMA_C2H_STAT_DBG_DMA_ENG_3_ADDR                  0xB28
-#define C2H_STAT_DMA_ENG_3_RSVD_1_MASK                 GENMASK(31, 24)
-#define C2H_STAT_DMA_ENG_3_WRQ_FIFO_OUT_CNT_MASK       GENMASK(23, 19)
-#define C2H_STAT_DMA_ENG_3_QID_FIFO_OUT_VLD_MASK       BIT(18)
-#define C2H_STAT_DMA_ENG_3_PLD_FIFO_OUT_VLD_MASK       BIT(17)
-#define C2H_STAT_DMA_ENG_3_PLD_ST_FIFO_OUT_VLD_MASK    BIT(16)
-#define C2H_STAT_DMA_ENG_3_PLD_ST_FIFO_OUT_DATA_EOP_MASK BIT(15)
-#define C2H_STAT_DMA_ENG_3_PLD_ST_FIFO_OUT_DATA_AVL_IDX_ENABLE_MASK BIT(14)
-#define C2H_STAT_DMA_ENG_3_PLD_ST_FIFO_OUT_DATA_DROP_MASK BIT(13)
-#define C2H_STAT_DMA_ENG_3_PLD_ST_FIFO_OUT_DATA_ERR_MASK BIT(12)
-#define C2H_STAT_DMA_ENG_3_DESC_CNT_FIFO_IN_RDY_MASK   BIT(11)
-#define C2H_STAT_DMA_ENG_3_DESC_RSP_FIFO_IN_RDY_MASK   BIT(10)
-#define C2H_STAT_DMA_ENG_3_PLD_PKT_ID_LARGER_0_MASK    BIT(9)
-#define C2H_STAT_DMA_ENG_3_WRQ_VLD_MASK                BIT(8)
-#define C2H_STAT_DMA_ENG_3_WRQ_RDY_MASK                BIT(7)
-#define C2H_STAT_DMA_ENG_3_WRQ_FIFO_OUT_RDY_MASK       BIT(6)
-#define C2H_STAT_DMA_ENG_3_WRQ_PACKET_OUT_DATA_DROP_MASK BIT(5)
-#define C2H_STAT_DMA_ENG_3_WRQ_PACKET_OUT_DATA_ERR_MASK BIT(4)
-#define C2H_STAT_DMA_ENG_3_WRQ_PACKET_OUT_DATA_MARKER_MASK BIT(3)
-#define C2H_STAT_DMA_ENG_3_WRQ_PACKET_PRE_EOR_MASK     BIT(2)
+#define C2H_STAT_DMA_ENG_3_QID_FIFO_OUT_DAT_HAS_CMPT_MASK BIT(31)
+#define C2H_STAT_DMA_ENG_3_QID_FIFO_OUT_DAT_MARKER_MASK BIT(30)
+#define C2H_STAT_DMA_ENG_3_QID_FIFO_OUT_DAT_DROP_REQ_MASK BIT(29)
+#define C2H_STAT_DMA_ENG_3_QID_FIFO_OUT_DAT_QID_MASK   GENMASK(28, 17)
+#define C2H_STAT_DMA_ENG_3_WR_HDR_FIFO_OUT_CNT_MASK    GENMASK(16, 12)
+#define C2H_STAT_DMA_ENG_3_QID_FIFO_OUT_VLD_MASK       BIT(11)
+#define C2H_STAT_DMA_ENG_3_PLD_FIFO_OUT_VLD_MASK       BIT(10)
+#define C2H_STAT_DMA_ENG_3_PLD_ST_FIFO_OUT_VLD_MASK    BIT(9)
+#define C2H_STAT_DMA_ENG_3_PLD_ST_FIFO_OUT_DATA_EOP_MASK BIT(8)
+#define C2H_STAT_DMA_ENG_3_PLD_ST_FIFO_OUT_DATA_AVL_IDX_ENABLE_MASK BIT(7)
+#define C2H_STAT_DMA_ENG_3_PLD_ST_FIFO_OUT_DATA_DROP_MASK BIT(6)
+#define C2H_STAT_DMA_ENG_3_PLD_ST_FIFO_OUT_DATA_ERR_MASK BIT(5)
+#define C2H_STAT_DMA_ENG_3_DESC_CNT_FIFO_IN_RDY_MASK   BIT(4)
+#define C2H_STAT_DMA_ENG_3_DESC_RSP_FIFO_IN_RDY_MASK   BIT(3)
+#define C2H_STAT_DMA_ENG_3_PLD_PKT_ID_LARGER_MASK      BIT(2)
 #define C2H_STAT_DMA_ENG_3_WCP_FIFO_IN_RDY_MASK        BIT(1)
 #define C2H_STAT_DMA_ENG_3_PLD_ST_FIFO_IN_RDY_MASK     BIT(0)
 #define EQDMA_C2H_DBG_PFCH_ERR_CTXT_ADDR                   0xB2C
@@ -787,31 +996,27 @@ struct xreg_info *eqdma_config_regs_get(void);
 #define C2H_STAT_WR_CMP_RSVD_1_MASK                        GENMASK(31, 18)
 #define C2H_STAT_WR_CMP_CNT_MASK                           GENMASK(17, 0)
 #define EQDMA_C2H_STAT_DBG_DMA_ENG_4_ADDR                  0xB88
-#define C2H_STAT_DMA_ENG_4_RSVD_1_MASK                 GENMASK(31, 24)
-#define C2H_STAT_DMA_ENG_4_WRQ_FIFO_OUT_CNT_MASK       GENMASK(23, 19)
-#define C2H_STAT_DMA_ENG_4_QID_FIFO_OUT_VLD_MASK       BIT(18)
-#define C2H_STAT_DMA_ENG_4_PLD_FIFO_OUT_VLD_MASK       BIT(17)
-#define C2H_STAT_DMA_ENG_4_PLD_ST_FIFO_OUT_VLD_MASK    BIT(16)
-#define C2H_STAT_DMA_ENG_4_PLD_ST_FIFO_OUT_DATA_EOP_MASK BIT(15)
-#define C2H_STAT_DMA_ENG_4_PLD_ST_FIFO_OUT_DATA_AVL_IDX_ENABLE_MASK BIT(14)
-#define C2H_STAT_DMA_ENG_4_PLD_ST_FIFO_OUT_DATA_DROP_MASK BIT(13)
-#define C2H_STAT_DMA_ENG_4_PLD_ST_FIFO_OUT_DATA_ERR_MASK BIT(12)
-#define C2H_STAT_DMA_ENG_4_DESC_CNT_FIFO_IN_RDY_MASK   BIT(11)
-#define C2H_STAT_DMA_ENG_4_DESC_RSP_FIFO_IN_RDY_MASK   BIT(10)
-#define C2H_STAT_DMA_ENG_4_PLD_PKT_ID_LARGER_0_MASK    BIT(9)
-#define C2H_STAT_DMA_ENG_4_WRQ_VLD_MASK                BIT(8)
-#define C2H_STAT_DMA_ENG_4_WRQ_RDY_MASK                BIT(7)
-#define C2H_STAT_DMA_ENG_4_WRQ_FIFO_OUT_RDY_MASK       BIT(6)
-#define C2H_STAT_DMA_ENG_4_WRQ_PACKET_OUT_DATA_DROP_MASK BIT(5)
-#define C2H_STAT_DMA_ENG_4_WRQ_PACKET_OUT_DATA_ERR_MASK BIT(4)
-#define C2H_STAT_DMA_ENG_4_WRQ_PACKET_OUT_DATA_MARKER_MASK BIT(3)
-#define C2H_STAT_DMA_ENG_4_WRQ_PACKET_PRE_EOR_MASK     BIT(2)
-#define C2H_STAT_DMA_ENG_4_WCP_FIFO_IN_RDY_MASK        BIT(1)
-#define C2H_STAT_DMA_ENG_4_PLD_ST_FIFO_IN_RDY_MASK     BIT(0)
+#define C2H_STAT_DMA_ENG_4_QID_FIFO_OUT_DAT_HAS_CMPT_1_MASK BIT(31)
+#define C2H_STAT_DMA_ENG_4_QID_FIFO_OUT_DAT_MARKER_1_MASK BIT(30)
+#define C2H_STAT_DMA_ENG_4_QID_FIFO_OUT_DAT_DROP_REQ_1_MASK BIT(29)
+#define C2H_STAT_DMA_ENG_4_QID_FIFO_OUT_DAT_QID_1_MASK GENMASK(28, 17)
+#define C2H_STAT_DMA_ENG_4_WR_HDR_FIFO_OUT_CNT_1_MASK  GENMASK(16, 12)
+#define C2H_STAT_DMA_ENG_4_QID_FIFO_OUT_VLD_1_MASK     BIT(11)
+#define C2H_STAT_DMA_ENG_4_PLD_FIFO_OUT_VLD_1_MASK     BIT(10)
+#define C2H_STAT_DMA_ENG_4_PLD_ST_FIFO_OUT_VLD_1_MASK  BIT(9)
+#define C2H_STAT_DMA_ENG_4_PLD_ST_FIFO_OUT_DATA_EOP_1_MASK BIT(8)
+#define C2H_STAT_DMA_ENG_4_PLD_ST_FIFO_OUT_DATA_AVL_IDX_ENABLE_1_MASK BIT(7)
+#define C2H_STAT_DMA_ENG_4_PLD_ST_FIFO_OUT_DATA_DROP_1_MASK BIT(6)
+#define C2H_STAT_DMA_ENG_4_PLD_ST_FIFO_OUT_DATA_ERR_1_MASK BIT(5)
+#define C2H_STAT_DMA_ENG_4_DESC_CNT_FIFO_IN_RDY_1_MASK BIT(4)
+#define C2H_STAT_DMA_ENG_4_DESC_RSP_FIFO_IN_RDY_1_MASK BIT(3)
+#define C2H_STAT_DMA_ENG_4_PLD_PKT_ID_LARGER_1_MASK    BIT(2)
+#define C2H_STAT_DMA_ENG_4_WCP_FIFO_IN_RDY_1_MASK      BIT(1)
+#define C2H_STAT_DMA_ENG_4_PLD_ST_FIFO_IN_RDY_1_MASK   BIT(0)
 #define EQDMA_C2H_STAT_DBG_DMA_ENG_5_ADDR                  0xB8C
-#define C2H_STAT_DMA_ENG_5_RSVD_1_MASK                 GENMASK(31, 30)
-#define C2H_STAT_DMA_ENG_5_WRB_SM_VIRT_CH_MASK         BIT(29)
-#define C2H_STAT_DMA_ENG_5_WRB_FIFO_IN_REQ_MASK        GENMASK(28, 24)
+#define C2H_STAT_DMA_ENG_5_ARB_FIFO_IN_RDY_MASK        BIT(31)
+#define C2H_STAT_DMA_ENG_5_WRB_SM_VIRT_CH_MASK         BIT(30)
+#define C2H_STAT_DMA_ENG_5_WRB_FIFO_IN_REQ_MASK        GENMASK(29, 24)
 #define C2H_STAT_DMA_ENG_5_ARB_FIFO_OUT_CNT_MASK       GENMASK(23, 22)
 #define C2H_STAT_DMA_ENG_5_ARB_FIFO_OUT_DATA_LEN_MASK  GENMASK(21, 6)
 #define C2H_STAT_DMA_ENG_5_ARB_FIFO_OUT_DATA_VIRT_CH_MASK BIT(5)
@@ -1080,6 +1285,10 @@ struct xreg_info *eqdma_config_regs_get(void);
 #define H2C_MM_WBK_STALL_MASK                          BIT(2)
 #define H2C_MM_DSC_FIFO_EP_MASK                        BIT(1)
 #define H2C_MM_DSC_FIFO_FL_MASK                        BIT(0)
+#define EQDMA_H2C_MM_DATA_THROTTLE_ADDR                    0x12EC
+#define H2C_MM_DATA_THROTTLE_RSVD_1_MASK                   GENMASK(31, 17)
+#define H2C_MM_DATA_THROTTLE_DAT_EN_MASK                   BIT(16)
+#define H2C_MM_DATA_THROTTLE_DAT_MASK                      GENMASK(15, 0)
 #define EQDMA_C2H_CRDT_COAL_CFG_1_ADDR                     0x1400
 #define C2H_CRDT_COAL_CFG_1_RSVD_1_MASK                    GENMASK(31, 18)
 #define C2H_CRDT_COAL_CFG_1_PLD_FIFO_TH_MASK               GENMASK(17, 10)
@@ -1097,9 +1306,54 @@ struct xreg_info *eqdma_config_regs_get(void);
 #define C2H_PFCH_BYP_TAG_BYP_QID_MASK                      GENMASK(19, 8)
 #define C2H_PFCH_BYP_TAG_RSVD_2_MASK                       BIT(7)
 #define C2H_PFCH_BYP_TAG_MASK                             GENMASK(6, 0)
-#define EQDMA_C2H_WATER_MARK_ADDR                          0x1500
+#define EQDMA_C2H_WATER_MARK_ADDR                          0x1410
 #define C2H_WATER_MARK_HIGH_WM_MASK                        GENMASK(31, 16)
 #define C2H_WATER_MARK_LOW_WM_MASK                         GENMASK(15, 0)
+#define EQDMA_C2H_NOTIFY_EMPTY_ADDR                        0x1450
+#define C2H_NOTIFY_EMPTY_RSVD_1_MASK                       GENMASK(31, 16)
+#define C2H_NOTIFY_EMPTY_NOE_MASK                          GENMASK(15, 0)
+#define EQDMA_C2H_STAT_S_AXIS_C2H_ACCEPTED_1_ADDR          0x1454
+#define C2H_STAT_S_AXIS_C2H_ACCEPTED_1_MASK               GENMASK(31, 0)
+#define EQDMA_C2H_STAT_S_AXIS_WRB_ACCEPTED_1_ADDR          0x1458
+#define C2H_STAT_S_AXIS_WRB_ACCEPTED_1_MASK               GENMASK(31, 0)
+#define EQDMA_C2H_STAT_DESC_RSP_PKT_ACCEPTED_1_ADDR        0x145C
+#define C2H_STAT_DESC_RSP_PKT_ACCEPTED_1_D_MASK            GENMASK(31, 0)
+#define EQDMA_C2H_STAT_AXIS_PKG_CMP_1_ADDR                 0x1460
+#define C2H_STAT_AXIS_PKG_CMP_1_MASK                      GENMASK(31, 0)
+#define EQDMA_C2H_STAT_S_AXIS_WRB_ACCEPTED_2_ADDR          0x1464
+#define C2H_STAT_S_AXIS_WRB_ACCEPTED_2_MASK               GENMASK(31, 0)
+#define EQDMA_C2H_ST_PLD_FIFO_DEPTH_ADDR                   0x1468
+#define C2H_ST_PLD_FIFO_DEPTH_MASK                        GENMASK(31, 0)
+#define EQDMA_C2H_STAT_DBG_DMA_ENG_6_ADDR                  0x146C
+#define C2H_STAT_DMA_ENG_6_RSVD_MASK                   GENMASK(31, 29)
+#define C2H_STAT_DMA_ENG_6_PLD_ST_FIFO_OUT_DATA_QID_MASK GENMASK(28, 17)
+#define C2H_STAT_DMA_ENG_6_PLD_STS_FIFO_OUT_DATA_PLD_ST_PKT_ID_MASK \
+	GENMASK(16, 1)
+#define C2H_STAT_DMA_ENG_6_PLD_PKT_ID_LARGER_PLD_ST_MASK BIT(0)
+#define EQDMA_C2H_STAT_DBG_DMA_ENG_7_ADDR                  0x1470
+#define C2H_STAT_DMA_ENG_7_RSVD_MASK                   GENMASK(31, 29)
+#define C2H_STAT_DMA_ENG_7_PLD_ST_FIFO_OUT_DATA_QID_1_MASK GENMASK(28, 17)
+#define C2H_STAT_DMA_ENG_7_PLD_STS_FIFO_OUT_DATA_PLD_ST_PKT_ID_1_MASK \
+	GENMASK(16, 1)
+#define C2H_STAT_DMA_ENG_7_PLD_PKT_ID_LARGER_PLD_ST_1_MASK BIT(0)
+#define EQDMA_C2H_STAT_PCIE_CMP_1_ADDR                     0x1474
+#define C2H_STAT_PCIE_CMP_1_DEPTH_MASK                     GENMASK(31, 0)
+#define EQDMA_C2H_PLD_FIFO_ALMOST_FULL_ADDR                0x1478
+#define C2H_PLD_FIFO_ALMOST_FULL_ENABLE_MASK               BIT(31)
+#define C2H_PLD_FIFO_ALMOST_FULL_TH_MASK                   GENMASK(30, 0)
+#define EQDMA_PFCH_CFG_3_ADDR                              0x147C
+#define PFCH_CFG_3_RSVD_MASK                               GENMASK(31, 16)
+#define PFCH_CFG_3_VAR_DESC_FL_FREE_CNT_TH_MASK            GENMASK(15, 7)
+#define PFCH_CFG_3_VAR_DESC_LG_PKT_CAM_CN_TH_MASK          GENMASK(6, 0)
+#define EQDMA_CMPT_CFG_0_ADDR                              0x1480
+#define CMPT_CFG_0_RSVD_MASK                               GENMASK(31, 2)
+#define CMPT_CFG_0_VIO_SPRS_INT_AFTER_RTY_MASK             BIT(1)
+#define CMPT_CFG_0_VIO_EVNT_SUP_EN_MASK                    BIT(0)
+#define EQDMA_PFCH_CFG_4_ADDR                              0x1484
+#define PFCH_CFG_4_GLB_EVT_TIMER_TICK_MASK                 GENMASK(31, 17)
+#define PFCH_CFG_4_DISABLE_GLB_EVT_TIMER_MASK              BIT(16)
+#define PFCH_CFG_4_EVT_TIMER_TICK_MASK                     GENMASK(15, 1)
+#define PFCH_CFG_4_DISABLE_EVT_TIMER_MASK                  BIT(0)
 #define SW_IND_CTXT_DATA_W7_VIRTIO_DSC_BASE_H_MASK        GENMASK(10, 0)
 #define SW_IND_CTXT_DATA_W6_VIRTIO_DSC_BASE_M_MASK        GENMASK(31, 0)
 #define SW_IND_CTXT_DATA_W5_VIRTIO_DSC_BASE_L_MASK        GENMASK(31, 11)
@@ -1217,6 +1471,50 @@ struct xreg_info *eqdma_config_regs_get(void);
 #define INTR_CTXT_DATA_W0_RSVD1_MASK                      BIT(12)
 #define INTR_CTXT_DATA_W0_VEC_MASK                        GENMASK(11, 1)
 #define INTR_CTXT_DATA_W0_VALID_MASK                      BIT(0)
+#define HOSTID_TABLE_W6_SMID_MASK                          GENMASK(9, 0)
+#define HOSTID_TABLE_W5_H2C_MM_AWPROT_MASK                 GENMASK(27, 26)
+#define HOSTID_TABLE_W5_H2C_MM_AWCACHE_MASK                GENMASK(25, 22)
+#define HOSTID_TABLE_W5_H2C_MM_AWSTEERING_MASK             GENMASK(20, 18)
+#define HOSTID_TABLE_W5_DSC_AWPROT_MASK                    GENMASK(17, 16)
+#define HOSTID_TABLE_W5_DSC_AWCACHE_MASK                   GENMASK(15, 12)
+#define HOSTID_TABLE_W5_DSC_AWSTEERING_MASK                GENMASK(11, 8)
+#define HOSTID_TABLE_W5_INT_MSG_AWPROT_MASK                GENMASK(7, 6)
+#define HOSTID_TABLE_W5_INT_MSG_AWCACHE_MASK               GENMASK(5, 2)
+#define HOSTID_TABLE_W5_INT_MSG_AWSTEERING_H_MASK          GENMASK(0, 0)
+#define HOSTID_TABLE_W4_INT_MSG_AWSTEERING_L_MASK          GENMASK(31, 30)
+#define HOSTID_TABLE_W4_INT_AGGR_AWPROT_MASK               GENMASK(29, 28)
+#define HOSTID_TABLE_W4_INT_AGGR_AWCACHE_MASK              GENMASK(27, 24)
+#define HOSTID_TABLE_W4_INT_AGGR_AWSTEERING_MASK           GENMASK(22, 20)
+#define HOSTID_TABLE_W4_CMPT_AWPROT_MASK                   GENMASK(19, 18)
+#define HOSTID_TABLE_W4_CMPT_AWCACHE_MASK                  GENMASK(17, 14)
+#define HOSTID_TABLE_W4_CMPT_AWSTEERING_MASK               GENMASK(12, 10)
+#define HOSTID_TABLE_W4_C2H_PLD_AWPROT_MASK                GENMASK(9, 8)
+#define HOSTID_TABLE_W4_C2H_PLD_AWCACHE_MASK               GENMASK(7, 4)
+#define HOSTID_TABLE_W4_C2H_PLD_AWSTEERING_MASK            GENMASK(2, 0)
+#define HOSTID_TABLE_W3_C2H_MM_ARPROT_MASK                 GENMASK(7, 6)
+#define HOSTID_TABLE_W3_C2H_MM_ARCACHE_MASK                GENMASK(5, 2)
+#define HOSTID_TABLE_W3_C2H_MM_ARSTEERING_H_MASK           GENMASK(0, 0)
+#define HOSTID_TABLE_W2_C2H_MM_ARSTEERING_L_MASK           GENMASK(31, 30)
+#define HOSTID_TABLE_W2_H2C_MM_ARPROT_MASK                 GENMASK(29, 28)
+#define HOSTID_TABLE_W2_H2C_MM_ARCACHE_MASK                GENMASK(27, 24)
+#define HOSTID_TABLE_W2_H2C_MM_ARSTEERING_MASK             GENMASK(22, 20)
+#define HOSTID_TABLE_W2_H2C_ST_ARPROT_MASK                 GENMASK(19, 18)
+#define HOSTID_TABLE_W2_H2C_ST_ARCACHE_MASK                GENMASK(17, 14)
+#define HOSTID_TABLE_W2_H2C_ST_ARSTEERING_MASK             GENMASK(12, 10)
+#define HOSTID_TABLE_W2_DSC_ARPOT_MASK                     GENMASK(9, 8)
+#define HOSTID_TABLE_W2_DSC_ARCACHE_MASK                   GENMASK(7, 4)
+#define HOSTID_TABLE_W2_DSC_ARSTEERING_MASK                GENMASK(2, 0)
+#define HOSTID_TABLE_W0_VCH_H2C_MM_MASK                    GENMASK(27, 24)
+#define HOSTID_TABLE_W0_VCH_H2C_ST_MASK                    GENMASK(23, 20)
+#define HOSTID_TABLE_W0_VCH_DSC_MASK                       GENMASK(19, 16)
+#define HOSTID_TABLE_W0_VCH_INT_MSG_MASK                   GENMASK(15, 12)
+#define HOSTID_TABLE_W0_VCH_INT_AGGR_MASK                  GENMASK(11, 8)
+#define HOSTID_TABLE_W0_VCH_CMPT_MASK                      GENMASK(7, 4)
+#define HOSTID_TABLE_W0_VCH_H2C_PLD_MASK                   GENMASK(3, 0)
+#define CTXT_SELC_FNC_STS_W0_MSIX_MASK                GENMASK(3, 3)
+#define CTXT_SELC_FNC_STS_W0_MSIX_ENABLE_MASK              GENMASK(2, 2)
+#define CTXT_SELC_FNC_STS_W0_MEM_SPACE_ENABLE_MASK         GENMASK(1, 1)
+#define CTXT_SELC_FNC_STS_W0_BUS_MASTER_ENABLE_MASK        GENMASK(0, 0)
 
 #ifdef __cplusplus
 }
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_access/eqdma_soft_access/eqdma_soft_reg_dump.c b/QDMA/linux-kernel/driver/libqdma/qdma_access/eqdma_soft_access/eqdma_soft_reg_dump.c
old mode 100644
new mode 100755
index cd606172942f270e50d0c62076e0ded3e1f133b4..8754fb7cb5a7fb56588518178d149efc3eb05b13
--- a/QDMA/linux-kernel/driver/libqdma/qdma_access/eqdma_soft_access/eqdma_soft_reg_dump.c
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_access/eqdma_soft_access/eqdma_soft_reg_dump.c
@@ -1,5 +1,6 @@
 /*
- * Copyright(c) 2019-2022 Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2019-2022 Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
@@ -476,6 +477,85 @@ static struct regfield_info
 };
 
 
+static struct regfield_info
+	glbl2_rrq_brg_throt_field_info[] = {
+	{"GLBL2_RRQ_BRG_THROT_REQ_EN",
+		GLBL2_RRQ_BRG_THROT_REQ_EN_MASK},
+	{"GLBL2_RRQ_BRG_THROT_REQ",
+		GLBL2_RRQ_BRG_THROT_REQ_MASK},
+	{"GLBL2_RRQ_BRG_THROT_DAT_EN",
+		GLBL2_RRQ_BRG_THROT_DAT_EN_MASK},
+	{"GLBL2_RRQ_BRG_THROT_DAT",
+		GLBL2_RRQ_BRG_THROT_DAT_MASK},
+};
+
+
+static struct regfield_info
+	glbl2_rrq_pcie_throt_field_info[] = {
+	{"GLBL2_RRQ_PCIE_THROT_REQ_EN",
+		GLBL2_RRQ_PCIE_THROT_REQ_EN_MASK},
+	{"GLBL2_RRQ_PCIE_THROT_REQ",
+		GLBL2_RRQ_PCIE_THROT_REQ_MASK},
+	{"GLBL2_RRQ_PCIE_THROT_DAT_EN",
+		GLBL2_RRQ_PCIE_THROT_DAT_EN_MASK},
+	{"GLBL2_RRQ_PCIE_THROT_DAT",
+		GLBL2_RRQ_PCIE_THROT_DAT_MASK},
+};
+
+
+static struct regfield_info
+	glbl2_rrq_aximm_throt_field_info[] = {
+	{"GLBL2_RRQ_AXIMM_THROT_REQ_EN",
+		GLBL2_RRQ_AXIMM_THROT_REQ_EN_MASK},
+	{"GLBL2_RRQ_AXIMM_THROT_REQ",
+		GLBL2_RRQ_AXIMM_THROT_REQ_MASK},
+	{"GLBL2_RRQ_AXIMM_THROT_DAT_EN",
+		GLBL2_RRQ_AXIMM_THROT_DAT_EN_MASK},
+	{"GLBL2_RRQ_AXIMM_THROT_DAT",
+		GLBL2_RRQ_AXIMM_THROT_DAT_MASK},
+};
+
+
+static struct regfield_info
+	glbl2_rrq_pcie_lat0_field_info[] = {
+	{"GLBL2_RRQ_PCIE_LAT0_MAX",
+		GLBL2_RRQ_PCIE_LAT0_MAX_MASK},
+	{"GLBL2_RRQ_PCIE_LAT0_MIN",
+		GLBL2_RRQ_PCIE_LAT0_MIN_MASK},
+};
+
+
+static struct regfield_info
+	glbl2_rrq_pcie_lat1_field_info[] = {
+	{"GLBL2_RRQ_PCIE_LAT1_RSVD",
+		GLBL2_RRQ_PCIE_LAT1_RSVD_MASK},
+	{"GLBL2_RRQ_PCIE_LAT1_OVFL",
+		GLBL2_RRQ_PCIE_LAT1_OVFL_MASK},
+	{"GLBL2_RRQ_PCIE_LAT1_AVG",
+		GLBL2_RRQ_PCIE_LAT1_AVG_MASK},
+};
+
+
+static struct regfield_info
+	glbl2_rrq_aximm_lat0_field_info[] = {
+	{"GLBL2_RRQ_AXIMM_LAT0_MAX",
+		GLBL2_RRQ_AXIMM_LAT0_MAX_MASK},
+	{"GLBL2_RRQ_AXIMM_LAT0_MIN",
+		GLBL2_RRQ_AXIMM_LAT0_MIN_MASK},
+};
+
+
+static struct regfield_info
+	glbl2_rrq_aximm_lat1_field_info[] = {
+	{"GLBL2_RRQ_AXIMM_LAT1_RSVD",
+		GLBL2_RRQ_AXIMM_LAT1_RSVD_MASK},
+	{"GLBL2_RRQ_AXIMM_LAT1_OVFL",
+		GLBL2_RRQ_AXIMM_LAT1_OVFL_MASK},
+	{"GLBL2_RRQ_AXIMM_LAT1_AVG",
+		GLBL2_RRQ_AXIMM_LAT1_AVG_MASK},
+};
+
+
 static struct regfield_info
 	glbl2_dbg_pcie_rq0_field_info[] = {
 	{"GLBL2_PCIE_RQ0_NPH_AVL",
@@ -917,6 +997,10 @@ static struct regfield_info
 	glbl_dsc_cfg_field_info[] = {
 	{"GLBL_DSC_CFG_RSVD_1",
 		GLBL_DSC_CFG_RSVD_1_MASK},
+	{"GLBL_DSC_CFG_C2H_UODSC_LIMIT",
+		GLBL_DSC_CFG_C2H_UODSC_LIMIT_MASK},
+	{"GLBL_DSC_CFG_H2C_UODSC_LIMIT",
+		GLBL_DSC_CFG_H2C_UODSC_LIMIT_MASK},
 	{"GLBL_DSC_CFG_UNC_OVR_COR",
 		GLBL_DSC_CFG_UNC_OVR_COR_MASK},
 	{"GLBL_DSC_CFG_CTXT_FER_DIS",
@@ -1095,6 +1179,10 @@ static struct regfield_info
 	glbl_dsc_dbg_ctl_field_info[] = {
 	{"GLBL_DSC_CTL_RSVD_1",
 		GLBL_DSC_CTL_RSVD_1_MASK},
+	{"GLBL_DSC_CTL_LAT_QID",
+		GLBL_DSC_CTL_LAT_QID_MASK},
+	{"GLBL_DSC_CTL_DSC_ENG_LAT_CLR",
+		GLBL_DSC_CTL_DSC_ENG_LAT_CLR_MASK},
 	{"GLBL_DSC_CTL_SELECT",
 		GLBL_DSC_CTL_SELECT_MASK},
 };
@@ -1203,1961 +1291,3168 @@ static struct regfield_info
 
 
 static struct regfield_info
-	ind_ctxt_data_field_info[] = {
-	{"IND_CTXT_DATA_DATA",
-		IND_CTXT_DATA_DATA_MASK},
+	glbl_dsc_dbg_lat0_a_field_info[] = {
+	{"GLBL_DSC_LAT0_A_LAT_MAX",
+		GLBL_DSC_LAT0_A_LAT_MAX_MASK},
+	{"GLBL_DSC_LAT0_A_LAT_MIN",
+		GLBL_DSC_LAT0_A_LAT_MIN_MASK},
 };
 
 
 static struct regfield_info
-	ind_ctxt_mask_field_info[] = {
-	{"IND_CTXT",
-		IND_CTXT_MASK},
+	glbl_dsc_dbg_lat1_a_field_info[] = {
+	{"GLBL_DSC_LAT1_A_RSVD",
+		GLBL_DSC_LAT1_A_RSVD_MASK},
+	{"GLBL_DSC_LAT1_A_LAT_OVF",
+		GLBL_DSC_LAT1_A_LAT_OVF_MASK},
+	{"GLBL_DSC_LAT1_A_LAT_AVG",
+		GLBL_DSC_LAT1_A_LAT_AVG_MASK},
 };
 
 
 static struct regfield_info
-	ind_ctxt_cmd_field_info[] = {
-	{"IND_CTXT_CMD_RSVD_1",
-		IND_CTXT_CMD_RSVD_1_MASK},
-	{"IND_CTXT_CMD_QID",
-		IND_CTXT_CMD_QID_MASK},
-	{"IND_CTXT_CMD_OP",
-		IND_CTXT_CMD_OP_MASK},
-	{"IND_CTXT_CMD_SEL",
-		IND_CTXT_CMD_SEL_MASK},
-	{"IND_CTXT_CMD_BUSY",
-		IND_CTXT_CMD_BUSY_MASK},
+	glbl_dsc_crd_ctr0_a_field_info[] = {
+	{"GLBL_DSC_CRD_CTR0_A_CRD_RCV_CNT",
+		GLBL_DSC_CRD_CTR0_A_CRD_RCV_CNT_MASK},
 };
 
 
 static struct regfield_info
-	c2h_timer_cnt_field_info[] = {
-	{"C2H_TIMER_CNT_RSVD_1",
-		C2H_TIMER_CNT_RSVD_1_MASK},
-	{"C2H_TIMER_CNT",
-		C2H_TIMER_CNT_MASK},
+	glbl_dsc_crd_ctr1_a_field_info[] = {
+	{"GLBL_DSC_CRD_CTR1_A_CRD_RCV_CNT",
+		GLBL_DSC_CRD_CTR1_A_CRD_RCV_CNT_MASK},
 };
 
 
 static struct regfield_info
-	c2h_cnt_th_field_info[] = {
-	{"C2H_CNT_TH_RSVD_1",
-		C2H_CNT_TH_RSVD_1_MASK},
-	{"C2H_CNT_TH_THESHOLD_CNT",
-		C2H_CNT_TH_THESHOLD_CNT_MASK},
+	glbl_dsc_crd_ctr2_a_field_info[] = {
+	{"GLBL_DSC_CRD_CTR2_A_CRD_RCV_NRDY_CNT",
+		GLBL_DSC_CRD_CTR2_A_CRD_RCV_NRDY_CNT_MASK},
 };
 
 
 static struct regfield_info
-	c2h_stat_s_axis_c2h_accepted_field_info[] = {
-	{"C2H_STAT_S_AXIS_C2H_ACCEPTED",
-		C2H_STAT_S_AXIS_C2H_ACCEPTED_MASK},
+	glbl_dsc_crd_ctr3_a_field_info[] = {
+	{"GLBL_DSC_CRD_CTR3_A_CRD_RCV_NRDY_CNT",
+		GLBL_DSC_CRD_CTR3_A_CRD_RCV_NRDY_CNT_MASK},
 };
 
 
 static struct regfield_info
-	c2h_stat_s_axis_wrb_accepted_field_info[] = {
-	{"C2H_STAT_S_AXIS_WRB_ACCEPTED",
-		C2H_STAT_S_AXIS_WRB_ACCEPTED_MASK},
+	glbl_dsc_imm_crd_ctr0_a_field_info[] = {
+	{"GLBL_DSC_IMM_CRD_CTR0_A_RCV_CNT",
+		GLBL_DSC_IMM_CRD_CTR0_A_RCV_CNT_MASK},
 };
 
 
 static struct regfield_info
-	c2h_stat_desc_rsp_pkt_accepted_field_info[] = {
-	{"C2H_STAT_DESC_RSP_PKT_ACCEPTED_D",
-		C2H_STAT_DESC_RSP_PKT_ACCEPTED_D_MASK},
+	glbl_dsc_imm_crd_ctr1_a_field_info[] = {
+	{"GLBL_DSC_IMM_CRD_CTR1_A_RCV_CNT",
+		GLBL_DSC_IMM_CRD_CTR1_A_RCV_CNT_MASK},
 };
 
 
 static struct regfield_info
-	c2h_stat_axis_pkg_cmp_field_info[] = {
-	{"C2H_STAT_AXIS_PKG_CMP",
-		C2H_STAT_AXIS_PKG_CMP_MASK},
+	glbl_dsc_imm_crd_ctr2_a_field_info[] = {
+	{"GLBL_DSC_IMM_CRD_CTR2_A_RCV_NRDY_CNT",
+		GLBL_DSC_IMM_CRD_CTR2_A_RCV_NRDY_CNT_MASK},
 };
 
 
 static struct regfield_info
-	c2h_stat_desc_rsp_accepted_field_info[] = {
-	{"C2H_STAT_DESC_RSP_ACCEPTED_D",
-		C2H_STAT_DESC_RSP_ACCEPTED_D_MASK},
+	glbl_dsc_imm_crd_ctr3_a_field_info[] = {
+	{"GLBL_DSC_IMM_CRD_CTR3_A_RCV_NRDY_CNT",
+		GLBL_DSC_IMM_CRD_CTR3_A_RCV_NRDY_CNT_MASK},
 };
 
 
 static struct regfield_info
-	c2h_stat_desc_rsp_cmp_field_info[] = {
-	{"C2H_STAT_DESC_RSP_CMP_D",
-		C2H_STAT_DESC_RSP_CMP_D_MASK},
+	glbl_dsc_h2c_out_ctr0_a_field_info[] = {
+	{"GLBL_DSC_H2C_OUT_CTR0_A_H2CVLD_CNT",
+		GLBL_DSC_H2C_OUT_CTR0_A_H2CVLD_CNT_MASK},
 };
 
 
 static struct regfield_info
-	c2h_stat_wrq_out_field_info[] = {
-	{"C2H_STAT_WRQ_OUT",
-		C2H_STAT_WRQ_OUT_MASK},
+	glbl_dsc_h2c_out_ctr1_a_field_info[] = {
+	{"GLBL_DSC_H2C_OUT_CTR1_A_H2CVLD_CNT",
+		GLBL_DSC_H2C_OUT_CTR1_A_H2CVLD_CNT_MASK},
 };
 
 
 static struct regfield_info
-	c2h_stat_wpl_ren_accepted_field_info[] = {
-	{"C2H_STAT_WPL_REN_ACCEPTED",
-		C2H_STAT_WPL_REN_ACCEPTED_MASK},
+	glbl_dsc_h2c_out_ctr2_a_field_info[] = {
+	{"GLBL_DSC_H2C_OUT_CTR2_A_H2CVLD_NRDY_CNT",
+		GLBL_DSC_H2C_OUT_CTR2_A_H2CVLD_NRDY_CNT_MASK},
 };
 
 
 static struct regfield_info
-	c2h_stat_total_wrq_len_field_info[] = {
-	{"C2H_STAT_TOTAL_WRQ_LEN",
-		C2H_STAT_TOTAL_WRQ_LEN_MASK},
+	glbl_dsc_h2c_out_ctr3_a_field_info[] = {
+	{"GLBL_DSC_H2C_OUT_CTR3_A_H2CVLD_NRDY_CNT",
+		GLBL_DSC_H2C_OUT_CTR3_A_H2CVLD_NRDY_CNT_MASK},
 };
 
 
 static struct regfield_info
-	c2h_stat_total_wpl_len_field_info[] = {
-	{"C2H_STAT_TOTAL_WPL_LEN",
-		C2H_STAT_TOTAL_WPL_LEN_MASK},
+	glbl_dsc_c2h_out_ctr0_a_field_info[] = {
+	{"GLBL_DSC_C2H_OUT_CTR0_A_C2HVLD_CNT",
+		GLBL_DSC_C2H_OUT_CTR0_A_C2HVLD_CNT_MASK},
 };
 
 
 static struct regfield_info
-	c2h_buf_sz_field_info[] = {
-	{"C2H_BUF_SZ_IZE",
-		C2H_BUF_SZ_IZE_MASK},
+	glbl_dsc_c2h_out_ctr1_a_field_info[] = {
+	{"GLBL_DSC_C2H_OUT_CTR1_A_C2HVLD_CNT",
+		GLBL_DSC_C2H_OUT_CTR1_A_C2HVLD_CNT_MASK},
 };
 
 
 static struct regfield_info
-	c2h_err_stat_field_info[] = {
-	{"C2H_ERR_STAT_RSVD_1",
-		C2H_ERR_STAT_RSVD_1_MASK},
-	{"C2H_ERR_STAT_WRB_PORT_ID_ERR",
-		C2H_ERR_STAT_WRB_PORT_ID_ERR_MASK},
-	{"C2H_ERR_STAT_HDR_PAR_ERR",
-		C2H_ERR_STAT_HDR_PAR_ERR_MASK},
-	{"C2H_ERR_STAT_HDR_ECC_COR_ERR",
-		C2H_ERR_STAT_HDR_ECC_COR_ERR_MASK},
-	{"C2H_ERR_STAT_HDR_ECC_UNC_ERR",
-		C2H_ERR_STAT_HDR_ECC_UNC_ERR_MASK},
-	{"C2H_ERR_STAT_AVL_RING_DSC_ERR",
-		C2H_ERR_STAT_AVL_RING_DSC_ERR_MASK},
-	{"C2H_ERR_STAT_WRB_PRTY_ERR",
-		C2H_ERR_STAT_WRB_PRTY_ERR_MASK},
-	{"C2H_ERR_STAT_WRB_CIDX_ERR",
-		C2H_ERR_STAT_WRB_CIDX_ERR_MASK},
-	{"C2H_ERR_STAT_WRB_QFULL_ERR",
-		C2H_ERR_STAT_WRB_QFULL_ERR_MASK},
-	{"C2H_ERR_STAT_WRB_INV_Q_ERR",
-		C2H_ERR_STAT_WRB_INV_Q_ERR_MASK},
-	{"C2H_ERR_STAT_RSVD_2",
-		C2H_ERR_STAT_RSVD_2_MASK},
-	{"C2H_ERR_STAT_PORT_ID_CTXT_MISMATCH",
-		C2H_ERR_STAT_PORT_ID_CTXT_MISMATCH_MASK},
-	{"C2H_ERR_STAT_ERR_DESC_CNT",
-		C2H_ERR_STAT_ERR_DESC_CNT_MASK},
-	{"C2H_ERR_STAT_RSVD_3",
-		C2H_ERR_STAT_RSVD_3_MASK},
-	{"C2H_ERR_STAT_MSI_INT_FAIL",
-		C2H_ERR_STAT_MSI_INT_FAIL_MASK},
-	{"C2H_ERR_STAT_ENG_WPL_DATA_PAR_ERR",
-		C2H_ERR_STAT_ENG_WPL_DATA_PAR_ERR_MASK},
-	{"C2H_ERR_STAT_RSVD_4",
-		C2H_ERR_STAT_RSVD_4_MASK},
-	{"C2H_ERR_STAT_DESC_RSP_ERR",
-		C2H_ERR_STAT_DESC_RSP_ERR_MASK},
-	{"C2H_ERR_STAT_QID_MISMATCH",
-		C2H_ERR_STAT_QID_MISMATCH_MASK},
-	{"C2H_ERR_STAT_SH_CMPT_DSC_ERR",
-		C2H_ERR_STAT_SH_CMPT_DSC_ERR_MASK},
-	{"C2H_ERR_STAT_LEN_MISMATCH",
-		C2H_ERR_STAT_LEN_MISMATCH_MASK},
-	{"C2H_ERR_STAT_MTY_MISMATCH",
-		C2H_ERR_STAT_MTY_MISMATCH_MASK},
+	glbl_dsc_c2h_out_ctr2_a_field_info[] = {
+	{"GLBL_DSC_C2H_OUT_CTR2_A_C2HVLD_NRDY_CNT",
+		GLBL_DSC_C2H_OUT_CTR2_A_C2HVLD_NRDY_CNT_MASK},
 };
 
 
 static struct regfield_info
-	c2h_err_mask_field_info[] = {
-	{"C2H_ERR_EN",
-		C2H_ERR_EN_MASK},
+	glbl_dsc_c2h_out_ctr3_a_field_info[] = {
+	{"GLBL_DSC_C2H_OUT_CTR3_A_C2HVLD_NRDY_CNT",
+		GLBL_DSC_C2H_OUT_CTR3_A_C2HVLD_NRDY_CNT_MASK},
 };
 
 
 static struct regfield_info
-	c2h_fatal_err_stat_field_info[] = {
-	{"C2H_FATAL_ERR_STAT_RSVD_1",
-		C2H_FATAL_ERR_STAT_RSVD_1_MASK},
-	{"C2H_FATAL_ERR_STAT_HDR_ECC_UNC_ERR",
-		C2H_FATAL_ERR_STAT_HDR_ECC_UNC_ERR_MASK},
-	{"C2H_FATAL_ERR_STAT_AVL_RING_FIFO_RAM_RDBE",
-		C2H_FATAL_ERR_STAT_AVL_RING_FIFO_RAM_RDBE_MASK},
-	{"C2H_FATAL_ERR_STAT_WPL_DATA_PAR_ERR",
-		C2H_FATAL_ERR_STAT_WPL_DATA_PAR_ERR_MASK},
-	{"C2H_FATAL_ERR_STAT_PLD_FIFO_RAM_RDBE",
-		C2H_FATAL_ERR_STAT_PLD_FIFO_RAM_RDBE_MASK},
-	{"C2H_FATAL_ERR_STAT_QID_FIFO_RAM_RDBE",
-		C2H_FATAL_ERR_STAT_QID_FIFO_RAM_RDBE_MASK},
-	{"C2H_FATAL_ERR_STAT_CMPT_FIFO_RAM_RDBE",
-		C2H_FATAL_ERR_STAT_CMPT_FIFO_RAM_RDBE_MASK},
-	{"C2H_FATAL_ERR_STAT_WRB_COAL_DATA_RAM_RDBE",
-		C2H_FATAL_ERR_STAT_WRB_COAL_DATA_RAM_RDBE_MASK},
-	{"C2H_FATAL_ERR_STAT_RESERVED2",
-		C2H_FATAL_ERR_STAT_RESERVED2_MASK},
-	{"C2H_FATAL_ERR_STAT_INT_CTXT_RAM_RDBE",
-		C2H_FATAL_ERR_STAT_INT_CTXT_RAM_RDBE_MASK},
-	{"C2H_FATAL_ERR_STAT_DESC_REQ_FIFO_RAM_RDBE",
-		C2H_FATAL_ERR_STAT_DESC_REQ_FIFO_RAM_RDBE_MASK},
-	{"C2H_FATAL_ERR_STAT_PFCH_CTXT_RAM_RDBE",
-		C2H_FATAL_ERR_STAT_PFCH_CTXT_RAM_RDBE_MASK},
-	{"C2H_FATAL_ERR_STAT_WRB_CTXT_RAM_RDBE",
-		C2H_FATAL_ERR_STAT_WRB_CTXT_RAM_RDBE_MASK},
-	{"C2H_FATAL_ERR_STAT_PFCH_LL_RAM_RDBE",
-		C2H_FATAL_ERR_STAT_PFCH_LL_RAM_RDBE_MASK},
-	{"C2H_FATAL_ERR_STAT_TIMER_FIFO_RAM_RDBE",
-		C2H_FATAL_ERR_STAT_TIMER_FIFO_RAM_RDBE_MASK},
-	{"C2H_FATAL_ERR_STAT_QID_MISMATCH",
-		C2H_FATAL_ERR_STAT_QID_MISMATCH_MASK},
-	{"C2H_FATAL_ERR_STAT_RESERVED1",
-		C2H_FATAL_ERR_STAT_RESERVED1_MASK},
-	{"C2H_FATAL_ERR_STAT_LEN_MISMATCH",
-		C2H_FATAL_ERR_STAT_LEN_MISMATCH_MASK},
-	{"C2H_FATAL_ERR_STAT_MTY_MISMATCH",
-		C2H_FATAL_ERR_STAT_MTY_MISMATCH_MASK},
+	t_field_info[] = {
+	{"T_USER_CTR_MAX",
+		T_USER_CTR_MAX_MASK},
 };
 
 
 static struct regfield_info
-	c2h_fatal_err_mask_field_info[] = {
-	{"C2H_FATAL_ERR_C2HEN",
-		C2H_FATAL_ERR_C2HEN_MASK},
+	glbl_perf_cntr_ctl_a1_field_info[] = {
+	{"GLBL_PERF_CNTR_CTL_A1_RSVD",
+		GLBL_PERF_CNTR_CTL_A1_RSVD_MASK},
+	{"GLBL_PERF_CNTR_CTL_A1_USER_CTR_CLEAR",
+		GLBL_PERF_CNTR_CTL_A1_USER_CTR_CLEAR_MASK},
+	{"GLBL_PERF_CNTR_CTL_A1_USER_CTR_READ",
+		GLBL_PERF_CNTR_CTL_A1_USER_CTR_READ_MASK},
+	{"GLBL_PERF_CNTR_CTL_A1_USER_CTR_MAX",
+		GLBL_PERF_CNTR_CTL_A1_USER_CTR_MAX_MASK},
 };
 
 
 static struct regfield_info
-	c2h_fatal_err_enable_field_info[] = {
-	{"C2H_FATAL_ERR_ENABLE_RSVD_1",
-		C2H_FATAL_ERR_ENABLE_RSVD_1_MASK},
-	{"C2H_FATAL_ERR_ENABLE_WPL_PAR_INV",
-		C2H_FATAL_ERR_ENABLE_WPL_PAR_INV_MASK},
-	{"C2H_FATAL_ERR_ENABLE_WRQ_DIS",
-		C2H_FATAL_ERR_ENABLE_WRQ_DIS_MASK},
+	glbl_free_cnt_a0_field_info[] = {
+	{"GLBL_FREE_CNT_A0_S",
+		GLBL_FREE_CNT_A0_S_MASK},
 };
 
 
 static struct regfield_info
-	glbl_err_int_field_info[] = {
-	{"GLBL_ERR_INT_RSVD_1",
-		GLBL_ERR_INT_RSVD_1_MASK},
-	{"GLBL_ERR_INT_HOST_ID",
-		GLBL_ERR_INT_HOST_ID_MASK},
-	{"GLBL_ERR_INT_DIS_INTR_ON_VF",
-		GLBL_ERR_INT_DIS_INTR_ON_VF_MASK},
-	{"GLBL_ERR_INT_ARM",
-		GLBL_ERR_INT_ARM_MASK},
-	{"GLBL_ERR_INT_EN_COAL",
-		GLBL_ERR_INT_EN_COAL_MASK},
-	{"GLBL_ERR_INT_VEC",
-		GLBL_ERR_INT_VEC_MASK},
-	{"GLBL_ERR_INT_FUNC",
-		GLBL_ERR_INT_FUNC_MASK},
+	glbl_free_cnt_a1_field_info[] = {
+	{"GLBL_FREE_CNT_A1_RSVD",
+		GLBL_FREE_CNT_A1_RSVD_MASK},
+	{"GLBL_FREE_CNT_A1_S",
+		GLBL_FREE_CNT_A1_S_MASK},
 };
 
 
 static struct regfield_info
-	c2h_pfch_cfg_field_info[] = {
-	{"C2H_PFCH_CFG_EVTFL_TH",
-		C2H_PFCH_CFG_EVTFL_TH_MASK},
-	{"C2H_PFCH_CFG_FL_TH",
-		C2H_PFCH_CFG_FL_TH_MASK},
+	glbl_axis_h2c_cnt_a0_field_info[] = {
+	{"GLBL_AXIS_H2C_CNT_A0_MPKT_CNTS",
+		GLBL_AXIS_H2C_CNT_A0_MPKT_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	c2h_pfch_cfg_1_field_info[] = {
-	{"C2H_PFCH_CFG_1_EVT_QCNT_TH",
-		C2H_PFCH_CFG_1_EVT_QCNT_TH_MASK},
-	{"C2H_PFCH_CFG_1_QCNT",
-		C2H_PFCH_CFG_1_QCNT_MASK},
+	glbl_axis_h2c_cnt_a1_field_info[] = {
+	{"GLBL_AXIS_H2C_CNT_A1_MIDLE_CNTS",
+		GLBL_AXIS_H2C_CNT_A1_MIDLE_CNTS_MASK},
+	{"GLBL_AXIS_H2C_CNT_A1_MPKT_CNTS",
+		GLBL_AXIS_H2C_CNT_A1_MPKT_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	c2h_pfch_cfg_2_field_info[] = {
-	{"C2H_PFCH_CFG_2_FENCE",
-		C2H_PFCH_CFG_2_FENCE_MASK},
-	{"C2H_PFCH_CFG_2_RSVD",
-		C2H_PFCH_CFG_2_RSVD_MASK},
-	{"C2H_PFCH_CFG_2_VAR_DESC_NO_DROP",
-		C2H_PFCH_CFG_2_VAR_DESC_NO_DROP_MASK},
-	{"C2H_PFCH_CFG_2_LL_SZ_TH",
-		C2H_PFCH_CFG_2_LL_SZ_TH_MASK},
-	{"C2H_PFCH_CFG_2_VAR_DESC_NUM",
-		C2H_PFCH_CFG_2_VAR_DESC_NUM_MASK},
-	{"C2H_PFCH_CFG_2_NUM",
-		C2H_PFCH_CFG_2_NUM_MASK},
+	glbl_axis_h2c_cnt_a2_field_info[] = {
+	{"GLBL_AXIS_H2C_CNT_A2_MIDLE_CNTS",
+		GLBL_AXIS_H2C_CNT_A2_MIDLE_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	c2h_int_timer_tick_field_info[] = {
-	{"C2H_INT_TIMER_TICK",
-		C2H_INT_TIMER_TICK_MASK},
+	glbl_axis_h2c_cnt_a3_field_info[] = {
+	{"GLBL_AXIS_H2C_CNT_A3_MACTV_CNTS",
+		GLBL_AXIS_H2C_CNT_A3_MACTV_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	c2h_stat_desc_rsp_drop_accepted_field_info[] = {
-	{"C2H_STAT_DESC_RSP_DROP_ACCEPTED_D",
-		C2H_STAT_DESC_RSP_DROP_ACCEPTED_D_MASK},
+	glbl_axis_h2c_cnt_a4_field_info[] = {
+	{"GLBL_AXIS_H2C_CNT_A4_MBUSY_CNTS",
+		GLBL_AXIS_H2C_CNT_A4_MBUSY_CNTS_MASK},
+	{"GLBL_AXIS_H2C_CNT_A4_MACTV_CNTS",
+		GLBL_AXIS_H2C_CNT_A4_MACTV_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	c2h_stat_desc_rsp_err_accepted_field_info[] = {
-	{"C2H_STAT_DESC_RSP_ERR_ACCEPTED_D",
-		C2H_STAT_DESC_RSP_ERR_ACCEPTED_D_MASK},
+	glbl_axis_h2c_cnt_a5_field_info[] = {
+	{"GLBL_AXIS_H2C_CNT_A5_MBUSY_CNTS",
+		GLBL_AXIS_H2C_CNT_A5_MBUSY_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	c2h_stat_desc_req_field_info[] = {
-	{"C2H_STAT_DESC_REQ",
-		C2H_STAT_DESC_REQ_MASK},
+	glbl_axis_c2h_cnt_a0_field_info[] = {
+	{"GLBL_AXIS_C2H_CNT_A0_SPKT_CNTS",
+		GLBL_AXIS_C2H_CNT_A0_SPKT_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	c2h_stat_dbg_dma_eng_0_field_info[] = {
-	{"C2H_STAT_DMA_ENG_0_S_AXIS_C2H_TVALID",
-		C2H_STAT_DMA_ENG_0_S_AXIS_C2H_TVALID_MASK},
-	{"C2H_STAT_DMA_ENG_0_S_AXIS_C2H_TREADY",
-		C2H_STAT_DMA_ENG_0_S_AXIS_C2H_TREADY_MASK},
-	{"C2H_STAT_DMA_ENG_0_S_AXIS_WRB_TVALID",
-		C2H_STAT_DMA_ENG_0_S_AXIS_WRB_TVALID_MASK},
-	{"C2H_STAT_DMA_ENG_0_S_AXIS_WRB_TREADY",
-		C2H_STAT_DMA_ENG_0_S_AXIS_WRB_TREADY_MASK},
-	{"C2H_STAT_DMA_ENG_0_PLD_FIFO_IN_RDY",
-		C2H_STAT_DMA_ENG_0_PLD_FIFO_IN_RDY_MASK},
-	{"C2H_STAT_DMA_ENG_0_QID_FIFO_IN_RDY",
-		C2H_STAT_DMA_ENG_0_QID_FIFO_IN_RDY_MASK},
-	{"C2H_STAT_DMA_ENG_0_ARB_FIFO_OUT_VLD",
-		C2H_STAT_DMA_ENG_0_ARB_FIFO_OUT_VLD_MASK},
-	{"C2H_STAT_DMA_ENG_0_ARB_FIFO_OUT_QID",
-		C2H_STAT_DMA_ENG_0_ARB_FIFO_OUT_QID_MASK},
-	{"C2H_STAT_DMA_ENG_0_WRB_FIFO_IN_RDY",
-		C2H_STAT_DMA_ENG_0_WRB_FIFO_IN_RDY_MASK},
-	{"C2H_STAT_DMA_ENG_0_WRB_FIFO_OUT_CNT",
-		C2H_STAT_DMA_ENG_0_WRB_FIFO_OUT_CNT_MASK},
-	{"C2H_STAT_DMA_ENG_0_WRB_SM_CS",
-		C2H_STAT_DMA_ENG_0_WRB_SM_CS_MASK},
-	{"C2H_STAT_DMA_ENG_0_MAIN_SM_CS",
-		C2H_STAT_DMA_ENG_0_MAIN_SM_CS_MASK},
+	glbl_axis_c2h_cnt_a1_field_info[] = {
+	{"GLBL_AXIS_C2H_CNT_A1_SIDLE_CNTS",
+		GLBL_AXIS_C2H_CNT_A1_SIDLE_CNTS_MASK},
+	{"GLBL_AXIS_C2H_CNT_A1_SPKT_CNTS",
+		GLBL_AXIS_C2H_CNT_A1_SPKT_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	c2h_stat_dbg_dma_eng_1_field_info[] = {
-	{"C2H_STAT_DMA_ENG_1_RSVD_1",
-		C2H_STAT_DMA_ENG_1_RSVD_1_MASK},
-	{"C2H_STAT_DMA_ENG_1_QID_FIFO_OUT_CNT",
-		C2H_STAT_DMA_ENG_1_QID_FIFO_OUT_CNT_MASK},
-	{"C2H_STAT_DMA_ENG_1_PLD_FIFO_OUT_CNT",
-		C2H_STAT_DMA_ENG_1_PLD_FIFO_OUT_CNT_MASK},
-	{"C2H_STAT_DMA_ENG_1_PLD_ST_FIFO_CNT",
-		C2H_STAT_DMA_ENG_1_PLD_ST_FIFO_CNT_MASK},
+	glbl_axis_c2h_cnt_a2_field_info[] = {
+	{"GLBL_AXIS_C2H_CNT_A2_SIDLE_CNTS",
+		GLBL_AXIS_C2H_CNT_A2_SIDLE_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	c2h_stat_dbg_dma_eng_2_field_info[] = {
-	{"C2H_STAT_DMA_ENG_2_RSVD_1",
-		C2H_STAT_DMA_ENG_2_RSVD_1_MASK},
-	{"C2H_STAT_DMA_ENG_2_QID_FIFO_OUT_CNT",
-		C2H_STAT_DMA_ENG_2_QID_FIFO_OUT_CNT_MASK},
-	{"C2H_STAT_DMA_ENG_2_PLD_FIFO_OUT_CNT",
-		C2H_STAT_DMA_ENG_2_PLD_FIFO_OUT_CNT_MASK},
-	{"C2H_STAT_DMA_ENG_2_PLD_ST_FIFO_CNT",
-		C2H_STAT_DMA_ENG_2_PLD_ST_FIFO_CNT_MASK},
+	glbl_axis_c2h_cnt_a3_field_info[] = {
+	{"GLBL_AXIS_C2H_CNT_A3_SACTV_CNTS",
+		GLBL_AXIS_C2H_CNT_A3_SACTV_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	c2h_stat_dbg_dma_eng_3_field_info[] = {
-	{"C2H_STAT_DMA_ENG_3_RSVD_1",
-		C2H_STAT_DMA_ENG_3_RSVD_1_MASK},
-	{"C2H_STAT_DMA_ENG_3_WRQ_FIFO_OUT_CNT",
-		C2H_STAT_DMA_ENG_3_WRQ_FIFO_OUT_CNT_MASK},
-	{"C2H_STAT_DMA_ENG_3_QID_FIFO_OUT_VLD",
-		C2H_STAT_DMA_ENG_3_QID_FIFO_OUT_VLD_MASK},
-	{"C2H_STAT_DMA_ENG_3_PLD_FIFO_OUT_VLD",
-		C2H_STAT_DMA_ENG_3_PLD_FIFO_OUT_VLD_MASK},
-	{"C2H_STAT_DMA_ENG_3_PLD_ST_FIFO_OUT_VLD",
-		C2H_STAT_DMA_ENG_3_PLD_ST_FIFO_OUT_VLD_MASK},
-	{"C2H_STAT_DMA_ENG_3_PLD_ST_FIFO_OUT_DATA_EOP",
-		C2H_STAT_DMA_ENG_3_PLD_ST_FIFO_OUT_DATA_EOP_MASK},
-	{"C2H_STAT_DMA_ENG_3_PLD_ST_FIFO_OUT_DATA_AVL_IDX_ENABLE",
-		C2H_STAT_DMA_ENG_3_PLD_ST_FIFO_OUT_DATA_AVL_IDX_ENABLE_MASK},
-	{"C2H_STAT_DMA_ENG_3_PLD_ST_FIFO_OUT_DATA_DROP",
-		C2H_STAT_DMA_ENG_3_PLD_ST_FIFO_OUT_DATA_DROP_MASK},
-	{"C2H_STAT_DMA_ENG_3_PLD_ST_FIFO_OUT_DATA_ERR",
-		C2H_STAT_DMA_ENG_3_PLD_ST_FIFO_OUT_DATA_ERR_MASK},
-	{"C2H_STAT_DMA_ENG_3_DESC_CNT_FIFO_IN_RDY",
-		C2H_STAT_DMA_ENG_3_DESC_CNT_FIFO_IN_RDY_MASK},
-	{"C2H_STAT_DMA_ENG_3_DESC_RSP_FIFO_IN_RDY",
-		C2H_STAT_DMA_ENG_3_DESC_RSP_FIFO_IN_RDY_MASK},
-	{"C2H_STAT_DMA_ENG_3_PLD_PKT_ID_LARGER_0",
-		C2H_STAT_DMA_ENG_3_PLD_PKT_ID_LARGER_0_MASK},
-	{"C2H_STAT_DMA_ENG_3_WRQ_VLD",
-		C2H_STAT_DMA_ENG_3_WRQ_VLD_MASK},
-	{"C2H_STAT_DMA_ENG_3_WRQ_RDY",
-		C2H_STAT_DMA_ENG_3_WRQ_RDY_MASK},
-	{"C2H_STAT_DMA_ENG_3_WRQ_FIFO_OUT_RDY",
-		C2H_STAT_DMA_ENG_3_WRQ_FIFO_OUT_RDY_MASK},
-	{"C2H_STAT_DMA_ENG_3_WRQ_PACKET_OUT_DATA_DROP",
-		C2H_STAT_DMA_ENG_3_WRQ_PACKET_OUT_DATA_DROP_MASK},
-	{"C2H_STAT_DMA_ENG_3_WRQ_PACKET_OUT_DATA_ERR",
-		C2H_STAT_DMA_ENG_3_WRQ_PACKET_OUT_DATA_ERR_MASK},
-	{"C2H_STAT_DMA_ENG_3_WRQ_PACKET_OUT_DATA_MARKER",
-		C2H_STAT_DMA_ENG_3_WRQ_PACKET_OUT_DATA_MARKER_MASK},
-	{"C2H_STAT_DMA_ENG_3_WRQ_PACKET_PRE_EOR",
-		C2H_STAT_DMA_ENG_3_WRQ_PACKET_PRE_EOR_MASK},
-	{"C2H_STAT_DMA_ENG_3_WCP_FIFO_IN_RDY",
-		C2H_STAT_DMA_ENG_3_WCP_FIFO_IN_RDY_MASK},
-	{"C2H_STAT_DMA_ENG_3_PLD_ST_FIFO_IN_RDY",
-		C2H_STAT_DMA_ENG_3_PLD_ST_FIFO_IN_RDY_MASK},
+	glbl_axis_c2h_cnt_a4_field_info[] = {
+	{"GLBL_AXIS_C2H_CNT_A4_SBUSY_CNTS",
+		GLBL_AXIS_C2H_CNT_A4_SBUSY_CNTS_MASK},
+	{"GLBL_AXIS_C2H_CNT_A4_SACTV_CNTS",
+		GLBL_AXIS_C2H_CNT_A4_SACTV_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	c2h_dbg_pfch_err_ctxt_field_info[] = {
-	{"C2H_PFCH_ERR_CTXT_RSVD_1",
-		C2H_PFCH_ERR_CTXT_RSVD_1_MASK},
-	{"C2H_PFCH_ERR_CTXT_ERR_STAT",
-		C2H_PFCH_ERR_CTXT_ERR_STAT_MASK},
-	{"C2H_PFCH_ERR_CTXT_CMD_WR",
-		C2H_PFCH_ERR_CTXT_CMD_WR_MASK},
-	{"C2H_PFCH_ERR_CTXT_QID",
-		C2H_PFCH_ERR_CTXT_QID_MASK},
-	{"C2H_PFCH_ERR_CTXT_DONE",
-		C2H_PFCH_ERR_CTXT_DONE_MASK},
+	glbl_axis_c2h_cnt_a5_field_info[] = {
+	{"GLBL_AXIS_C2H_CNT_A5_SBUSY_CNTS",
+		GLBL_AXIS_C2H_CNT_A5_SBUSY_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	c2h_first_err_qid_field_info[] = {
-	{"C2H_FIRST_ERR_QID_RSVD_1",
-		C2H_FIRST_ERR_QID_RSVD_1_MASK},
-	{"C2H_FIRST_ERR_QID_ERR_TYPE",
-		C2H_FIRST_ERR_QID_ERR_TYPE_MASK},
-	{"C2H_FIRST_ERR_QID_RSVD",
-		C2H_FIRST_ERR_QID_RSVD_MASK},
-	{"C2H_FIRST_ERR_QID_QID",
-		C2H_FIRST_ERR_QID_QID_MASK},
+	glbl_m_axi_wr_cnt_a0_field_info[] = {
+	{"GLBL_M_AXI_WR_CNT_A0_PKT_CNTS",
+		GLBL_M_AXI_WR_CNT_A0_PKT_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	stat_num_wrb_in_field_info[] = {
-	{"STAT_NUM_WRB_IN_RSVD_1",
-		STAT_NUM_WRB_IN_RSVD_1_MASK},
-	{"STAT_NUM_WRB_IN_WRB_CNT",
-		STAT_NUM_WRB_IN_WRB_CNT_MASK},
+	glbl_m_axi_wr_cnt_a1_field_info[] = {
+	{"GLBL_M_AXI_WR_CNT_A1_IDLE_CNTS",
+		GLBL_M_AXI_WR_CNT_A1_IDLE_CNTS_MASK},
+	{"GLBL_M_AXI_WR_CNT_A1_PKT_CNTS",
+		GLBL_M_AXI_WR_CNT_A1_PKT_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	stat_num_wrb_out_field_info[] = {
-	{"STAT_NUM_WRB_OUT_RSVD_1",
-		STAT_NUM_WRB_OUT_RSVD_1_MASK},
-	{"STAT_NUM_WRB_OUT_WRB_CNT",
-		STAT_NUM_WRB_OUT_WRB_CNT_MASK},
+	glbl_m_axi_wr_cnt_a2_field_info[] = {
+	{"GLBL_M_AXI_WR_CNT_A2_IDLE_CNTS",
+		GLBL_M_AXI_WR_CNT_A2_IDLE_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	stat_num_wrb_drp_field_info[] = {
-	{"STAT_NUM_WRB_DRP_RSVD_1",
-		STAT_NUM_WRB_DRP_RSVD_1_MASK},
-	{"STAT_NUM_WRB_DRP_WRB_CNT",
-		STAT_NUM_WRB_DRP_WRB_CNT_MASK},
+	glbl_m_axi_wr_cnt_a3_field_info[] = {
+	{"GLBL_M_AXI_WR_CNT_A3_ACTV_CNTS",
+		GLBL_M_AXI_WR_CNT_A3_ACTV_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	stat_num_stat_desc_out_field_info[] = {
-	{"STAT_NUM_STAT_DESC_OUT_RSVD_1",
-		STAT_NUM_STAT_DESC_OUT_RSVD_1_MASK},
-	{"STAT_NUM_STAT_DESC_OUT_CNT",
-		STAT_NUM_STAT_DESC_OUT_CNT_MASK},
+	glbl_m_axi_wr_cnt_a4_field_info[] = {
+	{"GLBL_M_AXI_WR_CNT_A4_BUSY_CNTS",
+		GLBL_M_AXI_WR_CNT_A4_BUSY_CNTS_MASK},
+	{"GLBL_M_AXI_WR_CNT_A4_ACTV_CNTS",
+		GLBL_M_AXI_WR_CNT_A4_ACTV_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	stat_num_dsc_crdt_sent_field_info[] = {
-	{"STAT_NUM_DSC_CRDT_SENT_RSVD_1",
-		STAT_NUM_DSC_CRDT_SENT_RSVD_1_MASK},
-	{"STAT_NUM_DSC_CRDT_SENT_CNT",
-		STAT_NUM_DSC_CRDT_SENT_CNT_MASK},
+	glbl_m_axi_wr_cnt_a5_field_info[] = {
+	{"GLBL_M_AXI_WR_CNT_A5_BUSY_CNTS",
+		GLBL_M_AXI_WR_CNT_A5_BUSY_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	stat_num_fch_dsc_rcvd_field_info[] = {
-	{"STAT_NUM_FCH_DSC_RCVD_RSVD_1",
-		STAT_NUM_FCH_DSC_RCVD_RSVD_1_MASK},
-	{"STAT_NUM_FCH_DSC_RCVD_DSC_CNT",
-		STAT_NUM_FCH_DSC_RCVD_DSC_CNT_MASK},
+	glbl_m_axi_rd_cnt_a0_field_info[] = {
+	{"GLBL_M_AXI_RD_CNT_A0_PKT_CNTS",
+		GLBL_M_AXI_RD_CNT_A0_PKT_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	stat_num_byp_dsc_rcvd_field_info[] = {
-	{"STAT_NUM_BYP_DSC_RCVD_RSVD_1",
-		STAT_NUM_BYP_DSC_RCVD_RSVD_1_MASK},
-	{"STAT_NUM_BYP_DSC_RCVD_DSC_CNT",
-		STAT_NUM_BYP_DSC_RCVD_DSC_CNT_MASK},
+	glbl_m_axi_rd_cnt_a1_field_info[] = {
+	{"GLBL_M_AXI_RD_CNT_A1_IDLE_CNTS",
+		GLBL_M_AXI_RD_CNT_A1_IDLE_CNTS_MASK},
+	{"GLBL_M_AXI_RD_CNT_A1_PKT_CNTS",
+		GLBL_M_AXI_RD_CNT_A1_PKT_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	c2h_wrb_coal_cfg_field_info[] = {
-	{"C2H_WRB_COAL_CFG_MAX_BUF_SZ",
-		C2H_WRB_COAL_CFG_MAX_BUF_SZ_MASK},
-	{"C2H_WRB_COAL_CFG_TICK_VAL",
-		C2H_WRB_COAL_CFG_TICK_VAL_MASK},
-	{"C2H_WRB_COAL_CFG_TICK_CNT",
-		C2H_WRB_COAL_CFG_TICK_CNT_MASK},
-	{"C2H_WRB_COAL_CFG_SET_GLB_FLUSH",
-		C2H_WRB_COAL_CFG_SET_GLB_FLUSH_MASK},
-	{"C2H_WRB_COAL_CFG_DONE_GLB_FLUSH",
-		C2H_WRB_COAL_CFG_DONE_GLB_FLUSH_MASK},
+	glbl_m_axi_rd_cnt_a2_field_info[] = {
+	{"GLBL_M_AXI_RD_CNT_A2_IDLE_CNTS",
+		GLBL_M_AXI_RD_CNT_A2_IDLE_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	c2h_intr_h2c_req_field_info[] = {
-	{"C2H_INTR_H2C_REQ_RSVD_1",
-		C2H_INTR_H2C_REQ_RSVD_1_MASK},
-	{"C2H_INTR_H2C_REQ_CNT",
-		C2H_INTR_H2C_REQ_CNT_MASK},
+	glbl_m_axi_rd_cnt_a3_field_info[] = {
+	{"GLBL_M_AXI_RD_CNT_A3_ACTV_CNTS",
+		GLBL_M_AXI_RD_CNT_A3_ACTV_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	c2h_intr_c2h_mm_req_field_info[] = {
-	{"C2H_INTR_C2H_MM_REQ_RSVD_1",
-		C2H_INTR_C2H_MM_REQ_RSVD_1_MASK},
-	{"C2H_INTR_C2H_MM_REQ_CNT",
-		C2H_INTR_C2H_MM_REQ_CNT_MASK},
+	glbl_m_axi_rd_cnt_a4_field_info[] = {
+	{"GLBL_M_AXI_RD_CNT_A4_BUSY_CNTS",
+		GLBL_M_AXI_RD_CNT_A4_BUSY_CNTS_MASK},
+	{"GLBL_M_AXI_RD_CNT_A4_ACTV_CNTS",
+		GLBL_M_AXI_RD_CNT_A4_ACTV_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	c2h_intr_err_int_req_field_info[] = {
-	{"C2H_INTR_ERR_INT_REQ_RSVD_1",
-		C2H_INTR_ERR_INT_REQ_RSVD_1_MASK},
-	{"C2H_INTR_ERR_INT_REQ_CNT",
-		C2H_INTR_ERR_INT_REQ_CNT_MASK},
+	glbl_m_axi_rd_cnt_a5_field_info[] = {
+	{"GLBL_M_AXI_RD_CNT_A5_BUSY_CNTS",
+		GLBL_M_AXI_RD_CNT_A5_BUSY_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	c2h_intr_c2h_st_req_field_info[] = {
-	{"C2H_INTR_C2H_ST_REQ_RSVD_1",
-		C2H_INTR_C2H_ST_REQ_RSVD_1_MASK},
-	{"C2H_INTR_C2H_ST_REQ_CNT",
-		C2H_INTR_C2H_ST_REQ_CNT_MASK},
+	glbl_m_axib_wr_cnt_a0_field_info[] = {
+	{"GLBL_M_AXIB_WR_CNT_A0_PKT_CNTS",
+		GLBL_M_AXIB_WR_CNT_A0_PKT_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	c2h_intr_h2c_err_c2h_mm_msix_ack_field_info[] = {
-	{"C2H_INTR_H2C_ERR_C2H_MM_MSIX_ACK_RSVD_1",
-		C2H_INTR_H2C_ERR_C2H_MM_MSIX_ACK_RSVD_1_MASK},
-	{"C2H_INTR_H2C_ERR_C2H_MM_MSIX_ACK_CNT",
-		C2H_INTR_H2C_ERR_C2H_MM_MSIX_ACK_CNT_MASK},
+	glbl_m_axib_wr_cnt_a1_field_info[] = {
+	{"GLBL_M_AXIB_WR_CNT_A1_IDLE_CNTS",
+		GLBL_M_AXIB_WR_CNT_A1_IDLE_CNTS_MASK},
+	{"GLBL_M_AXIB_WR_CNT_A1_PKT_CNTS",
+		GLBL_M_AXIB_WR_CNT_A1_PKT_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	c2h_intr_h2c_err_c2h_mm_msix_fail_field_info[] = {
-	{"C2H_INTR_H2C_ERR_C2H_MM_MSIX_FAIL_RSVD_1",
-		C2H_INTR_H2C_ERR_C2H_MM_MSIX_FAIL_RSVD_1_MASK},
-	{"C2H_INTR_H2C_ERR_C2H_MM_MSIX_FAIL_CNT",
-		C2H_INTR_H2C_ERR_C2H_MM_MSIX_FAIL_CNT_MASK},
+	glbl_m_axib_wr_cnt_a2_field_info[] = {
+	{"GLBL_M_AXIB_WR_CNT_A2_IDLE_CNTS",
+		GLBL_M_AXIB_WR_CNT_A2_IDLE_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	c2h_intr_h2c_err_c2h_mm_msix_no_msix_field_info[] = {
-	{"C2H_INTR_H2C_ERR_C2H_MM_MSIX_NO_MSIX_RSVD_1",
-		C2H_INTR_H2C_ERR_C2H_MM_MSIX_NO_MSIX_RSVD_1_MASK},
-	{"C2H_INTR_H2C_ERR_C2H_MM_MSIX_NO_MSIX_CNT",
-		C2H_INTR_H2C_ERR_C2H_MM_MSIX_NO_MSIX_CNT_MASK},
+	glbl_m_axib_wr_cnt_a3_field_info[] = {
+	{"GLBL_M_AXIB_WR_CNT_A3_ACTV_CNTS",
+		GLBL_M_AXIB_WR_CNT_A3_ACTV_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	c2h_intr_h2c_err_c2h_mm_ctxt_inval_field_info[] = {
-	{"C2H_INTR_H2C_ERR_C2H_MM_CTXT_INVAL_RSVD_1",
-		C2H_INTR_H2C_ERR_C2H_MM_CTXT_INVAL_RSVD_1_MASK},
-	{"C2H_INTR_H2C_ERR_C2H_MM_CTXT_INVAL_CNT",
-		C2H_INTR_H2C_ERR_C2H_MM_CTXT_INVAL_CNT_MASK},
+	glbl_m_axib_wr_cnt_a4_field_info[] = {
+	{"GLBL_M_AXIB_WR_CNT_A4_BUSY_CNTS",
+		GLBL_M_AXIB_WR_CNT_A4_BUSY_CNTS_MASK},
+	{"GLBL_M_AXIB_WR_CNT_A4_ACTV_CNTS",
+		GLBL_M_AXIB_WR_CNT_A4_ACTV_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	c2h_intr_c2h_st_msix_ack_field_info[] = {
-	{"C2H_INTR_C2H_ST_MSIX_ACK_RSVD_1",
-		C2H_INTR_C2H_ST_MSIX_ACK_RSVD_1_MASK},
-	{"C2H_INTR_C2H_ST_MSIX_ACK_CNT",
-		C2H_INTR_C2H_ST_MSIX_ACK_CNT_MASK},
+	glbl_m_axib_wr_cnt_a5_field_info[] = {
+	{"GLBL_M_AXIB_WR_CNT_A5_BUSY_CNTS",
+		GLBL_M_AXIB_WR_CNT_A5_BUSY_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	c2h_intr_c2h_st_msix_fail_field_info[] = {
-	{"C2H_INTR_C2H_ST_MSIX_FAIL_RSVD_1",
-		C2H_INTR_C2H_ST_MSIX_FAIL_RSVD_1_MASK},
-	{"C2H_INTR_C2H_ST_MSIX_FAIL_CNT",
-		C2H_INTR_C2H_ST_MSIX_FAIL_CNT_MASK},
+	glbl_m_axib_rd_cnt_a0_field_info[] = {
+	{"GLBL_M_AXIB_RD_CNT_A0_PKT_CNTS",
+		GLBL_M_AXIB_RD_CNT_A0_PKT_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	c2h_intr_c2h_st_no_msix_field_info[] = {
-	{"C2H_INTR_C2H_ST_NO_MSIX_RSVD_1",
-		C2H_INTR_C2H_ST_NO_MSIX_RSVD_1_MASK},
-	{"C2H_INTR_C2H_ST_NO_MSIX_CNT",
-		C2H_INTR_C2H_ST_NO_MSIX_CNT_MASK},
+	glbl_m_axib_rd_cnt_a1_field_info[] = {
+	{"GLBL_M_AXIB_RD_CNT_A1_IDLE_CNTS",
+		GLBL_M_AXIB_RD_CNT_A1_IDLE_CNTS_MASK},
+	{"GLBL_M_AXIB_RD_CNT_A1_PKT_CNTS",
+		GLBL_M_AXIB_RD_CNT_A1_PKT_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	c2h_intr_c2h_st_ctxt_inval_field_info[] = {
-	{"C2H_INTR_C2H_ST_CTXT_INVAL_RSVD_1",
-		C2H_INTR_C2H_ST_CTXT_INVAL_RSVD_1_MASK},
-	{"C2H_INTR_C2H_ST_CTXT_INVAL_CNT",
-		C2H_INTR_C2H_ST_CTXT_INVAL_CNT_MASK},
+	glbl_m_axib_rd_cnt_a2_field_info[] = {
+	{"GLBL_M_AXIB_RD_CNT_A2_IDLE_CNTS",
+		GLBL_M_AXIB_RD_CNT_A2_IDLE_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	c2h_stat_wr_cmp_field_info[] = {
-	{"C2H_STAT_WR_CMP_RSVD_1",
-		C2H_STAT_WR_CMP_RSVD_1_MASK},
-	{"C2H_STAT_WR_CMP_CNT",
-		C2H_STAT_WR_CMP_CNT_MASK},
+	glbl_m_axib_rd_cnt_a3_field_info[] = {
+	{"GLBL_M_AXIB_RD_CNT_A3_ACTV_CNTS",
+		GLBL_M_AXIB_RD_CNT_A3_ACTV_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	c2h_stat_dbg_dma_eng_4_field_info[] = {
-	{"C2H_STAT_DMA_ENG_4_RSVD_1",
-		C2H_STAT_DMA_ENG_4_RSVD_1_MASK},
-	{"C2H_STAT_DMA_ENG_4_WRQ_FIFO_OUT_CNT",
-		C2H_STAT_DMA_ENG_4_WRQ_FIFO_OUT_CNT_MASK},
-	{"C2H_STAT_DMA_ENG_4_QID_FIFO_OUT_VLD",
-		C2H_STAT_DMA_ENG_4_QID_FIFO_OUT_VLD_MASK},
-	{"C2H_STAT_DMA_ENG_4_PLD_FIFO_OUT_VLD",
-		C2H_STAT_DMA_ENG_4_PLD_FIFO_OUT_VLD_MASK},
-	{"C2H_STAT_DMA_ENG_4_PLD_ST_FIFO_OUT_VLD",
-		C2H_STAT_DMA_ENG_4_PLD_ST_FIFO_OUT_VLD_MASK},
-	{"C2H_STAT_DMA_ENG_4_PLD_ST_FIFO_OUT_DATA_EOP",
-		C2H_STAT_DMA_ENG_4_PLD_ST_FIFO_OUT_DATA_EOP_MASK},
-	{"C2H_STAT_DMA_ENG_4_PLD_ST_FIFO_OUT_DATA_AVL_IDX_ENABLE",
-		C2H_STAT_DMA_ENG_4_PLD_ST_FIFO_OUT_DATA_AVL_IDX_ENABLE_MASK},
-	{"C2H_STAT_DMA_ENG_4_PLD_ST_FIFO_OUT_DATA_DROP",
-		C2H_STAT_DMA_ENG_4_PLD_ST_FIFO_OUT_DATA_DROP_MASK},
-	{"C2H_STAT_DMA_ENG_4_PLD_ST_FIFO_OUT_DATA_ERR",
-		C2H_STAT_DMA_ENG_4_PLD_ST_FIFO_OUT_DATA_ERR_MASK},
-	{"C2H_STAT_DMA_ENG_4_DESC_CNT_FIFO_IN_RDY",
-		C2H_STAT_DMA_ENG_4_DESC_CNT_FIFO_IN_RDY_MASK},
-	{"C2H_STAT_DMA_ENG_4_DESC_RSP_FIFO_IN_RDY",
-		C2H_STAT_DMA_ENG_4_DESC_RSP_FIFO_IN_RDY_MASK},
-	{"C2H_STAT_DMA_ENG_4_PLD_PKT_ID_LARGER_0",
-		C2H_STAT_DMA_ENG_4_PLD_PKT_ID_LARGER_0_MASK},
-	{"C2H_STAT_DMA_ENG_4_WRQ_VLD",
-		C2H_STAT_DMA_ENG_4_WRQ_VLD_MASK},
-	{"C2H_STAT_DMA_ENG_4_WRQ_RDY",
-		C2H_STAT_DMA_ENG_4_WRQ_RDY_MASK},
-	{"C2H_STAT_DMA_ENG_4_WRQ_FIFO_OUT_RDY",
-		C2H_STAT_DMA_ENG_4_WRQ_FIFO_OUT_RDY_MASK},
-	{"C2H_STAT_DMA_ENG_4_WRQ_PACKET_OUT_DATA_DROP",
-		C2H_STAT_DMA_ENG_4_WRQ_PACKET_OUT_DATA_DROP_MASK},
-	{"C2H_STAT_DMA_ENG_4_WRQ_PACKET_OUT_DATA_ERR",
-		C2H_STAT_DMA_ENG_4_WRQ_PACKET_OUT_DATA_ERR_MASK},
-	{"C2H_STAT_DMA_ENG_4_WRQ_PACKET_OUT_DATA_MARKER",
-		C2H_STAT_DMA_ENG_4_WRQ_PACKET_OUT_DATA_MARKER_MASK},
-	{"C2H_STAT_DMA_ENG_4_WRQ_PACKET_PRE_EOR",
-		C2H_STAT_DMA_ENG_4_WRQ_PACKET_PRE_EOR_MASK},
-	{"C2H_STAT_DMA_ENG_4_WCP_FIFO_IN_RDY",
-		C2H_STAT_DMA_ENG_4_WCP_FIFO_IN_RDY_MASK},
-	{"C2H_STAT_DMA_ENG_4_PLD_ST_FIFO_IN_RDY",
-		C2H_STAT_DMA_ENG_4_PLD_ST_FIFO_IN_RDY_MASK},
+	glbl_m_axib_rd_cnt_a4_field_info[] = {
+	{"GLBL_M_AXIB_RD_CNT_A4_BUSY_CNTS",
+		GLBL_M_AXIB_RD_CNT_A4_BUSY_CNTS_MASK},
+	{"GLBL_M_AXIB_RD_CNT_A4_ACTV_CNTS",
+		GLBL_M_AXIB_RD_CNT_A4_ACTV_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	c2h_stat_dbg_dma_eng_5_field_info[] = {
-	{"C2H_STAT_DMA_ENG_5_RSVD_1",
-		C2H_STAT_DMA_ENG_5_RSVD_1_MASK},
-	{"C2H_STAT_DMA_ENG_5_WRB_SM_VIRT_CH",
-		C2H_STAT_DMA_ENG_5_WRB_SM_VIRT_CH_MASK},
-	{"C2H_STAT_DMA_ENG_5_WRB_FIFO_IN_REQ",
-		C2H_STAT_DMA_ENG_5_WRB_FIFO_IN_REQ_MASK},
-	{"C2H_STAT_DMA_ENG_5_ARB_FIFO_OUT_CNT",
-		C2H_STAT_DMA_ENG_5_ARB_FIFO_OUT_CNT_MASK},
-	{"C2H_STAT_DMA_ENG_5_ARB_FIFO_OUT_DATA_LEN",
-		C2H_STAT_DMA_ENG_5_ARB_FIFO_OUT_DATA_LEN_MASK},
-	{"C2H_STAT_DMA_ENG_5_ARB_FIFO_OUT_DATA_VIRT_CH",
-		C2H_STAT_DMA_ENG_5_ARB_FIFO_OUT_DATA_VIRT_CH_MASK},
-	{"C2H_STAT_DMA_ENG_5_ARB_FIFO_OUT_DATA_VAR_DESC",
-		C2H_STAT_DMA_ENG_5_ARB_FIFO_OUT_DATA_VAR_DESC_MASK},
-	{"C2H_STAT_DMA_ENG_5_ARB_FIFO_OUT_DATA_DROP_REQ",
-		C2H_STAT_DMA_ENG_5_ARB_FIFO_OUT_DATA_DROP_REQ_MASK},
-	{"C2H_STAT_DMA_ENG_5_ARB_FIFO_OUT_DATA_NUM_BUF_OV",
-		C2H_STAT_DMA_ENG_5_ARB_FIFO_OUT_DATA_NUM_BUF_OV_MASK},
-	{"C2H_STAT_DMA_ENG_5_ARB_FIFO_OUT_DATA_MARKER",
-		C2H_STAT_DMA_ENG_5_ARB_FIFO_OUT_DATA_MARKER_MASK},
-	{"C2H_STAT_DMA_ENG_5_ARB_FIFO_OUT_DATA_HAS_CMPT",
-		C2H_STAT_DMA_ENG_5_ARB_FIFO_OUT_DATA_HAS_CMPT_MASK},
+	glbl_m_axib_rd_cnt_a5_field_info[] = {
+	{"GLBL_M_AXIB_RD_CNT_A5_BUSY_CNTS",
+		GLBL_M_AXIB_RD_CNT_A5_BUSY_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	c2h_dbg_pfch_qid_field_info[] = {
-	{"C2H_PFCH_QID_RSVD_1",
-		C2H_PFCH_QID_RSVD_1_MASK},
-	{"C2H_PFCH_QID_ERR_CTXT",
-		C2H_PFCH_QID_ERR_CTXT_MASK},
-	{"C2H_PFCH_QID_TARGET",
-		C2H_PFCH_QID_TARGET_MASK},
-	{"C2H_PFCH_QID_QID_OR_TAG",
-		C2H_PFCH_QID_QID_OR_TAG_MASK},
+	glbl_s_axi_wr_cnt_a0_field_info[] = {
+	{"GLBL_S_AXI_WR_CNT_A0_PKT_CNTS",
+		GLBL_S_AXI_WR_CNT_A0_PKT_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	c2h_dbg_pfch_field_info[] = {
-	{"C2H_PFCH_DATA",
-		C2H_PFCH_DATA_MASK},
+	glbl_s_axi_wr_cnt_a1_field_info[] = {
+	{"GLBL_S_AXI_WR_CNT_A1_IDLE_CNTS",
+		GLBL_S_AXI_WR_CNT_A1_IDLE_CNTS_MASK},
+	{"GLBL_S_AXI_WR_CNT_A1_PKT_CNTS",
+		GLBL_S_AXI_WR_CNT_A1_PKT_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	c2h_int_dbg_field_info[] = {
-	{"C2H_INT_RSVD_1",
-		C2H_INT_RSVD_1_MASK},
-	{"C2H_INT_INT_COAL_SM",
-		C2H_INT_INT_COAL_SM_MASK},
-	{"C2H_INT_INT_SM",
-		C2H_INT_INT_SM_MASK},
+	glbl_s_axi_wr_cnt_a2_field_info[] = {
+	{"GLBL_S_AXI_WR_CNT_A2_IDLE_CNTS",
+		GLBL_S_AXI_WR_CNT_A2_IDLE_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	c2h_stat_imm_accepted_field_info[] = {
-	{"C2H_STAT_IMM_ACCEPTED_RSVD_1",
-		C2H_STAT_IMM_ACCEPTED_RSVD_1_MASK},
-	{"C2H_STAT_IMM_ACCEPTED_CNT",
-		C2H_STAT_IMM_ACCEPTED_CNT_MASK},
+	glbl_s_axi_wr_cnt_a3_field_info[] = {
+	{"GLBL_S_AXI_WR_CNT_A3_ACTV_CNTS",
+		GLBL_S_AXI_WR_CNT_A3_ACTV_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	c2h_stat_marker_accepted_field_info[] = {
-	{"C2H_STAT_MARKER_ACCEPTED_RSVD_1",
-		C2H_STAT_MARKER_ACCEPTED_RSVD_1_MASK},
-	{"C2H_STAT_MARKER_ACCEPTED_CNT",
-		C2H_STAT_MARKER_ACCEPTED_CNT_MASK},
+	glbl_s_axi_wr_cnt_a4_field_info[] = {
+	{"GLBL_S_AXI_WR_CNT_A4_BUSY_CNTS",
+		GLBL_S_AXI_WR_CNT_A4_BUSY_CNTS_MASK},
+	{"GLBL_S_AXI_WR_CNT_A4_ACTV_CNTS",
+		GLBL_S_AXI_WR_CNT_A4_ACTV_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	c2h_stat_disable_cmp_accepted_field_info[] = {
-	{"C2H_STAT_DISABLE_CMP_ACCEPTED_RSVD_1",
-		C2H_STAT_DISABLE_CMP_ACCEPTED_RSVD_1_MASK},
-	{"C2H_STAT_DISABLE_CMP_ACCEPTED_CNT",
-		C2H_STAT_DISABLE_CMP_ACCEPTED_CNT_MASK},
+	glbl_s_axi_wr_cnt_a5_field_info[] = {
+	{"GLBL_S_AXI_WR_CNT_A5_BUSY_CNTS",
+		GLBL_S_AXI_WR_CNT_A5_BUSY_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	c2h_pld_fifo_crdt_cnt_field_info[] = {
-	{"C2H_PLD_FIFO_CRDT_CNT_RSVD_1",
-		C2H_PLD_FIFO_CRDT_CNT_RSVD_1_MASK},
-	{"C2H_PLD_FIFO_CRDT_CNT_CNT",
-		C2H_PLD_FIFO_CRDT_CNT_CNT_MASK},
+	glbl_s_axi_rd_cnt_a0_field_info[] = {
+	{"GLBL_S_AXI_RD_CNT_A0_PKT_CNTS",
+		GLBL_S_AXI_RD_CNT_A0_PKT_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	c2h_intr_dyn_req_field_info[] = {
-	{"C2H_INTR_DYN_REQ_RSVD_1",
-		C2H_INTR_DYN_REQ_RSVD_1_MASK},
-	{"C2H_INTR_DYN_REQ_CNT",
-		C2H_INTR_DYN_REQ_CNT_MASK},
+	glbl_s_axi_rd_cnt_a1_field_info[] = {
+	{"GLBL_S_AXI_RD_CNT_A1_IDLE_CNTS",
+		GLBL_S_AXI_RD_CNT_A1_IDLE_CNTS_MASK},
+	{"GLBL_S_AXI_RD_CNT_A1_PKT_CNTS",
+		GLBL_S_AXI_RD_CNT_A1_PKT_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	c2h_intr_dyn_misc_field_info[] = {
-	{"C2H_INTR_DYN_MISC_RSVD_1",
-		C2H_INTR_DYN_MISC_RSVD_1_MASK},
-	{"C2H_INTR_DYN_MISC_CNT",
-		C2H_INTR_DYN_MISC_CNT_MASK},
+	glbl_s_axi_rd_cnt_a2_field_info[] = {
+	{"GLBL_S_AXI_RD_CNT_A2_IDLE_CNTS",
+		GLBL_S_AXI_RD_CNT_A2_IDLE_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	c2h_drop_len_mismatch_field_info[] = {
-	{"C2H_DROP_LEN_MISMATCH_RSVD_1",
-		C2H_DROP_LEN_MISMATCH_RSVD_1_MASK},
-	{"C2H_DROP_LEN_MISMATCH_CNT",
-		C2H_DROP_LEN_MISMATCH_CNT_MASK},
+	glbl_s_axi_rd_cnt_a3_field_info[] = {
+	{"GLBL_S_AXI_RD_CNT_A3_ACTV_CNTS",
+		GLBL_S_AXI_RD_CNT_A3_ACTV_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	c2h_drop_desc_rsp_len_field_info[] = {
-	{"C2H_DROP_DESC_RSP_LEN_RSVD_1",
-		C2H_DROP_DESC_RSP_LEN_RSVD_1_MASK},
-	{"C2H_DROP_DESC_RSP_LEN_CNT",
-		C2H_DROP_DESC_RSP_LEN_CNT_MASK},
+	glbl_s_axi_rd_cnt_a4_field_info[] = {
+	{"GLBL_S_AXI_RD_CNT_A4_BUSY_CNTS",
+		GLBL_S_AXI_RD_CNT_A4_BUSY_CNTS_MASK},
+	{"GLBL_S_AXI_RD_CNT_A4_ACTV_CNTS",
+		GLBL_S_AXI_RD_CNT_A4_ACTV_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	c2h_drop_qid_fifo_len_field_info[] = {
-	{"C2H_DROP_QID_FIFO_LEN_RSVD_1",
-		C2H_DROP_QID_FIFO_LEN_RSVD_1_MASK},
-	{"C2H_DROP_QID_FIFO_LEN_CNT",
-		C2H_DROP_QID_FIFO_LEN_CNT_MASK},
+	glbl_s_axi_rd_cnt_a5_field_info[] = {
+	{"GLBL_S_AXI_RD_CNT_A5_BUSY_CNTS",
+		GLBL_S_AXI_RD_CNT_A5_BUSY_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	c2h_drop_pld_cnt_field_info[] = {
-	{"C2H_DROP_PLD_CNT_RSVD_1",
-		C2H_DROP_PLD_CNT_RSVD_1_MASK},
-	{"C2H_DROP_PLD_CNT_CNT",
-		C2H_DROP_PLD_CNT_CNT_MASK},
-};
-
-
-static struct regfield_info
-	c2h_cmpt_format_0_field_info[] = {
-	{"C2H_CMPT_FORMAT_0_DESC_ERR_LOC",
-		C2H_CMPT_FORMAT_0_DESC_ERR_LOC_MASK},
-	{"C2H_CMPT_FORMAT_0_COLOR_LOC",
-		C2H_CMPT_FORMAT_0_COLOR_LOC_MASK},
-};
-
-
-static struct regfield_info
-	c2h_cmpt_format_1_field_info[] = {
-	{"C2H_CMPT_FORMAT_1_DESC_ERR_LOC",
-		C2H_CMPT_FORMAT_1_DESC_ERR_LOC_MASK},
-	{"C2H_CMPT_FORMAT_1_COLOR_LOC",
-		C2H_CMPT_FORMAT_1_COLOR_LOC_MASK},
-};
-
-
-static struct regfield_info
-	c2h_cmpt_format_2_field_info[] = {
-	{"C2H_CMPT_FORMAT_2_DESC_ERR_LOC",
-		C2H_CMPT_FORMAT_2_DESC_ERR_LOC_MASK},
-	{"C2H_CMPT_FORMAT_2_COLOR_LOC",
-		C2H_CMPT_FORMAT_2_COLOR_LOC_MASK},
+	glbl_s_axis_cmp_cnt_a0_field_info[] = {
+	{"GLBL_S_AXIS_CMP_CNT_A0_PKT_CNTS",
+		GLBL_S_AXIS_CMP_CNT_A0_PKT_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	c2h_cmpt_format_3_field_info[] = {
-	{"C2H_CMPT_FORMAT_3_DESC_ERR_LOC",
-		C2H_CMPT_FORMAT_3_DESC_ERR_LOC_MASK},
-	{"C2H_CMPT_FORMAT_3_COLOR_LOC",
-		C2H_CMPT_FORMAT_3_COLOR_LOC_MASK},
+	glbl_s_axis_cmp_cnt_a1_field_info[] = {
+	{"GLBL_S_AXIS_CMP_CNT_A1_IDLE_CNTS",
+		GLBL_S_AXIS_CMP_CNT_A1_IDLE_CNTS_MASK},
+	{"GLBL_S_AXIS_CMP_CNT_A1_PKT_CNTS",
+		GLBL_S_AXIS_CMP_CNT_A1_PKT_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	c2h_cmpt_format_4_field_info[] = {
-	{"C2H_CMPT_FORMAT_4_DESC_ERR_LOC",
-		C2H_CMPT_FORMAT_4_DESC_ERR_LOC_MASK},
-	{"C2H_CMPT_FORMAT_4_COLOR_LOC",
-		C2H_CMPT_FORMAT_4_COLOR_LOC_MASK},
+	glbl_s_axis_cmp_cnt_a2_field_info[] = {
+	{"GLBL_S_AXIS_CMP_CNT_A2_IDLE_CNTS",
+		GLBL_S_AXIS_CMP_CNT_A2_IDLE_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	c2h_cmpt_format_5_field_info[] = {
-	{"C2H_CMPT_FORMAT_5_DESC_ERR_LOC",
-		C2H_CMPT_FORMAT_5_DESC_ERR_LOC_MASK},
-	{"C2H_CMPT_FORMAT_5_COLOR_LOC",
-		C2H_CMPT_FORMAT_5_COLOR_LOC_MASK},
+	glbl_s_axis_cmp_cnt_a3_field_info[] = {
+	{"GLBL_S_AXIS_CMP_CNT_A3_ACTV_CNTS",
+		GLBL_S_AXIS_CMP_CNT_A3_ACTV_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	c2h_cmpt_format_6_field_info[] = {
-	{"C2H_CMPT_FORMAT_6_DESC_ERR_LOC",
-		C2H_CMPT_FORMAT_6_DESC_ERR_LOC_MASK},
-	{"C2H_CMPT_FORMAT_6_COLOR_LOC",
-		C2H_CMPT_FORMAT_6_COLOR_LOC_MASK},
+	glbl_s_axis_cmp_cnt_a4_field_info[] = {
+	{"GLBL_S_AXIS_CMP_CNT_A4_BUSY_CNTS",
+		GLBL_S_AXIS_CMP_CNT_A4_BUSY_CNTS_MASK},
+	{"GLBL_S_AXIS_CMP_CNT_A4_ACTV_CNTS",
+		GLBL_S_AXIS_CMP_CNT_A4_ACTV_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	c2h_pfch_cache_depth_field_info[] = {
-	{"C2H_PFCH_CACHE_DEPTH_MAX_STBUF",
-		C2H_PFCH_CACHE_DEPTH_MAX_STBUF_MASK},
-	{"C2H_PFCH_CACHE_DEPTH",
-		C2H_PFCH_CACHE_DEPTH_MASK},
+	glbl_s_axis_cmp_cnt_a5_field_info[] = {
+	{"GLBL_S_AXIS_CMP_CNT_A5_BUSY_CNTS",
+		GLBL_S_AXIS_CMP_CNT_A5_BUSY_CNTS_MASK},
 };
 
 
 static struct regfield_info
-	c2h_wrb_coal_buf_depth_field_info[] = {
-	{"C2H_WRB_COAL_BUF_DEPTH_RSVD_1",
-		C2H_WRB_COAL_BUF_DEPTH_RSVD_1_MASK},
-	{"C2H_WRB_COAL_BUF_DEPTH_BUFFER",
-		C2H_WRB_COAL_BUF_DEPTH_BUFFER_MASK},
+	ind_ctxt_data_field_info[] = {
+	{"IND_CTXT_DATA_DATA",
+		IND_CTXT_DATA_DATA_MASK},
 };
 
 
 static struct regfield_info
-	c2h_pfch_crdt_field_info[] = {
-	{"C2H_PFCH_CRDT_RSVD_1",
-		C2H_PFCH_CRDT_RSVD_1_MASK},
-	{"C2H_PFCH_CRDT_RSVD_2",
-		C2H_PFCH_CRDT_RSVD_2_MASK},
+	ind_ctxt_mask_field_info[] = {
+	{"IND_CTXT",
+		IND_CTXT_MASK},
 };
 
 
 static struct regfield_info
-	c2h_stat_has_cmpt_accepted_field_info[] = {
-	{"C2H_STAT_HAS_CMPT_ACCEPTED_RSVD_1",
-		C2H_STAT_HAS_CMPT_ACCEPTED_RSVD_1_MASK},
-	{"C2H_STAT_HAS_CMPT_ACCEPTED_CNT",
-		C2H_STAT_HAS_CMPT_ACCEPTED_CNT_MASK},
+	ind_ctxt_cmd_field_info[] = {
+	{"IND_CTXT_CMD_RSVD_1",
+		IND_CTXT_CMD_RSVD_1_MASK},
+	{"IND_CTXT_CMD_QID",
+		IND_CTXT_CMD_QID_MASK},
+	{"IND_CTXT_CMD_OP",
+		IND_CTXT_CMD_OP_MASK},
+	{"IND_CTXT_CMD_SEL",
+		IND_CTXT_CMD_SEL_MASK},
+	{"IND_CTXT_CMD_BUSY",
+		IND_CTXT_CMD_BUSY_MASK},
 };
 
 
 static struct regfield_info
-	c2h_stat_has_pld_accepted_field_info[] = {
-	{"C2H_STAT_HAS_PLD_ACCEPTED_RSVD_1",
-		C2H_STAT_HAS_PLD_ACCEPTED_RSVD_1_MASK},
-	{"C2H_STAT_HAS_PLD_ACCEPTED_CNT",
-		C2H_STAT_HAS_PLD_ACCEPTED_CNT_MASK},
+	c2h_timer_cnt_field_info[] = {
+	{"C2H_TIMER_CNT_RSVD_1",
+		C2H_TIMER_CNT_RSVD_1_MASK},
+	{"C2H_TIMER_CNT",
+		C2H_TIMER_CNT_MASK},
 };
 
 
 static struct regfield_info
-	c2h_pld_pkt_id_field_info[] = {
-	{"C2H_PLD_PKT_ID_CMPT_WAIT",
-		C2H_PLD_PKT_ID_CMPT_WAIT_MASK},
-	{"C2H_PLD_PKT_ID_DATA",
-		C2H_PLD_PKT_ID_DATA_MASK},
+	c2h_cnt_th_field_info[] = {
+	{"C2H_CNT_TH_RSVD_1",
+		C2H_CNT_TH_RSVD_1_MASK},
+	{"C2H_CNT_TH_THESHOLD_CNT",
+		C2H_CNT_TH_THESHOLD_CNT_MASK},
 };
 
 
 static struct regfield_info
-	c2h_pld_pkt_id_1_field_info[] = {
-	{"C2H_PLD_PKT_ID_1_CMPT_WAIT",
-		C2H_PLD_PKT_ID_1_CMPT_WAIT_MASK},
-	{"C2H_PLD_PKT_ID_1_DATA",
-		C2H_PLD_PKT_ID_1_DATA_MASK},
+	c2h_pfch_cfg_1_field_info[] = {
+	{"C2H_PFCH_CFG_1_EVT_QCNT_TH",
+		C2H_PFCH_CFG_1_EVT_QCNT_TH_MASK},
+	{"C2H_PFCH_CFG_1_QCNT",
+		C2H_PFCH_CFG_1_QCNT_MASK},
 };
 
 
 static struct regfield_info
-	c2h_drop_pld_cnt_1_field_info[] = {
-	{"C2H_DROP_PLD_CNT_1_RSVD_1",
-		C2H_DROP_PLD_CNT_1_RSVD_1_MASK},
-	{"C2H_DROP_PLD_CNT_1_CNT",
-		C2H_DROP_PLD_CNT_1_CNT_MASK},
+	c2h_pfch_cfg_2_field_info[] = {
+	{"C2H_PFCH_CFG_2_FENCE",
+		C2H_PFCH_CFG_2_FENCE_MASK},
+	{"C2H_PFCH_CFG_2_RSVD",
+		C2H_PFCH_CFG_2_RSVD_MASK},
+	{"C2H_PFCH_CFG_2_VAR_DESC_NO_DROP",
+		C2H_PFCH_CFG_2_VAR_DESC_NO_DROP_MASK},
+	{"C2H_PFCH_CFG_2_LL_SZ_TH",
+		C2H_PFCH_CFG_2_LL_SZ_TH_MASK},
+	{"C2H_PFCH_CFG_2_VAR_DESC_NUM",
+		C2H_PFCH_CFG_2_VAR_DESC_NUM_MASK},
+	{"C2H_PFCH_CFG_2_NUM",
+		C2H_PFCH_CFG_2_NUM_MASK},
 };
 
 
 static struct regfield_info
-	h2c_err_stat_field_info[] = {
-	{"H2C_ERR_STAT_RSVD_1",
-		H2C_ERR_STAT_RSVD_1_MASK},
-	{"H2C_ERR_STAT_PAR_ERR",
-		H2C_ERR_STAT_PAR_ERR_MASK},
-	{"H2C_ERR_STAT_SBE",
-		H2C_ERR_STAT_SBE_MASK},
-	{"H2C_ERR_STAT_DBE",
-		H2C_ERR_STAT_DBE_MASK},
-	{"H2C_ERR_STAT_NO_DMA_DS",
-		H2C_ERR_STAT_NO_DMA_DS_MASK},
-	{"H2C_ERR_STAT_SDI_MRKR_REQ_MOP_ERR",
-		H2C_ERR_STAT_SDI_MRKR_REQ_MOP_ERR_MASK},
-	{"H2C_ERR_STAT_ZERO_LEN_DS",
-		H2C_ERR_STAT_ZERO_LEN_DS_MASK},
+	c2h_stat_s_axis_c2h_accepted_field_info[] = {
+	{"C2H_STAT_S_AXIS_C2H_ACCEPTED",
+		C2H_STAT_S_AXIS_C2H_ACCEPTED_MASK},
 };
 
 
 static struct regfield_info
-	h2c_err_mask_field_info[] = {
-	{"H2C_ERR_EN",
-		H2C_ERR_EN_MASK},
+	c2h_stat_s_axis_wrb_accepted_field_info[] = {
+	{"C2H_STAT_S_AXIS_WRB_ACCEPTED",
+		C2H_STAT_S_AXIS_WRB_ACCEPTED_MASK},
 };
 
 
 static struct regfield_info
-	h2c_first_err_qid_field_info[] = {
-	{"H2C_FIRST_ERR_QID_RSVD_1",
-		H2C_FIRST_ERR_QID_RSVD_1_MASK},
-	{"H2C_FIRST_ERR_QID_ERR_TYPE",
-		H2C_FIRST_ERR_QID_ERR_TYPE_MASK},
-	{"H2C_FIRST_ERR_QID_RSVD_2",
-		H2C_FIRST_ERR_QID_RSVD_2_MASK},
-	{"H2C_FIRST_ERR_QID_QID",
-		H2C_FIRST_ERR_QID_QID_MASK},
+	c2h_stat_desc_rsp_pkt_accepted_field_info[] = {
+	{"C2H_STAT_DESC_RSP_PKT_ACCEPTED_D",
+		C2H_STAT_DESC_RSP_PKT_ACCEPTED_D_MASK},
 };
 
 
 static struct regfield_info
-	h2c_dbg_reg0_field_info[] = {
-	{"H2C_REG0_NUM_DSC_RCVD",
-		H2C_REG0_NUM_DSC_RCVD_MASK},
-	{"H2C_REG0_NUM_WRB_SENT",
-		H2C_REG0_NUM_WRB_SENT_MASK},
+	c2h_stat_axis_pkg_cmp_field_info[] = {
+	{"C2H_STAT_AXIS_PKG_CMP",
+		C2H_STAT_AXIS_PKG_CMP_MASK},
 };
 
 
 static struct regfield_info
-	h2c_dbg_reg1_field_info[] = {
-	{"H2C_REG1_NUM_REQ_SENT",
-		H2C_REG1_NUM_REQ_SENT_MASK},
-	{"H2C_REG1_NUM_CMP_SENT",
-		H2C_REG1_NUM_CMP_SENT_MASK},
+	c2h_stat_desc_rsp_accepted_field_info[] = {
+	{"C2H_STAT_DESC_RSP_ACCEPTED_D",
+		C2H_STAT_DESC_RSP_ACCEPTED_D_MASK},
 };
 
 
 static struct regfield_info
-	h2c_dbg_reg2_field_info[] = {
-	{"H2C_REG2_RSVD_1",
-		H2C_REG2_RSVD_1_MASK},
-	{"H2C_REG2_NUM_ERR_DSC_RCVD",
-		H2C_REG2_NUM_ERR_DSC_RCVD_MASK},
+	c2h_stat_desc_rsp_cmp_field_info[] = {
+	{"C2H_STAT_DESC_RSP_CMP_D",
+		C2H_STAT_DESC_RSP_CMP_D_MASK},
 };
 
 
 static struct regfield_info
-	h2c_dbg_reg3_field_info[] = {
-	{"H2C_REG3_RSVD_1",
-		H2C_REG3_RSVD_1_MASK},
-	{"H2C_REG3_DSCO_FIFO_EMPTY",
-		H2C_REG3_DSCO_FIFO_EMPTY_MASK},
-	{"H2C_REG3_DSCO_FIFO_FULL",
-		H2C_REG3_DSCO_FIFO_FULL_MASK},
-	{"H2C_REG3_CUR_RC_STATE",
-		H2C_REG3_CUR_RC_STATE_MASK},
-	{"H2C_REG3_RDREQ_LINES",
-		H2C_REG3_RDREQ_LINES_MASK},
-	{"H2C_REG3_RDATA_LINES_AVAIL",
-		H2C_REG3_RDATA_LINES_AVAIL_MASK},
-	{"H2C_REG3_PEND_FIFO_EMPTY",
-		H2C_REG3_PEND_FIFO_EMPTY_MASK},
-	{"H2C_REG3_PEND_FIFO_FULL",
-		H2C_REG3_PEND_FIFO_FULL_MASK},
-	{"H2C_REG3_CUR_RQ_STATE",
-		H2C_REG3_CUR_RQ_STATE_MASK},
-	{"H2C_REG3_DSCI_FIFO_FULL",
-		H2C_REG3_DSCI_FIFO_FULL_MASK},
-	{"H2C_REG3_DSCI_FIFO_EMPTY",
-		H2C_REG3_DSCI_FIFO_EMPTY_MASK},
+	c2h_stat_wrq_out_field_info[] = {
+	{"C2H_STAT_WRQ_OUT",
+		C2H_STAT_WRQ_OUT_MASK},
 };
 
 
 static struct regfield_info
-	h2c_dbg_reg4_field_info[] = {
-	{"H2C_REG4_RDREQ_ADDR",
-		H2C_REG4_RDREQ_ADDR_MASK},
+	c2h_stat_wpl_ren_accepted_field_info[] = {
+	{"C2H_STAT_WPL_REN_ACCEPTED",
+		C2H_STAT_WPL_REN_ACCEPTED_MASK},
 };
 
 
 static struct regfield_info
-	h2c_fatal_err_en_field_info[] = {
-	{"H2C_FATAL_ERR_EN_RSVD_1",
-		H2C_FATAL_ERR_EN_RSVD_1_MASK},
-	{"H2C_FATAL_ERR_EN_H2C",
-		H2C_FATAL_ERR_EN_H2C_MASK},
+	c2h_stat_total_wrq_len_field_info[] = {
+	{"C2H_STAT_TOTAL_WRQ_LEN",
+		C2H_STAT_TOTAL_WRQ_LEN_MASK},
 };
 
 
 static struct regfield_info
-	h2c_req_throt_pcie_field_info[] = {
-	{"H2C_REQ_THROT_PCIE_EN_REQ",
-		H2C_REQ_THROT_PCIE_EN_REQ_MASK},
-	{"H2C_REQ_THROT_PCIE",
-		H2C_REQ_THROT_PCIE_MASK},
-	{"H2C_REQ_THROT_PCIE_EN_DATA",
-		H2C_REQ_THROT_PCIE_EN_DATA_MASK},
-	{"H2C_REQ_THROT_PCIE_DATA_THRESH",
-		H2C_REQ_THROT_PCIE_DATA_THRESH_MASK},
+	c2h_stat_total_wpl_len_field_info[] = {
+	{"C2H_STAT_TOTAL_WPL_LEN",
+		C2H_STAT_TOTAL_WPL_LEN_MASK},
 };
 
 
 static struct regfield_info
-	h2c_aln_dbg_reg0_field_info[] = {
-	{"H2C_ALN_REG0_NUM_PKT_SENT",
-		H2C_ALN_REG0_NUM_PKT_SENT_MASK},
+	c2h_buf_sz_field_info[] = {
+	{"C2H_BUF_SZ_IZE",
+		C2H_BUF_SZ_IZE_MASK},
 };
 
 
 static struct regfield_info
-	h2c_req_throt_aximm_field_info[] = {
-	{"H2C_REQ_THROT_AXIMM_EN_REQ",
-		H2C_REQ_THROT_AXIMM_EN_REQ_MASK},
-	{"H2C_REQ_THROT_AXIMM",
-		H2C_REQ_THROT_AXIMM_MASK},
-	{"H2C_REQ_THROT_AXIMM_EN_DATA",
-		H2C_REQ_THROT_AXIMM_EN_DATA_MASK},
-	{"H2C_REQ_THROT_AXIMM_DATA_THRESH",
-		H2C_REQ_THROT_AXIMM_DATA_THRESH_MASK},
+	c2h_err_stat_field_info[] = {
+	{"C2H_ERR_STAT_RSVD_1",
+		C2H_ERR_STAT_RSVD_1_MASK},
+	{"C2H_ERR_STAT_WRB_PORT_ID_ERR",
+		C2H_ERR_STAT_WRB_PORT_ID_ERR_MASK},
+	{"C2H_ERR_STAT_HDR_PAR_ERR",
+		C2H_ERR_STAT_HDR_PAR_ERR_MASK},
+	{"C2H_ERR_STAT_HDR_ECC_COR_ERR",
+		C2H_ERR_STAT_HDR_ECC_COR_ERR_MASK},
+	{"C2H_ERR_STAT_HDR_ECC_UNC_ERR",
+		C2H_ERR_STAT_HDR_ECC_UNC_ERR_MASK},
+	{"C2H_ERR_STAT_AVL_RING_DSC_ERR",
+		C2H_ERR_STAT_AVL_RING_DSC_ERR_MASK},
+	{"C2H_ERR_STAT_WRB_PRTY_ERR",
+		C2H_ERR_STAT_WRB_PRTY_ERR_MASK},
+	{"C2H_ERR_STAT_WRB_CIDX_ERR",
+		C2H_ERR_STAT_WRB_CIDX_ERR_MASK},
+	{"C2H_ERR_STAT_WRB_QFULL_ERR",
+		C2H_ERR_STAT_WRB_QFULL_ERR_MASK},
+	{"C2H_ERR_STAT_WRB_INV_Q_ERR",
+		C2H_ERR_STAT_WRB_INV_Q_ERR_MASK},
+	{"C2H_ERR_STAT_RSVD_2",
+		C2H_ERR_STAT_RSVD_2_MASK},
+	{"C2H_ERR_STAT_PORT_ID_CTXT_MISMATCH",
+		C2H_ERR_STAT_PORT_ID_CTXT_MISMATCH_MASK},
+	{"C2H_ERR_STAT_ERR_DESC_CNT",
+		C2H_ERR_STAT_ERR_DESC_CNT_MASK},
+	{"C2H_ERR_STAT_RSVD_3",
+		C2H_ERR_STAT_RSVD_3_MASK},
+	{"C2H_ERR_STAT_MSI_INT_FAIL",
+		C2H_ERR_STAT_MSI_INT_FAIL_MASK},
+	{"C2H_ERR_STAT_ENG_WPL_DATA_PAR_ERR",
+		C2H_ERR_STAT_ENG_WPL_DATA_PAR_ERR_MASK},
+	{"C2H_ERR_STAT_RSVD_4",
+		C2H_ERR_STAT_RSVD_4_MASK},
+	{"C2H_ERR_STAT_DESC_RSP_ERR",
+		C2H_ERR_STAT_DESC_RSP_ERR_MASK},
+	{"C2H_ERR_STAT_QID_MISMATCH",
+		C2H_ERR_STAT_QID_MISMATCH_MASK},
+	{"C2H_ERR_STAT_SH_CMPT_DSC_ERR",
+		C2H_ERR_STAT_SH_CMPT_DSC_ERR_MASK},
+	{"C2H_ERR_STAT_LEN_MISMATCH",
+		C2H_ERR_STAT_LEN_MISMATCH_MASK},
+	{"C2H_ERR_STAT_MTY_MISMATCH",
+		C2H_ERR_STAT_MTY_MISMATCH_MASK},
 };
 
 
 static struct regfield_info
-	c2h_mm_ctl_field_info[] = {
-	{"C2H_MM_CTL_RESERVED1",
-		C2H_MM_CTL_RESERVED1_MASK},
-	{"C2H_MM_CTL_ERRC_EN",
-		C2H_MM_CTL_ERRC_EN_MASK},
-	{"C2H_MM_CTL_RESERVED0",
-		C2H_MM_CTL_RESERVED0_MASK},
-	{"C2H_MM_CTL_RUN",
-		C2H_MM_CTL_RUN_MASK},
+	c2h_err_mask_field_info[] = {
+	{"C2H_ERR_EN",
+		C2H_ERR_EN_MASK},
 };
 
 
 static struct regfield_info
-	c2h_mm_status_field_info[] = {
-	{"C2H_MM_STATUS_RSVD_1",
-		C2H_MM_STATUS_RSVD_1_MASK},
-	{"C2H_MM_STATUS_RUN",
-		C2H_MM_STATUS_RUN_MASK},
+	c2h_fatal_err_stat_field_info[] = {
+	{"C2H_FATAL_ERR_STAT_RSVD_1",
+		C2H_FATAL_ERR_STAT_RSVD_1_MASK},
+	{"C2H_FATAL_ERR_STAT_HDR_ECC_UNC_ERR",
+		C2H_FATAL_ERR_STAT_HDR_ECC_UNC_ERR_MASK},
+	{"C2H_FATAL_ERR_STAT_AVL_RING_FIFO_RAM_RDBE",
+		C2H_FATAL_ERR_STAT_AVL_RING_FIFO_RAM_RDBE_MASK},
+	{"C2H_FATAL_ERR_STAT_WPL_DATA_PAR_ERR",
+		C2H_FATAL_ERR_STAT_WPL_DATA_PAR_ERR_MASK},
+	{"C2H_FATAL_ERR_STAT_PLD_FIFO_RAM_RDBE",
+		C2H_FATAL_ERR_STAT_PLD_FIFO_RAM_RDBE_MASK},
+	{"C2H_FATAL_ERR_STAT_QID_FIFO_RAM_RDBE",
+		C2H_FATAL_ERR_STAT_QID_FIFO_RAM_RDBE_MASK},
+	{"C2H_FATAL_ERR_STAT_CMPT_FIFO_RAM_RDBE",
+		C2H_FATAL_ERR_STAT_CMPT_FIFO_RAM_RDBE_MASK},
+	{"C2H_FATAL_ERR_STAT_WRB_COAL_DATA_RAM_RDBE",
+		C2H_FATAL_ERR_STAT_WRB_COAL_DATA_RAM_RDBE_MASK},
+	{"C2H_FATAL_ERR_STAT_RESERVED2",
+		C2H_FATAL_ERR_STAT_RESERVED2_MASK},
+	{"C2H_FATAL_ERR_STAT_INT_CTXT_RAM_RDBE",
+		C2H_FATAL_ERR_STAT_INT_CTXT_RAM_RDBE_MASK},
+	{"C2H_FATAL_ERR_STAT_DESC_REQ_FIFO_RAM_RDBE",
+		C2H_FATAL_ERR_STAT_DESC_REQ_FIFO_RAM_RDBE_MASK},
+	{"C2H_FATAL_ERR_STAT_PFCH_CTXT_RAM_RDBE",
+		C2H_FATAL_ERR_STAT_PFCH_CTXT_RAM_RDBE_MASK},
+	{"C2H_FATAL_ERR_STAT_WRB_CTXT_RAM_RDBE",
+		C2H_FATAL_ERR_STAT_WRB_CTXT_RAM_RDBE_MASK},
+	{"C2H_FATAL_ERR_STAT_PFCH_LL_RAM_RDBE",
+		C2H_FATAL_ERR_STAT_PFCH_LL_RAM_RDBE_MASK},
+	{"C2H_FATAL_ERR_STAT_TIMER_FIFO_RAM_RDBE",
+		C2H_FATAL_ERR_STAT_TIMER_FIFO_RAM_RDBE_MASK},
+	{"C2H_FATAL_ERR_STAT_QID_MISMATCH",
+		C2H_FATAL_ERR_STAT_QID_MISMATCH_MASK},
+	{"C2H_FATAL_ERR_STAT_RESERVED1",
+		C2H_FATAL_ERR_STAT_RESERVED1_MASK},
+	{"C2H_FATAL_ERR_STAT_LEN_MISMATCH",
+		C2H_FATAL_ERR_STAT_LEN_MISMATCH_MASK},
+	{"C2H_FATAL_ERR_STAT_MTY_MISMATCH",
+		C2H_FATAL_ERR_STAT_MTY_MISMATCH_MASK},
 };
 
 
 static struct regfield_info
-	c2h_mm_cmpl_desc_cnt_field_info[] = {
-	{"C2H_MM_CMPL_DESC_CNT_C2H_CO",
-		C2H_MM_CMPL_DESC_CNT_C2H_CO_MASK},
+	c2h_fatal_err_mask_field_info[] = {
+	{"C2H_FATAL_ERR_C2HEN",
+		C2H_FATAL_ERR_C2HEN_MASK},
 };
 
 
 static struct regfield_info
-	c2h_mm_err_code_enable_mask_field_info[] = {
-	{"C2H_MM_ERR_CODE_ENABLE_RESERVED1",
-		C2H_MM_ERR_CODE_ENABLE_RESERVED1_MASK},
-	{"C2H_MM_ERR_CODE_ENABLE_WR_UC_RAM",
-		C2H_MM_ERR_CODE_ENABLE_WR_UC_RAM_MASK},
-	{"C2H_MM_ERR_CODE_ENABLE_WR_UR",
-		C2H_MM_ERR_CODE_ENABLE_WR_UR_MASK},
-	{"C2H_MM_ERR_CODE_ENABLE_WR_FLR",
-		C2H_MM_ERR_CODE_ENABLE_WR_FLR_MASK},
-	{"C2H_MM_ERR_CODE_ENABLE_RESERVED0",
-		C2H_MM_ERR_CODE_ENABLE_RESERVED0_MASK},
-	{"C2H_MM_ERR_CODE_ENABLE_RD_SLV_ERR",
-		C2H_MM_ERR_CODE_ENABLE_RD_SLV_ERR_MASK},
-	{"C2H_MM_ERR_CODE_ENABLE_WR_SLV_ERR",
-		C2H_MM_ERR_CODE_ENABLE_WR_SLV_ERR_MASK},
+	c2h_fatal_err_enable_field_info[] = {
+	{"C2H_FATAL_ERR_ENABLE_RSVD_1",
+		C2H_FATAL_ERR_ENABLE_RSVD_1_MASK},
+	{"C2H_FATAL_ERR_ENABLE_WPL_PAR_INV",
+		C2H_FATAL_ERR_ENABLE_WPL_PAR_INV_MASK},
+	{"C2H_FATAL_ERR_ENABLE_WRQ_DIS",
+		C2H_FATAL_ERR_ENABLE_WRQ_DIS_MASK},
 };
 
 
 static struct regfield_info
-	c2h_mm_err_code_field_info[] = {
-	{"C2H_MM_ERR_CODE_RESERVED1",
-		C2H_MM_ERR_CODE_RESERVED1_MASK},
-	{"C2H_MM_ERR_CODE_CIDX",
-		C2H_MM_ERR_CODE_CIDX_MASK},
-	{"C2H_MM_ERR_CODE_RESERVED0",
-		C2H_MM_ERR_CODE_RESERVED0_MASK},
-	{"C2H_MM_ERR_CODE_SUB_TYPE",
-		C2H_MM_ERR_CODE_SUB_TYPE_MASK},
-	{"C2H_MM_ERR_CODE",
-		C2H_MM_ERR_CODE_MASK},
+	glbl_err_int_field_info[] = {
+	{"GLBL_ERR_INT_RSVD_1",
+		GLBL_ERR_INT_RSVD_1_MASK},
+	{"GLBL_ERR_INT_HOST_ID",
+		GLBL_ERR_INT_HOST_ID_MASK},
+	{"GLBL_ERR_INT_DIS_INTR_ON_VF",
+		GLBL_ERR_INT_DIS_INTR_ON_VF_MASK},
+	{"GLBL_ERR_INT_ARM",
+		GLBL_ERR_INT_ARM_MASK},
+	{"GLBL_ERR_INT_EN_COAL",
+		GLBL_ERR_INT_EN_COAL_MASK},
+	{"GLBL_ERR_INT_VEC",
+		GLBL_ERR_INT_VEC_MASK},
+	{"GLBL_ERR_INT_FUNC",
+		GLBL_ERR_INT_FUNC_MASK},
 };
 
 
 static struct regfield_info
-	c2h_mm_err_info_field_info[] = {
-	{"C2H_MM_ERR_INFO_VALID",
-		C2H_MM_ERR_INFO_VALID_MASK},
-	{"C2H_MM_ERR_INFO_SEL",
-		C2H_MM_ERR_INFO_SEL_MASK},
-	{"C2H_MM_ERR_INFO_RSVD_1",
-		C2H_MM_ERR_INFO_RSVD_1_MASK},
-	{"C2H_MM_ERR_INFO_QID",
-		C2H_MM_ERR_INFO_QID_MASK},
+	c2h_pfch_cfg_field_info[] = {
+	{"C2H_PFCH_CFG_EVTFL_TH",
+		C2H_PFCH_CFG_EVTFL_TH_MASK},
+	{"C2H_PFCH_CFG_FL_TH",
+		C2H_PFCH_CFG_FL_TH_MASK},
 };
 
 
 static struct regfield_info
-	c2h_mm_perf_mon_ctl_field_info[] = {
-	{"C2H_MM_PERF_MON_CTL_RSVD_1",
-		C2H_MM_PERF_MON_CTL_RSVD_1_MASK},
-	{"C2H_MM_PERF_MON_CTL_IMM_START",
-		C2H_MM_PERF_MON_CTL_IMM_START_MASK},
-	{"C2H_MM_PERF_MON_CTL_RUN_START",
-		C2H_MM_PERF_MON_CTL_RUN_START_MASK},
-	{"C2H_MM_PERF_MON_CTL_IMM_CLEAR",
-		C2H_MM_PERF_MON_CTL_IMM_CLEAR_MASK},
-	{"C2H_MM_PERF_MON_CTL_RUN_CLEAR",
-		C2H_MM_PERF_MON_CTL_RUN_CLEAR_MASK},
+	c2h_int_timer_tick_field_info[] = {
+	{"C2H_INT_TIMER_TICK",
+		C2H_INT_TIMER_TICK_MASK},
 };
 
 
 static struct regfield_info
-	c2h_mm_perf_mon_cycle_cnt0_field_info[] = {
-	{"C2H_MM_PERF_MON_CYCLE_CNT0_CYC_CNT",
-		C2H_MM_PERF_MON_CYCLE_CNT0_CYC_CNT_MASK},
+	c2h_stat_desc_rsp_drop_accepted_field_info[] = {
+	{"C2H_STAT_DESC_RSP_DROP_ACCEPTED_D",
+		C2H_STAT_DESC_RSP_DROP_ACCEPTED_D_MASK},
 };
 
 
 static struct regfield_info
-	c2h_mm_perf_mon_cycle_cnt1_field_info[] = {
-	{"C2H_MM_PERF_MON_CYCLE_CNT1_RSVD_1",
-		C2H_MM_PERF_MON_CYCLE_CNT1_RSVD_1_MASK},
-	{"C2H_MM_PERF_MON_CYCLE_CNT1_CYC_CNT",
-		C2H_MM_PERF_MON_CYCLE_CNT1_CYC_CNT_MASK},
+	c2h_stat_desc_rsp_err_accepted_field_info[] = {
+	{"C2H_STAT_DESC_RSP_ERR_ACCEPTED_D",
+		C2H_STAT_DESC_RSP_ERR_ACCEPTED_D_MASK},
 };
 
 
 static struct regfield_info
-	c2h_mm_perf_mon_data_cnt0_field_info[] = {
-	{"C2H_MM_PERF_MON_DATA_CNT0_DCNT",
-		C2H_MM_PERF_MON_DATA_CNT0_DCNT_MASK},
+	c2h_stat_desc_req_field_info[] = {
+	{"C2H_STAT_DESC_REQ",
+		C2H_STAT_DESC_REQ_MASK},
 };
 
 
 static struct regfield_info
-	c2h_mm_perf_mon_data_cnt1_field_info[] = {
-	{"C2H_MM_PERF_MON_DATA_CNT1_RSVD_1",
-		C2H_MM_PERF_MON_DATA_CNT1_RSVD_1_MASK},
-	{"C2H_MM_PERF_MON_DATA_CNT1_DCNT",
-		C2H_MM_PERF_MON_DATA_CNT1_DCNT_MASK},
+	c2h_stat_dbg_dma_eng_0_field_info[] = {
+	{"C2H_STAT_DMA_ENG_0_S_AXIS_C2H_TVALID",
+		C2H_STAT_DMA_ENG_0_S_AXIS_C2H_TVALID_MASK},
+	{"C2H_STAT_DMA_ENG_0_S_AXIS_C2H_TREADY",
+		C2H_STAT_DMA_ENG_0_S_AXIS_C2H_TREADY_MASK},
+	{"C2H_STAT_DMA_ENG_0_S_AXIS_WRB_TVALID",
+		C2H_STAT_DMA_ENG_0_S_AXIS_WRB_TVALID_MASK},
+	{"C2H_STAT_DMA_ENG_0_S_AXIS_WRB_TREADY",
+		C2H_STAT_DMA_ENG_0_S_AXIS_WRB_TREADY_MASK},
+	{"C2H_STAT_DMA_ENG_0_PLD_FIFO_IN_RDY",
+		C2H_STAT_DMA_ENG_0_PLD_FIFO_IN_RDY_MASK},
+	{"C2H_STAT_DMA_ENG_0_QID_FIFO_IN_RDY",
+		C2H_STAT_DMA_ENG_0_QID_FIFO_IN_RDY_MASK},
+	{"C2H_STAT_DMA_ENG_0_ARB_FIFO_OUT_VLD",
+		C2H_STAT_DMA_ENG_0_ARB_FIFO_OUT_VLD_MASK},
+	{"C2H_STAT_DMA_ENG_0_ARB_FIFO_OUT_QID",
+		C2H_STAT_DMA_ENG_0_ARB_FIFO_OUT_QID_MASK},
+	{"C2H_STAT_DMA_ENG_0_WRB_FIFO_IN_RDY",
+		C2H_STAT_DMA_ENG_0_WRB_FIFO_IN_RDY_MASK},
+	{"C2H_STAT_DMA_ENG_0_WRB_FIFO_OUT_CNT",
+		C2H_STAT_DMA_ENG_0_WRB_FIFO_OUT_CNT_MASK},
+	{"C2H_STAT_DMA_ENG_0_WRB_SM_CS",
+		C2H_STAT_DMA_ENG_0_WRB_SM_CS_MASK},
+	{"C2H_STAT_DMA_ENG_0_MAIN_SM_CS",
+		C2H_STAT_DMA_ENG_0_MAIN_SM_CS_MASK},
 };
 
 
 static struct regfield_info
-	c2h_mm_dbg_field_info[] = {
-	{"C2H_MM_RSVD_1",
-		C2H_MM_RSVD_1_MASK},
-	{"C2H_MM_RRQ_ENTRIES",
-		C2H_MM_RRQ_ENTRIES_MASK},
-	{"C2H_MM_DAT_FIFO_SPC",
-		C2H_MM_DAT_FIFO_SPC_MASK},
-	{"C2H_MM_RD_STALL",
-		C2H_MM_RD_STALL_MASK},
-	{"C2H_MM_RRQ_FIFO_FI",
-		C2H_MM_RRQ_FIFO_FI_MASK},
-	{"C2H_MM_WR_STALL",
-		C2H_MM_WR_STALL_MASK},
-	{"C2H_MM_WRQ_FIFO_FI",
-		C2H_MM_WRQ_FIFO_FI_MASK},
-	{"C2H_MM_WBK_STALL",
-		C2H_MM_WBK_STALL_MASK},
-	{"C2H_MM_DSC_FIFO_EP",
-		C2H_MM_DSC_FIFO_EP_MASK},
-	{"C2H_MM_DSC_FIFO_FL",
-		C2H_MM_DSC_FIFO_FL_MASK},
+	c2h_stat_dbg_dma_eng_1_field_info[] = {
+	{"C2H_STAT_DMA_ENG_1_WRB_USER_0_CMPT_TYPE",
+		C2H_STAT_DMA_ENG_1_WRB_USER_0_CMPT_TYPE_MASK},
+	{"C2H_STAT_DMA_ENG_1_DESC_RSP_FIFO_OUT_VLD",
+		C2H_STAT_DMA_ENG_1_DESC_RSP_FIFO_OUT_VLD_MASK},
+	{"C2H_STAT_DMA_ENG_1_QID_FIFO_OUT_CNT",
+		C2H_STAT_DMA_ENG_1_QID_FIFO_OUT_CNT_MASK},
+	{"C2H_STAT_DMA_ENG_1_PLD_FIFO_OUT_CNT",
+		C2H_STAT_DMA_ENG_1_PLD_FIFO_OUT_CNT_MASK},
+	{"C2H_STAT_DMA_ENG_1_PLD_ST_FIFO_CNT",
+		C2H_STAT_DMA_ENG_1_PLD_ST_FIFO_CNT_MASK},
 };
 
 
 static struct regfield_info
-	h2c_mm_ctl_field_info[] = {
-	{"H2C_MM_CTL_RESERVED1",
-		H2C_MM_CTL_RESERVED1_MASK},
-	{"H2C_MM_CTL_ERRC_EN",
-		H2C_MM_CTL_ERRC_EN_MASK},
-	{"H2C_MM_CTL_RESERVED0",
-		H2C_MM_CTL_RESERVED0_MASK},
-	{"H2C_MM_CTL_RUN",
-		H2C_MM_CTL_RUN_MASK},
+	c2h_stat_dbg_dma_eng_2_field_info[] = {
+	{"C2H_STAT_DMA_ENG_2_WRB_USER_1_CMPT_TYPE",
+		C2H_STAT_DMA_ENG_2_WRB_USER_1_CMPT_TYPE_MASK},
+	{"C2H_STAT_DMA_ENG_2_DESC_RSP_FIFO_OUT_VLD_1",
+		C2H_STAT_DMA_ENG_2_DESC_RSP_FIFO_OUT_VLD_1_MASK},
+	{"C2H_STAT_DMA_ENG_2_QID_FIFO_OUT_CNT_1",
+		C2H_STAT_DMA_ENG_2_QID_FIFO_OUT_CNT_1_MASK},
+	{"C2H_STAT_DMA_ENG_2_PLD_FIFO_OUT_CNT_1",
+		C2H_STAT_DMA_ENG_2_PLD_FIFO_OUT_CNT_1_MASK},
+	{"C2H_STAT_DMA_ENG_2_PLD_ST_FIFO_CNT_1",
+		C2H_STAT_DMA_ENG_2_PLD_ST_FIFO_CNT_1_MASK},
 };
 
 
 static struct regfield_info
-	h2c_mm_status_field_info[] = {
-	{"H2C_MM_STATUS_RSVD_1",
-		H2C_MM_STATUS_RSVD_1_MASK},
-	{"H2C_MM_STATUS_RUN",
-		H2C_MM_STATUS_RUN_MASK},
+	c2h_stat_dbg_dma_eng_3_field_info[] = {
+	{"C2H_STAT_DMA_ENG_3_QID_FIFO_OUT_DAT_HAS_CMPT",
+		C2H_STAT_DMA_ENG_3_QID_FIFO_OUT_DAT_HAS_CMPT_MASK},
+	{"C2H_STAT_DMA_ENG_3_QID_FIFO_OUT_DAT_MARKER",
+		C2H_STAT_DMA_ENG_3_QID_FIFO_OUT_DAT_MARKER_MASK},
+	{"C2H_STAT_DMA_ENG_3_QID_FIFO_OUT_DAT_DROP_REQ",
+		C2H_STAT_DMA_ENG_3_QID_FIFO_OUT_DAT_DROP_REQ_MASK},
+	{"C2H_STAT_DMA_ENG_3_QID_FIFO_OUT_DAT_QID",
+		C2H_STAT_DMA_ENG_3_QID_FIFO_OUT_DAT_QID_MASK},
+	{"C2H_STAT_DMA_ENG_3_WR_HDR_FIFO_OUT_CNT",
+		C2H_STAT_DMA_ENG_3_WR_HDR_FIFO_OUT_CNT_MASK},
+	{"C2H_STAT_DMA_ENG_3_QID_FIFO_OUT_VLD",
+		C2H_STAT_DMA_ENG_3_QID_FIFO_OUT_VLD_MASK},
+	{"C2H_STAT_DMA_ENG_3_PLD_FIFO_OUT_VLD",
+		C2H_STAT_DMA_ENG_3_PLD_FIFO_OUT_VLD_MASK},
+	{"C2H_STAT_DMA_ENG_3_PLD_ST_FIFO_OUT_VLD",
+		C2H_STAT_DMA_ENG_3_PLD_ST_FIFO_OUT_VLD_MASK},
+	{"C2H_STAT_DMA_ENG_3_PLD_ST_FIFO_OUT_DATA_EOP",
+		C2H_STAT_DMA_ENG_3_PLD_ST_FIFO_OUT_DATA_EOP_MASK},
+	{"C2H_STAT_DMA_ENG_3_PLD_ST_FIFO_OUT_DATA_AVL_IDX_ENABLE",
+		C2H_STAT_DMA_ENG_3_PLD_ST_FIFO_OUT_DATA_AVL_IDX_ENABLE_MASK},
+	{"C2H_STAT_DMA_ENG_3_PLD_ST_FIFO_OUT_DATA_DROP",
+		C2H_STAT_DMA_ENG_3_PLD_ST_FIFO_OUT_DATA_DROP_MASK},
+	{"C2H_STAT_DMA_ENG_3_PLD_ST_FIFO_OUT_DATA_ERR",
+		C2H_STAT_DMA_ENG_3_PLD_ST_FIFO_OUT_DATA_ERR_MASK},
+	{"C2H_STAT_DMA_ENG_3_DESC_CNT_FIFO_IN_RDY",
+		C2H_STAT_DMA_ENG_3_DESC_CNT_FIFO_IN_RDY_MASK},
+	{"C2H_STAT_DMA_ENG_3_DESC_RSP_FIFO_IN_RDY",
+		C2H_STAT_DMA_ENG_3_DESC_RSP_FIFO_IN_RDY_MASK},
+	{"C2H_STAT_DMA_ENG_3_PLD_PKT_ID_LARGER",
+		C2H_STAT_DMA_ENG_3_PLD_PKT_ID_LARGER_MASK},
+	{"C2H_STAT_DMA_ENG_3_WCP_FIFO_IN_RDY",
+		C2H_STAT_DMA_ENG_3_WCP_FIFO_IN_RDY_MASK},
+	{"C2H_STAT_DMA_ENG_3_PLD_ST_FIFO_IN_RDY",
+		C2H_STAT_DMA_ENG_3_PLD_ST_FIFO_IN_RDY_MASK},
 };
 
 
 static struct regfield_info
-	h2c_mm_cmpl_desc_cnt_field_info[] = {
-	{"H2C_MM_CMPL_DESC_CNT_H2C_CO",
-		H2C_MM_CMPL_DESC_CNT_H2C_CO_MASK},
+	c2h_dbg_pfch_err_ctxt_field_info[] = {
+	{"C2H_PFCH_ERR_CTXT_RSVD_1",
+		C2H_PFCH_ERR_CTXT_RSVD_1_MASK},
+	{"C2H_PFCH_ERR_CTXT_ERR_STAT",
+		C2H_PFCH_ERR_CTXT_ERR_STAT_MASK},
+	{"C2H_PFCH_ERR_CTXT_CMD_WR",
+		C2H_PFCH_ERR_CTXT_CMD_WR_MASK},
+	{"C2H_PFCH_ERR_CTXT_QID",
+		C2H_PFCH_ERR_CTXT_QID_MASK},
+	{"C2H_PFCH_ERR_CTXT_DONE",
+		C2H_PFCH_ERR_CTXT_DONE_MASK},
 };
 
 
 static struct regfield_info
-	h2c_mm_err_code_enable_mask_field_info[] = {
-	{"H2C_MM_ERR_CODE_ENABLE_RESERVED5",
-		H2C_MM_ERR_CODE_ENABLE_RESERVED5_MASK},
-	{"H2C_MM_ERR_CODE_ENABLE_WR_SLV_ERR",
-		H2C_MM_ERR_CODE_ENABLE_WR_SLV_ERR_MASK},
-	{"H2C_MM_ERR_CODE_ENABLE_WR_DEC_ERR",
-		H2C_MM_ERR_CODE_ENABLE_WR_DEC_ERR_MASK},
-	{"H2C_MM_ERR_CODE_ENABLE_RESERVED4",
-		H2C_MM_ERR_CODE_ENABLE_RESERVED4_MASK},
-	{"H2C_MM_ERR_CODE_ENABLE_RD_RQ_DIS_ERR",
-		H2C_MM_ERR_CODE_ENABLE_RD_RQ_DIS_ERR_MASK},
-	{"H2C_MM_ERR_CODE_ENABLE_RESERVED3",
-		H2C_MM_ERR_CODE_ENABLE_RESERVED3_MASK},
-	{"H2C_MM_ERR_CODE_ENABLE_RD_DAT_POISON_ERR",
-		H2C_MM_ERR_CODE_ENABLE_RD_DAT_POISON_ERR_MASK},
-	{"H2C_MM_ERR_CODE_ENABLE_RESERVED2",
-		H2C_MM_ERR_CODE_ENABLE_RESERVED2_MASK},
-	{"H2C_MM_ERR_CODE_ENABLE_RD_FLR_ERR",
-		H2C_MM_ERR_CODE_ENABLE_RD_FLR_ERR_MASK},
-	{"H2C_MM_ERR_CODE_ENABLE_RESERVED1",
-		H2C_MM_ERR_CODE_ENABLE_RESERVED1_MASK},
-	{"H2C_MM_ERR_CODE_ENABLE_RD_HDR_ADR_ERR",
-		H2C_MM_ERR_CODE_ENABLE_RD_HDR_ADR_ERR_MASK},
-	{"H2C_MM_ERR_CODE_ENABLE_RD_HDR_PARA",
-		H2C_MM_ERR_CODE_ENABLE_RD_HDR_PARA_MASK},
-	{"H2C_MM_ERR_CODE_ENABLE_RD_HDR_BYTE_ERR",
-		H2C_MM_ERR_CODE_ENABLE_RD_HDR_BYTE_ERR_MASK},
-	{"H2C_MM_ERR_CODE_ENABLE_RD_UR_CA",
-		H2C_MM_ERR_CODE_ENABLE_RD_UR_CA_MASK},
-	{"H2C_MM_ERR_CODE_ENABLE_RD_HRD_POISON_ERR",
-		H2C_MM_ERR_CODE_ENABLE_RD_HRD_POISON_ERR_MASK},
-	{"H2C_MM_ERR_CODE_ENABLE_RESERVED0",
-		H2C_MM_ERR_CODE_ENABLE_RESERVED0_MASK},
+	c2h_first_err_qid_field_info[] = {
+	{"C2H_FIRST_ERR_QID_RSVD_1",
+		C2H_FIRST_ERR_QID_RSVD_1_MASK},
+	{"C2H_FIRST_ERR_QID_ERR_TYPE",
+		C2H_FIRST_ERR_QID_ERR_TYPE_MASK},
+	{"C2H_FIRST_ERR_QID_RSVD",
+		C2H_FIRST_ERR_QID_RSVD_MASK},
+	{"C2H_FIRST_ERR_QID_QID",
+		C2H_FIRST_ERR_QID_QID_MASK},
 };
 
 
 static struct regfield_info
-	h2c_mm_err_code_field_info[] = {
-	{"H2C_MM_ERR_CODE_RSVD_1",
-		H2C_MM_ERR_CODE_RSVD_1_MASK},
-	{"H2C_MM_ERR_CODE_CIDX",
-		H2C_MM_ERR_CODE_CIDX_MASK},
-	{"H2C_MM_ERR_CODE_RESERVED0",
-		H2C_MM_ERR_CODE_RESERVED0_MASK},
-	{"H2C_MM_ERR_CODE_SUB_TYPE",
-		H2C_MM_ERR_CODE_SUB_TYPE_MASK},
-	{"H2C_MM_ERR_CODE",
-		H2C_MM_ERR_CODE_MASK},
+	stat_num_wrb_in_field_info[] = {
+	{"STAT_NUM_WRB_IN_RSVD_1",
+		STAT_NUM_WRB_IN_RSVD_1_MASK},
+	{"STAT_NUM_WRB_IN_WRB_CNT",
+		STAT_NUM_WRB_IN_WRB_CNT_MASK},
 };
 
 
 static struct regfield_info
-	h2c_mm_err_info_field_info[] = {
-	{"H2C_MM_ERR_INFO_VALID",
-		H2C_MM_ERR_INFO_VALID_MASK},
-	{"H2C_MM_ERR_INFO_SEL",
-		H2C_MM_ERR_INFO_SEL_MASK},
-	{"H2C_MM_ERR_INFO_RSVD_1",
-		H2C_MM_ERR_INFO_RSVD_1_MASK},
-	{"H2C_MM_ERR_INFO_QID",
-		H2C_MM_ERR_INFO_QID_MASK},
+	stat_num_wrb_out_field_info[] = {
+	{"STAT_NUM_WRB_OUT_RSVD_1",
+		STAT_NUM_WRB_OUT_RSVD_1_MASK},
+	{"STAT_NUM_WRB_OUT_WRB_CNT",
+		STAT_NUM_WRB_OUT_WRB_CNT_MASK},
 };
 
 
 static struct regfield_info
-	h2c_mm_perf_mon_ctl_field_info[] = {
-	{"H2C_MM_PERF_MON_CTL_RSVD_1",
-		H2C_MM_PERF_MON_CTL_RSVD_1_MASK},
-	{"H2C_MM_PERF_MON_CTL_IMM_START",
-		H2C_MM_PERF_MON_CTL_IMM_START_MASK},
-	{"H2C_MM_PERF_MON_CTL_RUN_START",
-		H2C_MM_PERF_MON_CTL_RUN_START_MASK},
-	{"H2C_MM_PERF_MON_CTL_IMM_CLEAR",
-		H2C_MM_PERF_MON_CTL_IMM_CLEAR_MASK},
-	{"H2C_MM_PERF_MON_CTL_RUN_CLEAR",
-		H2C_MM_PERF_MON_CTL_RUN_CLEAR_MASK},
+	stat_num_wrb_drp_field_info[] = {
+	{"STAT_NUM_WRB_DRP_RSVD_1",
+		STAT_NUM_WRB_DRP_RSVD_1_MASK},
+	{"STAT_NUM_WRB_DRP_WRB_CNT",
+		STAT_NUM_WRB_DRP_WRB_CNT_MASK},
 };
 
 
 static struct regfield_info
-	h2c_mm_perf_mon_cycle_cnt0_field_info[] = {
-	{"H2C_MM_PERF_MON_CYCLE_CNT0_CYC_CNT",
-		H2C_MM_PERF_MON_CYCLE_CNT0_CYC_CNT_MASK},
+	stat_num_stat_desc_out_field_info[] = {
+	{"STAT_NUM_STAT_DESC_OUT_RSVD_1",
+		STAT_NUM_STAT_DESC_OUT_RSVD_1_MASK},
+	{"STAT_NUM_STAT_DESC_OUT_CNT",
+		STAT_NUM_STAT_DESC_OUT_CNT_MASK},
 };
 
 
 static struct regfield_info
-	h2c_mm_perf_mon_cycle_cnt1_field_info[] = {
-	{"H2C_MM_PERF_MON_CYCLE_CNT1_RSVD_1",
-		H2C_MM_PERF_MON_CYCLE_CNT1_RSVD_1_MASK},
-	{"H2C_MM_PERF_MON_CYCLE_CNT1_CYC_CNT",
-		H2C_MM_PERF_MON_CYCLE_CNT1_CYC_CNT_MASK},
+	stat_num_dsc_crdt_sent_field_info[] = {
+	{"STAT_NUM_DSC_CRDT_SENT_RSVD_1",
+		STAT_NUM_DSC_CRDT_SENT_RSVD_1_MASK},
+	{"STAT_NUM_DSC_CRDT_SENT_CNT",
+		STAT_NUM_DSC_CRDT_SENT_CNT_MASK},
 };
 
 
 static struct regfield_info
-	h2c_mm_perf_mon_data_cnt0_field_info[] = {
-	{"H2C_MM_PERF_MON_DATA_CNT0_DCNT",
-		H2C_MM_PERF_MON_DATA_CNT0_DCNT_MASK},
+	stat_num_fch_dsc_rcvd_field_info[] = {
+	{"STAT_NUM_FCH_DSC_RCVD_RSVD_1",
+		STAT_NUM_FCH_DSC_RCVD_RSVD_1_MASK},
+	{"STAT_NUM_FCH_DSC_RCVD_DSC_CNT",
+		STAT_NUM_FCH_DSC_RCVD_DSC_CNT_MASK},
 };
 
 
 static struct regfield_info
-	h2c_mm_perf_mon_data_cnt1_field_info[] = {
-	{"H2C_MM_PERF_MON_DATA_CNT1_RSVD_1",
-		H2C_MM_PERF_MON_DATA_CNT1_RSVD_1_MASK},
-	{"H2C_MM_PERF_MON_DATA_CNT1_DCNT",
-		H2C_MM_PERF_MON_DATA_CNT1_DCNT_MASK},
+	stat_num_byp_dsc_rcvd_field_info[] = {
+	{"STAT_NUM_BYP_DSC_RCVD_RSVD_1",
+		STAT_NUM_BYP_DSC_RCVD_RSVD_1_MASK},
+	{"STAT_NUM_BYP_DSC_RCVD_DSC_CNT",
+		STAT_NUM_BYP_DSC_RCVD_DSC_CNT_MASK},
 };
 
 
 static struct regfield_info
-	h2c_mm_dbg_field_info[] = {
-	{"H2C_MM_RSVD_1",
-		H2C_MM_RSVD_1_MASK},
-	{"H2C_MM_RRQ_ENTRIES",
-		H2C_MM_RRQ_ENTRIES_MASK},
-	{"H2C_MM_DAT_FIFO_SPC",
-		H2C_MM_DAT_FIFO_SPC_MASK},
-	{"H2C_MM_RD_STALL",
-		H2C_MM_RD_STALL_MASK},
-	{"H2C_MM_RRQ_FIFO_FI",
-		H2C_MM_RRQ_FIFO_FI_MASK},
-	{"H2C_MM_WR_STALL",
-		H2C_MM_WR_STALL_MASK},
-	{"H2C_MM_WRQ_FIFO_FI",
-		H2C_MM_WRQ_FIFO_FI_MASK},
-	{"H2C_MM_WBK_STALL",
-		H2C_MM_WBK_STALL_MASK},
-	{"H2C_MM_DSC_FIFO_EP",
-		H2C_MM_DSC_FIFO_EP_MASK},
-	{"H2C_MM_DSC_FIFO_FL",
-		H2C_MM_DSC_FIFO_FL_MASK},
+	c2h_wrb_coal_cfg_field_info[] = {
+	{"C2H_WRB_COAL_CFG_MAX_BUF_SZ",
+		C2H_WRB_COAL_CFG_MAX_BUF_SZ_MASK},
+	{"C2H_WRB_COAL_CFG_TICK_VAL",
+		C2H_WRB_COAL_CFG_TICK_VAL_MASK},
+	{"C2H_WRB_COAL_CFG_TICK_CNT",
+		C2H_WRB_COAL_CFG_TICK_CNT_MASK},
+	{"C2H_WRB_COAL_CFG_SET_GLB_FLUSH",
+		C2H_WRB_COAL_CFG_SET_GLB_FLUSH_MASK},
+	{"C2H_WRB_COAL_CFG_DONE_GLB_FLUSH",
+		C2H_WRB_COAL_CFG_DONE_GLB_FLUSH_MASK},
 };
 
 
 static struct regfield_info
-	c2h_crdt_coal_cfg_1_field_info[] = {
-	{"C2H_CRDT_COAL_CFG_1_RSVD_1",
-		C2H_CRDT_COAL_CFG_1_RSVD_1_MASK},
-	{"C2H_CRDT_COAL_CFG_1_PLD_FIFO_TH",
-		C2H_CRDT_COAL_CFG_1_PLD_FIFO_TH_MASK},
-	{"C2H_CRDT_COAL_CFG_1_TIMER_TH",
-		C2H_CRDT_COAL_CFG_1_TIMER_TH_MASK},
+	c2h_intr_h2c_req_field_info[] = {
+	{"C2H_INTR_H2C_REQ_RSVD_1",
+		C2H_INTR_H2C_REQ_RSVD_1_MASK},
+	{"C2H_INTR_H2C_REQ_CNT",
+		C2H_INTR_H2C_REQ_CNT_MASK},
 };
 
 
 static struct regfield_info
-	c2h_crdt_coal_cfg_2_field_info[] = {
-	{"C2H_CRDT_COAL_CFG_2_RSVD_1",
-		C2H_CRDT_COAL_CFG_2_RSVD_1_MASK},
-	{"C2H_CRDT_COAL_CFG_2_FIFO_TH",
-		C2H_CRDT_COAL_CFG_2_FIFO_TH_MASK},
-	{"C2H_CRDT_COAL_CFG_2_RESERVED1",
-		C2H_CRDT_COAL_CFG_2_RESERVED1_MASK},
-	{"C2H_CRDT_COAL_CFG_2_NT_TH",
-		C2H_CRDT_COAL_CFG_2_NT_TH_MASK},
+	c2h_intr_c2h_mm_req_field_info[] = {
+	{"C2H_INTR_C2H_MM_REQ_RSVD_1",
+		C2H_INTR_C2H_MM_REQ_RSVD_1_MASK},
+	{"C2H_INTR_C2H_MM_REQ_CNT",
+		C2H_INTR_C2H_MM_REQ_CNT_MASK},
 };
 
 
 static struct regfield_info
-	c2h_pfch_byp_qid_field_info[] = {
-	{"C2H_PFCH_BYP_QID_RSVD_1",
-		C2H_PFCH_BYP_QID_RSVD_1_MASK},
-	{"C2H_PFCH_BYP_QID",
-		C2H_PFCH_BYP_QID_MASK},
+	c2h_intr_err_int_req_field_info[] = {
+	{"C2H_INTR_ERR_INT_REQ_RSVD_1",
+		C2H_INTR_ERR_INT_REQ_RSVD_1_MASK},
+	{"C2H_INTR_ERR_INT_REQ_CNT",
+		C2H_INTR_ERR_INT_REQ_CNT_MASK},
 };
 
 
 static struct regfield_info
-	c2h_pfch_byp_tag_field_info[] = {
-	{"C2H_PFCH_BYP_TAG_RSVD_1",
-		C2H_PFCH_BYP_TAG_RSVD_1_MASK},
-	{"C2H_PFCH_BYP_TAG_BYP_QID",
-		C2H_PFCH_BYP_TAG_BYP_QID_MASK},
-	{"C2H_PFCH_BYP_TAG_RSVD_2",
-		C2H_PFCH_BYP_TAG_RSVD_2_MASK},
-	{"C2H_PFCH_BYP_TAG",
-		C2H_PFCH_BYP_TAG_MASK},
+	c2h_intr_c2h_st_req_field_info[] = {
+	{"C2H_INTR_C2H_ST_REQ_RSVD_1",
+		C2H_INTR_C2H_ST_REQ_RSVD_1_MASK},
+	{"C2H_INTR_C2H_ST_REQ_CNT",
+		C2H_INTR_C2H_ST_REQ_CNT_MASK},
 };
 
 
 static struct regfield_info
-	c2h_water_mark_field_info[] = {
-	{"C2H_WATER_MARK_HIGH_WM",
-		C2H_WATER_MARK_HIGH_WM_MASK},
-	{"C2H_WATER_MARK_LOW_WM",
-		C2H_WATER_MARK_LOW_WM_MASK},
+	c2h_intr_h2c_err_c2h_mm_msix_ack_field_info[] = {
+	{"C2H_INTR_H2C_ERR_C2H_MM_MSIX_ACK_RSVD_1",
+		C2H_INTR_H2C_ERR_C2H_MM_MSIX_ACK_RSVD_1_MASK},
+	{"C2H_INTR_H2C_ERR_C2H_MM_MSIX_ACK_CNT",
+		C2H_INTR_H2C_ERR_C2H_MM_MSIX_ACK_CNT_MASK},
 };
 
-static struct xreg_info eqdma_config_regs[] = {
-{"CFG_BLK_IDENTIFIER", 0x00,
+
+static struct regfield_info
+	c2h_intr_h2c_err_c2h_mm_msix_fail_field_info[] = {
+	{"C2H_INTR_H2C_ERR_C2H_MM_MSIX_FAIL_RSVD_1",
+		C2H_INTR_H2C_ERR_C2H_MM_MSIX_FAIL_RSVD_1_MASK},
+	{"C2H_INTR_H2C_ERR_C2H_MM_MSIX_FAIL_CNT",
+		C2H_INTR_H2C_ERR_C2H_MM_MSIX_FAIL_CNT_MASK},
+};
+
+
+static struct regfield_info
+	c2h_intr_h2c_err_c2h_mm_msix_no_msix_field_info[] = {
+	{"C2H_INTR_H2C_ERR_C2H_MM_MSIX_NO_MSIX_RSVD_1",
+		C2H_INTR_H2C_ERR_C2H_MM_MSIX_NO_MSIX_RSVD_1_MASK},
+	{"C2H_INTR_H2C_ERR_C2H_MM_MSIX_NO_MSIX_CNT",
+		C2H_INTR_H2C_ERR_C2H_MM_MSIX_NO_MSIX_CNT_MASK},
+};
+
+
+static struct regfield_info
+	c2h_intr_h2c_err_c2h_mm_ctxt_inval_field_info[] = {
+	{"C2H_INTR_H2C_ERR_C2H_MM_CTXT_INVAL_RSVD_1",
+		C2H_INTR_H2C_ERR_C2H_MM_CTXT_INVAL_RSVD_1_MASK},
+	{"C2H_INTR_H2C_ERR_C2H_MM_CTXT_INVAL_CNT",
+		C2H_INTR_H2C_ERR_C2H_MM_CTXT_INVAL_CNT_MASK},
+};
+
+
+static struct regfield_info
+	c2h_intr_c2h_st_msix_ack_field_info[] = {
+	{"C2H_INTR_C2H_ST_MSIX_ACK_RSVD_1",
+		C2H_INTR_C2H_ST_MSIX_ACK_RSVD_1_MASK},
+	{"C2H_INTR_C2H_ST_MSIX_ACK_CNT",
+		C2H_INTR_C2H_ST_MSIX_ACK_CNT_MASK},
+};
+
+
+static struct regfield_info
+	c2h_intr_c2h_st_msix_fail_field_info[] = {
+	{"C2H_INTR_C2H_ST_MSIX_FAIL_RSVD_1",
+		C2H_INTR_C2H_ST_MSIX_FAIL_RSVD_1_MASK},
+	{"C2H_INTR_C2H_ST_MSIX_FAIL_CNT",
+		C2H_INTR_C2H_ST_MSIX_FAIL_CNT_MASK},
+};
+
+
+static struct regfield_info
+	c2h_intr_c2h_st_no_msix_field_info[] = {
+	{"C2H_INTR_C2H_ST_NO_MSIX_RSVD_1",
+		C2H_INTR_C2H_ST_NO_MSIX_RSVD_1_MASK},
+	{"C2H_INTR_C2H_ST_NO_MSIX_CNT",
+		C2H_INTR_C2H_ST_NO_MSIX_CNT_MASK},
+};
+
+
+static struct regfield_info
+	c2h_intr_c2h_st_ctxt_inval_field_info[] = {
+	{"C2H_INTR_C2H_ST_CTXT_INVAL_RSVD_1",
+		C2H_INTR_C2H_ST_CTXT_INVAL_RSVD_1_MASK},
+	{"C2H_INTR_C2H_ST_CTXT_INVAL_CNT",
+		C2H_INTR_C2H_ST_CTXT_INVAL_CNT_MASK},
+};
+
+
+static struct regfield_info
+	c2h_stat_wr_cmp_field_info[] = {
+	{"C2H_STAT_WR_CMP_RSVD_1",
+		C2H_STAT_WR_CMP_RSVD_1_MASK},
+	{"C2H_STAT_WR_CMP_CNT",
+		C2H_STAT_WR_CMP_CNT_MASK},
+};
+
+
+static struct regfield_info
+	c2h_stat_dbg_dma_eng_4_field_info[] = {
+	{"C2H_STAT_DMA_ENG_4_QID_FIFO_OUT_DAT_HAS_CMPT_1",
+		C2H_STAT_DMA_ENG_4_QID_FIFO_OUT_DAT_HAS_CMPT_1_MASK},
+	{"C2H_STAT_DMA_ENG_4_QID_FIFO_OUT_DAT_MARKER_1",
+		C2H_STAT_DMA_ENG_4_QID_FIFO_OUT_DAT_MARKER_1_MASK},
+	{"C2H_STAT_DMA_ENG_4_QID_FIFO_OUT_DAT_DROP_REQ_1",
+		C2H_STAT_DMA_ENG_4_QID_FIFO_OUT_DAT_DROP_REQ_1_MASK},
+	{"C2H_STAT_DMA_ENG_4_QID_FIFO_OUT_DAT_QID_1",
+		C2H_STAT_DMA_ENG_4_QID_FIFO_OUT_DAT_QID_1_MASK},
+	{"C2H_STAT_DMA_ENG_4_WR_HDR_FIFO_OUT_CNT_1",
+		C2H_STAT_DMA_ENG_4_WR_HDR_FIFO_OUT_CNT_1_MASK},
+	{"C2H_STAT_DMA_ENG_4_QID_FIFO_OUT_VLD_1",
+		C2H_STAT_DMA_ENG_4_QID_FIFO_OUT_VLD_1_MASK},
+	{"C2H_STAT_DMA_ENG_4_PLD_FIFO_OUT_VLD_1",
+		C2H_STAT_DMA_ENG_4_PLD_FIFO_OUT_VLD_1_MASK},
+	{"C2H_STAT_DMA_ENG_4_PLD_ST_FIFO_OUT_VLD_1",
+		C2H_STAT_DMA_ENG_4_PLD_ST_FIFO_OUT_VLD_1_MASK},
+	{"C2H_STAT_DMA_ENG_4_PLD_ST_FIFO_OUT_DATA_EOP_1",
+		C2H_STAT_DMA_ENG_4_PLD_ST_FIFO_OUT_DATA_EOP_1_MASK},
+	{"C2H_STAT_DMA_ENG_4_PLD_ST_FIFO_OUT_DATA_AVL_IDX_ENABLE_1",
+		C2H_STAT_DMA_ENG_4_PLD_ST_FIFO_OUT_DATA_AVL_IDX_ENABLE_1_MASK},
+	{"C2H_STAT_DMA_ENG_4_PLD_ST_FIFO_OUT_DATA_DROP_1",
+		C2H_STAT_DMA_ENG_4_PLD_ST_FIFO_OUT_DATA_DROP_1_MASK},
+	{"C2H_STAT_DMA_ENG_4_PLD_ST_FIFO_OUT_DATA_ERR_1",
+		C2H_STAT_DMA_ENG_4_PLD_ST_FIFO_OUT_DATA_ERR_1_MASK},
+	{"C2H_STAT_DMA_ENG_4_DESC_CNT_FIFO_IN_RDY_1",
+		C2H_STAT_DMA_ENG_4_DESC_CNT_FIFO_IN_RDY_1_MASK},
+	{"C2H_STAT_DMA_ENG_4_DESC_RSP_FIFO_IN_RDY_1",
+		C2H_STAT_DMA_ENG_4_DESC_RSP_FIFO_IN_RDY_1_MASK},
+	{"C2H_STAT_DMA_ENG_4_PLD_PKT_ID_LARGER_1",
+		C2H_STAT_DMA_ENG_4_PLD_PKT_ID_LARGER_1_MASK},
+	{"C2H_STAT_DMA_ENG_4_WCP_FIFO_IN_RDY_1",
+		C2H_STAT_DMA_ENG_4_WCP_FIFO_IN_RDY_1_MASK},
+	{"C2H_STAT_DMA_ENG_4_PLD_ST_FIFO_IN_RDY_1",
+		C2H_STAT_DMA_ENG_4_PLD_ST_FIFO_IN_RDY_1_MASK},
+};
+
+
+static struct regfield_info
+	c2h_stat_dbg_dma_eng_5_field_info[] = {
+	{"C2H_STAT_DMA_ENG_5_ARB_FIFO_IN_RDY",
+		C2H_STAT_DMA_ENG_5_ARB_FIFO_IN_RDY_MASK},
+	{"C2H_STAT_DMA_ENG_5_WRB_SM_VIRT_CH",
+		C2H_STAT_DMA_ENG_5_WRB_SM_VIRT_CH_MASK},
+	{"C2H_STAT_DMA_ENG_5_WRB_FIFO_IN_REQ",
+		C2H_STAT_DMA_ENG_5_WRB_FIFO_IN_REQ_MASK},
+	{"C2H_STAT_DMA_ENG_5_ARB_FIFO_OUT_CNT",
+		C2H_STAT_DMA_ENG_5_ARB_FIFO_OUT_CNT_MASK},
+	{"C2H_STAT_DMA_ENG_5_ARB_FIFO_OUT_DATA_LEN",
+		C2H_STAT_DMA_ENG_5_ARB_FIFO_OUT_DATA_LEN_MASK},
+	{"C2H_STAT_DMA_ENG_5_ARB_FIFO_OUT_DATA_VIRT_CH",
+		C2H_STAT_DMA_ENG_5_ARB_FIFO_OUT_DATA_VIRT_CH_MASK},
+	{"C2H_STAT_DMA_ENG_5_ARB_FIFO_OUT_DATA_VAR_DESC",
+		C2H_STAT_DMA_ENG_5_ARB_FIFO_OUT_DATA_VAR_DESC_MASK},
+	{"C2H_STAT_DMA_ENG_5_ARB_FIFO_OUT_DATA_DROP_REQ",
+		C2H_STAT_DMA_ENG_5_ARB_FIFO_OUT_DATA_DROP_REQ_MASK},
+	{"C2H_STAT_DMA_ENG_5_ARB_FIFO_OUT_DATA_NUM_BUF_OV",
+		C2H_STAT_DMA_ENG_5_ARB_FIFO_OUT_DATA_NUM_BUF_OV_MASK},
+	{"C2H_STAT_DMA_ENG_5_ARB_FIFO_OUT_DATA_MARKER",
+		C2H_STAT_DMA_ENG_5_ARB_FIFO_OUT_DATA_MARKER_MASK},
+	{"C2H_STAT_DMA_ENG_5_ARB_FIFO_OUT_DATA_HAS_CMPT",
+		C2H_STAT_DMA_ENG_5_ARB_FIFO_OUT_DATA_HAS_CMPT_MASK},
+};
+
+
+static struct regfield_info
+	c2h_dbg_pfch_qid_field_info[] = {
+	{"C2H_PFCH_QID_RSVD_1",
+		C2H_PFCH_QID_RSVD_1_MASK},
+	{"C2H_PFCH_QID_ERR_CTXT",
+		C2H_PFCH_QID_ERR_CTXT_MASK},
+	{"C2H_PFCH_QID_TARGET",
+		C2H_PFCH_QID_TARGET_MASK},
+	{"C2H_PFCH_QID_QID_OR_TAG",
+		C2H_PFCH_QID_QID_OR_TAG_MASK},
+};
+
+
+static struct regfield_info
+	c2h_dbg_pfch_field_info[] = {
+	{"C2H_PFCH_DATA",
+		C2H_PFCH_DATA_MASK},
+};
+
+
+static struct regfield_info
+	c2h_int_dbg_field_info[] = {
+	{"C2H_INT_RSVD_1",
+		C2H_INT_RSVD_1_MASK},
+	{"C2H_INT_INT_COAL_SM",
+		C2H_INT_INT_COAL_SM_MASK},
+	{"C2H_INT_INT_SM",
+		C2H_INT_INT_SM_MASK},
+};
+
+
+static struct regfield_info
+	c2h_stat_imm_accepted_field_info[] = {
+	{"C2H_STAT_IMM_ACCEPTED_RSVD_1",
+		C2H_STAT_IMM_ACCEPTED_RSVD_1_MASK},
+	{"C2H_STAT_IMM_ACCEPTED_CNT",
+		C2H_STAT_IMM_ACCEPTED_CNT_MASK},
+};
+
+
+static struct regfield_info
+	c2h_stat_marker_accepted_field_info[] = {
+	{"C2H_STAT_MARKER_ACCEPTED_RSVD_1",
+		C2H_STAT_MARKER_ACCEPTED_RSVD_1_MASK},
+	{"C2H_STAT_MARKER_ACCEPTED_CNT",
+		C2H_STAT_MARKER_ACCEPTED_CNT_MASK},
+};
+
+
+static struct regfield_info
+	c2h_stat_disable_cmp_accepted_field_info[] = {
+	{"C2H_STAT_DISABLE_CMP_ACCEPTED_RSVD_1",
+		C2H_STAT_DISABLE_CMP_ACCEPTED_RSVD_1_MASK},
+	{"C2H_STAT_DISABLE_CMP_ACCEPTED_CNT",
+		C2H_STAT_DISABLE_CMP_ACCEPTED_CNT_MASK},
+};
+
+
+static struct regfield_info
+	c2h_pld_fifo_crdt_cnt_field_info[] = {
+	{"C2H_PLD_FIFO_CRDT_CNT_RSVD_1",
+		C2H_PLD_FIFO_CRDT_CNT_RSVD_1_MASK},
+	{"C2H_PLD_FIFO_CRDT_CNT_CNT",
+		C2H_PLD_FIFO_CRDT_CNT_CNT_MASK},
+};
+
+
+static struct regfield_info
+	c2h_intr_dyn_req_field_info[] = {
+	{"C2H_INTR_DYN_REQ_RSVD_1",
+		C2H_INTR_DYN_REQ_RSVD_1_MASK},
+	{"C2H_INTR_DYN_REQ_CNT",
+		C2H_INTR_DYN_REQ_CNT_MASK},
+};
+
+
+static struct regfield_info
+	c2h_intr_dyn_misc_field_info[] = {
+	{"C2H_INTR_DYN_MISC_RSVD_1",
+		C2H_INTR_DYN_MISC_RSVD_1_MASK},
+	{"C2H_INTR_DYN_MISC_CNT",
+		C2H_INTR_DYN_MISC_CNT_MASK},
+};
+
+
+static struct regfield_info
+	c2h_drop_len_mismatch_field_info[] = {
+	{"C2H_DROP_LEN_MISMATCH_RSVD_1",
+		C2H_DROP_LEN_MISMATCH_RSVD_1_MASK},
+	{"C2H_DROP_LEN_MISMATCH_CNT",
+		C2H_DROP_LEN_MISMATCH_CNT_MASK},
+};
+
+
+static struct regfield_info
+	c2h_drop_desc_rsp_len_field_info[] = {
+	{"C2H_DROP_DESC_RSP_LEN_RSVD_1",
+		C2H_DROP_DESC_RSP_LEN_RSVD_1_MASK},
+	{"C2H_DROP_DESC_RSP_LEN_CNT",
+		C2H_DROP_DESC_RSP_LEN_CNT_MASK},
+};
+
+
+static struct regfield_info
+	c2h_drop_qid_fifo_len_field_info[] = {
+	{"C2H_DROP_QID_FIFO_LEN_RSVD_1",
+		C2H_DROP_QID_FIFO_LEN_RSVD_1_MASK},
+	{"C2H_DROP_QID_FIFO_LEN_CNT",
+		C2H_DROP_QID_FIFO_LEN_CNT_MASK},
+};
+
+
+static struct regfield_info
+	c2h_drop_pld_cnt_field_info[] = {
+	{"C2H_DROP_PLD_CNT_RSVD_1",
+		C2H_DROP_PLD_CNT_RSVD_1_MASK},
+	{"C2H_DROP_PLD_CNT_CNT",
+		C2H_DROP_PLD_CNT_CNT_MASK},
+};
+
+
+static struct regfield_info
+	c2h_cmpt_format_0_field_info[] = {
+	{"C2H_CMPT_FORMAT_0_DESC_ERR_LOC",
+		C2H_CMPT_FORMAT_0_DESC_ERR_LOC_MASK},
+	{"C2H_CMPT_FORMAT_0_COLOR_LOC",
+		C2H_CMPT_FORMAT_0_COLOR_LOC_MASK},
+};
+
+
+static struct regfield_info
+	c2h_cmpt_format_1_field_info[] = {
+	{"C2H_CMPT_FORMAT_1_DESC_ERR_LOC",
+		C2H_CMPT_FORMAT_1_DESC_ERR_LOC_MASK},
+	{"C2H_CMPT_FORMAT_1_COLOR_LOC",
+		C2H_CMPT_FORMAT_1_COLOR_LOC_MASK},
+};
+
+
+static struct regfield_info
+	c2h_cmpt_format_2_field_info[] = {
+	{"C2H_CMPT_FORMAT_2_DESC_ERR_LOC",
+		C2H_CMPT_FORMAT_2_DESC_ERR_LOC_MASK},
+	{"C2H_CMPT_FORMAT_2_COLOR_LOC",
+		C2H_CMPT_FORMAT_2_COLOR_LOC_MASK},
+};
+
+
+static struct regfield_info
+	c2h_cmpt_format_3_field_info[] = {
+	{"C2H_CMPT_FORMAT_3_DESC_ERR_LOC",
+		C2H_CMPT_FORMAT_3_DESC_ERR_LOC_MASK},
+	{"C2H_CMPT_FORMAT_3_COLOR_LOC",
+		C2H_CMPT_FORMAT_3_COLOR_LOC_MASK},
+};
+
+
+static struct regfield_info
+	c2h_cmpt_format_4_field_info[] = {
+	{"C2H_CMPT_FORMAT_4_DESC_ERR_LOC",
+		C2H_CMPT_FORMAT_4_DESC_ERR_LOC_MASK},
+	{"C2H_CMPT_FORMAT_4_COLOR_LOC",
+		C2H_CMPT_FORMAT_4_COLOR_LOC_MASK},
+};
+
+
+static struct regfield_info
+	c2h_cmpt_format_5_field_info[] = {
+	{"C2H_CMPT_FORMAT_5_DESC_ERR_LOC",
+		C2H_CMPT_FORMAT_5_DESC_ERR_LOC_MASK},
+	{"C2H_CMPT_FORMAT_5_COLOR_LOC",
+		C2H_CMPT_FORMAT_5_COLOR_LOC_MASK},
+};
+
+
+static struct regfield_info
+	c2h_cmpt_format_6_field_info[] = {
+	{"C2H_CMPT_FORMAT_6_DESC_ERR_LOC",
+		C2H_CMPT_FORMAT_6_DESC_ERR_LOC_MASK},
+	{"C2H_CMPT_FORMAT_6_COLOR_LOC",
+		C2H_CMPT_FORMAT_6_COLOR_LOC_MASK},
+};
+
+
+static struct regfield_info
+	c2h_pfch_cache_depth_field_info[] = {
+	{"C2H_PFCH_CACHE_DEPTH_MAX_STBUF",
+		C2H_PFCH_CACHE_DEPTH_MAX_STBUF_MASK},
+	{"C2H_PFCH_CACHE_DEPTH",
+		C2H_PFCH_CACHE_DEPTH_MASK},
+};
+
+
+static struct regfield_info
+	c2h_wrb_coal_buf_depth_field_info[] = {
+	{"C2H_WRB_COAL_BUF_DEPTH_RSVD_1",
+		C2H_WRB_COAL_BUF_DEPTH_RSVD_1_MASK},
+	{"C2H_WRB_COAL_BUF_DEPTH_BUFFER",
+		C2H_WRB_COAL_BUF_DEPTH_BUFFER_MASK},
+};
+
+
+static struct regfield_info
+	c2h_pfch_crdt_field_info[] = {
+	{"C2H_PFCH_CRDT_RSVD_1",
+		C2H_PFCH_CRDT_RSVD_1_MASK},
+	{"C2H_PFCH_CRDT_RSVD_2",
+		C2H_PFCH_CRDT_RSVD_2_MASK},
+};
+
+
+static struct regfield_info
+	c2h_stat_has_cmpt_accepted_field_info[] = {
+	{"C2H_STAT_HAS_CMPT_ACCEPTED_RSVD_1",
+		C2H_STAT_HAS_CMPT_ACCEPTED_RSVD_1_MASK},
+	{"C2H_STAT_HAS_CMPT_ACCEPTED_CNT",
+		C2H_STAT_HAS_CMPT_ACCEPTED_CNT_MASK},
+};
+
+
+static struct regfield_info
+	c2h_stat_has_pld_accepted_field_info[] = {
+	{"C2H_STAT_HAS_PLD_ACCEPTED_RSVD_1",
+		C2H_STAT_HAS_PLD_ACCEPTED_RSVD_1_MASK},
+	{"C2H_STAT_HAS_PLD_ACCEPTED_CNT",
+		C2H_STAT_HAS_PLD_ACCEPTED_CNT_MASK},
+};
+
+
+static struct regfield_info
+	c2h_pld_pkt_id_field_info[] = {
+	{"C2H_PLD_PKT_ID_CMPT_WAIT",
+		C2H_PLD_PKT_ID_CMPT_WAIT_MASK},
+	{"C2H_PLD_PKT_ID_DATA",
+		C2H_PLD_PKT_ID_DATA_MASK},
+};
+
+
+static struct regfield_info
+	c2h_pld_pkt_id_1_field_info[] = {
+	{"C2H_PLD_PKT_ID_1_CMPT_WAIT",
+		C2H_PLD_PKT_ID_1_CMPT_WAIT_MASK},
+	{"C2H_PLD_PKT_ID_1_DATA",
+		C2H_PLD_PKT_ID_1_DATA_MASK},
+};
+
+
+static struct regfield_info
+	c2h_drop_pld_cnt_1_field_info[] = {
+	{"C2H_DROP_PLD_CNT_1_RSVD_1",
+		C2H_DROP_PLD_CNT_1_RSVD_1_MASK},
+	{"C2H_DROP_PLD_CNT_1_CNT",
+		C2H_DROP_PLD_CNT_1_CNT_MASK},
+};
+
+
+static struct regfield_info
+	h2c_err_stat_field_info[] = {
+	{"H2C_ERR_STAT_RSVD_1",
+		H2C_ERR_STAT_RSVD_1_MASK},
+	{"H2C_ERR_STAT_PAR_ERR",
+		H2C_ERR_STAT_PAR_ERR_MASK},
+	{"H2C_ERR_STAT_SBE",
+		H2C_ERR_STAT_SBE_MASK},
+	{"H2C_ERR_STAT_DBE",
+		H2C_ERR_STAT_DBE_MASK},
+	{"H2C_ERR_STAT_NO_DMA_DS",
+		H2C_ERR_STAT_NO_DMA_DS_MASK},
+	{"H2C_ERR_STAT_SDI_MRKR_REQ_MOP_ERR",
+		H2C_ERR_STAT_SDI_MRKR_REQ_MOP_ERR_MASK},
+	{"H2C_ERR_STAT_ZERO_LEN_DS",
+		H2C_ERR_STAT_ZERO_LEN_DS_MASK},
+};
+
+
+static struct regfield_info
+	h2c_err_mask_field_info[] = {
+	{"H2C_ERR_EN",
+		H2C_ERR_EN_MASK},
+};
+
+
+static struct regfield_info
+	h2c_first_err_qid_field_info[] = {
+	{"H2C_FIRST_ERR_QID_RSVD_1",
+		H2C_FIRST_ERR_QID_RSVD_1_MASK},
+	{"H2C_FIRST_ERR_QID_ERR_TYPE",
+		H2C_FIRST_ERR_QID_ERR_TYPE_MASK},
+	{"H2C_FIRST_ERR_QID_RSVD_2",
+		H2C_FIRST_ERR_QID_RSVD_2_MASK},
+	{"H2C_FIRST_ERR_QID_QID",
+		H2C_FIRST_ERR_QID_QID_MASK},
+};
+
+
+static struct regfield_info
+	h2c_dbg_reg0_field_info[] = {
+	{"H2C_REG0_NUM_DSC_RCVD",
+		H2C_REG0_NUM_DSC_RCVD_MASK},
+	{"H2C_REG0_NUM_WRB_SENT",
+		H2C_REG0_NUM_WRB_SENT_MASK},
+};
+
+
+static struct regfield_info
+	h2c_dbg_reg1_field_info[] = {
+	{"H2C_REG1_NUM_REQ_SENT",
+		H2C_REG1_NUM_REQ_SENT_MASK},
+	{"H2C_REG1_NUM_CMP_SENT",
+		H2C_REG1_NUM_CMP_SENT_MASK},
+};
+
+
+static struct regfield_info
+	h2c_dbg_reg2_field_info[] = {
+	{"H2C_REG2_RSVD_1",
+		H2C_REG2_RSVD_1_MASK},
+	{"H2C_REG2_NUM_ERR_DSC_RCVD",
+		H2C_REG2_NUM_ERR_DSC_RCVD_MASK},
+};
+
+
+static struct regfield_info
+	h2c_dbg_reg3_field_info[] = {
+	{"H2C_REG3_RSVD_1",
+		H2C_REG3_RSVD_1_MASK},
+	{"H2C_REG3_DSCO_FIFO_EMPTY",
+		H2C_REG3_DSCO_FIFO_EMPTY_MASK},
+	{"H2C_REG3_DSCO_FIFO_FULL",
+		H2C_REG3_DSCO_FIFO_FULL_MASK},
+	{"H2C_REG3_CUR_RC_STATE",
+		H2C_REG3_CUR_RC_STATE_MASK},
+	{"H2C_REG3_RDREQ_LINES",
+		H2C_REG3_RDREQ_LINES_MASK},
+	{"H2C_REG3_RDATA_LINES_AVAIL",
+		H2C_REG3_RDATA_LINES_AVAIL_MASK},
+	{"H2C_REG3_PEND_FIFO_EMPTY",
+		H2C_REG3_PEND_FIFO_EMPTY_MASK},
+	{"H2C_REG3_PEND_FIFO_FULL",
+		H2C_REG3_PEND_FIFO_FULL_MASK},
+	{"H2C_REG3_CUR_RQ_STATE",
+		H2C_REG3_CUR_RQ_STATE_MASK},
+	{"H2C_REG3_DSCI_FIFO_FULL",
+		H2C_REG3_DSCI_FIFO_FULL_MASK},
+	{"H2C_REG3_DSCI_FIFO_EMPTY",
+		H2C_REG3_DSCI_FIFO_EMPTY_MASK},
+};
+
+
+static struct regfield_info
+	h2c_dbg_reg4_field_info[] = {
+	{"H2C_REG4_RDREQ_ADDR",
+		H2C_REG4_RDREQ_ADDR_MASK},
+};
+
+
+static struct regfield_info
+	h2c_fatal_err_en_field_info[] = {
+	{"H2C_FATAL_ERR_EN_RSVD_1",
+		H2C_FATAL_ERR_EN_RSVD_1_MASK},
+	{"H2C_FATAL_ERR_EN_H2C",
+		H2C_FATAL_ERR_EN_H2C_MASK},
+};
+
+
+static struct regfield_info
+	h2c_req_throt_pcie_field_info[] = {
+	{"H2C_REQ_THROT_PCIE_EN_REQ",
+		H2C_REQ_THROT_PCIE_EN_REQ_MASK},
+	{"H2C_REQ_THROT_PCIE",
+		H2C_REQ_THROT_PCIE_MASK},
+	{"H2C_REQ_THROT_PCIE_EN_DATA",
+		H2C_REQ_THROT_PCIE_EN_DATA_MASK},
+	{"H2C_REQ_THROT_PCIE_DATA_THRESH",
+		H2C_REQ_THROT_PCIE_DATA_THRESH_MASK},
+};
+
+
+static struct regfield_info
+	h2c_aln_dbg_reg0_field_info[] = {
+	{"H2C_ALN_REG0_NUM_PKT_SENT",
+		H2C_ALN_REG0_NUM_PKT_SENT_MASK},
+};
+
+
+static struct regfield_info
+	h2c_req_throt_aximm_field_info[] = {
+	{"H2C_REQ_THROT_AXIMM_EN_REQ",
+		H2C_REQ_THROT_AXIMM_EN_REQ_MASK},
+	{"H2C_REQ_THROT_AXIMM",
+		H2C_REQ_THROT_AXIMM_MASK},
+	{"H2C_REQ_THROT_AXIMM_EN_DATA",
+		H2C_REQ_THROT_AXIMM_EN_DATA_MASK},
+	{"H2C_REQ_THROT_AXIMM_DATA_THRESH",
+		H2C_REQ_THROT_AXIMM_DATA_THRESH_MASK},
+};
+
+
+static struct regfield_info
+	c2h_mm_ctl_field_info[] = {
+	{"C2H_MM_CTL_RESERVED1",
+		C2H_MM_CTL_RESERVED1_MASK},
+	{"C2H_MM_CTL_ERRC_EN",
+		C2H_MM_CTL_ERRC_EN_MASK},
+	{"C2H_MM_CTL_RESERVED0",
+		C2H_MM_CTL_RESERVED0_MASK},
+	{"C2H_MM_CTL_RUN",
+		C2H_MM_CTL_RUN_MASK},
+};
+
+
+static struct regfield_info
+	c2h_mm_status_field_info[] = {
+	{"C2H_MM_STATUS_RSVD_1",
+		C2H_MM_STATUS_RSVD_1_MASK},
+	{"C2H_MM_STATUS_RUN",
+		C2H_MM_STATUS_RUN_MASK},
+};
+
+
+static struct regfield_info
+	c2h_mm_cmpl_desc_cnt_field_info[] = {
+	{"C2H_MM_CMPL_DESC_CNT_C2H_CO",
+		C2H_MM_CMPL_DESC_CNT_C2H_CO_MASK},
+};
+
+
+static struct regfield_info
+	c2h_mm_err_code_enable_mask_field_info[] = {
+	{"C2H_MM_ERR_CODE_ENABLE_RESERVED1",
+		C2H_MM_ERR_CODE_ENABLE_RESERVED1_MASK},
+	{"C2H_MM_ERR_CODE_ENABLE_WR_UC_RAM",
+		C2H_MM_ERR_CODE_ENABLE_WR_UC_RAM_MASK},
+	{"C2H_MM_ERR_CODE_ENABLE_WR_UR",
+		C2H_MM_ERR_CODE_ENABLE_WR_UR_MASK},
+	{"C2H_MM_ERR_CODE_ENABLE_WR_FLR",
+		C2H_MM_ERR_CODE_ENABLE_WR_FLR_MASK},
+	{"C2H_MM_ERR_CODE_ENABLE_RESERVED0",
+		C2H_MM_ERR_CODE_ENABLE_RESERVED0_MASK},
+	{"C2H_MM_ERR_CODE_ENABLE_RD_SLV_ERR",
+		C2H_MM_ERR_CODE_ENABLE_RD_SLV_ERR_MASK},
+	{"C2H_MM_ERR_CODE_ENABLE_WR_SLV_ERR",
+		C2H_MM_ERR_CODE_ENABLE_WR_SLV_ERR_MASK},
+};
+
+
+static struct regfield_info
+	c2h_mm_err_code_field_info[] = {
+	{"C2H_MM_ERR_CODE_RESERVED1",
+		C2H_MM_ERR_CODE_RESERVED1_MASK},
+	{"C2H_MM_ERR_CODE_CIDX",
+		C2H_MM_ERR_CODE_CIDX_MASK},
+	{"C2H_MM_ERR_CODE_RESERVED0",
+		C2H_MM_ERR_CODE_RESERVED0_MASK},
+	{"C2H_MM_ERR_CODE_SUB_TYPE",
+		C2H_MM_ERR_CODE_SUB_TYPE_MASK},
+	{"C2H_MM_ERR_CODE",
+		C2H_MM_ERR_CODE_MASK},
+};
+
+
+static struct regfield_info
+	c2h_mm_err_info_field_info[] = {
+	{"C2H_MM_ERR_INFO_VALID",
+		C2H_MM_ERR_INFO_VALID_MASK},
+	{"C2H_MM_ERR_INFO_SEL",
+		C2H_MM_ERR_INFO_SEL_MASK},
+	{"C2H_MM_ERR_INFO_RSVD_1",
+		C2H_MM_ERR_INFO_RSVD_1_MASK},
+	{"C2H_MM_ERR_INFO_QID",
+		C2H_MM_ERR_INFO_QID_MASK},
+};
+
+
+static struct regfield_info
+	c2h_mm_perf_mon_ctl_field_info[] = {
+	{"C2H_MM_PERF_MON_CTL_RSVD_1",
+		C2H_MM_PERF_MON_CTL_RSVD_1_MASK},
+	{"C2H_MM_PERF_MON_CTL_IMM_START",
+		C2H_MM_PERF_MON_CTL_IMM_START_MASK},
+	{"C2H_MM_PERF_MON_CTL_RUN_START",
+		C2H_MM_PERF_MON_CTL_RUN_START_MASK},
+	{"C2H_MM_PERF_MON_CTL_IMM_CLEAR",
+		C2H_MM_PERF_MON_CTL_IMM_CLEAR_MASK},
+	{"C2H_MM_PERF_MON_CTL_RUN_CLEAR",
+		C2H_MM_PERF_MON_CTL_RUN_CLEAR_MASK},
+};
+
+
+static struct regfield_info
+	c2h_mm_perf_mon_cycle_cnt0_field_info[] = {
+	{"C2H_MM_PERF_MON_CYCLE_CNT0_CYC_CNT",
+		C2H_MM_PERF_MON_CYCLE_CNT0_CYC_CNT_MASK},
+};
+
+
+static struct regfield_info
+	c2h_mm_perf_mon_cycle_cnt1_field_info[] = {
+	{"C2H_MM_PERF_MON_CYCLE_CNT1_RSVD_1",
+		C2H_MM_PERF_MON_CYCLE_CNT1_RSVD_1_MASK},
+	{"C2H_MM_PERF_MON_CYCLE_CNT1_CYC_CNT",
+		C2H_MM_PERF_MON_CYCLE_CNT1_CYC_CNT_MASK},
+};
+
+
+static struct regfield_info
+	c2h_mm_perf_mon_data_cnt0_field_info[] = {
+	{"C2H_MM_PERF_MON_DATA_CNT0_DCNT",
+		C2H_MM_PERF_MON_DATA_CNT0_DCNT_MASK},
+};
+
+
+static struct regfield_info
+	c2h_mm_perf_mon_data_cnt1_field_info[] = {
+	{"C2H_MM_PERF_MON_DATA_CNT1_RSVD_1",
+		C2H_MM_PERF_MON_DATA_CNT1_RSVD_1_MASK},
+	{"C2H_MM_PERF_MON_DATA_CNT1_DCNT",
+		C2H_MM_PERF_MON_DATA_CNT1_DCNT_MASK},
+};
+
+
+static struct regfield_info
+	c2h_mm_dbg_field_info[] = {
+	{"C2H_MM_RSVD_1",
+		C2H_MM_RSVD_1_MASK},
+	{"C2H_MM_RRQ_ENTRIES",
+		C2H_MM_RRQ_ENTRIES_MASK},
+	{"C2H_MM_DAT_FIFO_SPC",
+		C2H_MM_DAT_FIFO_SPC_MASK},
+	{"C2H_MM_RD_STALL",
+		C2H_MM_RD_STALL_MASK},
+	{"C2H_MM_RRQ_FIFO_FI",
+		C2H_MM_RRQ_FIFO_FI_MASK},
+	{"C2H_MM_WR_STALL",
+		C2H_MM_WR_STALL_MASK},
+	{"C2H_MM_WRQ_FIFO_FI",
+		C2H_MM_WRQ_FIFO_FI_MASK},
+	{"C2H_MM_WBK_STALL",
+		C2H_MM_WBK_STALL_MASK},
+	{"C2H_MM_DSC_FIFO_EP",
+		C2H_MM_DSC_FIFO_EP_MASK},
+	{"C2H_MM_DSC_FIFO_FL",
+		C2H_MM_DSC_FIFO_FL_MASK},
+};
+
+
+static struct regfield_info
+	h2c_mm_ctl_field_info[] = {
+	{"H2C_MM_CTL_RESERVED1",
+		H2C_MM_CTL_RESERVED1_MASK},
+	{"H2C_MM_CTL_ERRC_EN",
+		H2C_MM_CTL_ERRC_EN_MASK},
+	{"H2C_MM_CTL_RESERVED0",
+		H2C_MM_CTL_RESERVED0_MASK},
+	{"H2C_MM_CTL_RUN",
+		H2C_MM_CTL_RUN_MASK},
+};
+
+
+static struct regfield_info
+	h2c_mm_status_field_info[] = {
+	{"H2C_MM_STATUS_RSVD_1",
+		H2C_MM_STATUS_RSVD_1_MASK},
+	{"H2C_MM_STATUS_RUN",
+		H2C_MM_STATUS_RUN_MASK},
+};
+
+
+static struct regfield_info
+	h2c_mm_cmpl_desc_cnt_field_info[] = {
+	{"H2C_MM_CMPL_DESC_CNT_H2C_CO",
+		H2C_MM_CMPL_DESC_CNT_H2C_CO_MASK},
+};
+
+
+static struct regfield_info
+	h2c_mm_err_code_enable_mask_field_info[] = {
+	{"H2C_MM_ERR_CODE_ENABLE_RESERVED5",
+		H2C_MM_ERR_CODE_ENABLE_RESERVED5_MASK},
+	{"H2C_MM_ERR_CODE_ENABLE_WR_SLV_ERR",
+		H2C_MM_ERR_CODE_ENABLE_WR_SLV_ERR_MASK},
+	{"H2C_MM_ERR_CODE_ENABLE_WR_DEC_ERR",
+		H2C_MM_ERR_CODE_ENABLE_WR_DEC_ERR_MASK},
+	{"H2C_MM_ERR_CODE_ENABLE_RESERVED4",
+		H2C_MM_ERR_CODE_ENABLE_RESERVED4_MASK},
+	{"H2C_MM_ERR_CODE_ENABLE_RD_RQ_DIS_ERR",
+		H2C_MM_ERR_CODE_ENABLE_RD_RQ_DIS_ERR_MASK},
+	{"H2C_MM_ERR_CODE_ENABLE_RESERVED3",
+		H2C_MM_ERR_CODE_ENABLE_RESERVED3_MASK},
+	{"H2C_MM_ERR_CODE_ENABLE_RD_DAT_POISON_ERR",
+		H2C_MM_ERR_CODE_ENABLE_RD_DAT_POISON_ERR_MASK},
+	{"H2C_MM_ERR_CODE_ENABLE_RESERVED2",
+		H2C_MM_ERR_CODE_ENABLE_RESERVED2_MASK},
+	{"H2C_MM_ERR_CODE_ENABLE_RD_FLR_ERR",
+		H2C_MM_ERR_CODE_ENABLE_RD_FLR_ERR_MASK},
+	{"H2C_MM_ERR_CODE_ENABLE_RESERVED1",
+		H2C_MM_ERR_CODE_ENABLE_RESERVED1_MASK},
+	{"H2C_MM_ERR_CODE_ENABLE_RD_HDR_ADR_ERR",
+		H2C_MM_ERR_CODE_ENABLE_RD_HDR_ADR_ERR_MASK},
+	{"H2C_MM_ERR_CODE_ENABLE_RD_HDR_PARA",
+		H2C_MM_ERR_CODE_ENABLE_RD_HDR_PARA_MASK},
+	{"H2C_MM_ERR_CODE_ENABLE_RD_HDR_BYTE_ERR",
+		H2C_MM_ERR_CODE_ENABLE_RD_HDR_BYTE_ERR_MASK},
+	{"H2C_MM_ERR_CODE_ENABLE_RD_UR_CA",
+		H2C_MM_ERR_CODE_ENABLE_RD_UR_CA_MASK},
+	{"H2C_MM_ERR_CODE_ENABLE_RD_HRD_POISON_ERR",
+		H2C_MM_ERR_CODE_ENABLE_RD_HRD_POISON_ERR_MASK},
+	{"H2C_MM_ERR_CODE_ENABLE_RESERVED0",
+		H2C_MM_ERR_CODE_ENABLE_RESERVED0_MASK},
+};
+
+
+static struct regfield_info
+	h2c_mm_err_code_field_info[] = {
+	{"H2C_MM_ERR_CODE_RSVD_1",
+		H2C_MM_ERR_CODE_RSVD_1_MASK},
+	{"H2C_MM_ERR_CODE_CIDX",
+		H2C_MM_ERR_CODE_CIDX_MASK},
+	{"H2C_MM_ERR_CODE_RESERVED0",
+		H2C_MM_ERR_CODE_RESERVED0_MASK},
+	{"H2C_MM_ERR_CODE_SUB_TYPE",
+		H2C_MM_ERR_CODE_SUB_TYPE_MASK},
+	{"H2C_MM_ERR_CODE",
+		H2C_MM_ERR_CODE_MASK},
+};
+
+
+static struct regfield_info
+	h2c_mm_err_info_field_info[] = {
+	{"H2C_MM_ERR_INFO_VALID",
+		H2C_MM_ERR_INFO_VALID_MASK},
+	{"H2C_MM_ERR_INFO_SEL",
+		H2C_MM_ERR_INFO_SEL_MASK},
+	{"H2C_MM_ERR_INFO_RSVD_1",
+		H2C_MM_ERR_INFO_RSVD_1_MASK},
+	{"H2C_MM_ERR_INFO_QID",
+		H2C_MM_ERR_INFO_QID_MASK},
+};
+
+
+static struct regfield_info
+	h2c_mm_perf_mon_ctl_field_info[] = {
+	{"H2C_MM_PERF_MON_CTL_RSVD_1",
+		H2C_MM_PERF_MON_CTL_RSVD_1_MASK},
+	{"H2C_MM_PERF_MON_CTL_IMM_START",
+		H2C_MM_PERF_MON_CTL_IMM_START_MASK},
+	{"H2C_MM_PERF_MON_CTL_RUN_START",
+		H2C_MM_PERF_MON_CTL_RUN_START_MASK},
+	{"H2C_MM_PERF_MON_CTL_IMM_CLEAR",
+		H2C_MM_PERF_MON_CTL_IMM_CLEAR_MASK},
+	{"H2C_MM_PERF_MON_CTL_RUN_CLEAR",
+		H2C_MM_PERF_MON_CTL_RUN_CLEAR_MASK},
+};
+
+
+static struct regfield_info
+	h2c_mm_perf_mon_cycle_cnt0_field_info[] = {
+	{"H2C_MM_PERF_MON_CYCLE_CNT0_CYC_CNT",
+		H2C_MM_PERF_MON_CYCLE_CNT0_CYC_CNT_MASK},
+};
+
+
+static struct regfield_info
+	h2c_mm_perf_mon_cycle_cnt1_field_info[] = {
+	{"H2C_MM_PERF_MON_CYCLE_CNT1_RSVD_1",
+		H2C_MM_PERF_MON_CYCLE_CNT1_RSVD_1_MASK},
+	{"H2C_MM_PERF_MON_CYCLE_CNT1_CYC_CNT",
+		H2C_MM_PERF_MON_CYCLE_CNT1_CYC_CNT_MASK},
+};
+
+
+static struct regfield_info
+	h2c_mm_perf_mon_data_cnt0_field_info[] = {
+	{"H2C_MM_PERF_MON_DATA_CNT0_DCNT",
+		H2C_MM_PERF_MON_DATA_CNT0_DCNT_MASK},
+};
+
+
+static struct regfield_info
+	h2c_mm_perf_mon_data_cnt1_field_info[] = {
+	{"H2C_MM_PERF_MON_DATA_CNT1_RSVD_1",
+		H2C_MM_PERF_MON_DATA_CNT1_RSVD_1_MASK},
+	{"H2C_MM_PERF_MON_DATA_CNT1_DCNT",
+		H2C_MM_PERF_MON_DATA_CNT1_DCNT_MASK},
+};
+
+
+static struct regfield_info
+	h2c_mm_dbg_field_info[] = {
+	{"H2C_MM_RSVD_1",
+		H2C_MM_RSVD_1_MASK},
+	{"H2C_MM_RRQ_ENTRIES",
+		H2C_MM_RRQ_ENTRIES_MASK},
+	{"H2C_MM_DAT_FIFO_SPC",
+		H2C_MM_DAT_FIFO_SPC_MASK},
+	{"H2C_MM_RD_STALL",
+		H2C_MM_RD_STALL_MASK},
+	{"H2C_MM_RRQ_FIFO_FI",
+		H2C_MM_RRQ_FIFO_FI_MASK},
+	{"H2C_MM_WR_STALL",
+		H2C_MM_WR_STALL_MASK},
+	{"H2C_MM_WRQ_FIFO_FI",
+		H2C_MM_WRQ_FIFO_FI_MASK},
+	{"H2C_MM_WBK_STALL",
+		H2C_MM_WBK_STALL_MASK},
+	{"H2C_MM_DSC_FIFO_EP",
+		H2C_MM_DSC_FIFO_EP_MASK},
+	{"H2C_MM_DSC_FIFO_FL",
+		H2C_MM_DSC_FIFO_FL_MASK},
+};
+
+
+static struct regfield_info
+	h2c_mm_data_throttle_field_info[] = {
+	{"H2C_MM_DATA_THROTTLE_RSVD_1",
+		H2C_MM_DATA_THROTTLE_RSVD_1_MASK},
+	{"H2C_MM_DATA_THROTTLE_DAT_EN",
+		H2C_MM_DATA_THROTTLE_DAT_EN_MASK},
+	{"H2C_MM_DATA_THROTTLE_DAT",
+		H2C_MM_DATA_THROTTLE_DAT_MASK},
+};
+
+
+static struct regfield_info
+	c2h_crdt_coal_cfg_1_field_info[] = {
+	{"C2H_CRDT_COAL_CFG_1_RSVD_1",
+		C2H_CRDT_COAL_CFG_1_RSVD_1_MASK},
+	{"C2H_CRDT_COAL_CFG_1_PLD_FIFO_TH",
+		C2H_CRDT_COAL_CFG_1_PLD_FIFO_TH_MASK},
+	{"C2H_CRDT_COAL_CFG_1_TIMER_TH",
+		C2H_CRDT_COAL_CFG_1_TIMER_TH_MASK},
+};
+
+
+static struct regfield_info
+	c2h_crdt_coal_cfg_2_field_info[] = {
+	{"C2H_CRDT_COAL_CFG_2_RSVD_1",
+		C2H_CRDT_COAL_CFG_2_RSVD_1_MASK},
+	{"C2H_CRDT_COAL_CFG_2_FIFO_TH",
+		C2H_CRDT_COAL_CFG_2_FIFO_TH_MASK},
+	{"C2H_CRDT_COAL_CFG_2_RESERVED1",
+		C2H_CRDT_COAL_CFG_2_RESERVED1_MASK},
+	{"C2H_CRDT_COAL_CFG_2_NT_TH",
+		C2H_CRDT_COAL_CFG_2_NT_TH_MASK},
+};
+
+
+static struct regfield_info
+	c2h_pfch_byp_qid_field_info[] = {
+	{"C2H_PFCH_BYP_QID_RSVD_1",
+		C2H_PFCH_BYP_QID_RSVD_1_MASK},
+	{"C2H_PFCH_BYP_QID",
+		C2H_PFCH_BYP_QID_MASK},
+};
+
+
+static struct regfield_info
+	c2h_pfch_byp_tag_field_info[] = {
+	{"C2H_PFCH_BYP_TAG_RSVD_1",
+		C2H_PFCH_BYP_TAG_RSVD_1_MASK},
+	{"C2H_PFCH_BYP_TAG_BYP_QID",
+		C2H_PFCH_BYP_TAG_BYP_QID_MASK},
+	{"C2H_PFCH_BYP_TAG_RSVD_2",
+		C2H_PFCH_BYP_TAG_RSVD_2_MASK},
+	{"C2H_PFCH_BYP_TAG",
+		C2H_PFCH_BYP_TAG_MASK},
+};
+
+
+static struct regfield_info
+	c2h_water_mark_field_info[] = {
+	{"C2H_WATER_MARK_HIGH_WM",
+		C2H_WATER_MARK_HIGH_WM_MASK},
+	{"C2H_WATER_MARK_LOW_WM",
+		C2H_WATER_MARK_LOW_WM_MASK},
+};
+
+
+static struct regfield_info
+	c2h_notify_empty_field_info[] = {
+	{"C2H_NOTIFY_EMPTY_RSVD_1",
+		C2H_NOTIFY_EMPTY_RSVD_1_MASK},
+	{"C2H_NOTIFY_EMPTY_NOE",
+		C2H_NOTIFY_EMPTY_NOE_MASK},
+};
+
+
+static struct regfield_info
+	c2h_stat_s_axis_c2h_accepted_1_field_info[] = {
+	{"C2H_STAT_S_AXIS_C2H_ACCEPTED_1",
+		C2H_STAT_S_AXIS_C2H_ACCEPTED_1_MASK},
+};
+
+
+static struct regfield_info
+	c2h_stat_s_axis_wrb_accepted_1_field_info[] = {
+	{"C2H_STAT_S_AXIS_WRB_ACCEPTED_1",
+		C2H_STAT_S_AXIS_WRB_ACCEPTED_1_MASK},
+};
+
+
+static struct regfield_info
+	c2h_stat_desc_rsp_pkt_accepted_1_field_info[] = {
+	{"C2H_STAT_DESC_RSP_PKT_ACCEPTED_1_D",
+		C2H_STAT_DESC_RSP_PKT_ACCEPTED_1_D_MASK},
+};
+
+
+static struct regfield_info
+	c2h_stat_axis_pkg_cmp_1_field_info[] = {
+	{"C2H_STAT_AXIS_PKG_CMP_1",
+		C2H_STAT_AXIS_PKG_CMP_1_MASK},
+};
+
+
+static struct regfield_info
+	c2h_stat_s_axis_wrb_accepted_2_field_info[] = {
+	{"C2H_STAT_S_AXIS_WRB_ACCEPTED_2",
+		C2H_STAT_S_AXIS_WRB_ACCEPTED_2_MASK},
+};
+
+
+static struct regfield_info
+	c2h_st_pld_fifo_depth_field_info[] = {
+	{"C2H_ST_PLD_FIFO_DEPTH",
+		C2H_ST_PLD_FIFO_DEPTH_MASK},
+};
+
+
+static struct regfield_info
+	c2h_stat_dbg_dma_eng_6_field_info[] = {
+	{"C2H_STAT_DMA_ENG_6_RSVD",
+		C2H_STAT_DMA_ENG_6_RSVD_MASK},
+	{"C2H_STAT_DMA_ENG_6_PLD_ST_FIFO_OUT_DATA_QID",
+		C2H_STAT_DMA_ENG_6_PLD_ST_FIFO_OUT_DATA_QID_MASK},
+	{"C2H_STAT_DMA_ENG_6_PLD_STS_FIFO_OUT_DATA_PLD_ST_PKT_ID",
+		C2H_STAT_DMA_ENG_6_PLD_STS_FIFO_OUT_DATA_PLD_ST_PKT_ID_MASK},
+	{"C2H_STAT_DMA_ENG_6_PLD_PKT_ID_LARGER_PLD_ST",
+		C2H_STAT_DMA_ENG_6_PLD_PKT_ID_LARGER_PLD_ST_MASK},
+};
+
+
+static struct regfield_info
+	c2h_stat_dbg_dma_eng_7_field_info[] = {
+	{"C2H_STAT_DMA_ENG_7_RSVD",
+		C2H_STAT_DMA_ENG_7_RSVD_MASK},
+	{"C2H_STAT_DMA_ENG_7_PLD_ST_FIFO_OUT_DATA_QID_1",
+		C2H_STAT_DMA_ENG_7_PLD_ST_FIFO_OUT_DATA_QID_1_MASK},
+	{"C2H_STAT_DMA_ENG_7_PLD_STS_FIFO_OUT_DATA_PLD_ST_PKT_ID_1",
+		C2H_STAT_DMA_ENG_7_PLD_STS_FIFO_OUT_DATA_PLD_ST_PKT_ID_1_MASK},
+	{"C2H_STAT_DMA_ENG_7_PLD_PKT_ID_LARGER_PLD_ST_1",
+		C2H_STAT_DMA_ENG_7_PLD_PKT_ID_LARGER_PLD_ST_1_MASK},
+};
+
+
+static struct regfield_info
+	c2h_stat_pcie_cmp_1_field_info[] = {
+	{"C2H_STAT_PCIE_CMP_1_DEPTH",
+		C2H_STAT_PCIE_CMP_1_DEPTH_MASK},
+};
+
+
+static struct regfield_info
+	c2h_pld_fifo_almost_full_field_info[] = {
+	{"C2H_PLD_FIFO_ALMOST_FULL_ENABLE",
+		C2H_PLD_FIFO_ALMOST_FULL_ENABLE_MASK},
+	{"C2H_PLD_FIFO_ALMOST_FULL_TH",
+		C2H_PLD_FIFO_ALMOST_FULL_TH_MASK},
+};
+
+
+static struct regfield_info
+	pfch_cfg_3_field_info[] = {
+	{"PFCH_CFG_3_RSVD",
+		PFCH_CFG_3_RSVD_MASK},
+	{"PFCH_CFG_3_VAR_DESC_FL_FREE_CNT_TH",
+		PFCH_CFG_3_VAR_DESC_FL_FREE_CNT_TH_MASK},
+	{"PFCH_CFG_3_VAR_DESC_LG_PKT_CAM_CN_TH",
+		PFCH_CFG_3_VAR_DESC_LG_PKT_CAM_CN_TH_MASK},
+};
+
+
+static struct regfield_info
+	cmpt_cfg_0_field_info[] = {
+	{"CMPT_CFG_0_RSVD",
+		CMPT_CFG_0_RSVD_MASK},
+	{"CMPT_CFG_0_VIO_SPRS_INT_AFTER_RTY",
+		CMPT_CFG_0_VIO_SPRS_INT_AFTER_RTY_MASK},
+	{"CMPT_CFG_0_VIO_EVNT_SUP_EN",
+		CMPT_CFG_0_VIO_EVNT_SUP_EN_MASK},
+};
+
+
+static struct regfield_info
+	pfch_cfg_4_field_info[] = {
+	{"PFCH_CFG_4_GLB_EVT_TIMER_TICK",
+		PFCH_CFG_4_GLB_EVT_TIMER_TICK_MASK},
+	{"PFCH_CFG_4_DISABLE_GLB_EVT_TIMER",
+		PFCH_CFG_4_DISABLE_GLB_EVT_TIMER_MASK},
+	{"PFCH_CFG_4_EVT_TIMER_TICK",
+		PFCH_CFG_4_EVT_TIMER_TICK_MASK},
+	{"PFCH_CFG_4_DISABLE_EVT_TIMER",
+		PFCH_CFG_4_DISABLE_EVT_TIMER_MASK},
+};
+
+static struct xreg_info eqdma_config_regs[] = {
+{"CFG_BLK_IDENTIFIER", 0x00,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(cfg_blk_identifier_field_info),
+	cfg_blk_identifier_field_info
+},
+{"CFG_BLK_PCIE_MAX_PLD_SIZE", 0x08,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(cfg_blk_pcie_max_pld_size_field_info),
+	cfg_blk_pcie_max_pld_size_field_info
+},
+{"CFG_BLK_PCIE_MAX_READ_REQ_SIZE", 0x0c,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(cfg_blk_pcie_max_read_req_size_field_info),
+	cfg_blk_pcie_max_read_req_size_field_info
+},
+{"CFG_BLK_SYSTEM_ID", 0x10,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(cfg_blk_system_id_field_info),
+	cfg_blk_system_id_field_info
+},
+{"CFG_BLK_MSIX_ENABLE", 0x014,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(cfg_blk_msix_enable_field_info),
+	cfg_blk_msix_enable_field_info
+},
+{"CFG_PCIE_DATA_WIDTH", 0x18,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(cfg_pcie_data_width_field_info),
+	cfg_pcie_data_width_field_info
+},
+{"CFG_PCIE_CTL", 0x1c,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(cfg_pcie_ctl_field_info),
+	cfg_pcie_ctl_field_info
+},
+{"CFG_BLK_MSI_ENABLE", 0x20,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(cfg_blk_msi_enable_field_info),
+	cfg_blk_msi_enable_field_info
+},
+{"CFG_AXI_USER_MAX_PLD_SIZE", 0x40,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(cfg_axi_user_max_pld_size_field_info),
+	cfg_axi_user_max_pld_size_field_info
+},
+{"CFG_AXI_USER_MAX_READ_REQ_SIZE", 0x44,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(cfg_axi_user_max_read_req_size_field_info),
+	cfg_axi_user_max_read_req_size_field_info
+},
+{"CFG_BLK_MISC_CTL", 0x4c,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(cfg_blk_misc_ctl_field_info),
+	cfg_blk_misc_ctl_field_info
+},
+{"CFG_PL_CRED_CTL", 0x68,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(cfg_pl_cred_ctl_field_info),
+	cfg_pl_cred_ctl_field_info
+},
+{"CFG_BLK_SCRATCH", 0x80,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(cfg_blk_scratch_field_info),
+	cfg_blk_scratch_field_info
+},
+{"CFG_GIC", 0xa0,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(cfg_gic_field_info),
+	cfg_gic_field_info
+},
+{"RAM_SBE_MSK_1_A", 0xe0,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(ram_sbe_msk_1_a_field_info),
+	ram_sbe_msk_1_a_field_info
+},
+{"RAM_SBE_STS_1_A", 0xe4,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(ram_sbe_sts_1_a_field_info),
+	ram_sbe_sts_1_a_field_info
+},
+{"RAM_DBE_MSK_1_A", 0xe8,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(ram_dbe_msk_1_a_field_info),
+	ram_dbe_msk_1_a_field_info
+},
+{"RAM_DBE_STS_1_A", 0xec,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(ram_dbe_sts_1_a_field_info),
+	ram_dbe_sts_1_a_field_info
+},
+{"RAM_SBE_MSK_A", 0xf0,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(ram_sbe_msk_a_field_info),
+	ram_sbe_msk_a_field_info
+},
+{"RAM_SBE_STS_A", 0xf4,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(ram_sbe_sts_a_field_info),
+	ram_sbe_sts_a_field_info
+},
+{"RAM_DBE_MSK_A", 0xf8,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(ram_dbe_msk_a_field_info),
+	ram_dbe_msk_a_field_info
+},
+{"RAM_DBE_STS_A", 0xfc,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(ram_dbe_sts_a_field_info),
+	ram_dbe_sts_a_field_info
+},
+{"GLBL2_IDENTIFIER", 0x100,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl2_identifier_field_info),
+	glbl2_identifier_field_info
+},
+{"GLBL2_CHANNEL_INST", 0x114,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl2_channel_inst_field_info),
+	glbl2_channel_inst_field_info
+},
+{"GLBL2_CHANNEL_MDMA", 0x118,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl2_channel_mdma_field_info),
+	glbl2_channel_mdma_field_info
+},
+{"GLBL2_CHANNEL_STRM", 0x11c,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl2_channel_strm_field_info),
+	glbl2_channel_strm_field_info
+},
+{"GLBL2_CHANNEL_CAP", 0x120,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl2_channel_cap_field_info),
+	glbl2_channel_cap_field_info
+},
+{"GLBL2_CHANNEL_PASID_CAP", 0x128,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl2_channel_pasid_cap_field_info),
+	glbl2_channel_pasid_cap_field_info
+},
+{"GLBL2_SYSTEM_ID", 0x130,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl2_system_id_field_info),
+	glbl2_system_id_field_info
+},
+{"GLBL2_MISC_CAP", 0x134,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl2_misc_cap_field_info),
+	glbl2_misc_cap_field_info
+},
+{"GLBL2_RRQ_BRG_THROT", 0x158,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl2_rrq_brg_throt_field_info),
+	glbl2_rrq_brg_throt_field_info
+},
+{"GLBL2_RRQ_PCIE_THROT", 0x15c,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl2_rrq_pcie_throt_field_info),
+	glbl2_rrq_pcie_throt_field_info
+},
+{"GLBL2_RRQ_AXIMM_THROT", 0x160,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl2_rrq_aximm_throt_field_info),
+	glbl2_rrq_aximm_throt_field_info
+},
+{"GLBL2_RRQ_PCIE_LAT0", 0x164,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl2_rrq_pcie_lat0_field_info),
+	glbl2_rrq_pcie_lat0_field_info
+},
+{"GLBL2_RRQ_PCIE_LAT1", 0x168,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl2_rrq_pcie_lat1_field_info),
+	glbl2_rrq_pcie_lat1_field_info
+},
+{"GLBL2_RRQ_AXIMM_LAT0", 0x16c,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl2_rrq_aximm_lat0_field_info),
+	glbl2_rrq_aximm_lat0_field_info
+},
+{"GLBL2_RRQ_AXIMM_LAT1", 0x170,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl2_rrq_aximm_lat1_field_info),
+	glbl2_rrq_aximm_lat1_field_info
+},
+{"GLBL2_DBG_PCIE_RQ0", 0x1b8,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl2_dbg_pcie_rq0_field_info),
+	glbl2_dbg_pcie_rq0_field_info
+},
+{"GLBL2_DBG_PCIE_RQ1", 0x1bc,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl2_dbg_pcie_rq1_field_info),
+	glbl2_dbg_pcie_rq1_field_info
+},
+{"GLBL2_DBG_AXIMM_WR0", 0x1c0,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl2_dbg_aximm_wr0_field_info),
+	glbl2_dbg_aximm_wr0_field_info
+},
+{"GLBL2_DBG_AXIMM_WR1", 0x1c4,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl2_dbg_aximm_wr1_field_info),
+	glbl2_dbg_aximm_wr1_field_info
+},
+{"GLBL2_DBG_AXIMM_RD0", 0x1c8,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl2_dbg_aximm_rd0_field_info),
+	glbl2_dbg_aximm_rd0_field_info
+},
+{"GLBL2_DBG_AXIMM_RD1", 0x1cc,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl2_dbg_aximm_rd1_field_info),
+	glbl2_dbg_aximm_rd1_field_info
+},
+{"GLBL2_DBG_FAB0", 0x1d0,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl2_dbg_fab0_field_info),
+	glbl2_dbg_fab0_field_info
+},
+{"GLBL2_DBG_FAB1", 0x1d4,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl2_dbg_fab1_field_info),
+	glbl2_dbg_fab1_field_info
+},
+{"GLBL2_DBG_MATCH_SEL", 0x1f4,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl2_dbg_match_sel_field_info),
+	glbl2_dbg_match_sel_field_info
+},
+{"GLBL2_DBG_MATCH_MSK", 0x1f8,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl2_dbg_match_msk_field_info),
+	glbl2_dbg_match_msk_field_info
+},
+{"GLBL2_DBG_MATCH_PAT", 0x1fc,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl2_dbg_match_pat_field_info),
+	glbl2_dbg_match_pat_field_info
+},
+{"GLBL_RNG_SZ_1", 0x204,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
+	ARRAY_SIZE(glbl_rng_sz_1_field_info),
+	glbl_rng_sz_1_field_info
+},
+{"GLBL_RNG_SZ_2", 0x208,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
+	ARRAY_SIZE(glbl_rng_sz_2_field_info),
+	glbl_rng_sz_2_field_info
+},
+{"GLBL_RNG_SZ_3", 0x20c,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
+	ARRAY_SIZE(glbl_rng_sz_3_field_info),
+	glbl_rng_sz_3_field_info
+},
+{"GLBL_RNG_SZ_4", 0x210,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
+	ARRAY_SIZE(glbl_rng_sz_4_field_info),
+	glbl_rng_sz_4_field_info
+},
+{"GLBL_RNG_SZ_5", 0x214,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
+	ARRAY_SIZE(glbl_rng_sz_5_field_info),
+	glbl_rng_sz_5_field_info
+},
+{"GLBL_RNG_SZ_6", 0x218,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
+	ARRAY_SIZE(glbl_rng_sz_6_field_info),
+	glbl_rng_sz_6_field_info
+},
+{"GLBL_RNG_SZ_7", 0x21c,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
+	ARRAY_SIZE(glbl_rng_sz_7_field_info),
+	glbl_rng_sz_7_field_info
+},
+{"GLBL_RNG_SZ_8", 0x220,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
+	ARRAY_SIZE(glbl_rng_sz_8_field_info),
+	glbl_rng_sz_8_field_info
+},
+{"GLBL_RNG_SZ_9", 0x224,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
+	ARRAY_SIZE(glbl_rng_sz_9_field_info),
+	glbl_rng_sz_9_field_info
+},
+{"GLBL_RNG_SZ_A", 0x228,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
+	ARRAY_SIZE(glbl_rng_sz_a_field_info),
+	glbl_rng_sz_a_field_info
+},
+{"GLBL_RNG_SZ_B", 0x22c,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
+	ARRAY_SIZE(glbl_rng_sz_b_field_info),
+	glbl_rng_sz_b_field_info
+},
+{"GLBL_RNG_SZ_C", 0x230,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
+	ARRAY_SIZE(glbl_rng_sz_c_field_info),
+	glbl_rng_sz_c_field_info
+},
+{"GLBL_RNG_SZ_D", 0x234,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
+	ARRAY_SIZE(glbl_rng_sz_d_field_info),
+	glbl_rng_sz_d_field_info
+},
+{"GLBL_RNG_SZ_E", 0x238,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
+	ARRAY_SIZE(glbl_rng_sz_e_field_info),
+	glbl_rng_sz_e_field_info
+},
+{"GLBL_RNG_SZ_F", 0x23c,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
+	ARRAY_SIZE(glbl_rng_sz_f_field_info),
+	glbl_rng_sz_f_field_info
+},
+{"GLBL_RNG_SZ_10", 0x240,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
+	ARRAY_SIZE(glbl_rng_sz_10_field_info),
+	glbl_rng_sz_10_field_info
+},
+{"GLBL_ERR_STAT", 0x248,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
+	ARRAY_SIZE(glbl_err_stat_field_info),
+	glbl_err_stat_field_info
+},
+{"GLBL_ERR_MASK", 0x24c,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
+	ARRAY_SIZE(glbl_err_mask_field_info),
+	glbl_err_mask_field_info
+},
+{"GLBL_DSC_CFG", 0x250,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
+	ARRAY_SIZE(glbl_dsc_cfg_field_info),
+	glbl_dsc_cfg_field_info
+},
+{"GLBL_DSC_ERR_STS", 0x254,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
+	ARRAY_SIZE(glbl_dsc_err_sts_field_info),
+	glbl_dsc_err_sts_field_info
+},
+{"GLBL_DSC_ERR_MSK", 0x258,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
+	ARRAY_SIZE(glbl_dsc_err_msk_field_info),
+	glbl_dsc_err_msk_field_info
+},
+{"GLBL_DSC_ERR_LOG0", 0x25c,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
+	ARRAY_SIZE(glbl_dsc_err_log0_field_info),
+	glbl_dsc_err_log0_field_info
+},
+{"GLBL_DSC_ERR_LOG1", 0x260,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
+	ARRAY_SIZE(glbl_dsc_err_log1_field_info),
+	glbl_dsc_err_log1_field_info
+},
+{"GLBL_TRQ_ERR_STS", 0x264,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
+	ARRAY_SIZE(glbl_trq_err_sts_field_info),
+	glbl_trq_err_sts_field_info
+},
+{"GLBL_TRQ_ERR_MSK", 0x268,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
+	ARRAY_SIZE(glbl_trq_err_msk_field_info),
+	glbl_trq_err_msk_field_info
+},
+{"GLBL_TRQ_ERR_LOG", 0x26c,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
+	ARRAY_SIZE(glbl_trq_err_log_field_info),
+	glbl_trq_err_log_field_info
+},
+{"GLBL_DSC_DBG_DAT0", 0x270,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
+	ARRAY_SIZE(glbl_dsc_dbg_dat0_field_info),
+	glbl_dsc_dbg_dat0_field_info
+},
+{"GLBL_DSC_DBG_DAT1", 0x274,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
+	ARRAY_SIZE(glbl_dsc_dbg_dat1_field_info),
+	glbl_dsc_dbg_dat1_field_info
+},
+{"GLBL_DSC_DBG_CTL", 0x278,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
+	ARRAY_SIZE(glbl_dsc_dbg_ctl_field_info),
+	glbl_dsc_dbg_ctl_field_info
+},
+{"GLBL_DSC_ERR_LOG2", 0x27c,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
+	ARRAY_SIZE(glbl_dsc_err_log2_field_info),
+	glbl_dsc_err_log2_field_info
+},
+{"GLBL_GLBL_INTERRUPT_CFG", 0x2c4,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
+	ARRAY_SIZE(glbl_glbl_interrupt_cfg_field_info),
+	glbl_glbl_interrupt_cfg_field_info
+},
+{"GLBL_VCH_HOST_PROFILE", 0x2c8,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
+	ARRAY_SIZE(glbl_vch_host_profile_field_info),
+	glbl_vch_host_profile_field_info
+},
+{"GLBL_BRIDGE_HOST_PROFILE", 0x308,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
+	ARRAY_SIZE(glbl_bridge_host_profile_field_info),
+	glbl_bridge_host_profile_field_info
+},
+{"AXIMM_IRQ_DEST_ADDR", 0x30c,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
+	ARRAY_SIZE(aximm_irq_dest_addr_field_info),
+	aximm_irq_dest_addr_field_info
+},
+{"FAB_ERR_LOG", 0x314,
+	1, 0, 0, 0,
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
+	ARRAY_SIZE(fab_err_log_field_info),
+	fab_err_log_field_info
+},
+{"GLBL_REQ_ERR_STS", 0x318,
 	1, 0, 0, 0,
 	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(cfg_blk_identifier_field_info),
-	cfg_blk_identifier_field_info
+	ARRAY_SIZE(glbl_req_err_sts_field_info),
+	glbl_req_err_sts_field_info
 },
-{"CFG_BLK_PCIE_MAX_PLD_SIZE", 0x08,
+{"GLBL_REQ_ERR_MSK", 0x31c,
 	1, 0, 0, 0,
 	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(cfg_blk_pcie_max_pld_size_field_info),
-	cfg_blk_pcie_max_pld_size_field_info
+	ARRAY_SIZE(glbl_req_err_msk_field_info),
+	glbl_req_err_msk_field_info
 },
-{"CFG_BLK_PCIE_MAX_READ_REQ_SIZE", 0x0c,
+{"GLBL_DSC_DBG_LAT0_A", 0x320,
 	1, 0, 0, 0,
 	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(cfg_blk_pcie_max_read_req_size_field_info),
-	cfg_blk_pcie_max_read_req_size_field_info
+	ARRAY_SIZE(glbl_dsc_dbg_lat0_a_field_info),
+	glbl_dsc_dbg_lat0_a_field_info
 },
-{"CFG_BLK_SYSTEM_ID", 0x10,
+{"GLBL_DSC_DBG_LAT1_A", 0x324,
 	1, 0, 0, 0,
 	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(cfg_blk_system_id_field_info),
-	cfg_blk_system_id_field_info
+	ARRAY_SIZE(glbl_dsc_dbg_lat1_a_field_info),
+	glbl_dsc_dbg_lat1_a_field_info
 },
-{"CFG_BLK_MSIX_ENABLE", 0x014,
+{"GLBL_DSC_CRD_CTR0_A", 0x328,
 	1, 0, 0, 0,
 	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(cfg_blk_msix_enable_field_info),
-	cfg_blk_msix_enable_field_info
+	ARRAY_SIZE(glbl_dsc_crd_ctr0_a_field_info),
+	glbl_dsc_crd_ctr0_a_field_info
 },
-{"CFG_PCIE_DATA_WIDTH", 0x18,
+{"GLBL_DSC_CRD_CTR1_A", 0x32c,
 	1, 0, 0, 0,
 	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(cfg_pcie_data_width_field_info),
-	cfg_pcie_data_width_field_info
+	ARRAY_SIZE(glbl_dsc_crd_ctr1_a_field_info),
+	glbl_dsc_crd_ctr1_a_field_info
 },
-{"CFG_PCIE_CTL", 0x1c,
+{"GLBL_DSC_CRD_CTR2_A", 0x330,
 	1, 0, 0, 0,
 	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(cfg_pcie_ctl_field_info),
-	cfg_pcie_ctl_field_info
+	ARRAY_SIZE(glbl_dsc_crd_ctr2_a_field_info),
+	glbl_dsc_crd_ctr2_a_field_info
 },
-{"CFG_BLK_MSI_ENABLE", 0x20,
+{"GLBL_DSC_CRD_CTR3_A", 0x334,
 	1, 0, 0, 0,
 	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(cfg_blk_msi_enable_field_info),
-	cfg_blk_msi_enable_field_info
+	ARRAY_SIZE(glbl_dsc_crd_ctr3_a_field_info),
+	glbl_dsc_crd_ctr3_a_field_info
 },
-{"CFG_AXI_USER_MAX_PLD_SIZE", 0x40,
+{"GLBL_DSC_IMM_CRD_CTR0_A", 0x338,
 	1, 0, 0, 0,
 	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(cfg_axi_user_max_pld_size_field_info),
-	cfg_axi_user_max_pld_size_field_info
+	ARRAY_SIZE(glbl_dsc_imm_crd_ctr0_a_field_info),
+	glbl_dsc_imm_crd_ctr0_a_field_info
 },
-{"CFG_AXI_USER_MAX_READ_REQ_SIZE", 0x44,
+{"GLBL_DSC_IMM_CRD_CTR1_A", 0x33c,
 	1, 0, 0, 0,
 	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(cfg_axi_user_max_read_req_size_field_info),
-	cfg_axi_user_max_read_req_size_field_info
+	ARRAY_SIZE(glbl_dsc_imm_crd_ctr1_a_field_info),
+	glbl_dsc_imm_crd_ctr1_a_field_info
 },
-{"CFG_BLK_MISC_CTL", 0x4c,
+{"GLBL_DSC_IMM_CRD_CTR2_A", 0x340,
 	1, 0, 0, 0,
 	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(cfg_blk_misc_ctl_field_info),
-	cfg_blk_misc_ctl_field_info
+	ARRAY_SIZE(glbl_dsc_imm_crd_ctr2_a_field_info),
+	glbl_dsc_imm_crd_ctr2_a_field_info
 },
-{"CFG_PL_CRED_CTL", 0x68,
+{"GLBL_DSC_IMM_CRD_CTR3_A", 0x344,
 	1, 0, 0, 0,
 	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(cfg_pl_cred_ctl_field_info),
-	cfg_pl_cred_ctl_field_info
+	ARRAY_SIZE(glbl_dsc_imm_crd_ctr3_a_field_info),
+	glbl_dsc_imm_crd_ctr3_a_field_info
 },
-{"CFG_BLK_SCRATCH", 0x80,
+{"GLBL_DSC_H2C_OUT_CTR0_A", 0x348,
 	1, 0, 0, 0,
 	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(cfg_blk_scratch_field_info),
-	cfg_blk_scratch_field_info
+	ARRAY_SIZE(glbl_dsc_h2c_out_ctr0_a_field_info),
+	glbl_dsc_h2c_out_ctr0_a_field_info
 },
-{"CFG_GIC", 0xa0,
+{"GLBL_DSC_H2C_OUT_CTR1_A", 0x34c,
 	1, 0, 0, 0,
 	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(cfg_gic_field_info),
-	cfg_gic_field_info
+	ARRAY_SIZE(glbl_dsc_h2c_out_ctr1_a_field_info),
+	glbl_dsc_h2c_out_ctr1_a_field_info
 },
-{"RAM_SBE_MSK_1_A", 0xe0,
+{"GLBL_DSC_H2C_OUT_CTR2_A", 0x350,
 	1, 0, 0, 0,
 	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(ram_sbe_msk_1_a_field_info),
-	ram_sbe_msk_1_a_field_info
+	ARRAY_SIZE(glbl_dsc_h2c_out_ctr2_a_field_info),
+	glbl_dsc_h2c_out_ctr2_a_field_info
 },
-{"RAM_SBE_STS_1_A", 0xe4,
+{"GLBL_DSC_H2C_OUT_CTR3_A", 0x354,
 	1, 0, 0, 0,
 	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(ram_sbe_sts_1_a_field_info),
-	ram_sbe_sts_1_a_field_info
+	ARRAY_SIZE(glbl_dsc_h2c_out_ctr3_a_field_info),
+	glbl_dsc_h2c_out_ctr3_a_field_info
 },
-{"RAM_DBE_MSK_1_A", 0xe8,
+{"GLBL_DSC_C2H_OUT_CTR0_A", 0x358,
 	1, 0, 0, 0,
 	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(ram_dbe_msk_1_a_field_info),
-	ram_dbe_msk_1_a_field_info
+	ARRAY_SIZE(glbl_dsc_c2h_out_ctr0_a_field_info),
+	glbl_dsc_c2h_out_ctr0_a_field_info
 },
-{"RAM_DBE_STS_1_A", 0xec,
+{"GLBL_DSC_C2H_OUT_CTR1_A", 0x35c,
 	1, 0, 0, 0,
 	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(ram_dbe_sts_1_a_field_info),
-	ram_dbe_sts_1_a_field_info
+	ARRAY_SIZE(glbl_dsc_c2h_out_ctr1_a_field_info),
+	glbl_dsc_c2h_out_ctr1_a_field_info
 },
-{"RAM_SBE_MSK_A", 0xf0,
+{"GLBL_DSC_C2H_OUT_CTR2_A", 0x360,
 	1, 0, 0, 0,
 	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(ram_sbe_msk_a_field_info),
-	ram_sbe_msk_a_field_info
+	ARRAY_SIZE(glbl_dsc_c2h_out_ctr2_a_field_info),
+	glbl_dsc_c2h_out_ctr2_a_field_info
 },
-{"RAM_SBE_STS_A", 0xf4,
+{"GLBL_DSC_C2H_OUT_CTR3_A", 0x364,
 	1, 0, 0, 0,
 	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(ram_sbe_sts_a_field_info),
-	ram_sbe_sts_a_field_info
+	ARRAY_SIZE(glbl_dsc_c2h_out_ctr3_a_field_info),
+	glbl_dsc_c2h_out_ctr3_a_field_info
 },
-{"RAM_DBE_MSK_A", 0xf8,
+{"T", 0x368,
 	1, 0, 0, 0,
 	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(ram_dbe_msk_a_field_info),
-	ram_dbe_msk_a_field_info
+	ARRAY_SIZE(t_field_info),
+	t_field_info
 },
-{"RAM_DBE_STS_A", 0xfc,
+{"GLBL_PERF_CNTR_CTL_A1", 0x36c,
 	1, 0, 0, 0,
 	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(ram_dbe_sts_a_field_info),
-	ram_dbe_sts_a_field_info
+	ARRAY_SIZE(glbl_perf_cntr_ctl_a1_field_info),
+	glbl_perf_cntr_ctl_a1_field_info
 },
-{"GLBL2_IDENTIFIER", 0x100,
+{"GLBL_FREE_CNT_A0", 0x370,
 	1, 0, 0, 0,
 	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(glbl2_identifier_field_info),
-	glbl2_identifier_field_info
+	ARRAY_SIZE(glbl_free_cnt_a0_field_info),
+	glbl_free_cnt_a0_field_info
 },
-{"GLBL2_CHANNEL_INST", 0x114,
+{"GLBL_FREE_CNT_A1", 0x374,
 	1, 0, 0, 0,
 	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(glbl2_channel_inst_field_info),
-	glbl2_channel_inst_field_info
+	ARRAY_SIZE(glbl_free_cnt_a1_field_info),
+	glbl_free_cnt_a1_field_info
 },
-{"GLBL2_CHANNEL_MDMA", 0x118,
+{"GLBL_AXIS_H2C_CNT_A0", 0x378,
 	1, 0, 0, 0,
 	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(glbl2_channel_mdma_field_info),
-	glbl2_channel_mdma_field_info
+	ARRAY_SIZE(glbl_axis_h2c_cnt_a0_field_info),
+	glbl_axis_h2c_cnt_a0_field_info
 },
-{"GLBL2_CHANNEL_STRM", 0x11c,
+{"GLBL_AXIS_H2C_CNT_A1", 0x37c,
 	1, 0, 0, 0,
 	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(glbl2_channel_strm_field_info),
-	glbl2_channel_strm_field_info
+	ARRAY_SIZE(glbl_axis_h2c_cnt_a1_field_info),
+	glbl_axis_h2c_cnt_a1_field_info
 },
-{"GLBL2_CHANNEL_CAP", 0x120,
+{"GLBL_AXIS_H2C_CNT_A2", 0x380,
 	1, 0, 0, 0,
 	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(glbl2_channel_cap_field_info),
-	glbl2_channel_cap_field_info
+	ARRAY_SIZE(glbl_axis_h2c_cnt_a2_field_info),
+	glbl_axis_h2c_cnt_a2_field_info
 },
-{"GLBL2_CHANNEL_PASID_CAP", 0x128,
+{"GLBL_AXIS_H2C_CNT_A3", 0x384,
 	1, 0, 0, 0,
 	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(glbl2_channel_pasid_cap_field_info),
-	glbl2_channel_pasid_cap_field_info
+	ARRAY_SIZE(glbl_axis_h2c_cnt_a3_field_info),
+	glbl_axis_h2c_cnt_a3_field_info
 },
-{"GLBL2_SYSTEM_ID", 0x130,
+{"GLBL_AXIS_H2C_CNT_A4", 0x388,
 	1, 0, 0, 0,
 	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(glbl2_system_id_field_info),
-	glbl2_system_id_field_info
+	ARRAY_SIZE(glbl_axis_h2c_cnt_a4_field_info),
+	glbl_axis_h2c_cnt_a4_field_info
 },
-{"GLBL2_MISC_CAP", 0x134,
+{"GLBL_AXIS_H2C_CNT_A5", 0x38c,
 	1, 0, 0, 0,
 	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(glbl2_misc_cap_field_info),
-	glbl2_misc_cap_field_info
+	ARRAY_SIZE(glbl_axis_h2c_cnt_a5_field_info),
+	glbl_axis_h2c_cnt_a5_field_info
 },
-{"GLBL2_DBG_PCIE_RQ0", 0x1b8,
+{"GLBL_AXIS_C2H_CNT_A0", 0x390,
 	1, 0, 0, 0,
 	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(glbl2_dbg_pcie_rq0_field_info),
-	glbl2_dbg_pcie_rq0_field_info
+	ARRAY_SIZE(glbl_axis_c2h_cnt_a0_field_info),
+	glbl_axis_c2h_cnt_a0_field_info
 },
-{"GLBL2_DBG_PCIE_RQ1", 0x1bc,
+{"GLBL_AXIS_C2H_CNT_A1", 0x394,
 	1, 0, 0, 0,
 	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(glbl2_dbg_pcie_rq1_field_info),
-	glbl2_dbg_pcie_rq1_field_info
+	ARRAY_SIZE(glbl_axis_c2h_cnt_a1_field_info),
+	glbl_axis_c2h_cnt_a1_field_info
 },
-{"GLBL2_DBG_AXIMM_WR0", 0x1c0,
+{"GLBL_AXIS_C2H_CNT_A2", 0x398,
 	1, 0, 0, 0,
 	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(glbl2_dbg_aximm_wr0_field_info),
-	glbl2_dbg_aximm_wr0_field_info
+	ARRAY_SIZE(glbl_axis_c2h_cnt_a2_field_info),
+	glbl_axis_c2h_cnt_a2_field_info
 },
-{"GLBL2_DBG_AXIMM_WR1", 0x1c4,
+{"GLBL_AXIS_C2H_CNT_A3", 0x39c,
 	1, 0, 0, 0,
 	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(glbl2_dbg_aximm_wr1_field_info),
-	glbl2_dbg_aximm_wr1_field_info
+	ARRAY_SIZE(glbl_axis_c2h_cnt_a3_field_info),
+	glbl_axis_c2h_cnt_a3_field_info
 },
-{"GLBL2_DBG_AXIMM_RD0", 0x1c8,
+{"GLBL_AXIS_C2H_CNT_A4", 0x3a0,
 	1, 0, 0, 0,
 	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(glbl2_dbg_aximm_rd0_field_info),
-	glbl2_dbg_aximm_rd0_field_info
+	ARRAY_SIZE(glbl_axis_c2h_cnt_a4_field_info),
+	glbl_axis_c2h_cnt_a4_field_info
 },
-{"GLBL2_DBG_AXIMM_RD1", 0x1cc,
+{"GLBL_AXIS_C2H_CNT_A5", 0x3a4,
 	1, 0, 0, 0,
 	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(glbl2_dbg_aximm_rd1_field_info),
-	glbl2_dbg_aximm_rd1_field_info
+	ARRAY_SIZE(glbl_axis_c2h_cnt_a5_field_info),
+	glbl_axis_c2h_cnt_a5_field_info
 },
-{"GLBL2_DBG_FAB0", 0x1d0,
+{"GLBL_M_AXI_WR_CNT_A0", 0x3a8,
 	1, 0, 0, 0,
 	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(glbl2_dbg_fab0_field_info),
-	glbl2_dbg_fab0_field_info
+	ARRAY_SIZE(glbl_m_axi_wr_cnt_a0_field_info),
+	glbl_m_axi_wr_cnt_a0_field_info
 },
-{"GLBL2_DBG_FAB1", 0x1d4,
+{"GLBL_M_AXI_WR_CNT_A1", 0x3ac,
 	1, 0, 0, 0,
 	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(glbl2_dbg_fab1_field_info),
-	glbl2_dbg_fab1_field_info
+	ARRAY_SIZE(glbl_m_axi_wr_cnt_a1_field_info),
+	glbl_m_axi_wr_cnt_a1_field_info
 },
-{"GLBL2_DBG_MATCH_SEL", 0x1f4,
+{"GLBL_M_AXI_WR_CNT_A2", 0x3b0,
 	1, 0, 0, 0,
 	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(glbl2_dbg_match_sel_field_info),
-	glbl2_dbg_match_sel_field_info
+	ARRAY_SIZE(glbl_m_axi_wr_cnt_a2_field_info),
+	glbl_m_axi_wr_cnt_a2_field_info
 },
-{"GLBL2_DBG_MATCH_MSK", 0x1f8,
+{"GLBL_M_AXI_WR_CNT_A3", 0x3b4,
 	1, 0, 0, 0,
 	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(glbl2_dbg_match_msk_field_info),
-	glbl2_dbg_match_msk_field_info
+	ARRAY_SIZE(glbl_m_axi_wr_cnt_a3_field_info),
+	glbl_m_axi_wr_cnt_a3_field_info
 },
-{"GLBL2_DBG_MATCH_PAT", 0x1fc,
+{"GLBL_M_AXI_WR_CNT_A4", 0x3b8,
 	1, 0, 0, 0,
 	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(glbl2_dbg_match_pat_field_info),
-	glbl2_dbg_match_pat_field_info
+	ARRAY_SIZE(glbl_m_axi_wr_cnt_a4_field_info),
+	glbl_m_axi_wr_cnt_a4_field_info
 },
-{"GLBL_RNG_SZ_1", 0x204,
+{"GLBL_M_AXI_WR_CNT_A5", 0x3bc,
 	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_rng_sz_1_field_info),
-	glbl_rng_sz_1_field_info
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl_m_axi_wr_cnt_a5_field_info),
+	glbl_m_axi_wr_cnt_a5_field_info
 },
-{"GLBL_RNG_SZ_2", 0x208,
+{"GLBL_M_AXI_RD_CNT_A0", 0x3c0,
 	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_rng_sz_2_field_info),
-	glbl_rng_sz_2_field_info
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl_m_axi_rd_cnt_a0_field_info),
+	glbl_m_axi_rd_cnt_a0_field_info
 },
-{"GLBL_RNG_SZ_3", 0x20c,
+{"GLBL_M_AXI_RD_CNT_A1", 0x3c4,
 	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_rng_sz_3_field_info),
-	glbl_rng_sz_3_field_info
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl_m_axi_rd_cnt_a1_field_info),
+	glbl_m_axi_rd_cnt_a1_field_info
 },
-{"GLBL_RNG_SZ_4", 0x210,
+{"GLBL_M_AXI_RD_CNT_A2", 0x3c8,
 	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_rng_sz_4_field_info),
-	glbl_rng_sz_4_field_info
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl_m_axi_rd_cnt_a2_field_info),
+	glbl_m_axi_rd_cnt_a2_field_info
 },
-{"GLBL_RNG_SZ_5", 0x214,
+{"GLBL_M_AXI_RD_CNT_A3", 0x3cc,
 	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_rng_sz_5_field_info),
-	glbl_rng_sz_5_field_info
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl_m_axi_rd_cnt_a3_field_info),
+	glbl_m_axi_rd_cnt_a3_field_info
 },
-{"GLBL_RNG_SZ_6", 0x218,
+{"GLBL_M_AXI_RD_CNT_A4", 0x3d0,
 	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_rng_sz_6_field_info),
-	glbl_rng_sz_6_field_info
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl_m_axi_rd_cnt_a4_field_info),
+	glbl_m_axi_rd_cnt_a4_field_info
 },
-{"GLBL_RNG_SZ_7", 0x21c,
+{"GLBL_M_AXI_RD_CNT_A5", 0x3d4,
 	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_rng_sz_7_field_info),
-	glbl_rng_sz_7_field_info
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl_m_axi_rd_cnt_a5_field_info),
+	glbl_m_axi_rd_cnt_a5_field_info
 },
-{"GLBL_RNG_SZ_8", 0x220,
+{"GLBL_M_AXIB_WR_CNT_A0", 0x3d8,
 	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_rng_sz_8_field_info),
-	glbl_rng_sz_8_field_info
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl_m_axib_wr_cnt_a0_field_info),
+	glbl_m_axib_wr_cnt_a0_field_info
 },
-{"GLBL_RNG_SZ_9", 0x224,
+{"GLBL_M_AXIB_WR_CNT_A1", 0x3dc,
 	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_rng_sz_9_field_info),
-	glbl_rng_sz_9_field_info
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl_m_axib_wr_cnt_a1_field_info),
+	glbl_m_axib_wr_cnt_a1_field_info
 },
-{"GLBL_RNG_SZ_A", 0x228,
+{"GLBL_M_AXIB_WR_CNT_A2", 0x3e0,
 	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_rng_sz_a_field_info),
-	glbl_rng_sz_a_field_info
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl_m_axib_wr_cnt_a2_field_info),
+	glbl_m_axib_wr_cnt_a2_field_info
 },
-{"GLBL_RNG_SZ_B", 0x22c,
+{"GLBL_M_AXIB_WR_CNT_A3", 0x3e4,
 	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_rng_sz_b_field_info),
-	glbl_rng_sz_b_field_info
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl_m_axib_wr_cnt_a3_field_info),
+	glbl_m_axib_wr_cnt_a3_field_info
 },
-{"GLBL_RNG_SZ_C", 0x230,
+{"GLBL_M_AXIB_WR_CNT_A4", 0x3e8,
 	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_rng_sz_c_field_info),
-	glbl_rng_sz_c_field_info
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl_m_axib_wr_cnt_a4_field_info),
+	glbl_m_axib_wr_cnt_a4_field_info
 },
-{"GLBL_RNG_SZ_D", 0x234,
+{"GLBL_M_AXIB_WR_CNT_A5", 0x3ec,
 	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_rng_sz_d_field_info),
-	glbl_rng_sz_d_field_info
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl_m_axib_wr_cnt_a5_field_info),
+	glbl_m_axib_wr_cnt_a5_field_info
 },
-{"GLBL_RNG_SZ_E", 0x238,
+{"GLBL_M_AXIB_RD_CNT_A0", 0x3f0,
 	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_rng_sz_e_field_info),
-	glbl_rng_sz_e_field_info
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl_m_axib_rd_cnt_a0_field_info),
+	glbl_m_axib_rd_cnt_a0_field_info
 },
-{"GLBL_RNG_SZ_F", 0x23c,
+{"GLBL_M_AXIB_RD_CNT_A1", 0x3f4,
 	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_rng_sz_f_field_info),
-	glbl_rng_sz_f_field_info
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl_m_axib_rd_cnt_a1_field_info),
+	glbl_m_axib_rd_cnt_a1_field_info
 },
-{"GLBL_RNG_SZ_10", 0x240,
+{"GLBL_M_AXIB_RD_CNT_A2", 0x3f8,
 	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_rng_sz_10_field_info),
-	glbl_rng_sz_10_field_info
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl_m_axib_rd_cnt_a2_field_info),
+	glbl_m_axib_rd_cnt_a2_field_info
 },
-{"GLBL_ERR_STAT", 0x248,
+{"GLBL_M_AXIB_RD_CNT_A3", 0x3fc,
 	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_err_stat_field_info),
-	glbl_err_stat_field_info
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl_m_axib_rd_cnt_a3_field_info),
+	glbl_m_axib_rd_cnt_a3_field_info
 },
-{"GLBL_ERR_MASK", 0x24c,
+{"GLBL_M_AXIB_RD_CNT_A4", 0x400,
 	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_err_mask_field_info),
-	glbl_err_mask_field_info
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl_m_axib_rd_cnt_a4_field_info),
+	glbl_m_axib_rd_cnt_a4_field_info
 },
-{"GLBL_DSC_CFG", 0x250,
+{"GLBL_M_AXIB_RD_CNT_A5", 0x404,
 	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_dsc_cfg_field_info),
-	glbl_dsc_cfg_field_info
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl_m_axib_rd_cnt_a5_field_info),
+	glbl_m_axib_rd_cnt_a5_field_info
 },
-{"GLBL_DSC_ERR_STS", 0x254,
+{"GLBL_S_AXI_WR_CNT_A0", 0x408,
 	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_dsc_err_sts_field_info),
-	glbl_dsc_err_sts_field_info
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl_s_axi_wr_cnt_a0_field_info),
+	glbl_s_axi_wr_cnt_a0_field_info
 },
-{"GLBL_DSC_ERR_MSK", 0x258,
+{"GLBL_S_AXI_WR_CNT_A1", 0x40c,
 	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_dsc_err_msk_field_info),
-	glbl_dsc_err_msk_field_info
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl_s_axi_wr_cnt_a1_field_info),
+	glbl_s_axi_wr_cnt_a1_field_info
 },
-{"GLBL_DSC_ERR_LOG0", 0x25c,
+{"GLBL_S_AXI_WR_CNT_A2", 0x410,
 	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_dsc_err_log0_field_info),
-	glbl_dsc_err_log0_field_info
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl_s_axi_wr_cnt_a2_field_info),
+	glbl_s_axi_wr_cnt_a2_field_info
 },
-{"GLBL_DSC_ERR_LOG1", 0x260,
+{"GLBL_S_AXI_WR_CNT_A3", 0x414,
 	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_dsc_err_log1_field_info),
-	glbl_dsc_err_log1_field_info
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl_s_axi_wr_cnt_a3_field_info),
+	glbl_s_axi_wr_cnt_a3_field_info
 },
-{"GLBL_TRQ_ERR_STS", 0x264,
+{"GLBL_S_AXI_WR_CNT_A4", 0x418,
 	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_trq_err_sts_field_info),
-	glbl_trq_err_sts_field_info
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl_s_axi_wr_cnt_a4_field_info),
+	glbl_s_axi_wr_cnt_a4_field_info
 },
-{"GLBL_TRQ_ERR_MSK", 0x268,
+{"GLBL_S_AXI_WR_CNT_A5", 0x41c,
 	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_trq_err_msk_field_info),
-	glbl_trq_err_msk_field_info
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl_s_axi_wr_cnt_a5_field_info),
+	glbl_s_axi_wr_cnt_a5_field_info
 },
-{"GLBL_TRQ_ERR_LOG", 0x26c,
+{"GLBL_S_AXI_RD_CNT_A0", 0x420,
 	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_trq_err_log_field_info),
-	glbl_trq_err_log_field_info
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl_s_axi_rd_cnt_a0_field_info),
+	glbl_s_axi_rd_cnt_a0_field_info
 },
-{"GLBL_DSC_DBG_DAT0", 0x270,
+{"GLBL_S_AXI_RD_CNT_A1", 0x424,
 	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_dsc_dbg_dat0_field_info),
-	glbl_dsc_dbg_dat0_field_info
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl_s_axi_rd_cnt_a1_field_info),
+	glbl_s_axi_rd_cnt_a1_field_info
 },
-{"GLBL_DSC_DBG_DAT1", 0x274,
+{"GLBL_S_AXI_RD_CNT_A2", 0x428,
 	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_dsc_dbg_dat1_field_info),
-	glbl_dsc_dbg_dat1_field_info
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl_s_axi_rd_cnt_a2_field_info),
+	glbl_s_axi_rd_cnt_a2_field_info
 },
-{"GLBL_DSC_DBG_CTL", 0x278,
+{"GLBL_S_AXI_RD_CNT_A3", 0x42c,
 	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_dsc_dbg_ctl_field_info),
-	glbl_dsc_dbg_ctl_field_info
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl_s_axi_rd_cnt_a3_field_info),
+	glbl_s_axi_rd_cnt_a3_field_info
 },
-{"GLBL_DSC_ERR_LOG2", 0x27c,
+{"GLBL_S_AXI_RD_CNT_A4", 0x430,
 	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_dsc_err_log2_field_info),
-	glbl_dsc_err_log2_field_info
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl_s_axi_rd_cnt_a4_field_info),
+	glbl_s_axi_rd_cnt_a4_field_info
 },
-{"GLBL_GLBL_INTERRUPT_CFG", 0x2c4,
+{"GLBL_S_AXI_RD_CNT_A5", 0x434,
 	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_glbl_interrupt_cfg_field_info),
-	glbl_glbl_interrupt_cfg_field_info
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl_s_axi_rd_cnt_a5_field_info),
+	glbl_s_axi_rd_cnt_a5_field_info
 },
-{"GLBL_VCH_HOST_PROFILE", 0x2c8,
+{"GLBL_S_AXIS_CMP_CNT_A0", 0x438,
 	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_vch_host_profile_field_info),
-	glbl_vch_host_profile_field_info
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl_s_axis_cmp_cnt_a0_field_info),
+	glbl_s_axis_cmp_cnt_a0_field_info
 },
-{"GLBL_BRIDGE_HOST_PROFILE", 0x308,
+{"GLBL_S_AXIS_CMP_CNT_A1", 0x43c,
 	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_bridge_host_profile_field_info),
-	glbl_bridge_host_profile_field_info
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl_s_axis_cmp_cnt_a1_field_info),
+	glbl_s_axis_cmp_cnt_a1_field_info
 },
-{"AXIMM_IRQ_DEST_ADDR", 0x30c,
+{"GLBL_S_AXIS_CMP_CNT_A2", 0x440,
 	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(aximm_irq_dest_addr_field_info),
-	aximm_irq_dest_addr_field_info
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl_s_axis_cmp_cnt_a2_field_info),
+	glbl_s_axis_cmp_cnt_a2_field_info
 },
-{"FAB_ERR_LOG", 0x314,
+{"GLBL_S_AXIS_CMP_CNT_A3", 0x444,
 	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(fab_err_log_field_info),
-	fab_err_log_field_info
+	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(glbl_s_axis_cmp_cnt_a3_field_info),
+	glbl_s_axis_cmp_cnt_a3_field_info
 },
-{"GLBL_REQ_ERR_STS", 0x318,
+{"GLBL_S_AXIS_CMP_CNT_A4", 0x448,
 	1, 0, 0, 0,
 	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(glbl_req_err_sts_field_info),
-	glbl_req_err_sts_field_info
+	ARRAY_SIZE(glbl_s_axis_cmp_cnt_a4_field_info),
+	glbl_s_axis_cmp_cnt_a4_field_info
 },
-{"GLBL_REQ_ERR_MSK", 0x31c,
+{"GLBL_S_AXIS_CMP_CNT_A5", 0x44c,
 	1, 0, 0, 0,
 	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(glbl_req_err_msk_field_info),
-	glbl_req_err_msk_field_info
+	ARRAY_SIZE(glbl_s_axis_cmp_cnt_a5_field_info),
+	glbl_s_axis_cmp_cnt_a5_field_info
 },
 {"IND_CTXT_DATA", 0x804,
 	1, 0, 0, 0,
@@ -3189,6 +4484,18 @@ static struct xreg_info eqdma_config_regs[] = {
 	ARRAY_SIZE(c2h_cnt_th_field_info),
 	c2h_cnt_th_field_info
 },
+{"C2H_PFCH_CFG_1", 0xa80,
+	1, 0, 0, 0,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_VF,
+	ARRAY_SIZE(c2h_pfch_cfg_1_field_info),
+	c2h_pfch_cfg_1_field_info
+},
+{"C2H_PFCH_CFG_2", 0xa84,
+	1, 0, 0, 0,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_VF,
+	ARRAY_SIZE(c2h_pfch_cfg_2_field_info),
+	c2h_pfch_cfg_2_field_info
+},
 {"C2H_STAT_S_AXIS_C2H_ACCEPTED", 0xa88,
 	1, 0, 0, 0,
 	1, QDMA_ST_MODE, QDMA_REG_READ_PF_VF,
@@ -3297,18 +4604,6 @@ static struct xreg_info eqdma_config_regs[] = {
 	ARRAY_SIZE(c2h_pfch_cfg_field_info),
 	c2h_pfch_cfg_field_info
 },
-{"C2H_PFCH_CFG_1", 0xa80,
-	1, 0, 0, 0,
-	0, QDMA_COMPLETION_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_pfch_cfg_1_field_info),
-	c2h_pfch_cfg_1_field_info
-},
-{"C2H_PFCH_CFG_2", 0xa84,
-	1, 0, 0, 0,
-	0, QDMA_COMPLETION_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_pfch_cfg_2_field_info),
-	c2h_pfch_cfg_2_field_info
-},
 {"C2H_INT_TIMER_TICK", 0xb0c,
 	1, 0, 0, 0,
 	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
@@ -3891,6 +5186,12 @@ static struct xreg_info eqdma_config_regs[] = {
 	ARRAY_SIZE(h2c_mm_dbg_field_info),
 	h2c_mm_dbg_field_info
 },
+{"H2C_MM_DATA_THROTTLE", 0x12ec,
+	1, 0, 0, 0,
+	0, QDMA_MM_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(h2c_mm_data_throttle_field_info),
+	h2c_mm_data_throttle_field_info
+},
 {"C2H_CRDT_COAL_CFG_1", 0x1400,
 	1, 0, 0, 0,
 	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
@@ -3915,12 +5216,96 @@ static struct xreg_info eqdma_config_regs[] = {
 	ARRAY_SIZE(c2h_pfch_byp_tag_field_info),
 	c2h_pfch_byp_tag_field_info
 },
-{"C2H_WATER_MARK", 0x1500,
+{"C2H_WATER_MARK", 0x1410,
 	1, 0, 0, 0,
 	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
 	ARRAY_SIZE(c2h_water_mark_field_info),
 	c2h_water_mark_field_info
 },
+{"C2H_NOTIFY_EMPTY", 0x1450,
+	1, 0, 0, 0,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(c2h_notify_empty_field_info),
+	c2h_notify_empty_field_info
+},
+{"C2H_STAT_S_AXIS_C2H_ACCEPTED_1", 0x1454,
+	1, 0, 0, 0,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(c2h_stat_s_axis_c2h_accepted_1_field_info),
+	c2h_stat_s_axis_c2h_accepted_1_field_info
+},
+{"C2H_STAT_S_AXIS_WRB_ACCEPTED_1", 0x1458,
+	1, 0, 0, 0,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(c2h_stat_s_axis_wrb_accepted_1_field_info),
+	c2h_stat_s_axis_wrb_accepted_1_field_info
+},
+{"C2H_STAT_DESC_RSP_PKT_ACCEPTED_1", 0x145c,
+	1, 0, 0, 0,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(c2h_stat_desc_rsp_pkt_accepted_1_field_info),
+	c2h_stat_desc_rsp_pkt_accepted_1_field_info
+},
+{"C2H_STAT_AXIS_PKG_CMP_1", 0x1460,
+	1, 0, 0, 0,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(c2h_stat_axis_pkg_cmp_1_field_info),
+	c2h_stat_axis_pkg_cmp_1_field_info
+},
+{"C2H_STAT_S_AXIS_WRB_ACCEPTED_2", 0x1464,
+	1, 0, 0, 0,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(c2h_stat_s_axis_wrb_accepted_2_field_info),
+	c2h_stat_s_axis_wrb_accepted_2_field_info
+},
+{"C2H_ST_PLD_FIFO_DEPTH", 0x1468,
+	1, 0, 0, 0,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(c2h_st_pld_fifo_depth_field_info),
+	c2h_st_pld_fifo_depth_field_info
+},
+{"C2H_STAT_DBG_DMA_ENG_6", 0x146c,
+	1, 0, 0, 0,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(c2h_stat_dbg_dma_eng_6_field_info),
+	c2h_stat_dbg_dma_eng_6_field_info
+},
+{"C2H_STAT_DBG_DMA_ENG_7", 0x1470,
+	1, 0, 0, 0,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(c2h_stat_dbg_dma_eng_7_field_info),
+	c2h_stat_dbg_dma_eng_7_field_info
+},
+{"C2H_STAT_PCIE_CMP_1", 0x1474,
+	1, 0, 0, 0,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(c2h_stat_pcie_cmp_1_field_info),
+	c2h_stat_pcie_cmp_1_field_info
+},
+{"C2H_PLD_FIFO_ALMOST_FULL", 0x1478,
+	1, 0, 0, 0,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(c2h_pld_fifo_almost_full_field_info),
+	c2h_pld_fifo_almost_full_field_info
+},
+{"PFCH_CFG_3", 0x147c,
+	1, 0, 0, 0,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(pfch_cfg_3_field_info),
+	pfch_cfg_3_field_info
+},
+{"CMPT_CFG_0", 0x1480,
+	1, 0, 0, 0,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(cmpt_cfg_0_field_info),
+	cmpt_cfg_0_field_info
+},
+{"PFCH_CFG_4", 0x1484,
+	1, 0, 0, 0,
+	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
+	ARRAY_SIZE(pfch_cfg_4_field_info),
+	pfch_cfg_4_field_info
+},
 
 };
 
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_access_common.c b/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_access_common.c
old mode 100644
new mode 100755
index 00b9b36c55c5090bd8883019a4300b0312b09e3f..6b468d57464f6b152f1fe55f12b68a3f881fd4f5
--- a/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_access_common.c
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_access_common.c
@@ -1,5 +1,6 @@
 /*
- * Copyright(c) 2019-2022 Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2019-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
@@ -104,12 +105,24 @@ static const char *qdma_get_rtl_version(enum qdma_rtl_version rtl_version)
 /**
  * qdma_get_ip_type() - Function to get the ip type in string format
  *
- * @ip_type: IP Type
+ * @dev_hndl:  device handle
+ * @is_vf:	   Whether PF or VF
+ * @ip_type:   IP Type
  *
  * Return: string - success and NULL on failure
  *****************************************************************************/
-static const char *qdma_get_ip_type(enum qdma_ip_type ip_type)
+static const char *qdma_get_ip_type(void *dev_hndl, uint8_t is_vf,
+		enum qdma_ip_type ip_type)
 {
+	uint32_t ip_version;
+	int rv = QDMA_SUCCESS;
+
+	if (!dev_hndl) {
+		qdma_log_error("%s: dev_handle is NULL, err:%d\n",
+				__func__, -QDMA_ERR_INV_PARAM);
+		return NULL;
+	}
+
 	switch (ip_type) {
 	case QDMA_VERSAL_HARD_IP:
 		return "Versal Hard IP";
@@ -118,7 +131,18 @@ static const char *qdma_get_ip_type(enum qdma_ip_type ip_type)
 	case QDMA_SOFT_IP:
 		return "QDMA Soft IP";
 	case EQDMA_SOFT_IP:
-		return "EQDMA Soft IP";
+		rv = eqdma_get_ip_version(dev_hndl, is_vf, &ip_version);
+		if (rv != QDMA_SUCCESS)
+			return NULL;
+
+		if (ip_version == EQDMA_IP_VERSION_4)
+			return "EQDMA4.0 Soft IP";
+		else if (ip_version == EQDMA_IP_VERSION_5)
+			return "EQDMA5.0 Soft IP";
+
+		qdma_log_error("%s: invalid eqdma ip version(%d), err:%d\n",
+				__func__, ip_version, -QDMA_ERR_INV_PARAM);
+		return NULL;
 	default:
 		qdma_log_error("%s: invalid ip type(%d), err:%d\n",
 				__func__, ip_type, -QDMA_ERR_INV_PARAM);
@@ -211,12 +235,18 @@ void qdma_read_csr_values(void *dev_hndl, uint32_t reg_offst,
 	}
 }
 
-void qdma_fetch_version_details(uint8_t is_vf, uint32_t version_reg_val,
-		struct qdma_hw_version_info *version_info)
+void qdma_fetch_version_details(void *dev_hndl, uint8_t is_vf,
+	uint32_t version_reg_val, struct qdma_hw_version_info *version_info)
 {
 	uint32_t rtl_version, vivado_release_id, ip_type, device_type;
 	const char *version_str;
 
+	if (!dev_hndl) {
+		qdma_log_error("%s: dev_handle is NULL, err:%d\n",
+				__func__, -QDMA_ERR_INV_PARAM);
+		return;
+	}
+
 	if (!is_vf) {
 		rtl_version = FIELD_GET(QDMA_GLBL2_RTL_VERSION_MASK,
 				version_reg_val);
@@ -287,6 +317,11 @@ void qdma_fetch_version_details(uint8_t is_vf, uint32_t version_reg_val,
 			version_info->ip_type = QDMA_SOFT_IP;
 			break;
 		case 1:
+		case 2:
+			/* For QDMA4.0 and QDMA5.0, HW design and
+			 * register map is same except some
+			 * performance optimizations
+			 */
 			version_info->ip_type = EQDMA_SOFT_IP;
 			break;
 		default:
@@ -305,7 +340,7 @@ void qdma_fetch_version_details(uint8_t is_vf, uint32_t version_reg_val,
 		}
 	}
 
-	version_str = qdma_get_ip_type(version_info->ip_type);
+	version_str = qdma_get_ip_type(dev_hndl, is_vf, version_info->ip_type);
 	if (version_str != NULL)
 		qdma_strncpy(version_info->qdma_ip_type_str,
 			version_str,
@@ -1330,7 +1365,7 @@ int qdma_hw_access_init(void *dev_hndl, uint8_t is_vf,
 			qdma_get_device_type(version_info.device_type));
 
 	qdma_log_info("IP Type: %s\n",
-			qdma_get_ip_type(version_info.ip_type));
+		qdma_get_ip_type(dev_hndl, is_vf, version_info.ip_type));
 
 	qdma_log_info("Vivado Release: %s\n",
 		qdma_get_vivado_release_id(version_info.vivado_release));
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_access_common.h b/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_access_common.h
old mode 100644
new mode 100755
index 5521c005eaf4b36cb668eeef6129e0f7eb69f390..00f6bb6d27e73086ebd883836db596696d1dee6b
--- a/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_access_common.h
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_access_common.h
@@ -1,5 +1,6 @@
 /*
- * Copyright(c) 2019-2022 Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2019-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
@@ -908,9 +909,8 @@ int qdma_get_error_code(int acc_err_code);
  *
  * Return:	Nothing
  *****************************************************************************/
-void qdma_fetch_version_details(uint8_t is_vf, uint32_t version_reg_val,
-		struct qdma_hw_version_info *version_info);
-
+void qdma_fetch_version_details(void *dev_hndl, uint8_t is_vf,
+	uint32_t version_reg_val, struct qdma_hw_version_info *version_info);
 
 #ifdef __cplusplus
 }
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_access_errors.h b/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_access_errors.h
old mode 100644
new mode 100755
index aceb36fcd303e6aaa582350d99856c8a6c902b6f..c8b28c9ff8a0a60c7955885a232c2ef59a0fee9e
--- a/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_access_errors.h
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_access_errors.h
@@ -1,5 +1,6 @@
 /*
- * Copyright(c) 2019-2022 Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2019-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_access_export.h b/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_access_export.h
old mode 100644
new mode 100755
index 2fd24ae1847646272edffc3f1c2ce118a58ffae8..66eaa3222340372dca76ba05349022892caf02c8
--- a/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_access_export.h
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_access_export.h
@@ -1,5 +1,6 @@
 /*
- * Copyright(c) 2019-2022 Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2019-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_access_version.h b/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_access_version.h
old mode 100644
new mode 100755
index 7a7134d26fb143b276bcc538dc28f6e906058394..c560b46f7ca1a2e40fe07186ffffb40eaf5c7cca
--- a/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_access_version.h
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_access_version.h
@@ -1,5 +1,6 @@
 /*
- * Copyright(c) 2019-2022 Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2019-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
@@ -20,7 +21,7 @@
 
 #define QDMA_VERSION_MAJOR	2022
 #define QDMA_VERSION_MINOR	1
-#define QDMA_VERSION_PATCH	4
+#define QDMA_VERSION_PATCH	5
 
 #define QDMA_VERSION_STR	\
 	__stringify(QDMA_VERSION_MAJOR) "." \
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_cpm4_access/qdma_cpm4_access.c b/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_cpm4_access/qdma_cpm4_access.c
old mode 100644
new mode 100755
index bf2d7af0f494affa51ef33ea01495dfec40b1279..757662f801490d37c0aeabe9afa970bbcc084803
--- a/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_cpm4_access/qdma_cpm4_access.c
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_cpm4_access/qdma_cpm4_access.c
@@ -1,5 +1,6 @@
 /*
- * Copyright(c) 2019-2022 Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2019-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_cpm4_access/qdma_cpm4_access.h b/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_cpm4_access/qdma_cpm4_access.h
old mode 100644
new mode 100755
index 50c1d511fbf7158ff23f579c58b141d79f641c4f..b238c3317ef658c5ef64c5660bc93d324112adab
--- a/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_cpm4_access/qdma_cpm4_access.h
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_cpm4_access/qdma_cpm4_access.h
@@ -1,5 +1,6 @@
 /*
- * Copyright(c) 2019-2022 Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2019-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_cpm4_access/qdma_cpm4_reg.h b/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_cpm4_access/qdma_cpm4_reg.h
old mode 100644
new mode 100755
index e480e41360d22702f7e47f6ec8c36e5e6ff8d3dd..dee28b4d2e133046583c984b89075b18d8fb68fa
--- a/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_cpm4_access/qdma_cpm4_reg.h
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_cpm4_access/qdma_cpm4_reg.h
@@ -1,5 +1,6 @@
 /*
- * Copyright(c) 2019-2022 Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2019-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_cpm4_access/qdma_cpm4_reg_dump.c b/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_cpm4_access/qdma_cpm4_reg_dump.c
old mode 100644
new mode 100755
index 16f33db9f5d19599c5db1ff9e9f1fbf12c97ab53..dcfb94f4705bcbb80e7dcfc7880ef3df6306ea3e
--- a/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_cpm4_access/qdma_cpm4_reg_dump.c
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_cpm4_access/qdma_cpm4_reg_dump.c
@@ -1,5 +1,6 @@
 /*
- * Copyright(c) 2019-2022 Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2019-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_list.c b/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_list.c
old mode 100644
new mode 100755
index 4ccd2b047dad3725869456dbf3a71cbb1980d63d..b7fabf75a2e61c6f65815380abb401682f47fe4a
--- a/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_list.c
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_list.c
@@ -1,5 +1,6 @@
 /*
- * Copyright(c) 2019-2022 Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2019-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_list.h b/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_list.h
old mode 100644
new mode 100755
index 221a1dd615e5d7062476594a51045b34cf3b20d9..dd5f7d4bd5180369ba2d1486fb586bf9fb0aa8cd
--- a/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_list.h
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_list.h
@@ -1,5 +1,6 @@
 /*
- * Copyright(c) 2019-2022 Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2019-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_mbox_protocol.c b/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_mbox_protocol.c
old mode 100644
new mode 100755
index 0dbaa5f6883433ae1891f95ed93302bf235add79..67e7268cb4e085a7ef26dddf4b2ed7b093581235
--- a/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_mbox_protocol.c
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_mbox_protocol.c
@@ -1,5 +1,6 @@
 /*
- * Copyright(c) 2019-2022 Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2019-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_mbox_protocol.h b/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_mbox_protocol.h
old mode 100644
new mode 100755
index a3f90fc1632334e728b8939a3a3930e50ad94ddb..b29a8c0bc2d78ac317b35545563a26e50ce61a36
--- a/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_mbox_protocol.h
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_mbox_protocol.h
@@ -1,5 +1,6 @@
 /*
- * Copyright(c) 2019-2022 Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2019-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_platform.h b/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_platform.h
old mode 100644
new mode 100755
index df9db37b35b384211fdeecebc7fd4e7c2146eb0f..a6c7d1cc5c6ae84693b7fe725716a26ea11fb457
--- a/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_platform.h
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_platform.h
@@ -1,5 +1,6 @@
 /*
- * Copyright(c) 2019-2022 Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2019-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_reg_dump.h b/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_reg_dump.h
old mode 100644
new mode 100755
index d66a138aa4f67bf83296051c21d2a31feb0726f2..f774bf651271c86475c027e7b1646d85a7c79c5c
--- a/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_reg_dump.h
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_reg_dump.h
@@ -1,5 +1,6 @@
 /*
- * Copyright(c) 2019-2022 Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2019-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_resource_mgmt.c b/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_resource_mgmt.c
old mode 100644
new mode 100755
index 8777976b260199f4b6601b49807f9856c5f20195..1875ac4dcc964736b4db9167e7fd1fb855258937
--- a/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_resource_mgmt.c
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_resource_mgmt.c
@@ -1,5 +1,6 @@
 /*
- * Copyright(c) 2019-2022 Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2019-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_resource_mgmt.h b/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_resource_mgmt.h
old mode 100644
new mode 100755
index b0cc0907b39e0c5cd4421e57b84648f4d51fdcf6..5c53c476598a297180b8dd4bcf84450596ed38d0
--- a/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_resource_mgmt.h
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_resource_mgmt.h
@@ -1,5 +1,6 @@
 /*
- * Copyright(c) 2019-2022 Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2019-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_s80_hard_access/qdma_s80_hard_access.c b/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_s80_hard_access/qdma_s80_hard_access.c
deleted file mode 100644
index 6640741debf026b8c9707c1267131bc19c103acc..0000000000000000000000000000000000000000
--- a/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_s80_hard_access/qdma_s80_hard_access.c
+++ /dev/null
@@ -1,5894 +0,0 @@
-/*
- * Copyright(c) 2019-2020 Xilinx, Inc. All rights reserved.
- *
- * This source code is free software; you can redistribute it and/or modify it
- * under the terms and conditions of the GNU General Public License,
- * version 2, as published by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
- * more details.
- *
- * The full GNU General Public License is included in this distribution in
- * the file called "COPYING".
- */
-
-#include "qdma_s80_hard_access.h"
-#include "qdma_s80_hard_reg.h"
-#include "qdma_reg_dump.h"
-
-#ifdef ENABLE_WPP_TRACING
-#include "qdma_s80_hard_access.tmh"
-#endif
-
-/** QDMA S80 Hard Context array size */
-#define QDMA_S80_HARD_SW_CONTEXT_NUM_WORDS              4
-#define QDMA_S80_HARD_CMPT_CONTEXT_NUM_WORDS            4
-#define QDMA_S80_HARD_QID2VEC_CONTEXT_NUM_WORDS         1
-#define QDMA_S80_HARD_HW_CONTEXT_NUM_WORDS              2
-#define QDMA_S80_HARD_CR_CONTEXT_NUM_WORDS              1
-#define QDMA_S80_HARD_IND_INTR_CONTEXT_NUM_WORDS        3
-#define QDMA_S80_HARD_PFETCH_CONTEXT_NUM_WORDS          2
-
-#define QDMA_S80_HARD_VF_USER_BAR_ID   2
-
-#define QDMA_S80_REG_GROUP_1_START_ADDR	0x000
-#define QDMA_S80_REG_GROUP_2_START_ADDR	0x400
-#define QDMA_S80_REG_GROUP_3_START_ADDR	0xB00
-#define QDMA_S80_REG_GROUP_4_START_ADDR	0x1014
-
-#define QDMA_S80_HARD_REG_TRQ_SEL_FMAP_STEP	4
-
-#define QDMA_S80_HARD_IND_CTXT_DATA_NUM_REGS	4
-
-#define QDMA_S80_HARD_TOTAL_LEAF_ERROR_AGGREGATORS	7
-#define QDMA_S80_HARD_GLBL_TRQ_ERR_ALL_MASK			0XB3
-#define QDMA_S80_HARD_GLBL_DSC_ERR_ALL_MASK			0X1F9037E
-#define QDMA_S80_HARD_C2H_ERR_ALL_MASK				0X3F6DF
-#define QDMA_S80_HARD_C2H_FATAL_ERR_ALL_MASK			0X1FDF1B
-#define QDMA_S80_HARD_H2C_ERR_ALL_MASK				0X3F
-#define QDMA_S80_HARD_SBE_ERR_ALL_MASK				0XFFFFFFFF
-#define QDMA_S80_HARD_DBE_ERR_ALL_MASK				0XFFFFFFFF
-
-#define QDMA_S80_HARD_OFFSET_DMAP_SEL_INT_CIDX                  0x6400
-#define QDMA_S80_HARD_OFFSET_DMAP_SEL_H2C_DSC_PIDX          0x6404
-#define QDMA_S80_HARD_OFFSET_DMAP_SEL_C2H_DSC_PIDX          0x6408
-#define QDMA_S80_HARD_OFFSET_DMAP_SEL_CMPT_CIDX               0x640C
-
-#define QDMA_S80_HARD_OFFSET_VF_DMAP_SEL_INT_CIDX             0x3000
-#define QDMA_S80_HARD_OFFSET_VF_DMAP_SEL_H2C_DSC_PIDX     0x3004
-#define QDMA_S80_HARD_OFFSET_VF_DMAP_SEL_C2H_DSC_PIDX     0x3008
-#define QDMA_S80_HARD_OFFSET_VF_DMAP_SEL_CMPT_CIDX          0x300C
-
-#define QDMA_S80_HARD_DMA_SEL_INT_SW_CIDX_MASK               GENMASK(15, 0)
-#define QDMA_S80_HARD_DMA_SEL_INT_RING_IDX_MASK              GENMASK(23, 16)
-#define QDMA_S80_HARD_DMA_SEL_DESC_PIDX_MASK                   GENMASK(15, 0)
-#define QDMA_S80_HARD_DMA_SEL_IRQ_EN_MASK                        BIT(16)
-#define QDMA_S80_HARD_DMAP_SEL_CMPT_IRQ_EN_MASK             BIT(28)
-#define QDMA_S80_HARD_DMAP_SEL_CMPT_STS_DESC_EN_MASK    BIT(27)
-#define QDMA_S80_HARD_DMAP_SEL_CMPT_TRG_MODE_MASK        GENMASK(26, 24)
-#define QDMA_S80_HARD_DMAP_SEL_CMPT_TMR_CNT_MASK          GENMASK(23, 20)
-#define QDMA_S80_HARD_DMAP_SEL_CMPT_CNT_THRESH_MASK     GENMASK(19, 16)
-#define QDMA_S80_HARD_DMAP_SEL_CMPT_WRB_CIDX_MASK        GENMASK(15, 0)
-#define QDMA_S80_HARD_INTR_CTXT_BADDR_GET_H_MASK     GENMASK_ULL(63, 35)
-#define QDMA_S80_HARD_INTR_CTXT_BADDR_GET_L_MASK     GENMASK_ULL(34, 12)
-#define QDMA_S80_HARD_COMPL_CTXT_BADDR_GET_H_MASK    GENMASK_ULL(63, 42)
-#define QDMA_S80_HARD_COMPL_CTXT_BADDR_GET_M_MASK    GENMASK_ULL(41, 10)
-#define QDMA_S80_HARD_COMPL_CTXT_BADDR_GET_L_MASK    GENMASK_ULL(9, 6)
-#define QDMA_S80_HARD_COMPL_CTXT_PIDX_GET_H_MASK     GENMASK(15, 8)
-#define QDMA_S80_HARD_COMPL_CTXT_PIDX_GET_L_MASK     GENMASK(7, 0)
-#define QDMA_S80_HARD_QID2VEC_H2C_VECTOR             GENMASK(16, 9)
-#define QDMA_S80_HARD_QID2VEC_H2C_COAL_EN            BIT(17)
-
-static void qdma_s80_hard_hw_st_h2c_err_process(void *dev_hndl);
-static void qdma_s80_hard_hw_st_c2h_err_process(void *dev_hndl);
-static void qdma_s80_hard_hw_desc_err_process(void *dev_hndl);
-static void qdma_s80_hard_hw_trq_err_process(void *dev_hndl);
-static void qdma_s80_hard_hw_ram_sbe_err_process(void *dev_hndl);
-static void qdma_s80_hard_hw_ram_dbe_err_process(void *dev_hndl);
-
-static struct qdma_s80_hard_hw_err_info
-		qdma_s80_hard_err_info[QDMA_S80_HARD_ERRS_ALL] = {
-	/* Descriptor errors */
-	{
-		QDMA_S80_HARD_DSC_ERR_POISON,
-		"Poison error",
-		QDMA_S80_HARD_GLBL_DSC_ERR_MSK_ADDR,
-		QDMA_S80_HARD_GLBL_DSC_ERR_STS_ADDR,
-		GLBL_DSC_ERR_STS_POISON_MASK,
-		GLBL_ERR_STAT_ERR_DSC_MASK,
-		&qdma_s80_hard_hw_desc_err_process
-	},
-	{
-		QDMA_S80_HARD_DSC_ERR_UR_CA,
-		"Unsupported request or completer aborted error",
-		QDMA_S80_HARD_GLBL_DSC_ERR_MSK_ADDR,
-		QDMA_S80_HARD_GLBL_DSC_ERR_STS_ADDR,
-		GLBL_DSC_ERR_STS_UR_CA_MASK,
-		GLBL_ERR_STAT_ERR_DSC_MASK,
-		&qdma_s80_hard_hw_desc_err_process
-	},
-	{
-		QDMA_S80_HARD_DSC_ERR_PARAM,
-		"Parameter mismatch error",
-		QDMA_S80_HARD_GLBL_DSC_ERR_MSK_ADDR,
-		QDMA_S80_HARD_GLBL_DSC_ERR_STS_ADDR,
-		GLBL_DSC_ERR_STS_PARAM_MASK,
-		GLBL_ERR_STAT_ERR_DSC_MASK,
-		&qdma_s80_hard_hw_desc_err_process
-	},
-	{
-		QDMA_S80_HARD_DSC_ERR_ADDR,
-		"Address mismatch error",
-		QDMA_S80_HARD_GLBL_DSC_ERR_MSK_ADDR,
-		QDMA_S80_HARD_GLBL_DSC_ERR_STS_ADDR,
-		GLBL_DSC_ERR_STS_ADDR_MASK,
-		GLBL_ERR_STAT_ERR_DSC_MASK,
-		&qdma_s80_hard_hw_desc_err_process
-	},
-	{
-		QDMA_S80_HARD_DSC_ERR_TAG,
-		"Unexpected tag error",
-		QDMA_S80_HARD_GLBL_DSC_ERR_MSK_ADDR,
-		QDMA_S80_HARD_GLBL_DSC_ERR_STS_ADDR,
-		GLBL_DSC_ERR_STS_TAG_MASK,
-		GLBL_ERR_STAT_ERR_DSC_MASK,
-		&qdma_s80_hard_hw_desc_err_process
-	},
-	{
-		QDMA_S80_HARD_DSC_ERR_FLR,
-		"FLR error",
-		QDMA_S80_HARD_GLBL_DSC_ERR_MSK_ADDR,
-		QDMA_S80_HARD_GLBL_DSC_ERR_STS_ADDR,
-		GLBL_DSC_ERR_STS_FLR_MASK,
-		GLBL_ERR_STAT_ERR_DSC_MASK,
-		&qdma_s80_hard_hw_desc_err_process
-	},
-	{
-		QDMA_S80_HARD_DSC_ERR_TIMEOUT,
-		"Timed out error",
-		QDMA_S80_HARD_GLBL_DSC_ERR_MSK_ADDR,
-		QDMA_S80_HARD_GLBL_DSC_ERR_STS_ADDR,
-		GLBL_DSC_ERR_STS_TIMEOUT_MASK,
-		GLBL_ERR_STAT_ERR_DSC_MASK,
-		&qdma_s80_hard_hw_desc_err_process
-	},
-	{
-		QDMA_S80_HARD_DSC_ERR_DAT_POISON,
-		"Poison data error",
-		QDMA_S80_HARD_GLBL_DSC_ERR_MSK_ADDR,
-		QDMA_S80_HARD_GLBL_DSC_ERR_STS_ADDR,
-		GLBL_DSC_ERR_STS_DAT_POISON_MASK,
-		GLBL_ERR_STAT_ERR_DSC_MASK,
-		&qdma_s80_hard_hw_desc_err_process
-	},
-	{
-		QDMA_S80_HARD_DSC_ERR_FLR_CANCEL,
-		"Descriptor fetch cancelled due to FLR error",
-		QDMA_S80_HARD_GLBL_DSC_ERR_MSK_ADDR,
-		QDMA_S80_HARD_GLBL_DSC_ERR_STS_ADDR,
-		GLBL_DSC_ERR_STS_FLR_CANCEL_MASK,
-		GLBL_ERR_STAT_ERR_DSC_MASK,
-		&qdma_s80_hard_hw_desc_err_process
-	},
-	{
-		QDMA_S80_HARD_DSC_ERR_DMA,
-		"DMA engine error",
-		QDMA_S80_HARD_GLBL_DSC_ERR_MSK_ADDR,
-		QDMA_S80_HARD_GLBL_DSC_ERR_STS_ADDR,
-		GLBL_DSC_ERR_STS_DMA_MASK,
-		GLBL_ERR_STAT_ERR_DSC_MASK,
-		&qdma_s80_hard_hw_desc_err_process
-	},
-	{
-		QDMA_S80_HARD_DSC_ERR_DSC,
-		"Invalid PIDX update error",
-		QDMA_S80_HARD_GLBL_DSC_ERR_MSK_ADDR,
-		QDMA_S80_HARD_GLBL_DSC_ERR_STS_ADDR,
-		GLBL_DSC_ERR_STS_DSC_MASK,
-		GLBL_ERR_STAT_ERR_DSC_MASK,
-		&qdma_s80_hard_hw_desc_err_process
-	},
-	{
-		QDMA_S80_HARD_DSC_ERR_RQ_CANCEL,
-		"Descriptor fetch cancelled due to disable register status error",
-		QDMA_S80_HARD_GLBL_DSC_ERR_MSK_ADDR,
-		QDMA_S80_HARD_GLBL_DSC_ERR_STS_ADDR,
-		GLBL_DSC_ERR_STS_RQ_CANCEL_MASK,
-		GLBL_ERR_STAT_ERR_DSC_MASK,
-		&qdma_s80_hard_hw_desc_err_process
-	},
-	{
-		QDMA_S80_HARD_DSC_ERR_DBE,
-		"UNC_ERR_RAM_DBE error",
-		QDMA_S80_HARD_GLBL_DSC_ERR_MSK_ADDR,
-		QDMA_S80_HARD_GLBL_DSC_ERR_STS_ADDR,
-		GLBL_DSC_ERR_STS_DBE_MASK,
-		GLBL_ERR_STAT_ERR_DSC_MASK,
-		&qdma_s80_hard_hw_desc_err_process
-	},
-	{
-		QDMA_S80_HARD_DSC_ERR_SBE,
-		"UNC_ERR_RAM_SBE error",
-		QDMA_S80_HARD_GLBL_DSC_ERR_MSK_ADDR,
-		QDMA_S80_HARD_GLBL_DSC_ERR_STS_ADDR,
-		GLBL_DSC_ERR_STS_SBE_MASK,
-		GLBL_ERR_STAT_ERR_DSC_MASK,
-		&qdma_s80_hard_hw_desc_err_process
-	},
-	{
-		QDMA_S80_HARD_DSC_ERR_ALL,
-		"All Descriptor errors",
-		QDMA_S80_HARD_GLBL_DSC_ERR_MSK_ADDR,
-		QDMA_S80_HARD_GLBL_DSC_ERR_STS_ADDR,
-		QDMA_S80_HARD_DBE_ERR_ALL_MASK,
-		GLBL_ERR_STAT_ERR_DSC_MASK,
-		&qdma_s80_hard_hw_desc_err_process
-	},
-
-	/* TRQ errors */
-	{
-		QDMA_S80_HARD_TRQ_ERR_UNMAPPED,
-		"Access targeted unmapped register space via CSR pathway error",
-		QDMA_S80_HARD_GLBL_TRQ_ERR_MSK_ADDR,
-		QDMA_S80_HARD_GLBL_TRQ_ERR_STS_ADDR,
-		GLBL_TRQ_ERR_STS_UNMAPPED_MASK,
-		GLBL_ERR_STAT_ERR_TRQ_MASK,
-		&qdma_s80_hard_hw_trq_err_process
-	},
-	{
-		QDMA_S80_HARD_TRQ_ERR_QID_RANGE,
-		"Qid range error",
-		QDMA_S80_HARD_GLBL_TRQ_ERR_MSK_ADDR,
-		QDMA_S80_HARD_GLBL_TRQ_ERR_STS_ADDR,
-		GLBL_TRQ_ERR_STS_QID_RANGE_MASK,
-		GLBL_ERR_STAT_ERR_TRQ_MASK,
-		&qdma_s80_hard_hw_trq_err_process
-	},
-	{
-		QDMA_S80_HARD_TRQ_ERR_VF_ACCESS_ERR,
-		"VF attempted to access Global register space or Function map",
-		QDMA_S80_HARD_GLBL_TRQ_ERR_MSK_ADDR,
-		QDMA_S80_HARD_GLBL_TRQ_ERR_STS_ADDR,
-		GLBL_TRQ_ERR_STS_VF_ACCESS_ERR_MASK,
-		GLBL_ERR_STAT_ERR_TRQ_MASK,
-		&qdma_s80_hard_hw_trq_err_process
-	},
-	{
-		QDMA_S80_HARD_TRQ_ERR_TCP_TIMEOUT,
-		"Timeout on request to dma internal csr register",
-		QDMA_S80_HARD_GLBL_TRQ_ERR_MSK_ADDR,
-		QDMA_S80_HARD_GLBL_TRQ_ERR_STS_ADDR,
-		GLBL_TRQ_ERR_STS_TCP_TIMEOUT_MASK,
-		GLBL_ERR_STAT_ERR_TRQ_MASK,
-		&qdma_s80_hard_hw_trq_err_process
-	},
-	{
-		QDMA_S80_HARD_TRQ_ERR_ALL,
-		"All TRQ errors",
-		QDMA_S80_HARD_GLBL_TRQ_ERR_MSK_ADDR,
-		QDMA_S80_HARD_GLBL_TRQ_ERR_STS_ADDR,
-		QDMA_S80_HARD_GLBL_TRQ_ERR_ALL_MASK,
-		GLBL_ERR_STAT_ERR_TRQ_MASK,
-		&qdma_s80_hard_hw_trq_err_process
-	},
-
-	/* C2H Errors*/
-	{
-		QDMA_S80_HARD_ST_C2H_ERR_MTY_MISMATCH,
-		"MTY mismatch error",
-		QDMA_S80_HARD_C2H_ERR_MASK_ADDR,
-		QDMA_S80_HARD_C2H_ERR_STAT_ADDR,
-		C2H_ERR_STAT_MTY_MISMATCH_MASK,
-		GLBL_ERR_STAT_ERR_C2H_ST_MASK,
-		&qdma_s80_hard_hw_st_c2h_err_process
-	},
-	{
-		QDMA_S80_HARD_ST_C2H_ERR_LEN_MISMATCH,
-		"Packet length mismatch error",
-		QDMA_S80_HARD_C2H_ERR_MASK_ADDR,
-		QDMA_S80_HARD_C2H_ERR_STAT_ADDR,
-		C2H_ERR_STAT_LEN_MISMATCH_MASK,
-		GLBL_ERR_STAT_ERR_C2H_ST_MASK,
-		&qdma_s80_hard_hw_st_c2h_err_process
-	},
-	{
-		QDMA_S80_HARD_ST_C2H_ERR_QID_MISMATCH,
-		"Qid mismatch error",
-		QDMA_S80_HARD_C2H_ERR_MASK_ADDR,
-		QDMA_S80_HARD_C2H_ERR_STAT_ADDR,
-		C2H_ERR_STAT_QID_MISMATCH_MASK,
-		GLBL_ERR_STAT_ERR_C2H_ST_MASK,
-		&qdma_s80_hard_hw_st_c2h_err_process
-	},
-	{
-		QDMA_S80_HARD_ST_C2H_ERR_DESC_RSP_ERR,
-		"Descriptor error bit set",
-		QDMA_S80_HARD_C2H_ERR_MASK_ADDR,
-		QDMA_S80_HARD_C2H_ERR_STAT_ADDR,
-		C2H_ERR_STAT_DESC_RSP_ERR_MASK,
-		GLBL_ERR_STAT_ERR_C2H_ST_MASK,
-		&qdma_s80_hard_hw_st_c2h_err_process
-	},
-	{
-		QDMA_S80_HARD_ST_C2H_ERR_ENG_WPL_DATA_PAR_ERR,
-		"Data parity error",
-		QDMA_S80_HARD_C2H_ERR_MASK_ADDR,
-		QDMA_S80_HARD_C2H_ERR_STAT_ADDR,
-		C2H_ERR_STAT_ENG_WPL_DATA_PAR_ERR_MASK,
-		GLBL_ERR_STAT_ERR_C2H_ST_MASK,
-		&qdma_s80_hard_hw_st_c2h_err_process
-	},
-	{
-		QDMA_S80_HARD_ST_C2H_ERR_MSI_INT_FAIL,
-		"MSI got a fail response error",
-		QDMA_S80_HARD_C2H_ERR_MASK_ADDR,
-		QDMA_S80_HARD_C2H_ERR_STAT_ADDR,
-		C2H_ERR_STAT_MSI_INT_FAIL_MASK,
-		GLBL_ERR_STAT_ERR_C2H_ST_MASK,
-		&qdma_s80_hard_hw_st_c2h_err_process
-	},
-	{
-		QDMA_S80_HARD_ST_C2H_ERR_ERR_DESC_CNT,
-		"Descriptor count error",
-		QDMA_S80_HARD_C2H_ERR_MASK_ADDR,
-		QDMA_S80_HARD_C2H_ERR_STAT_ADDR,
-		C2H_ERR_STAT_ERR_DESC_CNT_MASK,
-		GLBL_ERR_STAT_ERR_C2H_ST_MASK,
-		&qdma_s80_hard_hw_st_c2h_err_process
-	},
-	{
-		QDMA_S80_HARD_ST_C2H_ERR_PORTID_CTXT_MISMATCH,
-		"Port id in packet and pfetch ctxt mismatch error",
-		QDMA_S80_HARD_C2H_ERR_MASK_ADDR,
-		QDMA_S80_HARD_C2H_ERR_STAT_ADDR,
-		C2H_ERR_STAT_PORT_ID_CTXT_MISMATCH_MASK,
-		GLBL_ERR_STAT_ERR_C2H_ST_MASK,
-		&qdma_s80_hard_hw_st_c2h_err_process
-	},
-	{
-		QDMA_S80_HARD_ST_C2H_ERR_PORTID_BYP_IN_MISMATCH,
-		"Port id in packet and bypass in mismatch error",
-		QDMA_S80_HARD_C2H_ERR_MASK_ADDR,
-		QDMA_S80_HARD_C2H_ERR_STAT_ADDR,
-		C2H_ERR_STAT_PORT_ID_CTXT_MISMATCH_MASK,
-		GLBL_ERR_STAT_ERR_C2H_ST_MASK,
-		&qdma_s80_hard_hw_st_c2h_err_process
-	},
-	{
-		QDMA_S80_HARD_ST_C2H_ERR_WRB_INV_Q_ERR,
-		"Writeback on invalid queue error",
-		QDMA_S80_HARD_C2H_ERR_MASK_ADDR,
-		QDMA_S80_HARD_C2H_ERR_STAT_ADDR,
-		C2H_ERR_STAT_WRB_INV_Q_ERR_MASK,
-		GLBL_ERR_STAT_ERR_C2H_ST_MASK,
-		&qdma_s80_hard_hw_st_c2h_err_process
-	},
-	{
-		QDMA_S80_HARD_ST_C2H_ERR_WRB_QFULL_ERR,
-		"Completion queue gets full error",
-		QDMA_S80_HARD_C2H_ERR_MASK_ADDR,
-		QDMA_S80_HARD_C2H_ERR_STAT_ADDR,
-		C2H_ERR_STAT_WRB_QFULL_ERR_MASK,
-		GLBL_ERR_STAT_ERR_C2H_ST_MASK,
-		&qdma_s80_hard_hw_st_c2h_err_process
-	},
-	{
-		QDMA_S80_HARD_ST_C2H_ERR_WRB_CIDX_ERR,
-		"Bad CIDX update by the software error",
-		QDMA_S80_HARD_C2H_ERR_MASK_ADDR,
-		QDMA_S80_HARD_C2H_ERR_STAT_ADDR,
-		C2H_ERR_STAT_WRB_CIDX_ERR_MASK,
-		GLBL_ERR_STAT_ERR_C2H_ST_MASK,
-		&qdma_s80_hard_hw_st_c2h_err_process
-	},
-	{
-		QDMA_S80_HARD_ST_C2H_ERR_WRB_PRTY_ERR,
-		"C2H completion Parity error",
-		QDMA_S80_HARD_C2H_ERR_MASK_ADDR,
-		QDMA_S80_HARD_C2H_ERR_STAT_ADDR,
-		C2H_ERR_STAT_WRB_PRTY_ERR_MASK,
-		GLBL_ERR_STAT_ERR_C2H_ST_MASK,
-		&qdma_s80_hard_hw_st_c2h_err_process
-	},
-	{
-		QDMA_S80_HARD_ST_C2H_ERR_ALL,
-		"All C2h errors",
-		QDMA_S80_HARD_C2H_ERR_MASK_ADDR,
-		QDMA_S80_HARD_C2H_ERR_STAT_ADDR,
-		QDMA_S80_HARD_C2H_ERR_ALL_MASK,
-		GLBL_ERR_STAT_ERR_C2H_ST_MASK,
-		&qdma_s80_hard_hw_st_c2h_err_process
-	},
-
-	/* C2H fatal errors */
-	{
-		QDMA_S80_HARD_ST_FATAL_ERR_MTY_MISMATCH,
-		"Fatal MTY mismatch error",
-		QDMA_S80_HARD_C2H_FATAL_ERR_MASK_ADDR,
-		QDMA_S80_HARD_C2H_FATAL_ERR_STAT_ADDR,
-		C2H_FATAL_ERR_STAT_MTY_MISMATCH_MASK,
-		GLBL_ERR_STAT_ERR_C2H_ST_MASK,
-		&qdma_s80_hard_hw_st_c2h_err_process
-	},
-	{
-		QDMA_S80_HARD_ST_FATAL_ERR_LEN_MISMATCH,
-		"Fatal Len mismatch error",
-		QDMA_S80_HARD_C2H_FATAL_ERR_MASK_ADDR,
-		QDMA_S80_HARD_C2H_FATAL_ERR_STAT_ADDR,
-		C2H_FATAL_ERR_STAT_LEN_MISMATCH_MASK,
-		GLBL_ERR_STAT_ERR_C2H_ST_MASK,
-		&qdma_s80_hard_hw_st_c2h_err_process
-	},
-	{
-		QDMA_S80_HARD_ST_FATAL_ERR_QID_MISMATCH,
-		"Fatal Qid mismatch error",
-		QDMA_S80_HARD_C2H_FATAL_ERR_MASK_ADDR,
-		QDMA_S80_HARD_C2H_FATAL_ERR_STAT_ADDR,
-		C2H_FATAL_ERR_STAT_QID_MISMATCH_MASK,
-		GLBL_ERR_STAT_ERR_C2H_ST_MASK,
-		&qdma_s80_hard_hw_st_c2h_err_process
-	},
-	{
-		QDMA_S80_HARD_ST_FATAL_ERR_TIMER_FIFO_RAM_RDBE,
-		"RAM double bit fatal error",
-		QDMA_S80_HARD_C2H_FATAL_ERR_MASK_ADDR,
-		QDMA_S80_HARD_C2H_FATAL_ERR_STAT_ADDR,
-		C2H_FATAL_ERR_STAT_TIMER_FIFO_RAM_RDBE_MASK,
-		GLBL_ERR_STAT_ERR_C2H_ST_MASK,
-		&qdma_s80_hard_hw_st_c2h_err_process
-	},
-	{
-		QDMA_S80_HARD_ST_FATAL_ERR_PFCH_II_RAM_RDBE,
-		"RAM double bit fatal error",
-		QDMA_S80_HARD_C2H_FATAL_ERR_MASK_ADDR,
-		QDMA_S80_HARD_C2H_FATAL_ERR_STAT_ADDR,
-		C2H_FATAL_ERR_STAT_PFCH_LL_RAM_RDBE_MASK,
-		GLBL_ERR_STAT_ERR_C2H_ST_MASK,
-		&qdma_s80_hard_hw_st_c2h_err_process
-	},
-	{
-		QDMA_S80_HARD_ST_FATAL_ERR_WRB_CTXT_RAM_RDBE,
-		"RAM double bit fatal error",
-		QDMA_S80_HARD_C2H_FATAL_ERR_MASK_ADDR,
-		QDMA_S80_HARD_C2H_FATAL_ERR_STAT_ADDR,
-		C2H_FATAL_ERR_STAT_WRB_CTXT_RAM_RDBE_MASK,
-		GLBL_ERR_STAT_ERR_C2H_ST_MASK,
-		&qdma_s80_hard_hw_st_c2h_err_process
-	},
-	{
-		QDMA_S80_HARD_ST_FATAL_ERR_PFCH_CTXT_RAM_RDBE,
-		"RAM double bit fatal error",
-		QDMA_S80_HARD_C2H_FATAL_ERR_MASK_ADDR,
-		QDMA_S80_HARD_C2H_FATAL_ERR_STAT_ADDR,
-		C2H_FATAL_ERR_STAT_PFCH_CTXT_RAM_RDBE_MASK,
-		GLBL_ERR_STAT_ERR_C2H_ST_MASK,
-		&qdma_s80_hard_hw_st_c2h_err_process
-	},
-	{
-		QDMA_S80_HARD_ST_FATAL_ERR_DESC_REQ_FIFO_RAM_RDBE,
-		"RAM double bit fatal error",
-		QDMA_S80_HARD_C2H_FATAL_ERR_MASK_ADDR,
-		QDMA_S80_HARD_C2H_FATAL_ERR_STAT_ADDR,
-		C2H_FATAL_ERR_STAT_DESC_REQ_FIFO_RAM_RDBE_MASK,
-		GLBL_ERR_STAT_ERR_C2H_ST_MASK,
-		&qdma_s80_hard_hw_st_c2h_err_process
-	},
-	{
-		QDMA_S80_HARD_ST_FATAL_ERR_INT_CTXT_RAM_RDBE,
-		"RAM double bit fatal error",
-		QDMA_S80_HARD_C2H_FATAL_ERR_MASK_ADDR,
-		QDMA_S80_HARD_C2H_FATAL_ERR_STAT_ADDR,
-		C2H_FATAL_ERR_STAT_INT_CTXT_RAM_RDBE_MASK,
-		GLBL_ERR_STAT_ERR_C2H_ST_MASK,
-		&qdma_s80_hard_hw_st_c2h_err_process
-	},
-	{
-		QDMA_S80_HARD_ST_FATAL_ERR_INT_QID2VEC_RAM_RDBE,
-		"RAM double bit fatal error",
-		QDMA_S80_HARD_C2H_FATAL_ERR_MASK_ADDR,
-		QDMA_S80_HARD_C2H_FATAL_ERR_STAT_ADDR,
-		C2H_FATAL_ERR_STAT_INT_QID2VEC_RAM_RDBE_MASK,
-		GLBL_ERR_STAT_ERR_C2H_ST_MASK,
-		&qdma_s80_hard_hw_st_c2h_err_process
-	},
-	{
-		QDMA_S80_HARD_ST_FATAL_ERR_WRB_COAL_DATA_RAM_RDBE,
-		"RAM double bit fatal error",
-		QDMA_S80_HARD_C2H_FATAL_ERR_MASK_ADDR,
-		QDMA_S80_HARD_C2H_FATAL_ERR_STAT_ADDR,
-		C2H_FATAL_ERR_STAT_WRB_COAL_DATA_RAM_RDBE_MASK,
-		GLBL_ERR_STAT_ERR_C2H_ST_MASK,
-		&qdma_s80_hard_hw_st_c2h_err_process
-	},
-	{
-		QDMA_S80_HARD_ST_FATAL_ERR_TUSER_FIFO_RAM_RDBE,
-		"RAM double bit fatal error",
-		QDMA_S80_HARD_C2H_FATAL_ERR_MASK_ADDR,
-		QDMA_S80_HARD_C2H_FATAL_ERR_STAT_ADDR,
-		C2H_FATAL_ERR_STAT_TUSER_FIFO_RAM_RDBE_MASK,
-		GLBL_ERR_STAT_ERR_C2H_ST_MASK,
-		&qdma_s80_hard_hw_st_c2h_err_process
-	},
-	{
-		QDMA_S80_HARD_ST_FATAL_ERR_QID_FIFO_RAM_RDBE,
-		"RAM double bit fatal error",
-		QDMA_S80_HARD_C2H_FATAL_ERR_MASK_ADDR,
-		QDMA_S80_HARD_C2H_FATAL_ERR_STAT_ADDR,
-		C2H_FATAL_ERR_STAT_QID_FIFO_RAM_RDBE_MASK,
-		GLBL_ERR_STAT_ERR_C2H_ST_MASK,
-		&qdma_s80_hard_hw_st_c2h_err_process
-	},
-	{
-		QDMA_S80_HARD_ST_FATAL_ERR_PAYLOAD_FIFO_RAM_RDBE,
-		"RAM double bit fatal error",
-		QDMA_S80_HARD_C2H_FATAL_ERR_MASK_ADDR,
-		QDMA_S80_HARD_C2H_FATAL_ERR_STAT_ADDR,
-		C2H_FATAL_ERR_STAT_PLD_FIFO_RAM_RDBE_MASK,
-		GLBL_ERR_STAT_ERR_C2H_ST_MASK,
-		&qdma_s80_hard_hw_st_c2h_err_process
-	},
-	{
-		QDMA_S80_HARD_ST_FATAL_ERR_WPL_DATA_PAR_ERR,
-		"RAM double bit fatal error",
-		QDMA_S80_HARD_C2H_FATAL_ERR_MASK_ADDR,
-		QDMA_S80_HARD_C2H_FATAL_ERR_STAT_ADDR,
-		C2H_FATAL_ERR_STAT_WPL_DATA_PAR_ERR_MASK,
-		GLBL_ERR_STAT_ERR_C2H_ST_MASK,
-		&qdma_s80_hard_hw_st_c2h_err_process
-	},
-	{
-		QDMA_S80_HARD_ST_FATAL_ERR_ALL,
-		"All fatal errors",
-		QDMA_S80_HARD_C2H_FATAL_ERR_MASK_ADDR,
-		QDMA_S80_HARD_C2H_FATAL_ERR_STAT_ADDR,
-		QDMA_S80_HARD_C2H_FATAL_ERR_ALL_MASK,
-		GLBL_ERR_STAT_ERR_C2H_ST_MASK,
-		&qdma_s80_hard_hw_st_c2h_err_process
-	},
-
-	/* H2C St errors */
-	{
-		QDMA_S80_HARD_ST_H2C_ERR_ZERO_LEN_DESC_ERR,
-		"Zero length descriptor error",
-		QDMA_S80_HARD_H2C_ERR_MASK_ADDR,
-		QDMA_S80_HARD_H2C_ERR_STAT_ADDR,
-		H2C_ERR_STAT_ZERO_LEN_DS_MASK,
-		GLBL_ERR_STAT_ERR_H2C_ST_MASK,
-		&qdma_s80_hard_hw_st_h2c_err_process
-	},
-	{
-		QDMA_S80_HARD_ST_H2C_ERR_SDI_MRKR_REQ_MOP_ERR,
-		"A non-EOP descriptor received",
-		QDMA_S80_HARD_H2C_ERR_MASK_ADDR,
-		QDMA_S80_HARD_H2C_ERR_STAT_ADDR,
-		H2C_ERR_STAT_SDI_MRKR_REQ_MOP_ERR_MASK,
-		GLBL_ERR_STAT_ERR_H2C_ST_MASK,
-		&qdma_s80_hard_hw_st_h2c_err_process
-	},
-	{
-		QDMA_S80_HARD_ST_H2C_ERR_NO_DMA_DSC,
-		"No DMA descriptor received error",
-		QDMA_S80_HARD_H2C_ERR_MASK_ADDR,
-		QDMA_S80_HARD_H2C_ERR_STAT_ADDR,
-		H2C_ERR_STAT_NO_DMA_DS_MASK,
-		GLBL_ERR_STAT_ERR_H2C_ST_MASK,
-		&qdma_s80_hard_hw_st_h2c_err_process
-	},
-	{
-		QDMA_S80_HARD_ST_H2C_ERR_DBE,
-		"Double bit error detected on H2C-ST data error",
-		QDMA_S80_HARD_H2C_ERR_MASK_ADDR,
-		QDMA_S80_HARD_H2C_ERR_STAT_ADDR,
-		H2C_ERR_STAT_DBE_MASK,
-		GLBL_ERR_STAT_ERR_H2C_ST_MASK,
-		&qdma_s80_hard_hw_st_h2c_err_process
-	},
-	{
-		QDMA_S80_HARD_ST_H2C_ERR_SBE,
-		"Single bit error detected on H2C-ST data error",
-		QDMA_S80_HARD_H2C_ERR_MASK_ADDR,
-		QDMA_S80_HARD_H2C_ERR_STAT_ADDR,
-		H2C_ERR_STAT_SBE_MASK,
-		GLBL_ERR_STAT_ERR_H2C_ST_MASK,
-		&qdma_s80_hard_hw_st_h2c_err_process
-	},
-	{
-		QDMA_S80_HARD_ST_H2C_ERR_ALL,
-		"All H2C errors",
-		QDMA_S80_HARD_H2C_ERR_MASK_ADDR,
-		QDMA_S80_HARD_H2C_ERR_STAT_ADDR,
-		QDMA_S80_HARD_H2C_ERR_ALL_MASK,
-		GLBL_ERR_STAT_ERR_H2C_ST_MASK,
-		&qdma_s80_hard_hw_st_h2c_err_process
-	},
-
-	/* SBE errors */
-	{
-		QDMA_S80_HARD_SBE_ERR_MI_H2C0_DAT,
-		"H2C MM data buffer single bit ECC error",
-		QDMA_S80_HARD_RAM_SBE_MSK_A_ADDR,
-		QDMA_S80_HARD_RAM_SBE_STS_A_ADDR,
-		RAM_SBE_STS_A_MI_H2C0_DAT_MASK,
-		GLBL_ERR_STAT_ERR_RAM_SBE_MASK,
-		&qdma_s80_hard_hw_ram_sbe_err_process
-	},
-	{
-		QDMA_S80_HARD_SBE_ERR_MI_C2H0_DAT,
-		"C2H MM data buffer single bit ECC error",
-		QDMA_S80_HARD_RAM_SBE_MSK_A_ADDR,
-		QDMA_S80_HARD_RAM_SBE_STS_A_ADDR,
-		RAM_SBE_STS_A_MI_C2H0_DAT_MASK,
-		GLBL_ERR_STAT_ERR_RAM_SBE_MASK,
-		&qdma_s80_hard_hw_ram_sbe_err_process
-	},
-	{
-		QDMA_S80_HARD_SBE_ERR_H2C_RD_BRG_DAT,
-		"Bridge master read single bit ECC error",
-		QDMA_S80_HARD_RAM_SBE_MSK_A_ADDR,
-		QDMA_S80_HARD_RAM_SBE_STS_A_ADDR,
-		RAM_SBE_STS_A_H2C_RD_BRG_DAT_MASK,
-		GLBL_ERR_STAT_ERR_RAM_SBE_MASK,
-		&qdma_s80_hard_hw_ram_sbe_err_process
-	},
-	{
-		QDMA_S80_HARD_SBE_ERR_H2C_WR_BRG_DAT,
-		"Bridge master write single bit ECC error",
-		QDMA_S80_HARD_RAM_SBE_MSK_A_ADDR,
-		QDMA_S80_HARD_RAM_SBE_STS_A_ADDR,
-		RAM_SBE_STS_A_H2C_WR_BRG_DAT_MASK,
-		GLBL_ERR_STAT_ERR_RAM_SBE_MASK,
-		&qdma_s80_hard_hw_ram_sbe_err_process
-	},
-	{
-		QDMA_S80_HARD_SBE_ERR_C2H_RD_BRG_DAT,
-		"Bridge slave read data buffer single bit ECC error",
-		QDMA_S80_HARD_RAM_SBE_MSK_A_ADDR,
-		QDMA_S80_HARD_RAM_SBE_STS_A_ADDR,
-		RAM_SBE_STS_A_C2H_RD_BRG_DAT_MASK,
-		GLBL_ERR_STAT_ERR_RAM_SBE_MASK,
-		&qdma_s80_hard_hw_ram_sbe_err_process
-	},
-	{
-		QDMA_S80_HARD_SBE_ERR_C2H_WR_BRG_DAT,
-		"Bridge slave write data buffer single bit ECC error",
-		QDMA_S80_HARD_RAM_SBE_MSK_A_ADDR,
-		QDMA_S80_HARD_RAM_SBE_STS_A_ADDR,
-		RAM_SBE_STS_A_C2H_WR_BRG_DAT_MASK,
-		GLBL_ERR_STAT_ERR_RAM_SBE_MASK,
-		&qdma_s80_hard_hw_ram_sbe_err_process
-	},
-	{
-		QDMA_S80_HARD_SBE_ERR_FUNC_MAP,
-		"Function map RAM single bit ECC error",
-		QDMA_S80_HARD_RAM_SBE_MSK_A_ADDR,
-		QDMA_S80_HARD_RAM_SBE_STS_A_ADDR,
-		RAM_SBE_STS_A_FUNC_MAP_MASK,
-		GLBL_ERR_STAT_ERR_RAM_SBE_MASK,
-		&qdma_s80_hard_hw_ram_sbe_err_process
-	},
-	{
-		QDMA_S80_HARD_SBE_ERR_DSC_HW_CTXT,
-		"Descriptor engine hardware context RAM single bit ECC error",
-		QDMA_S80_HARD_RAM_SBE_MSK_A_ADDR,
-		QDMA_S80_HARD_RAM_SBE_STS_A_ADDR,
-		RAM_SBE_STS_A_DSC_HW_CTXT_MASK,
-		GLBL_ERR_STAT_ERR_RAM_SBE_MASK,
-		&qdma_s80_hard_hw_ram_sbe_err_process
-	},
-	{
-		QDMA_S80_HARD_SBE_ERR_DSC_CRD_RCV,
-		"Descriptor engine receive credit context RAM single bit ECC error",
-		QDMA_S80_HARD_RAM_SBE_MSK_A_ADDR,
-		QDMA_S80_HARD_RAM_SBE_STS_A_ADDR,
-		RAM_SBE_STS_A_DSC_CRD_RCV_MASK,
-		GLBL_ERR_STAT_ERR_RAM_SBE_MASK,
-		&qdma_s80_hard_hw_ram_sbe_err_process
-	},
-	{
-		QDMA_S80_HARD_SBE_ERR_DSC_SW_CTXT,
-		"Descriptor engine software context RAM single bit ECC error",
-		QDMA_S80_HARD_RAM_SBE_MSK_A_ADDR,
-		QDMA_S80_HARD_RAM_SBE_STS_A_ADDR,
-		RAM_SBE_STS_A_DSC_SW_CTXT_MASK,
-		GLBL_ERR_STAT_ERR_RAM_SBE_MASK,
-		&qdma_s80_hard_hw_ram_sbe_err_process
-	},
-	{
-		QDMA_S80_HARD_SBE_ERR_DSC_CPLI,
-		"Descriptor engine fetch completion information RAM single bit ECC error",
-		QDMA_S80_HARD_RAM_SBE_MSK_A_ADDR,
-		QDMA_S80_HARD_RAM_SBE_STS_A_ADDR,
-		RAM_SBE_STS_A_DSC_CPLI_MASK,
-		GLBL_ERR_STAT_ERR_RAM_SBE_MASK,
-		&qdma_s80_hard_hw_ram_sbe_err_process
-	},
-	{
-		QDMA_S80_HARD_SBE_ERR_DSC_CPLD,
-		"Descriptor engine fetch completion data RAM single bit ECC error",
-		QDMA_S80_HARD_RAM_SBE_MSK_A_ADDR,
-		QDMA_S80_HARD_RAM_SBE_STS_A_ADDR,
-		RAM_SBE_STS_A_DSC_CPLD_MASK,
-		GLBL_ERR_STAT_ERR_RAM_SBE_MASK,
-		&qdma_s80_hard_hw_ram_sbe_err_process
-	},
-	{
-		QDMA_S80_HARD_SBE_ERR_PASID_CTXT_RAM,
-		"Pasid ctxt FIFO RAM single bit ECC error",
-		QDMA_S80_HARD_RAM_SBE_MSK_A_ADDR,
-		QDMA_S80_HARD_RAM_SBE_STS_A_ADDR,
-		RAM_SBE_STS_A_PASID_CTXT_RAM_MASK,
-		GLBL_ERR_STAT_ERR_RAM_SBE_MASK,
-		&qdma_s80_hard_hw_ram_sbe_err_process
-	},
-	{
-		QDMA_S80_HARD_SBE_ERR_TIMER_FIFO_RAM,
-		"Timer fifo RAM single bit ECC error",
-		QDMA_S80_HARD_RAM_SBE_MSK_A_ADDR,
-		QDMA_S80_HARD_RAM_SBE_STS_A_ADDR,
-		RAM_SBE_STS_A_TIMER_FIFO_RAM_MASK,
-		GLBL_ERR_STAT_ERR_RAM_SBE_MASK,
-		&qdma_s80_hard_hw_ram_sbe_err_process
-	},
-	{
-		QDMA_S80_HARD_SBE_ERR_PAYLOAD_FIFO_RAM,
-		"C2H ST payload FIFO RAM single bit ECC error",
-		QDMA_S80_HARD_RAM_SBE_MSK_A_ADDR,
-		QDMA_S80_HARD_RAM_SBE_STS_A_ADDR,
-		RAM_SBE_STS_A_PLD_FIFO_RAM_MASK,
-		GLBL_ERR_STAT_ERR_RAM_SBE_MASK,
-		&qdma_s80_hard_hw_ram_sbe_err_process
-	},
-	{
-		QDMA_S80_HARD_SBE_ERR_QID_FIFO_RAM,
-		"C2H ST QID FIFO RAM single bit ECC error",
-		QDMA_S80_HARD_RAM_SBE_MSK_A_ADDR,
-		QDMA_S80_HARD_RAM_SBE_STS_A_ADDR,
-		RAM_SBE_STS_A_QID_FIFO_RAM_MASK,
-		GLBL_ERR_STAT_ERR_RAM_SBE_MASK,
-		&qdma_s80_hard_hw_ram_sbe_err_process
-	},
-	{
-		QDMA_S80_HARD_SBE_ERR_TUSER_FIFO_RAM,
-		"C2H ST TUSER FIFO RAM single bit ECC error",
-		QDMA_S80_HARD_RAM_SBE_MSK_A_ADDR,
-		QDMA_S80_HARD_RAM_SBE_STS_A_ADDR,
-		RAM_SBE_STS_A_TUSER_FIFO_RAM_MASK,
-		GLBL_ERR_STAT_ERR_RAM_SBE_MASK,
-		&qdma_s80_hard_hw_ram_sbe_err_process
-	},
-	{
-		QDMA_S80_HARD_SBE_ERR_WRB_COAL_DATA_RAM,
-		"Writeback Coalescing RAM single bit ECC error",
-		QDMA_S80_HARD_RAM_SBE_MSK_A_ADDR,
-		QDMA_S80_HARD_RAM_SBE_STS_A_ADDR,
-		RAM_SBE_STS_A_WRB_COAL_DATA_RAM_MASK,
-		GLBL_ERR_STAT_ERR_RAM_SBE_MASK,
-		&qdma_s80_hard_hw_ram_sbe_err_process
-	},
-	{
-		QDMA_S80_HARD_SBE_ERR_INT_QID2VEC_RAM,
-		"Interrupt QID2VEC RAM single bit ECC error",
-		QDMA_S80_HARD_RAM_SBE_MSK_A_ADDR,
-		QDMA_S80_HARD_RAM_SBE_STS_A_ADDR,
-		RAM_SBE_STS_A_INT_QID2VEC_RAM_MASK,
-		GLBL_ERR_STAT_ERR_RAM_SBE_MASK,
-		&qdma_s80_hard_hw_ram_sbe_err_process
-	},
-	{
-		QDMA_S80_HARD_SBE_ERR_INT_CTXT_RAM,
-		"Interrupt context RAM single bit ECC error",
-		QDMA_S80_HARD_RAM_SBE_MSK_A_ADDR,
-		QDMA_S80_HARD_RAM_SBE_STS_A_ADDR,
-		RAM_SBE_STS_A_INT_CTXT_RAM_MASK,
-		GLBL_ERR_STAT_ERR_RAM_SBE_MASK,
-		&qdma_s80_hard_hw_ram_sbe_err_process
-	},
-	{
-		QDMA_S80_HARD_SBE_ERR_DESC_REQ_FIFO_RAM,
-		"C2H ST descriptor request RAM single bit ECC error",
-		QDMA_S80_HARD_RAM_SBE_MSK_A_ADDR,
-		QDMA_S80_HARD_RAM_SBE_STS_A_ADDR,
-		RAM_SBE_STS_A_DESC_REQ_FIFO_RAM_MASK,
-		GLBL_ERR_STAT_ERR_RAM_SBE_MASK,
-		&qdma_s80_hard_hw_ram_sbe_err_process
-	},
-	{
-		QDMA_S80_HARD_SBE_ERR_PFCH_CTXT_RAM,
-		"C2H ST prefetch RAM single bit ECC error",
-		QDMA_S80_HARD_RAM_SBE_MSK_A_ADDR,
-		QDMA_S80_HARD_RAM_SBE_STS_A_ADDR,
-		RAM_SBE_STS_A_PFCH_CTXT_RAM_MASK,
-		GLBL_ERR_STAT_ERR_RAM_SBE_MASK,
-		&qdma_s80_hard_hw_ram_sbe_err_process
-	},
-	{
-		QDMA_S80_HARD_SBE_ERR_WRB_CTXT_RAM,
-		"C2H ST completion context RAM single bit ECC error",
-		QDMA_S80_HARD_RAM_SBE_MSK_A_ADDR,
-		QDMA_S80_HARD_RAM_SBE_STS_A_ADDR,
-		RAM_SBE_STS_A_WRB_CTXT_RAM_MASK,
-		GLBL_ERR_STAT_ERR_RAM_SBE_MASK,
-		&qdma_s80_hard_hw_ram_sbe_err_process
-	},
-	{
-		QDMA_S80_HARD_SBE_ERR_PFCH_LL_RAM,
-		"C2H ST prefetch list RAM single bit ECC error",
-		QDMA_S80_HARD_RAM_SBE_MSK_A_ADDR,
-		QDMA_S80_HARD_RAM_SBE_STS_A_ADDR,
-		RAM_SBE_STS_A_PFCH_LL_RAM_MASK,
-		GLBL_ERR_STAT_ERR_RAM_SBE_MASK,
-		&qdma_s80_hard_hw_ram_sbe_err_process
-	},
-	{
-		QDMA_S80_HARD_SBE_ERR_ALL,
-		"All SBE errors",
-		QDMA_S80_HARD_RAM_SBE_MSK_A_ADDR,
-		QDMA_S80_HARD_RAM_SBE_STS_A_ADDR,
-		QDMA_S80_HARD_SBE_ERR_ALL_MASK,
-		GLBL_ERR_STAT_ERR_RAM_SBE_MASK,
-		&qdma_s80_hard_hw_ram_sbe_err_process
-	},
-
-
-	/* DBE errors */
-	{
-		QDMA_S80_HARD_DBE_ERR_MI_H2C0_DAT,
-		"H2C MM data buffer single bit ECC error",
-		QDMA_S80_HARD_RAM_DBE_MSK_A_ADDR,
-		QDMA_S80_HARD_RAM_DBE_STS_A_ADDR,
-		RAM_DBE_STS_A_MI_H2C0_DAT_MASK,
-		GLBL_ERR_STAT_ERR_RAM_DBE_MASK,
-		&qdma_s80_hard_hw_ram_dbe_err_process
-	},
-	{
-		QDMA_S80_HARD_DBE_ERR_MI_C2H0_DAT,
-		"C2H MM data buffer single bit ECC error",
-		QDMA_S80_HARD_RAM_DBE_MSK_A_ADDR,
-		QDMA_S80_HARD_RAM_DBE_STS_A_ADDR,
-		RAM_DBE_STS_A_MI_C2H0_DAT_MASK,
-		GLBL_ERR_STAT_ERR_RAM_DBE_MASK,
-		&qdma_s80_hard_hw_ram_dbe_err_process
-	},
-	{
-		QDMA_S80_HARD_DBE_ERR_H2C_RD_BRG_DAT,
-		"Bridge master read single bit ECC error",
-		QDMA_S80_HARD_RAM_DBE_MSK_A_ADDR,
-		QDMA_S80_HARD_RAM_DBE_STS_A_ADDR,
-		RAM_DBE_STS_A_H2C_RD_BRG_DAT_MASK,
-		GLBL_ERR_STAT_ERR_RAM_DBE_MASK,
-		&qdma_s80_hard_hw_ram_dbe_err_process
-	},
-	{
-		QDMA_S80_HARD_DBE_ERR_H2C_WR_BRG_DAT,
-		"Bridge master write single bit ECC error",
-		QDMA_S80_HARD_RAM_DBE_MSK_A_ADDR,
-		QDMA_S80_HARD_RAM_DBE_STS_A_ADDR,
-		RAM_DBE_STS_A_H2C_WR_BRG_DAT_MASK,
-		GLBL_ERR_STAT_ERR_RAM_DBE_MASK,
-		&qdma_s80_hard_hw_ram_dbe_err_process
-	},
-	{
-		QDMA_S80_HARD_DBE_ERR_C2H_RD_BRG_DAT,
-		"Bridge slave read data buffer single bit ECC error",
-		QDMA_S80_HARD_RAM_DBE_MSK_A_ADDR,
-		QDMA_S80_HARD_RAM_DBE_STS_A_ADDR,
-		RAM_DBE_STS_A_C2H_RD_BRG_DAT_MASK,
-		GLBL_ERR_STAT_ERR_RAM_DBE_MASK,
-		&qdma_s80_hard_hw_ram_dbe_err_process
-	},
-	{
-		QDMA_S80_HARD_DBE_ERR_C2H_WR_BRG_DAT,
-		"Bridge slave write data buffer single bit ECC error",
-		QDMA_S80_HARD_RAM_DBE_MSK_A_ADDR,
-		QDMA_S80_HARD_RAM_DBE_STS_A_ADDR,
-		RAM_DBE_STS_A_C2H_WR_BRG_DAT_MASK,
-		GLBL_ERR_STAT_ERR_RAM_DBE_MASK,
-		&qdma_s80_hard_hw_ram_dbe_err_process
-	},
-	{
-		QDMA_S80_HARD_DBE_ERR_FUNC_MAP,
-		"Function map RAM single bit ECC error",
-		QDMA_S80_HARD_RAM_DBE_MSK_A_ADDR,
-		QDMA_S80_HARD_RAM_DBE_STS_A_ADDR,
-		RAM_DBE_STS_A_FUNC_MAP_MASK,
-		GLBL_ERR_STAT_ERR_RAM_DBE_MASK,
-		&qdma_s80_hard_hw_ram_dbe_err_process
-	},
-	{
-		QDMA_S80_HARD_DBE_ERR_DSC_HW_CTXT,
-		"Descriptor engine hardware context RAM single bit ECC error",
-		QDMA_S80_HARD_RAM_DBE_MSK_A_ADDR,
-		QDMA_S80_HARD_RAM_DBE_STS_A_ADDR,
-		RAM_DBE_STS_A_DSC_HW_CTXT_MASK,
-		GLBL_ERR_STAT_ERR_RAM_DBE_MASK,
-		&qdma_s80_hard_hw_ram_dbe_err_process
-	},
-	{
-		QDMA_S80_HARD_DBE_ERR_DSC_CRD_RCV,
-		"Descriptor engine receive credit context RAM single bit ECC error",
-		QDMA_S80_HARD_RAM_DBE_MSK_A_ADDR,
-		QDMA_S80_HARD_RAM_DBE_STS_A_ADDR,
-		RAM_DBE_STS_A_DSC_CRD_RCV_MASK,
-		GLBL_ERR_STAT_ERR_RAM_DBE_MASK,
-		&qdma_s80_hard_hw_ram_dbe_err_process
-	},
-	{
-		QDMA_S80_HARD_DBE_ERR_DSC_SW_CTXT,
-		"Descriptor engine software context RAM single bit ECC error",
-		QDMA_S80_HARD_RAM_DBE_MSK_A_ADDR,
-		QDMA_S80_HARD_RAM_DBE_STS_A_ADDR,
-		RAM_DBE_STS_A_DSC_SW_CTXT_MASK,
-		GLBL_ERR_STAT_ERR_RAM_DBE_MASK,
-		&qdma_s80_hard_hw_ram_dbe_err_process
-	},
-	{
-		QDMA_S80_HARD_DBE_ERR_DSC_CPLI,
-		"Descriptor engine fetch completion information RAM single bit ECC error",
-		QDMA_S80_HARD_RAM_DBE_MSK_A_ADDR,
-		QDMA_S80_HARD_RAM_DBE_STS_A_ADDR,
-		RAM_DBE_STS_A_DSC_CPLI_MASK,
-		GLBL_ERR_STAT_ERR_RAM_DBE_MASK,
-		&qdma_s80_hard_hw_ram_dbe_err_process
-	},
-	{
-		QDMA_S80_HARD_DBE_ERR_DSC_CPLD,
-		"Descriptor engine fetch completion data RAM single bit ECC error",
-		QDMA_S80_HARD_RAM_DBE_MSK_A_ADDR,
-		QDMA_S80_HARD_RAM_DBE_STS_A_ADDR,
-		RAM_DBE_STS_A_DSC_CPLD_MASK,
-		GLBL_ERR_STAT_ERR_RAM_DBE_MASK,
-		&qdma_s80_hard_hw_ram_dbe_err_process
-	},
-	{
-		QDMA_S80_HARD_DBE_ERR_PASID_CTXT_RAM,
-		"PASID CTXT RAM single bit ECC error",
-		QDMA_S80_HARD_RAM_DBE_MSK_A_ADDR,
-		QDMA_S80_HARD_RAM_DBE_STS_A_ADDR,
-		RAM_DBE_STS_A_PASID_CTXT_RAM_MASK,
-		GLBL_ERR_STAT_ERR_RAM_DBE_MASK,
-		&qdma_s80_hard_hw_ram_dbe_err_process
-	},
-	{
-		QDMA_S80_HARD_DBE_ERR_TIMER_FIFO_RAM,
-		"Timer fifo RAM single bit ECC error",
-		QDMA_S80_HARD_RAM_DBE_MSK_A_ADDR,
-		QDMA_S80_HARD_RAM_DBE_STS_A_ADDR,
-		RAM_DBE_STS_A_TIMER_FIFO_RAM_MASK,
-		GLBL_ERR_STAT_ERR_RAM_DBE_MASK,
-		&qdma_s80_hard_hw_ram_dbe_err_process
-	},
-	{
-		QDMA_S80_HARD_DBE_ERR_PAYLOAD_FIFO_RAM,
-		"Payload fifo RAM single bit ECC error",
-		QDMA_S80_HARD_RAM_DBE_MSK_A_ADDR,
-		QDMA_S80_HARD_RAM_DBE_STS_A_ADDR,
-		RAM_DBE_STS_A_PLD_FIFO_RAM_MASK,
-		GLBL_ERR_STAT_ERR_RAM_DBE_MASK,
-		&qdma_s80_hard_hw_ram_dbe_err_process
-	},
-	{
-		QDMA_S80_HARD_DBE_ERR_QID_FIFO_RAM,
-		"C2H ST QID FIFO RAM single bit ECC error",
-		QDMA_S80_HARD_RAM_DBE_MSK_A_ADDR,
-		QDMA_S80_HARD_RAM_DBE_STS_A_ADDR,
-		RAM_DBE_STS_A_QID_FIFO_RAM_MASK,
-		GLBL_ERR_STAT_ERR_RAM_DBE_MASK,
-		&qdma_s80_hard_hw_ram_dbe_err_process
-	},
-	{
-		QDMA_S80_HARD_DBE_ERR_WRB_COAL_DATA_RAM,
-		"Writeback Coalescing RAM single bit ECC error",
-		QDMA_S80_HARD_RAM_DBE_MSK_A_ADDR,
-		QDMA_S80_HARD_RAM_DBE_STS_A_ADDR,
-		RAM_DBE_STS_A_WRB_COAL_DATA_RAM_MASK,
-		GLBL_ERR_STAT_ERR_RAM_DBE_MASK,
-		&qdma_s80_hard_hw_ram_dbe_err_process
-	},
-	{
-		QDMA_S80_HARD_DBE_ERR_INT_QID2VEC_RAM,
-		"QID2VEC RAM single bit ECC error",
-		QDMA_S80_HARD_RAM_DBE_MSK_A_ADDR,
-		QDMA_S80_HARD_RAM_DBE_STS_A_ADDR,
-		RAM_DBE_STS_A_INT_QID2VEC_RAM_MASK,
-		GLBL_ERR_STAT_ERR_RAM_DBE_MASK,
-		&qdma_s80_hard_hw_ram_dbe_err_process
-	},
-	{
-		QDMA_S80_HARD_DBE_ERR_INT_CTXT_RAM,
-		"Interrupt context RAM single bit ECC error",
-		QDMA_S80_HARD_RAM_DBE_MSK_A_ADDR,
-		QDMA_S80_HARD_RAM_DBE_STS_A_ADDR,
-		RAM_DBE_STS_A_INT_CTXT_RAM_MASK,
-		GLBL_ERR_STAT_ERR_RAM_DBE_MASK,
-		&qdma_s80_hard_hw_ram_dbe_err_process
-	},
-	{
-		QDMA_S80_HARD_DBE_ERR_DESC_REQ_FIFO_RAM,
-		"C2H ST descriptor request RAM single bit ECC error",
-		QDMA_S80_HARD_RAM_DBE_MSK_A_ADDR,
-		QDMA_S80_HARD_RAM_DBE_STS_A_ADDR,
-		RAM_DBE_STS_A_DESC_REQ_FIFO_RAM_MASK,
-		GLBL_ERR_STAT_ERR_RAM_DBE_MASK,
-		&qdma_s80_hard_hw_ram_dbe_err_process
-	},
-	{
-		QDMA_S80_HARD_DBE_ERR_PFCH_CTXT_RAM,
-		"C2H ST prefetch RAM single bit ECC error",
-		QDMA_S80_HARD_RAM_DBE_MSK_A_ADDR,
-		QDMA_S80_HARD_RAM_DBE_STS_A_ADDR,
-		RAM_DBE_STS_A_PFCH_CTXT_RAM_MASK,
-		GLBL_ERR_STAT_ERR_RAM_DBE_MASK,
-		&qdma_s80_hard_hw_ram_dbe_err_process
-	},
-	{
-		QDMA_S80_HARD_DBE_ERR_WRB_CTXT_RAM,
-		"C2H ST completion context RAM single bit ECC error",
-		QDMA_S80_HARD_RAM_DBE_MSK_A_ADDR,
-		QDMA_S80_HARD_RAM_DBE_STS_A_ADDR,
-		RAM_DBE_STS_A_WRB_CTXT_RAM_MASK,
-		GLBL_ERR_STAT_ERR_RAM_DBE_MASK,
-		&qdma_s80_hard_hw_ram_dbe_err_process
-	},
-	{
-		QDMA_S80_HARD_DBE_ERR_PFCH_LL_RAM,
-		"C2H ST prefetch list RAM single bit ECC error",
-		QDMA_S80_HARD_RAM_DBE_MSK_A_ADDR,
-		QDMA_S80_HARD_RAM_DBE_STS_A_ADDR,
-		RAM_DBE_STS_A_PFCH_LL_RAM_MASK,
-		GLBL_ERR_STAT_ERR_RAM_DBE_MASK,
-		&qdma_s80_hard_hw_ram_dbe_err_process
-	},
-	{
-		QDMA_S80_HARD_DBE_ERR_ALL,
-		"All DBE errors",
-		QDMA_S80_HARD_RAM_DBE_MSK_A_ADDR,
-		QDMA_S80_HARD_RAM_DBE_STS_A_ADDR,
-		QDMA_S80_HARD_DBE_ERR_ALL_MASK,
-		GLBL_ERR_STAT_ERR_RAM_DBE_MASK,
-		&qdma_s80_hard_hw_ram_dbe_err_process
-	}
-};
-
-static int32_t all_qdma_s80_hard_hw_errs[
-		QDMA_S80_HARD_TOTAL_LEAF_ERROR_AGGREGATORS] = {
-
-	QDMA_S80_HARD_DSC_ERR_ALL,
-	QDMA_S80_HARD_TRQ_ERR_ALL,
-	QDMA_S80_HARD_ST_C2H_ERR_ALL,
-	QDMA_S80_HARD_ST_FATAL_ERR_ALL,
-	QDMA_S80_HARD_ST_H2C_ERR_ALL,
-	QDMA_S80_HARD_SBE_ERR_ALL,
-	QDMA_S80_HARD_DBE_ERR_ALL
-};
-
-
-
-union qdma_s80_hard_ind_ctxt_cmd {
-	uint32_t word;
-	struct {
-		uint32_t busy:1;
-		uint32_t sel:4;
-		uint32_t op:2;
-		uint32_t qid:11;
-		uint32_t rsvd:14;
-	} bits;
-};
-
-struct qdma_s80_hard_indirect_ctxt_regs {
-	uint32_t qdma_ind_ctxt_data[QDMA_S80_HARD_IND_CTXT_DATA_NUM_REGS];
-	uint32_t qdma_ind_ctxt_mask[QDMA_S80_HARD_IND_CTXT_DATA_NUM_REGS];
-	union qdma_s80_hard_ind_ctxt_cmd cmd;
-};
-
-static struct qctx_entry qdma_s80_hard_sw_ctxt_entries[] = {
-	{"PIDX", 0},
-	{"IRQ Arm", 0},
-	{"Queue Enable", 0},
-	{"Fetch Credit Enable", 0},
-	{"Write back/Intr Check", 0},
-	{"Write back/Intr Interval", 0},
-	{"Function Id", 0},
-	{"Ring Size", 0},
-	{"Descriptor Size", 0},
-	{"Bypass Enable", 0},
-	{"MM Channel", 0},
-	{"Writeback Enable", 0},
-	{"Interrupt Enable", 0},
-	{"Port Id", 0},
-	{"Interrupt No Last", 0},
-	{"Error", 0},
-	{"Writeback Error Sent", 0},
-	{"IRQ Request", 0},
-	{"Marker Disable", 0},
-	{"Is Memory Mapped", 0},
-	{"Descriptor Ring Base Addr (Low)", 0},
-	{"Descriptor Ring Base Addr (High)", 0},
-};
-
-static struct qctx_entry qdma_s80_hard_hw_ctxt_entries[] = {
-	{"CIDX", 0},
-	{"Credits Consumed", 0},
-	{"Descriptors Pending", 0},
-	{"Queue Invalid No Desc Pending", 0},
-	{"Eviction Pending", 0},
-	{"Fetch Pending", 0},
-};
-
-static struct qctx_entry qdma_s80_hard_credit_ctxt_entries[] = {
-	{"Credit", 0},
-};
-
-static struct qctx_entry qdma_s80_hard_cmpt_ctxt_entries[] = {
-	{"Enable Status Desc Update", 0},
-	{"Enable Interrupt", 0},
-	{"Trigger Mode", 0},
-	{"Function Id", 0},
-	{"Counter Index", 0},
-	{"Timer Index", 0},
-	{"Interrupt State", 0},
-	{"Color", 0},
-	{"Ring Size", 0},
-	{"Base Address (Low)", 0},
-	{"Base Address (High)", 0},
-	{"Descriptor Size", 0},
-	{"PIDX", 0},
-	{"CIDX", 0},
-	{"Valid", 0},
-	{"Error", 0},
-	{"Trigger Pending", 0},
-	{"Timer Running", 0},
-	{"Full Update", 0},
-};
-
-static struct qctx_entry qdma_s80_hard_c2h_pftch_ctxt_entries[] = {
-	{"Bypass", 0},
-	{"Buffer Size Index", 0},
-	{"Port Id", 0},
-	{"Error", 0},
-	{"Prefetch Enable", 0},
-	{"In Prefetch", 0},
-	{"Software Credit", 0},
-	{"Valid", 0},
-};
-
-static struct qctx_entry qdma_s80_hard_qid2vec_ctxt_entries[] = {
-	{"c2h_vector", 0},
-	{"c2h_en_coal", 0},
-	{"h2c_vector", 0},
-	{"h2c_en_coal", 0},
-};
-
-static struct qctx_entry qdma_s80_hard_ind_intr_ctxt_entries[] = {
-	{"valid", 0},
-	{"vec", 0},
-	{"int_st", 0},
-	{"color", 0},
-	{"baddr_4k (Low)", 0},
-	{"baddr_4k (High)", 0},
-	{"page_size", 0},
-	{"pidx", 0},
-};
-
-static int qdma_s80_hard_indirect_reg_invalidate(void *dev_hndl,
-		enum ind_ctxt_cmd_sel sel, uint16_t hw_qid);
-static int qdma_s80_hard_indirect_reg_clear(void *dev_hndl,
-		enum ind_ctxt_cmd_sel sel, uint16_t hw_qid);
-static int qdma_s80_hard_indirect_reg_read(void *dev_hndl,
-		enum ind_ctxt_cmd_sel sel,
-		uint16_t hw_qid, uint32_t cnt, uint32_t *data);
-static int qdma_s80_hard_indirect_reg_write(void *dev_hndl,
-		enum ind_ctxt_cmd_sel sel,
-		uint16_t hw_qid, uint32_t *data, uint16_t cnt);
-
-uint32_t qdma_s80_hard_get_config_num_regs(void)
-{
-	return qdma_s80_hard_config_num_regs_get();
-}
-
-struct xreg_info *qdma_s80_hard_get_config_regs(void)
-{
-	return qdma_s80_hard_config_regs_get();
-}
-
-uint32_t qdma_s80_hard_reg_dump_buf_len(void)
-{
-	uint32_t length = (qdma_s80_hard_config_num_regs_get() + 1)
-			* REG_DUMP_SIZE_PER_LINE;
-	return length;
-}
-
-int qdma_s80_hard_context_buf_len(uint8_t st,
-		enum qdma_dev_q_type q_type, uint32_t *req_buflen)
-{
-	uint32_t len = 0;
-	int rv = 0;
-
-	if (q_type == QDMA_DEV_Q_TYPE_CMPT) {
-		len += (((sizeof(qdma_s80_hard_cmpt_ctxt_entries) /
-			sizeof(qdma_s80_hard_cmpt_ctxt_entries[0])) + 1) *
-			REG_DUMP_SIZE_PER_LINE);
-	} else {
-		len += (((sizeof(qdma_s80_hard_sw_ctxt_entries) /
-				sizeof(qdma_s80_hard_sw_ctxt_entries[0])) + 1) *
-				REG_DUMP_SIZE_PER_LINE);
-
-		len += (((sizeof(qdma_s80_hard_hw_ctxt_entries) /
-			sizeof(qdma_s80_hard_hw_ctxt_entries[0])) + 1) *
-			REG_DUMP_SIZE_PER_LINE);
-
-		len += (((sizeof(qdma_s80_hard_credit_ctxt_entries) /
-			sizeof(qdma_s80_hard_credit_ctxt_entries[0])) + 1) *
-			REG_DUMP_SIZE_PER_LINE);
-
-		if (st && (q_type == QDMA_DEV_Q_TYPE_C2H)) {
-			len += (((sizeof(qdma_s80_hard_cmpt_ctxt_entries) /
-			sizeof(qdma_s80_hard_cmpt_ctxt_entries[0])) + 1) *
-			REG_DUMP_SIZE_PER_LINE);
-
-			len += (((sizeof(qdma_s80_hard_c2h_pftch_ctxt_entries) /
-			sizeof(qdma_s80_hard_c2h_pftch_ctxt_entries[0])) + 1) *
-			REG_DUMP_SIZE_PER_LINE);
-		}
-	}
-
-	*req_buflen = len;
-	return rv;
-}
-
-static uint32_t qdma_s80_hard_intr_context_buf_len(void)
-{
-	uint32_t len = 0;
-
-	len += (((sizeof(qdma_s80_hard_ind_intr_ctxt_entries) /
-			sizeof(qdma_s80_hard_ind_intr_ctxt_entries[0])) + 1) *
-			REG_DUMP_SIZE_PER_LINE);
-	return len;
-}
-
-/*
- * qdma_acc_fill_sw_ctxt() - Helper function to fill sw context into structure
- *
- */
-static void qdma_s80_hard_fill_sw_ctxt(struct qdma_descq_sw_ctxt *sw_ctxt)
-{
-	qdma_s80_hard_sw_ctxt_entries[0].value = sw_ctxt->pidx;
-	qdma_s80_hard_sw_ctxt_entries[1].value = sw_ctxt->irq_arm;
-	qdma_s80_hard_sw_ctxt_entries[2].value = sw_ctxt->qen;
-	qdma_s80_hard_sw_ctxt_entries[3].value = sw_ctxt->frcd_en;
-	qdma_s80_hard_sw_ctxt_entries[4].value = sw_ctxt->wbi_chk;
-	qdma_s80_hard_sw_ctxt_entries[5].value = sw_ctxt->wbi_intvl_en;
-	qdma_s80_hard_sw_ctxt_entries[6].value = sw_ctxt->fnc_id;
-	qdma_s80_hard_sw_ctxt_entries[7].value = sw_ctxt->rngsz_idx;
-	qdma_s80_hard_sw_ctxt_entries[8].value = sw_ctxt->desc_sz;
-	qdma_s80_hard_sw_ctxt_entries[9].value = sw_ctxt->bypass;
-	qdma_s80_hard_sw_ctxt_entries[10].value = sw_ctxt->mm_chn;
-	qdma_s80_hard_sw_ctxt_entries[11].value = sw_ctxt->wbk_en;
-	qdma_s80_hard_sw_ctxt_entries[12].value = sw_ctxt->irq_en;
-	qdma_s80_hard_sw_ctxt_entries[13].value = sw_ctxt->port_id;
-	qdma_s80_hard_sw_ctxt_entries[14].value = sw_ctxt->irq_no_last;
-	qdma_s80_hard_sw_ctxt_entries[15].value = sw_ctxt->err;
-	qdma_s80_hard_sw_ctxt_entries[16].value = sw_ctxt->err_wb_sent;
-	qdma_s80_hard_sw_ctxt_entries[17].value = sw_ctxt->irq_req;
-	qdma_s80_hard_sw_ctxt_entries[18].value = sw_ctxt->mrkr_dis;
-	qdma_s80_hard_sw_ctxt_entries[19].value = sw_ctxt->is_mm;
-	qdma_s80_hard_sw_ctxt_entries[20].value =
-			sw_ctxt->ring_bs_addr & 0xFFFFFFFF;
-	qdma_s80_hard_sw_ctxt_entries[21].value =
-		(sw_ctxt->ring_bs_addr >> 32) & 0xFFFFFFFF;
-}
-
-/*
- * qdma_acc_fill_cmpt_ctxt() - Helper function to fill completion context
- *                         into structure
- *
- */
-static void qdma_s80_hard_fill_cmpt_ctxt(struct qdma_descq_cmpt_ctxt *cmpt_ctxt)
-{
-	qdma_s80_hard_cmpt_ctxt_entries[0].value = cmpt_ctxt->en_stat_desc;
-	qdma_s80_hard_cmpt_ctxt_entries[1].value = cmpt_ctxt->en_int;
-	qdma_s80_hard_cmpt_ctxt_entries[2].value = cmpt_ctxt->trig_mode;
-	qdma_s80_hard_cmpt_ctxt_entries[3].value = cmpt_ctxt->fnc_id;
-	qdma_s80_hard_cmpt_ctxt_entries[4].value = cmpt_ctxt->counter_idx;
-	qdma_s80_hard_cmpt_ctxt_entries[5].value = cmpt_ctxt->timer_idx;
-	qdma_s80_hard_cmpt_ctxt_entries[6].value = cmpt_ctxt->in_st;
-	qdma_s80_hard_cmpt_ctxt_entries[7].value = cmpt_ctxt->color;
-	qdma_s80_hard_cmpt_ctxt_entries[8].value = cmpt_ctxt->ringsz_idx;
-	qdma_s80_hard_cmpt_ctxt_entries[9].value =
-			cmpt_ctxt->bs_addr & 0xFFFFFFFF;
-	qdma_s80_hard_cmpt_ctxt_entries[10].value =
-		(cmpt_ctxt->bs_addr >> 32) & 0xFFFFFFFF;
-	qdma_s80_hard_cmpt_ctxt_entries[11].value = cmpt_ctxt->desc_sz;
-	qdma_s80_hard_cmpt_ctxt_entries[12].value = cmpt_ctxt->pidx;
-	qdma_s80_hard_cmpt_ctxt_entries[13].value = cmpt_ctxt->cidx;
-	qdma_s80_hard_cmpt_ctxt_entries[14].value = cmpt_ctxt->valid;
-	qdma_s80_hard_cmpt_ctxt_entries[15].value = cmpt_ctxt->err;
-	qdma_s80_hard_cmpt_ctxt_entries[16].value = cmpt_ctxt->user_trig_pend;
-	qdma_s80_hard_cmpt_ctxt_entries[17].value = cmpt_ctxt->timer_running;
-	qdma_s80_hard_cmpt_ctxt_entries[18].value = cmpt_ctxt->full_upd;
-
-}
-
-/*
- * qdma_acc_fill_hw_ctxt() - Helper function to fill HW context into structure
- *
- */
-static void qdma_s80_hard_fill_hw_ctxt(struct qdma_descq_hw_ctxt *hw_ctxt)
-{
-	qdma_s80_hard_hw_ctxt_entries[0].value = hw_ctxt->cidx;
-	qdma_s80_hard_hw_ctxt_entries[1].value = hw_ctxt->crd_use;
-	qdma_s80_hard_hw_ctxt_entries[2].value = hw_ctxt->dsc_pend;
-	qdma_s80_hard_hw_ctxt_entries[3].value = hw_ctxt->idl_stp_b;
-	qdma_s80_hard_hw_ctxt_entries[4].value = hw_ctxt->evt_pnd;
-	qdma_s80_hard_hw_ctxt_entries[5].value = hw_ctxt->fetch_pnd;
-}
-
-/*
- * qdma_acc_fill_credit_ctxt() - Helper function to fill Credit context
- *                           into structure
- *
- */
-static void qdma_s80_hard_fill_credit_ctxt(
-		struct qdma_descq_credit_ctxt *cr_ctxt)
-{
-	qdma_s80_hard_credit_ctxt_entries[0].value = cr_ctxt->credit;
-}
-
-/*
- * qdma_acc_fill_pfetch_ctxt() - Helper function to fill Prefetch context
- *                           into structure
- *
- */
-static void qdma_s80_hard_fill_pfetch_ctxt(
-		struct qdma_descq_prefetch_ctxt *pfetch_ctxt)
-{
-	qdma_s80_hard_c2h_pftch_ctxt_entries[0].value = pfetch_ctxt->bypass;
-	qdma_s80_hard_c2h_pftch_ctxt_entries[1].value = pfetch_ctxt->bufsz_idx;
-	qdma_s80_hard_c2h_pftch_ctxt_entries[2].value = pfetch_ctxt->port_id;
-	qdma_s80_hard_c2h_pftch_ctxt_entries[3].value = pfetch_ctxt->err;
-	qdma_s80_hard_c2h_pftch_ctxt_entries[4].value = pfetch_ctxt->pfch_en;
-	qdma_s80_hard_c2h_pftch_ctxt_entries[5].value = pfetch_ctxt->pfch;
-	qdma_s80_hard_c2h_pftch_ctxt_entries[6].value = pfetch_ctxt->sw_crdt;
-	qdma_s80_hard_c2h_pftch_ctxt_entries[7].value = pfetch_ctxt->valid;
-}
-
-static void qdma_s80_hard_fill_qid2vec_ctxt(struct qdma_qid2vec *qid2vec_ctxt)
-{
-	qdma_s80_hard_qid2vec_ctxt_entries[0].value = qid2vec_ctxt->c2h_vector;
-	qdma_s80_hard_qid2vec_ctxt_entries[1].value = qid2vec_ctxt->c2h_en_coal;
-	qdma_s80_hard_qid2vec_ctxt_entries[2].value = qid2vec_ctxt->h2c_vector;
-	qdma_s80_hard_qid2vec_ctxt_entries[3].value = qid2vec_ctxt->h2c_en_coal;
-}
-
-static void qdma_s80_hard_fill_intr_ctxt(
-		struct qdma_indirect_intr_ctxt *intr_ctxt)
-{
-	qdma_s80_hard_ind_intr_ctxt_entries[0].value = intr_ctxt->valid;
-	qdma_s80_hard_ind_intr_ctxt_entries[1].value = intr_ctxt->vec;
-	qdma_s80_hard_ind_intr_ctxt_entries[2].value = intr_ctxt->int_st;
-	qdma_s80_hard_ind_intr_ctxt_entries[3].value = intr_ctxt->color;
-	qdma_s80_hard_ind_intr_ctxt_entries[4].value =
-			intr_ctxt->baddr_4k & 0xFFFFFFFF;
-	qdma_s80_hard_ind_intr_ctxt_entries[5].value =
-			(intr_ctxt->baddr_4k >> 32) & 0xFFFFFFFF;
-	qdma_s80_hard_ind_intr_ctxt_entries[6].value = intr_ctxt->page_size;
-	qdma_s80_hard_ind_intr_ctxt_entries[7].value = intr_ctxt->pidx;
-}
-
-/*
- * dump_s80_hard_context() - Helper function to dump queue context into string
- *
- * return len - length of the string copied into buffer
- */
-static int dump_s80_hard_context(struct qdma_descq_context *queue_context,
-		uint8_t st,	enum qdma_dev_q_type q_type,
-		char *buf, int buf_sz)
-{
-	int i = 0;
-	int n;
-	int len = 0;
-	int rv;
-	char banner[DEBGFS_LINE_SZ];
-
-	if (queue_context == NULL) {
-		qdma_log_error("%s: queue_context is NULL, err:%d\n",
-						__func__,
-					   -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	if (q_type >= QDMA_DEV_Q_TYPE_CMPT) {
-		qdma_log_error("%s: Invalid queue type(%d), err:%d\n",
-						__func__,
-						q_type,
-					   -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	qdma_s80_hard_fill_sw_ctxt(&queue_context->sw_ctxt);
-	qdma_s80_hard_fill_hw_ctxt(&queue_context->hw_ctxt);
-	qdma_s80_hard_fill_credit_ctxt(&queue_context->cr_ctxt);
-	qdma_s80_hard_fill_qid2vec_ctxt(&queue_context->qid2vec);
-	if (st && (q_type == QDMA_DEV_Q_TYPE_C2H)) {
-		qdma_s80_hard_fill_pfetch_ctxt(&queue_context->pfetch_ctxt);
-		qdma_s80_hard_fill_cmpt_ctxt(&queue_context->cmpt_ctxt);
-	}
-
-	if (q_type != QDMA_DEV_Q_TYPE_CMPT) {
-		for (i = 0; i < DEBGFS_LINE_SZ - 5; i++) {
-			rv = QDMA_SNPRINTF_S(banner + i,
-				(DEBGFS_LINE_SZ - i),
-				sizeof("-"), "-");
-			if ((rv < 0) || (rv > (int)sizeof("-"))) {
-				qdma_log_error(
-					"%d:%s QDMA_SNPRINTF_S() failed, err:%d\n",
-					__LINE__, __func__,
-					rv);
-				goto INSUF_BUF_EXIT;
-			}
-		}
-
-		/* SW context dump */
-		n = sizeof(qdma_s80_hard_sw_ctxt_entries) /
-				sizeof((qdma_s80_hard_sw_ctxt_entries)[0]);
-		for (i = 0; i < n; i++) {
-			if ((len >= buf_sz) ||
-				((len + DEBGFS_LINE_SZ) >= buf_sz))
-				goto INSUF_BUF_EXIT;
-
-			if (i == 0) {
-				if ((len + (3 * DEBGFS_LINE_SZ)) >= buf_sz)
-					goto INSUF_BUF_EXIT;
-				rv = QDMA_SNPRINTF_S(buf + len, (buf_sz - len),
-					DEBGFS_LINE_SZ, "\n%s", banner);
-				if ((rv < 0) || (rv > DEBGFS_LINE_SZ)) {
-					qdma_log_error(
-						"%d:%s QDMA_SNPRINTF_S() failed, err:%d\n",
-						__LINE__, __func__,
-						rv);
-					goto INSUF_BUF_EXIT;
-				}
-				len += rv;
-
-				rv = QDMA_SNPRINTF_S(buf + len, (buf_sz - len),
-					DEBGFS_LINE_SZ, "\n%40s", "SW Context");
-				if ((rv < 0) || (rv > DEBGFS_LINE_SZ)) {
-					qdma_log_error(
-						"%d:%s QDMA_SNPRINTF_S() failed, err:%d\n",
-						__LINE__, __func__,
-						rv);
-					goto INSUF_BUF_EXIT;
-				}
-				len += rv;
-
-				rv = QDMA_SNPRINTF_S(buf + len, (buf_sz - len),
-					DEBGFS_LINE_SZ, "\n%s\n", banner);
-				if ((rv < 0) || (rv > DEBGFS_LINE_SZ)) {
-					qdma_log_error(
-						"%d:%s QDMA_SNPRINTF_S() failed, err:%d\n",
-						__LINE__, __func__,
-						rv);
-					goto INSUF_BUF_EXIT;
-				}
-				len += rv;
-			}
-
-			rv = QDMA_SNPRINTF_S(buf + len, (buf_sz - len),
-				DEBGFS_LINE_SZ,
-				"%-47s %#-10x %u\n",
-				qdma_s80_hard_sw_ctxt_entries[i].name,
-				qdma_s80_hard_sw_ctxt_entries[i].value,
-				qdma_s80_hard_sw_ctxt_entries[i].value);
-			if ((rv < 0) || (rv > DEBGFS_LINE_SZ)) {
-				qdma_log_error(
-					"%d:%s QDMA_SNPRINTF_S() failed, err:%d\n",
-					__LINE__, __func__,
-					rv);
-				goto INSUF_BUF_EXIT;
-			}
-			len += rv;
-		}
-
-		/* HW context dump */
-		n = sizeof(qdma_s80_hard_hw_ctxt_entries) /
-				sizeof((qdma_s80_hard_hw_ctxt_entries)[0]);
-		for (i = 0; i < n; i++) {
-			if ((len >= buf_sz) ||
-				((len + DEBGFS_LINE_SZ) >= buf_sz))
-				goto INSUF_BUF_EXIT;
-
-			if (i == 0) {
-				if ((len + (3 * DEBGFS_LINE_SZ)) >= buf_sz)
-					goto INSUF_BUF_EXIT;
-
-				rv = QDMA_SNPRINTF_S(buf + len, (buf_sz - len),
-					DEBGFS_LINE_SZ, "\n%s", banner);
-				if ((rv < 0) || (rv > DEBGFS_LINE_SZ)) {
-					qdma_log_error(
-						"%d:%s QDMA_SNPRINTF_S() failed, err:%d\n",
-						__LINE__, __func__,
-						rv);
-					goto INSUF_BUF_EXIT;
-				}
-				len += rv;
-
-				rv = QDMA_SNPRINTF_S(buf + len, (buf_sz - len),
-					DEBGFS_LINE_SZ, "\n%40s", "HW Context");
-				if ((rv < 0) || (rv > DEBGFS_LINE_SZ)) {
-					qdma_log_error(
-						"%d:%s QDMA_SNPRINTF_S() failed, err:%d\n",
-						__LINE__, __func__,
-						rv);
-					goto INSUF_BUF_EXIT;
-				}
-				len += rv;
-
-				rv = QDMA_SNPRINTF_S(buf + len, (buf_sz - len),
-					DEBGFS_LINE_SZ, "\n%s\n", banner);
-				if ((rv < 0) || (rv > DEBGFS_LINE_SZ)) {
-					qdma_log_error(
-						"%d:%s QDMA_SNPRINTF_S() failed, err:%d\n",
-						__LINE__, __func__,
-						rv);
-					goto INSUF_BUF_EXIT;
-				}
-				len += rv;
-			}
-
-			rv = QDMA_SNPRINTF_S(buf + len, (buf_sz - len),
-				DEBGFS_LINE_SZ,
-				"%-47s %#-10x %u\n",
-				qdma_s80_hard_hw_ctxt_entries[i].name,
-				qdma_s80_hard_hw_ctxt_entries[i].value,
-				qdma_s80_hard_hw_ctxt_entries[i].value);
-			if ((rv < 0) || (rv > DEBGFS_LINE_SZ)) {
-				qdma_log_error(
-					"%d:%s QDMA_SNPRINTF_S() failed, err:%d\n",
-					__LINE__, __func__,
-					rv);
-				goto INSUF_BUF_EXIT;
-			}
-			len += rv;
-		}
-
-		/* Credit context dump */
-		n = sizeof(qdma_s80_hard_credit_ctxt_entries) /
-			sizeof((qdma_s80_hard_credit_ctxt_entries)[0]);
-		for (i = 0; i < n; i++) {
-			if ((len >= buf_sz) ||
-				((len + DEBGFS_LINE_SZ) >= buf_sz))
-				goto INSUF_BUF_EXIT;
-
-			if (i == 0) {
-				if ((len + (3 * DEBGFS_LINE_SZ)) >= buf_sz)
-					goto INSUF_BUF_EXIT;
-
-				rv = QDMA_SNPRINTF_S(buf + len, (buf_sz - len),
-					DEBGFS_LINE_SZ, "\n%s", banner);
-				if ((rv < 0) || (rv > DEBGFS_LINE_SZ)) {
-					qdma_log_error(
-						"%d:%s QDMA_SNPRINTF_S() failed, err:%d\n",
-						__LINE__, __func__,
-						rv);
-					goto INSUF_BUF_EXIT;
-				}
-				len += rv;
-
-				rv = QDMA_SNPRINTF_S(buf + len, (buf_sz - len),
-					DEBGFS_LINE_SZ, "\n%40s",
-					"Credit Context");
-				if ((rv < 0) || (rv > DEBGFS_LINE_SZ)) {
-					qdma_log_error(
-						"%d:%s QDMA_SNPRINTF_S() failed, err:%d\n",
-						__LINE__, __func__,
-						rv);
-					goto INSUF_BUF_EXIT;
-				}
-				len += rv;
-
-				rv = QDMA_SNPRINTF_S(buf + len, (buf_sz - len),
-					DEBGFS_LINE_SZ, "\n%s\n", banner);
-				if ((rv < 0) || (rv > DEBGFS_LINE_SZ)) {
-					qdma_log_error(
-						"%d:%s QDMA_SNPRINTF_S() failed, err:%d\n",
-						__LINE__, __func__,
-						rv);
-					goto INSUF_BUF_EXIT;
-				}
-				len += rv;
-			}
-
-			rv = QDMA_SNPRINTF_S(buf + len, (buf_sz - len),
-				DEBGFS_LINE_SZ,
-				"%-47s %#-10x %u\n",
-				qdma_s80_hard_credit_ctxt_entries[i].name,
-				qdma_s80_hard_credit_ctxt_entries[i].value,
-				qdma_s80_hard_credit_ctxt_entries[i].value);
-			if ((rv < 0) || (rv > DEBGFS_LINE_SZ)) {
-				qdma_log_error(
-					"%d:%s QDMA_SNPRINTF_S() failed, err:%d\n",
-					__LINE__, __func__,
-					rv);
-				goto INSUF_BUF_EXIT;
-			}
-			len += rv;
-		}
-	}
-
-	/* SW context dump */
-	n = sizeof(qdma_s80_hard_qid2vec_ctxt_entries) /
-			sizeof((qdma_s80_hard_qid2vec_ctxt_entries)[0]);
-	for (i = 0; i < n; i++) {
-		if ((len >= buf_sz) ||
-			((len + DEBGFS_LINE_SZ) >= buf_sz))
-			goto INSUF_BUF_EXIT;
-
-		if (i == 0) {
-			if ((len + (3 * DEBGFS_LINE_SZ)) >= buf_sz)
-				goto INSUF_BUF_EXIT;
-			rv = QDMA_SNPRINTF_S(buf + len, (buf_sz - len),
-				DEBGFS_LINE_SZ, "\n%s", banner);
-			if ((rv < 0) || (rv > DEBGFS_LINE_SZ)) {
-				qdma_log_error(
-					"%d:%s QDMA_SNPRINTF_S() failed, err:%d\n",
-					__LINE__, __func__,
-					rv);
-				goto INSUF_BUF_EXIT;
-			}
-			len += rv;
-
-			rv = QDMA_SNPRINTF_S(buf + len, (buf_sz - len),
-				DEBGFS_LINE_SZ, "\n%40s",
-				"QID2VEC Context");
-			if ((rv < 0) || (rv > DEBGFS_LINE_SZ)) {
-				qdma_log_error(
-					"%d:%s QDMA_SNPRINTF_S() failed, err:%d\n",
-					__LINE__, __func__,
-					rv);
-				goto INSUF_BUF_EXIT;
-			}
-			len += rv;
-
-			rv = QDMA_SNPRINTF_S(buf + len, (buf_sz - len),
-				DEBGFS_LINE_SZ, "\n%s\n", banner);
-			if ((rv < 0) || (rv > DEBGFS_LINE_SZ)) {
-				qdma_log_error(
-					"%d:%s QDMA_SNPRINTF_S() failed, err:%d\n",
-					__LINE__, __func__,
-					rv);
-				goto INSUF_BUF_EXIT;
-			}
-			len += rv;
-		}
-
-		rv = QDMA_SNPRINTF_S(buf + len, (buf_sz - len), DEBGFS_LINE_SZ,
-			"%-47s %#-10x %u\n",
-			qdma_s80_hard_qid2vec_ctxt_entries[i].name,
-			qdma_s80_hard_qid2vec_ctxt_entries[i].value,
-			qdma_s80_hard_qid2vec_ctxt_entries[i].value);
-		if ((rv < 0) || (rv > DEBGFS_LINE_SZ)) {
-			qdma_log_error(
-				"%d:%s QDMA_SNPRINTF_S() failed, err:%d\n",
-				__LINE__, __func__,
-				rv);
-			goto INSUF_BUF_EXIT;
-		}
-		len += rv;
-	}
-
-
-	if ((q_type == QDMA_DEV_Q_TYPE_CMPT) ||
-			(st && q_type == QDMA_DEV_Q_TYPE_C2H)) {
-		/* Completion context dump */
-		n = sizeof(qdma_s80_hard_cmpt_ctxt_entries) /
-				sizeof((qdma_s80_hard_cmpt_ctxt_entries)[0]);
-		for (i = 0; i < n; i++) {
-			if ((len >= buf_sz) ||
-				((len + DEBGFS_LINE_SZ) >= buf_sz))
-				goto INSUF_BUF_EXIT;
-
-			if (i == 0) {
-				if ((len + (3 * DEBGFS_LINE_SZ)) >= buf_sz)
-					goto INSUF_BUF_EXIT;
-
-				rv = QDMA_SNPRINTF_S(buf + len, (buf_sz - len),
-					DEBGFS_LINE_SZ, "\n%s", banner);
-				if ((rv < 0) || (rv > DEBGFS_LINE_SZ)) {
-					qdma_log_error(
-						"%d:%s QDMA_SNPRINTF_S() failed, err:%d\n",
-						__LINE__, __func__,
-						rv);
-					goto INSUF_BUF_EXIT;
-				}
-				len += rv;
-
-				rv = QDMA_SNPRINTF_S(buf + len, (buf_sz - len),
-					DEBGFS_LINE_SZ, "\n%40s",
-					"Completion Context");
-				if ((rv < 0) || (rv > DEBGFS_LINE_SZ)) {
-					qdma_log_error(
-						"%d:%s QDMA_SNPRINTF_S() failed, err:%d\n",
-						__LINE__, __func__,
-						rv);
-					goto INSUF_BUF_EXIT;
-				}
-				len += rv;
-
-				rv = QDMA_SNPRINTF_S(buf + len, (buf_sz - len),
-					DEBGFS_LINE_SZ, "\n%s\n", banner);
-				if ((rv < 0) || (rv > DEBGFS_LINE_SZ)) {
-					qdma_log_error(
-						"%d:%s QDMA_SNPRINTF_S() failed, err:%d\n",
-						__LINE__, __func__,
-						rv);
-					goto INSUF_BUF_EXIT;
-				}
-				len += rv;
-			}
-
-			rv = QDMA_SNPRINTF_S(buf + len, (buf_sz - len),
-				DEBGFS_LINE_SZ,
-				"%-47s %#-10x %u\n",
-				qdma_s80_hard_cmpt_ctxt_entries[i].name,
-				qdma_s80_hard_cmpt_ctxt_entries[i].value,
-				qdma_s80_hard_cmpt_ctxt_entries[i].value);
-			if ((rv < 0) || (rv > DEBGFS_LINE_SZ)) {
-				qdma_log_error(
-					"%d:%s QDMA_SNPRINTF_S() failed, err:%d\n",
-					__LINE__, __func__,
-					rv);
-				goto INSUF_BUF_EXIT;
-			}
-			len += rv;
-		}
-	}
-
-	if (st && q_type == QDMA_DEV_Q_TYPE_C2H) {
-		/* Prefetch context dump */
-		n = sizeof(qdma_s80_hard_c2h_pftch_ctxt_entries) /
-			sizeof(qdma_s80_hard_c2h_pftch_ctxt_entries[0]);
-		for (i = 0; i < n; i++) {
-			if ((len >= buf_sz) ||
-				((len + DEBGFS_LINE_SZ) >= buf_sz))
-				goto INSUF_BUF_EXIT;
-
-			if (i == 0) {
-				if ((len + (3 * DEBGFS_LINE_SZ)) >= buf_sz)
-					goto INSUF_BUF_EXIT;
-
-				rv = QDMA_SNPRINTF_S(buf + len, (buf_sz - len),
-					DEBGFS_LINE_SZ, "\n%s", banner);
-				if ((rv < 0) || (rv > DEBGFS_LINE_SZ)) {
-					qdma_log_error(
-						"%d:%s QDMA_SNPRINTF_S() failed, err:%d\n",
-						__LINE__, __func__,
-						rv);
-					goto INSUF_BUF_EXIT;
-				}
-				len += rv;
-
-				rv = QDMA_SNPRINTF_S(buf + len, (buf_sz - len),
-					DEBGFS_LINE_SZ, "\n%40s",
-					"Prefetch Context");
-				if ((rv < 0) || (rv > DEBGFS_LINE_SZ)) {
-					qdma_log_error(
-						"%d:%s QDMA_SNPRINTF_S() failed, err:%d\n",
-						__LINE__, __func__,
-						rv);
-					goto INSUF_BUF_EXIT;
-				}
-				len += rv;
-
-				rv = QDMA_SNPRINTF_S(buf + len, (buf_sz - len),
-					DEBGFS_LINE_SZ, "\n%s\n", banner);
-				if ((rv < 0) || (rv > DEBGFS_LINE_SZ)) {
-					qdma_log_error(
-						"%d:%s QDMA_SNPRINTF_S() failed, err:%d\n",
-						__LINE__, __func__,
-						rv);
-					goto INSUF_BUF_EXIT;
-				}
-				len += rv;
-			}
-
-			rv = QDMA_SNPRINTF_S(buf + len, (buf_sz - len),
-				DEBGFS_LINE_SZ,
-				"%-47s %#-10x %u\n",
-				qdma_s80_hard_c2h_pftch_ctxt_entries[i].name,
-				qdma_s80_hard_c2h_pftch_ctxt_entries[i].value,
-				qdma_s80_hard_c2h_pftch_ctxt_entries[i].value);
-			if ((rv < 0) || (rv > DEBGFS_LINE_SZ)) {
-				qdma_log_error(
-					"%d:%s QDMA_SNPRINTF_S() failed, err:%d\n",
-					__LINE__, __func__,
-					rv);
-				goto INSUF_BUF_EXIT;
-			}
-			len += rv;
-		}
-	}
-
-	return len;
-
-INSUF_BUF_EXIT:
-	if (buf_sz > DEBGFS_LINE_SZ) {
-		rv = QDMA_SNPRINTF_S((buf + buf_sz - DEBGFS_LINE_SZ),
-			buf_sz, DEBGFS_LINE_SZ,
-			"\n\nInsufficient buffer size, partial context dump\n");
-		if ((rv < 0) || (rv > DEBGFS_LINE_SZ)) {
-			qdma_log_error(
-				"%d:%s QDMA_SNPRINTF_S() failed, err:%d\n",
-				__LINE__, __func__,
-				rv);
-		}
-	}
-
-	qdma_log_error("%s: Insufficient buffer size, err:%d\n",
-		__func__, -QDMA_ERR_NO_MEM);
-
-	return -QDMA_ERR_NO_MEM;
-}
-
-static int dump_s80_hard_intr_context(struct qdma_indirect_intr_ctxt *intr_ctx,
-		int ring_index,
-		char *buf, int buf_sz)
-{
-	int i = 0;
-	int n;
-	int len = 0;
-	int rv;
-	char banner[DEBGFS_LINE_SZ];
-
-	qdma_s80_hard_fill_intr_ctxt(intr_ctx);
-
-	for (i = 0; i < DEBGFS_LINE_SZ - 5; i++) {
-		rv = QDMA_SNPRINTF_S(banner + i,
-			(DEBGFS_LINE_SZ - i),
-			sizeof("-"), "-");
-		if ((rv < 0) || (rv > (int)sizeof("-"))) {
-			qdma_log_error(
-				"%d:%s QDMA_SNPRINTF_S() failed, err:%d\n",
-				__LINE__, __func__,
-				rv);
-			goto INSUF_BUF_EXIT;
-		}
-	}
-
-	/* Interrupt context dump */
-	n = sizeof(qdma_s80_hard_ind_intr_ctxt_entries) /
-			sizeof((qdma_s80_hard_ind_intr_ctxt_entries)[0]);
-	for (i = 0; i < n; i++) {
-		if ((len >= buf_sz) || ((len + DEBGFS_LINE_SZ) >= buf_sz))
-			goto INSUF_BUF_EXIT;
-
-		if (i == 0) {
-			if ((len + (3 * DEBGFS_LINE_SZ)) >= buf_sz)
-				goto INSUF_BUF_EXIT;
-
-			rv = QDMA_SNPRINTF_S(buf + len, (buf_sz - len),
-				DEBGFS_LINE_SZ, "\n%s", banner);
-			if ((rv < 0) || (rv > DEBGFS_LINE_SZ)) {
-				qdma_log_error(
-					"%d:%s QDMA_SNPRINTF_S() failed, err:%d\n",
-					__LINE__, __func__,
-					rv);
-				goto INSUF_BUF_EXIT;
-			}
-			len += rv;
-
-			rv = QDMA_SNPRINTF_S(buf + len, (buf_sz - len),
-				DEBGFS_LINE_SZ, "\n%50s %d",
-				"Interrupt Context for ring#", ring_index);
-			if ((rv < 0) || (rv > DEBGFS_LINE_SZ)) {
-				qdma_log_error(
-					"%d:%s QDMA_SNPRINTF_S() failed, err:%d\n",
-					__LINE__, __func__,
-					rv);
-				goto INSUF_BUF_EXIT;
-			}
-			len += rv;
-
-			rv = QDMA_SNPRINTF_S(buf + len, (buf_sz - len),
-				DEBGFS_LINE_SZ, "\n%s\n", banner);
-			if ((rv < 0) || (rv > DEBGFS_LINE_SZ)) {
-				qdma_log_error(
-					"%d:%s QDMA_SNPRINTF_S() failed, err:%d\n",
-					__LINE__, __func__,
-					rv);
-				goto INSUF_BUF_EXIT;
-			}
-			len += rv;
-		}
-
-		rv = QDMA_SNPRINTF_S(buf + len, (buf_sz - len), DEBGFS_LINE_SZ,
-			"%-47s %#-10x %u\n",
-			qdma_s80_hard_ind_intr_ctxt_entries[i].name,
-			qdma_s80_hard_ind_intr_ctxt_entries[i].value,
-			qdma_s80_hard_ind_intr_ctxt_entries[i].value);
-		if ((rv < 0) || (rv > DEBGFS_LINE_SZ)) {
-			qdma_log_error(
-				"%d:%s QDMA_SNPRINTF_S() failed, err:%d\n",
-				__LINE__, __func__,
-				rv);
-			goto INSUF_BUF_EXIT;
-		}
-		len += rv;
-	}
-
-	return len;
-
-INSUF_BUF_EXIT:
-	if (buf_sz > DEBGFS_LINE_SZ) {
-		rv = QDMA_SNPRINTF_S((buf + buf_sz - DEBGFS_LINE_SZ),
-			buf_sz, DEBGFS_LINE_SZ,
-			"\n\nInsufficient buffer size, partial intr context dump\n");
-		if ((rv < 0) || (rv > DEBGFS_LINE_SZ)) {
-			qdma_log_error(
-				"%d:%s QDMA_SNPRINTF_S() failed, err:%d\n",
-				__LINE__, __func__,
-				rv);
-		}
-	}
-
-	qdma_log_error("%s: Insufficient buffer size, err:%d\n",
-		__func__, -QDMA_ERR_NO_MEM);
-
-	return -QDMA_ERR_NO_MEM;
-}
-
-/*
- * qdma_s80_hard_indirect_reg_invalidate() - helper function to invalidate
- * indirect context registers.
- *
- * return -QDMA_ERR_HWACC_BUSY_TIMEOUT if register
- *	value didn't match, QDMA_SUCCESS other wise
- */
-static int qdma_s80_hard_indirect_reg_invalidate(void *dev_hndl,
-		enum ind_ctxt_cmd_sel sel, uint16_t hw_qid)
-{
-	union qdma_s80_hard_ind_ctxt_cmd cmd;
-
-	qdma_reg_access_lock(dev_hndl);
-
-	/* set command register */
-	cmd.word = 0;
-	cmd.bits.qid = hw_qid;
-	cmd.bits.op = QDMA_CTXT_CMD_INV;
-	cmd.bits.sel = sel;
-	qdma_reg_write(dev_hndl, QDMA_S80_HARD_IND_CTXT_CMD_ADDR, cmd.word);
-
-	/* check if the operation went through well */
-	if (hw_monitor_reg(dev_hndl, QDMA_S80_HARD_IND_CTXT_CMD_ADDR,
-			IND_CTXT_CMD_BUSY_MASK, 0,
-			QDMA_REG_POLL_DFLT_INTERVAL_US,
-			QDMA_REG_POLL_DFLT_TIMEOUT_US)) {
-		qdma_reg_access_release(dev_hndl);
-		qdma_log_error("%s: hw_monitor_reg failed, err:%d\n",
-					__func__,
-					-QDMA_ERR_HWACC_BUSY_TIMEOUT);
-		return -QDMA_ERR_HWACC_BUSY_TIMEOUT;
-	}
-
-	qdma_reg_access_release(dev_hndl);
-
-	return QDMA_SUCCESS;
-}
-
-/*
- * qdma_s80_hard_indirect_reg_clear() - helper function to clear indirect
- *				context registers.
- *
- * return -QDMA_ERR_HWACC_BUSY_TIMEOUT if register
- *	value didn't match, QDMA_SUCCESS other wise
- */
-static int qdma_s80_hard_indirect_reg_clear(void *dev_hndl,
-		enum ind_ctxt_cmd_sel sel, uint16_t hw_qid)
-{
-	union qdma_s80_hard_ind_ctxt_cmd cmd;
-
-	qdma_reg_access_lock(dev_hndl);
-
-	/* set command register */
-	cmd.word = 0;
-	cmd.bits.qid = hw_qid;
-	cmd.bits.op = QDMA_CTXT_CMD_CLR;
-	cmd.bits.sel = sel;
-
-	qdma_reg_write(dev_hndl, QDMA_S80_HARD_IND_CTXT_CMD_ADDR, cmd.word);
-
-	/* check if the operation went through well */
-	if (hw_monitor_reg(dev_hndl, QDMA_S80_HARD_IND_CTXT_CMD_ADDR,
-			IND_CTXT_CMD_BUSY_MASK, 0,
-			QDMA_REG_POLL_DFLT_INTERVAL_US,
-			QDMA_REG_POLL_DFLT_TIMEOUT_US)) {
-		qdma_reg_access_release(dev_hndl);
-		qdma_log_error("%s: hw_monitor_reg failed, err:%d\n",
-					__func__,
-					-QDMA_ERR_HWACC_BUSY_TIMEOUT);
-		return -QDMA_ERR_HWACC_BUSY_TIMEOUT;
-	}
-
-	qdma_reg_access_release(dev_hndl);
-
-	return QDMA_SUCCESS;
-}
-
-/*
- * qdma_s80_hard_indirect_reg_read() - helper function to read indirect
- *				context registers.
- *
- * return -QDMA_ERR_HWACC_BUSY_TIMEOUT if register
- *	value didn't match, QDMA_SUCCESS other wise
- */
-static int qdma_s80_hard_indirect_reg_read(void *dev_hndl,
-		enum ind_ctxt_cmd_sel sel,
-		uint16_t hw_qid, uint32_t cnt, uint32_t *data)
-{
-	uint32_t index = 0, reg_addr = QDMA_S80_HARD_IND_CTXT_DATA_3_ADDR;
-	union qdma_s80_hard_ind_ctxt_cmd cmd;
-
-	qdma_reg_access_lock(dev_hndl);
-
-	/* set command register */
-	cmd.word = 0;
-	cmd.bits.qid = hw_qid;
-	cmd.bits.op = QDMA_CTXT_CMD_RD;
-	cmd.bits.sel = sel;
-	qdma_reg_write(dev_hndl, QDMA_S80_HARD_IND_CTXT_CMD_ADDR, cmd.word);
-
-	/* check if the operation went through well */
-	if (hw_monitor_reg(dev_hndl, QDMA_S80_HARD_IND_CTXT_CMD_ADDR,
-			IND_CTXT_CMD_BUSY_MASK, 0,
-			QDMA_REG_POLL_DFLT_INTERVAL_US,
-			QDMA_REG_POLL_DFLT_TIMEOUT_US)) {
-		qdma_reg_access_release(dev_hndl);
-		qdma_log_error("%s: hw_monitor_reg failed, err:%d\n",
-					__func__,
-					-QDMA_ERR_HWACC_BUSY_TIMEOUT);
-		return -QDMA_ERR_HWACC_BUSY_TIMEOUT;
-	}
-
-	for (index = 0; index < cnt; index++, reg_addr += sizeof(uint32_t))
-		data[index] = qdma_reg_read(dev_hndl, reg_addr);
-
-	qdma_reg_access_release(dev_hndl);
-
-	return QDMA_SUCCESS;
-}
-
-/*
- * qdma_s80_hard_indirect_reg_write() - helper function to write indirect
- *				context registers.
- *
- * return -QDMA_ERR_HWACC_BUSY_TIMEOUT if register
- *	value didn't match, QDMA_SUCCESS other wise
- */
-static int qdma_s80_hard_indirect_reg_write(void *dev_hndl,
-		enum ind_ctxt_cmd_sel sel,
-		uint16_t hw_qid, uint32_t *data, uint16_t cnt)
-{
-	uint32_t index, reg_addr;
-	struct qdma_s80_hard_indirect_ctxt_regs regs;
-	uint32_t *wr_data = (uint32_t *)&regs;
-
-	qdma_reg_access_lock(dev_hndl);
-
-	/* write the context data */
-	for (index = 0; index < QDMA_S80_HARD_IND_CTXT_DATA_NUM_REGS;
-			index++) {
-		if (index < cnt)
-			regs.qdma_ind_ctxt_data[index] = data[index];
-		else
-			regs.qdma_ind_ctxt_data[index] = 0;
-		regs.qdma_ind_ctxt_mask[index] = 0xFFFFFFFF;
-	}
-
-	regs.cmd.word = 0;
-	regs.cmd.bits.qid = hw_qid;
-	regs.cmd.bits.op = QDMA_CTXT_CMD_WR;
-	regs.cmd.bits.sel = sel;
-	reg_addr = QDMA_S80_HARD_IND_CTXT_DATA_3_ADDR;
-
-	for (index = 0;
-		index < ((2 * QDMA_S80_HARD_IND_CTXT_DATA_NUM_REGS) + 1);
-			index++, reg_addr += sizeof(uint32_t))
-		qdma_reg_write(dev_hndl, reg_addr, wr_data[index]);
-
-	/* check if the operation went through well */
-	if (hw_monitor_reg(dev_hndl, QDMA_S80_HARD_IND_CTXT_CMD_ADDR,
-			IND_CTXT_CMD_BUSY_MASK, 0,
-			QDMA_REG_POLL_DFLT_INTERVAL_US,
-			QDMA_REG_POLL_DFLT_TIMEOUT_US)) {
-		qdma_reg_access_release(dev_hndl);
-		qdma_log_error("%s: hw_monitor_reg failed, err:%d\n",
-						__func__,
-					   -QDMA_ERR_HWACC_BUSY_TIMEOUT);
-		return -QDMA_ERR_HWACC_BUSY_TIMEOUT;
-	}
-
-	qdma_reg_access_release(dev_hndl);
-
-	return QDMA_SUCCESS;
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_qid2vec_write() - create qid2vec context and program it
- *
- * @dev_hndl:	device handle
- * @c2h:	is c2h queue
- * @hw_qid:	hardware qid of the queue
- * @ctxt:	pointer to the context data
- *
- * Return:	0   - success and < 0 - failure
- *****************************************************************************/
-static int qdma_s80_hard_qid2vec_write(void *dev_hndl, uint8_t c2h,
-		uint16_t hw_qid, struct qdma_qid2vec *ctxt)
-{
-	uint32_t qid2vec = 0;
-	enum ind_ctxt_cmd_sel sel = QDMA_CTXT_SEL_FMAP;
-	int rv = 0;
-
-	if (!dev_hndl || !ctxt) {
-		qdma_log_error("%s: dev_hndl=%p qid2vec=%p, err:%d\n",
-				__func__, dev_hndl, ctxt, -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	rv = qdma_s80_hard_indirect_reg_read(dev_hndl, sel, hw_qid,
-			1, &qid2vec);
-	if (rv < 0)
-		return rv;
-	if (c2h) {
-		qid2vec = qid2vec & (QDMA_S80_HARD_QID2VEC_H2C_VECTOR |
-					QDMA_S80_HARD_QID2VEC_H2C_COAL_EN);
-		qid2vec |= FIELD_SET(C2H_QID2VEC_MAP_C2H_VECTOR_MASK,
-				     ctxt->c2h_vector) |
-			FIELD_SET(C2H_QID2VEC_MAP_C2H_EN_COAL_MASK,
-				  ctxt->c2h_en_coal);
-	} else {
-		qid2vec = qid2vec & (C2H_QID2VEC_MAP_C2H_VECTOR_MASK |
-					C2H_QID2VEC_MAP_C2H_EN_COAL_MASK);
-		qid2vec |=
-			FIELD_SET(QDMA_S80_HARD_QID2VEC_H2C_VECTOR,
-				  ctxt->h2c_vector) |
-			FIELD_SET(QDMA_S80_HARD_QID2VEC_H2C_COAL_EN,
-				  ctxt->h2c_en_coal);
-	}
-
-	return qdma_s80_hard_indirect_reg_write(dev_hndl, sel, hw_qid,
-			&qid2vec, QDMA_S80_HARD_QID2VEC_CONTEXT_NUM_WORDS);
-
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_qid2vec_read() - read qid2vec context
- *
- * @dev_hndl:	device handle
- * @c2h:	is c2h queue
- * @hw_qid:	hardware qid of the queue
- * @ctxt:	pointer to the context data
- *
- * Return:	0   - success and < 0 - failure
- *****************************************************************************/
-static int qdma_s80_hard_qid2vec_read(void *dev_hndl, uint8_t c2h,
-		uint16_t hw_qid, struct qdma_qid2vec *ctxt)
-{
-	int rv = 0;
-	uint32_t qid2vec[QDMA_S80_HARD_QID2VEC_CONTEXT_NUM_WORDS] = {0};
-	enum ind_ctxt_cmd_sel sel = QDMA_CTXT_SEL_FMAP;
-
-	if (!dev_hndl || !ctxt) {
-		qdma_log_error("%s: dev_hndl=%p qid2vec=%p, err:%d\n",
-				__func__, dev_hndl, ctxt, -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	rv = qdma_s80_hard_indirect_reg_read(dev_hndl, sel, hw_qid,
-			QDMA_S80_HARD_QID2VEC_CONTEXT_NUM_WORDS, qid2vec);
-	if (rv < 0)
-		return rv;
-
-	if (c2h) {
-		ctxt->c2h_vector = FIELD_GET(C2H_QID2VEC_MAP_C2H_VECTOR_MASK,
-						qid2vec[0]);
-		ctxt->c2h_en_coal =
-			(uint8_t)(FIELD_GET(C2H_QID2VEC_MAP_C2H_EN_COAL_MASK,
-						qid2vec[0]));
-	} else {
-		ctxt->h2c_vector =
-			(uint8_t)(FIELD_GET(QDMA_S80_HARD_QID2VEC_H2C_VECTOR,
-								qid2vec[0]));
-		ctxt->h2c_en_coal =
-			(uint8_t)(FIELD_GET(QDMA_S80_HARD_QID2VEC_H2C_COAL_EN,
-								qid2vec[0]));
-	}
-
-	return QDMA_SUCCESS;
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_qid2vec_clear() - clear qid2vec context
- *
- * @dev_hndl:	device handle
- * @hw_qid:	hardware qid of the queue
- *
- * Return:	0   - success and < 0 - failure
- *****************************************************************************/
-static int qdma_s80_hard_qid2vec_clear(void *dev_hndl, uint16_t hw_qid)
-{
-	enum ind_ctxt_cmd_sel sel = QDMA_CTXT_SEL_FMAP;
-
-	if (!dev_hndl) {
-		qdma_log_error("%s: dev_handle is NULL, err:%d\n",
-					__func__, -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	return qdma_s80_hard_indirect_reg_clear(dev_hndl, sel, hw_qid);
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_qid2vec_invalidate() - invalidate qid2vec context
- *
- * @dev_hndl:	device handle
- * @hw_qid:	hardware qid of the queue
- *
- * Return:	0   - success and < 0 - failure
- *****************************************************************************/
-static int qdma_s80_hard_qid2vec_invalidate(void *dev_hndl, uint16_t hw_qid)
-{
-	enum ind_ctxt_cmd_sel sel = QDMA_CTXT_SEL_FMAP;
-
-	if (!dev_hndl) {
-		qdma_log_error("%s: dev_handle is NULL, err:%d\n",
-					__func__, -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	return qdma_s80_hard_indirect_reg_invalidate(dev_hndl, sel, hw_qid);
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_qid2vec_conf() - configure qid2vector context
- *
- * @dev_hndl:	device handle
- * @c2h:	is c2h queue
- * @hw_qid:	hardware qid of the queue
- * @ctxt:	pointer to the context data
- * @access_type HW access type (qdma_hw_access_type enum) value
- *
- * Return:	0   - success and < 0 - failure
- *****************************************************************************/
-int qdma_s80_hard_qid2vec_conf(void *dev_hndl, uint8_t c2h, uint16_t hw_qid,
-			 struct qdma_qid2vec *ctxt,
-			 enum qdma_hw_access_type access_type)
-{
-	int ret_val = 0;
-
-	switch (access_type) {
-	case QDMA_HW_ACCESS_READ:
-		ret_val = qdma_s80_hard_qid2vec_read(dev_hndl, c2h,
-				hw_qid, ctxt);
-		break;
-	case QDMA_HW_ACCESS_WRITE:
-		ret_val = qdma_s80_hard_qid2vec_write(dev_hndl, c2h,
-				hw_qid, ctxt);
-		break;
-	case QDMA_HW_ACCESS_CLEAR:
-		ret_val = qdma_s80_hard_qid2vec_clear(dev_hndl, hw_qid);
-		break;
-	case QDMA_HW_ACCESS_INVALIDATE:
-		ret_val = qdma_s80_hard_qid2vec_invalidate(dev_hndl, hw_qid);
-		break;
-	default:
-		qdma_log_error("%s: access_type=%d is invalid, err:%d\n",
-					   __func__, access_type,
-					   -QDMA_ERR_INV_PARAM);
-		ret_val = -QDMA_ERR_INV_PARAM;
-		break;
-	}
-
-	return ret_val;
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_fmap_write() - create fmap context and program it
- *
- * @dev_hndl:	device handle
- * @func_id:	function id of the device
- * @config:	pointer to the fmap data strucutre
- *
- * Return:	0   - success and < 0 - failure
- *****************************************************************************/
-static int qdma_s80_hard_fmap_write(void *dev_hndl, uint16_t func_id,
-		   const struct qdma_fmap_cfg *config)
-{
-	uint32_t fmap = 0;
-
-	if (!dev_hndl || !config) {
-		qdma_log_error("%s: dev_handle or config is NULL, err:%d\n",
-					__func__, -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	fmap = FIELD_SET(TRQ_SEL_FMAP_0_QID_BASE_MASK, config->qbase) |
-		FIELD_SET(TRQ_SEL_FMAP_0_QID_MAX_MASK,
-				config->qmax);
-
-	qdma_reg_write(dev_hndl, QDMA_S80_HARD_TRQ_SEL_FMAP_0_ADDR +
-			func_id * QDMA_S80_HARD_REG_TRQ_SEL_FMAP_STEP,
-			fmap);
-	return QDMA_SUCCESS;
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_fmap_read() - read fmap context
- *
- * @dev_hndl:	device handle
- * @func_id:	function id of the device
- * @config:	pointer to the output fmap data
- *
- * Return:	0   - success and < 0 - failure
- *****************************************************************************/
-static int qdma_s80_hard_fmap_read(void *dev_hndl, uint16_t func_id,
-			 struct qdma_fmap_cfg *config)
-{
-	uint32_t fmap = 0;
-
-	if (!dev_hndl || !config) {
-		qdma_log_error("%s: dev_handle=%p fmap=%p NULL, err:%d\n",
-						__func__, dev_hndl, config,
-					   -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	fmap = qdma_reg_read(dev_hndl, QDMA_S80_HARD_TRQ_SEL_FMAP_0_ADDR +
-			     func_id * QDMA_S80_HARD_REG_TRQ_SEL_FMAP_STEP);
-
-	config->qbase = FIELD_GET(TRQ_SEL_FMAP_0_QID_BASE_MASK, fmap);
-	config->qmax =
-		(uint16_t)(FIELD_GET(TRQ_SEL_FMAP_0_QID_MAX_MASK,
-				fmap));
-
-	return QDMA_SUCCESS;
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_fmap_clear() - clear fmap context
- *
- * @dev_hndl:	device handle
- * @func_id:	function id of the device
- *
- * Return:	0   - success and < 0 - failure
- *****************************************************************************/
-static int qdma_s80_hard_fmap_clear(void *dev_hndl, uint16_t func_id)
-{
-	uint32_t fmap = 0;
-
-	if (!dev_hndl) {
-		qdma_log_error("%s: dev_handle is NULL, err:%d\n",
-					__func__, -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	qdma_reg_write(dev_hndl, QDMA_S80_HARD_TRQ_SEL_FMAP_0_ADDR +
-			func_id * QDMA_S80_HARD_REG_TRQ_SEL_FMAP_STEP,
-			fmap);
-
-	return QDMA_SUCCESS;
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_fmap_conf() - configure fmap context
- *
- * @dev_hndl:	device handle
- * @func_id:	function id of the device
- * @config:	pointer to the fmap data
- * @access_type HW access type (qdma_hw_access_type enum) value
- *		QDMA_HW_ACCESS_INVALIDATE unsupported
- *
- * Return:	0   - success and < 0 - failure
- *****************************************************************************/
-int qdma_s80_hard_fmap_conf(void *dev_hndl, uint16_t func_id,
-				struct qdma_fmap_cfg *config,
-				enum qdma_hw_access_type access_type)
-{
-	int ret_val = 0;
-
-	switch (access_type) {
-	case QDMA_HW_ACCESS_READ:
-		ret_val = qdma_s80_hard_fmap_read(dev_hndl, func_id, config);
-		break;
-	case QDMA_HW_ACCESS_WRITE:
-		ret_val = qdma_s80_hard_fmap_write(dev_hndl, func_id, config);
-		break;
-	case QDMA_HW_ACCESS_CLEAR:
-		ret_val = qdma_s80_hard_fmap_clear(dev_hndl, func_id);
-		break;
-	case QDMA_HW_ACCESS_INVALIDATE:
-	default:
-		qdma_log_error("%s: access_type=%d is invalid, err:%d\n",
-					   __func__, access_type,
-					   -QDMA_ERR_INV_PARAM);
-		ret_val = -QDMA_ERR_INV_PARAM;
-		break;
-	}
-
-	return ret_val;
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_sw_context_write() - create sw context and program it
- *
- * @dev_hndl:	device handle
- * @c2h:	is c2h queue
- * @hw_qid:	hardware qid of the queue
- * @ctxt:	pointer to the SW context data strucutre
- *
- * Return:	0   - success and < 0 - failure
- *****************************************************************************/
-static int qdma_s80_hard_sw_context_write(void *dev_hndl, uint8_t c2h,
-			 uint16_t hw_qid,
-			 const struct qdma_descq_sw_ctxt *ctxt)
-{
-	uint32_t sw_ctxt[QDMA_S80_HARD_SW_CONTEXT_NUM_WORDS] = {0};
-	uint16_t num_words_count = 0;
-	enum ind_ctxt_cmd_sel sel = c2h ?
-			QDMA_CTXT_SEL_SW_C2H : QDMA_CTXT_SEL_SW_H2C;
-
-	/* Input args check */
-	if (!dev_hndl || !ctxt) {
-		qdma_log_error("%s: dev_hndl or ctxt is NULL, err:%d\n",
-					__func__, -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	if ((ctxt->desc_sz > QDMA_DESC_SIZE_64B) ||
-		(ctxt->rngsz_idx >= QDMA_NUM_RING_SIZES)) {
-		qdma_log_error("%s: Invalid desc_sz(%d)/rngidx(%d), err:%d\n",
-					__func__,
-					ctxt->desc_sz,
-					ctxt->rngsz_idx,
-					-QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	sw_ctxt[num_words_count++] =
-		FIELD_SET(SW_IND_CTXT_DATA_W0_PIDX_MASK, ctxt->pidx) |
-		FIELD_SET(SW_IND_CTXT_DATA_W0_IRQ_ARM_MASK, ctxt->irq_arm);
-
-	sw_ctxt[num_words_count++] =
-		FIELD_SET(SW_IND_CTXT_DATA_W1_QEN_MASK, ctxt->qen) |
-		FIELD_SET(SW_IND_CTXT_DATA_W1_FCRD_EN_MASK, ctxt->frcd_en) |
-		FIELD_SET(SW_IND_CTXT_DATA_W1_WBI_CHK_MASK, ctxt->wbi_chk) |
-		FIELD_SET(SW_IND_CTXT_DATA_W1_WBI_INTVL_EN_MASK,
-			ctxt->wbi_intvl_en) |
-		FIELD_SET(SW_IND_CTXT_DATA_W1_FNC_ID_MASK, ctxt->fnc_id) |
-		FIELD_SET(SW_IND_CTXT_DATA_W1_RNG_SZ_MASK, ctxt->rngsz_idx) |
-		FIELD_SET(SW_IND_CTXT_DATA_W1_DSC_SZ_MASK, ctxt->desc_sz) |
-		FIELD_SET(SW_IND_CTXT_DATA_W1_BYPASS_MASK, ctxt->bypass) |
-		FIELD_SET(SW_IND_CTXT_DATA_W1_MM_CHN_MASK, ctxt->mm_chn) |
-		FIELD_SET(SW_IND_CTXT_DATA_W1_WBK_EN_MASK, ctxt->wbk_en) |
-		FIELD_SET(SW_IND_CTXT_DATA_W1_IRQ_EN_MASK, ctxt->irq_en) |
-		FIELD_SET(SW_IND_CTXT_DATA_W1_PORT_ID_MASK, ctxt->port_id) |
-		FIELD_SET(SW_IND_CTXT_DATA_W1_IRQ_NO_LAST_MASK,
-			ctxt->irq_no_last) |
-		FIELD_SET(SW_IND_CTXT_DATA_W1_ERR_MASK, ctxt->err) |
-		FIELD_SET(SW_IND_CTXT_DATA_W1_ERR_WB_SENT_MASK,
-			ctxt->err_wb_sent) |
-		FIELD_SET(SW_IND_CTXT_DATA_W1_IRQ_REQ_MASK, ctxt->irq_req) |
-		FIELD_SET(SW_IND_CTXT_DATA_W1_MRKR_DIS_MASK, ctxt->mrkr_dis) |
-		FIELD_SET(SW_IND_CTXT_DATA_W1_IS_MM_MASK, ctxt->is_mm);
-
-	sw_ctxt[num_words_count++] = ctxt->ring_bs_addr & 0xffffffff;
-	sw_ctxt[num_words_count++] = (ctxt->ring_bs_addr >> 32) & 0xffffffff;
-
-	return qdma_s80_hard_indirect_reg_write(dev_hndl, sel, hw_qid,
-			sw_ctxt, num_words_count);
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_sw_context_read() - read sw context
- *
- * @dev_hndl:	device handle
- * @c2h:	is c2h queue
- * @hw_qid:	hardware qid of the queue
- * @ctxt:	pointer to the output context data
- *
- * Return:	0   - success and < 0 - failure
- *****************************************************************************/
-static int qdma_s80_hard_sw_context_read(void *dev_hndl, uint8_t c2h,
-			 uint16_t hw_qid,
-			 struct qdma_descq_sw_ctxt *ctxt)
-{
-	int rv = 0;
-	uint32_t sw_ctxt[QDMA_S80_HARD_SW_CONTEXT_NUM_WORDS] = {0};
-	enum ind_ctxt_cmd_sel sel = c2h ?
-			QDMA_CTXT_SEL_SW_C2H : QDMA_CTXT_SEL_SW_H2C;
-	struct qdma_qid2vec qid2vec_ctxt = {0};
-
-	if (!dev_hndl || !ctxt) {
-		qdma_log_error("%s: dev_hndl=%p sw_ctxt=%p, err:%d\n",
-					   __func__, dev_hndl, ctxt,
-					   -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	rv = qdma_s80_hard_indirect_reg_read(dev_hndl, sel, hw_qid,
-			QDMA_S80_HARD_SW_CONTEXT_NUM_WORDS, sw_ctxt);
-	if (rv < 0)
-		return rv;
-
-	ctxt->pidx = FIELD_GET(SW_IND_CTXT_DATA_W0_PIDX_MASK, sw_ctxt[0]);
-	ctxt->irq_arm =
-		(uint8_t)(FIELD_GET(SW_IND_CTXT_DATA_W0_IRQ_ARM_MASK,
-			sw_ctxt[0]));
-
-	ctxt->qen = FIELD_GET(SW_IND_CTXT_DATA_W1_QEN_MASK, sw_ctxt[1]);
-	ctxt->frcd_en = FIELD_GET(SW_IND_CTXT_DATA_W1_FCRD_EN_MASK,
-			sw_ctxt[1]);
-	ctxt->wbi_chk = FIELD_GET(SW_IND_CTXT_DATA_W1_WBI_CHK_MASK,
-			sw_ctxt[1]);
-	ctxt->wbi_intvl_en =
-		FIELD_GET(SW_IND_CTXT_DATA_W1_WBI_INTVL_EN_MASK,
-			sw_ctxt[1]);
-	ctxt->fnc_id =
-		(uint8_t)(FIELD_GET(SW_IND_CTXT_DATA_W1_FNC_ID_MASK,
-			sw_ctxt[1]));
-	ctxt->rngsz_idx =
-		(uint8_t)(FIELD_GET(SW_IND_CTXT_DATA_W1_RNG_SZ_MASK,
-		sw_ctxt[1]));
-	ctxt->desc_sz =
-		(uint8_t)(FIELD_GET(SW_IND_CTXT_DATA_W1_DSC_SZ_MASK,
-			sw_ctxt[1]));
-	ctxt->bypass =
-		(uint8_t)(FIELD_GET(SW_IND_CTXT_DATA_W1_BYPASS_MASK,
-			sw_ctxt[1]));
-	ctxt->mm_chn =
-		(uint8_t)(FIELD_GET(SW_IND_CTXT_DATA_W1_MM_CHN_MASK,
-			sw_ctxt[1]));
-	ctxt->wbk_en =
-		(uint8_t)(FIELD_GET(SW_IND_CTXT_DATA_W1_WBK_EN_MASK,
-			sw_ctxt[1]));
-	ctxt->irq_en =
-		(uint8_t)(FIELD_GET(SW_IND_CTXT_DATA_W1_IRQ_EN_MASK,
-			sw_ctxt[1]));
-	ctxt->port_id =
-		(uint8_t)(FIELD_GET(SW_IND_CTXT_DATA_W1_PORT_ID_MASK,
-			sw_ctxt[1]));
-	ctxt->irq_no_last =
-		(uint8_t)(FIELD_GET(SW_IND_CTXT_DATA_W1_IRQ_NO_LAST_MASK,
-			sw_ctxt[1]));
-	ctxt->err =
-		(uint8_t)(FIELD_GET(SW_IND_CTXT_DATA_W1_ERR_MASK, sw_ctxt[1]));
-	ctxt->err_wb_sent =
-		(uint8_t)(FIELD_GET(SW_IND_CTXT_DATA_W1_ERR_WB_SENT_MASK,
-			sw_ctxt[1]));
-	ctxt->irq_req =
-		(uint8_t)(FIELD_GET(SW_IND_CTXT_DATA_W1_IRQ_REQ_MASK,
-			sw_ctxt[1]));
-	ctxt->mrkr_dis =
-		(uint8_t)(FIELD_GET(SW_IND_CTXT_DATA_W1_MRKR_DIS_MASK,
-			sw_ctxt[1]));
-	ctxt->is_mm =
-		(uint8_t)(FIELD_GET(SW_IND_CTXT_DATA_W1_IS_MM_MASK,
-			sw_ctxt[1]));
-
-	ctxt->ring_bs_addr = ((uint64_t)sw_ctxt[3] << 32) | (sw_ctxt[2]);
-
-	/** Read the QID2VEC Context Data */
-	rv = qdma_s80_hard_qid2vec_read(dev_hndl, c2h, hw_qid, &qid2vec_ctxt);
-	if (rv < 0)
-		return rv;
-
-	if (c2h) {
-		ctxt->vec = qid2vec_ctxt.c2h_vector;
-		ctxt->intr_aggr = qid2vec_ctxt.c2h_en_coal;
-	} else {
-		ctxt->vec = qid2vec_ctxt.h2c_vector;
-		ctxt->intr_aggr = qid2vec_ctxt.h2c_en_coal;
-	}
-
-
-	return QDMA_SUCCESS;
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_sw_context_clear() - clear sw context
- *
- * @dev_hndl:	device handle
- * @c2h:	is c2h queue
- * @hw_qid:	hardware qid of the queue
- *
- * Return:	0   - success and < 0 - failure
- *****************************************************************************/
-static int qdma_s80_hard_sw_context_clear(void *dev_hndl, uint8_t c2h,
-			  uint16_t hw_qid)
-{
-	enum ind_ctxt_cmd_sel sel = c2h ?
-			QDMA_CTXT_SEL_SW_C2H : QDMA_CTXT_SEL_SW_H2C;
-
-	if (!dev_hndl) {
-		qdma_log_error("%s: dev_handle is NULL, err:%d\n",
-					__func__, -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	return qdma_s80_hard_indirect_reg_clear(dev_hndl, sel, hw_qid);
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_sw_context_invalidate() - invalidate sw context
- *
- * @dev_hndl:	device handle
- * @c2h:	is c2h queue
- * @hw_qid:	hardware qid of the queue
- *
- * Return:	0   - success and < 0 - failure
- *****************************************************************************/
-static int qdma_s80_hard_sw_context_invalidate(void *dev_hndl, uint8_t c2h,
-		uint16_t hw_qid)
-{
-	enum ind_ctxt_cmd_sel sel = c2h ?
-			QDMA_CTXT_SEL_SW_C2H : QDMA_CTXT_SEL_SW_H2C;
-
-	if (!dev_hndl) {
-		qdma_log_error("%s: dev_handle is NULL, err:%d\n",
-					__func__, -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	return qdma_s80_hard_indirect_reg_invalidate(dev_hndl, sel, hw_qid);
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_sw_ctx_conf() - configure SW context
- *
- * @dev_hndl:	device handle
- * @c2h:	is c2h queue
- * @hw_qid:	hardware qid of the queue
- * @ctxt:	pointer to the context data
- * @access_type HW access type (qdma_hw_access_type enum) value
- *
- * Return:	0   - success and < 0 - failure
- *****************************************************************************/
-int qdma_s80_hard_sw_ctx_conf(void *dev_hndl, uint8_t c2h, uint16_t hw_qid,
-				struct qdma_descq_sw_ctxt *ctxt,
-				enum qdma_hw_access_type access_type)
-{
-	int ret_val = 0;
-
-	switch (access_type) {
-	case QDMA_HW_ACCESS_READ:
-		ret_val = qdma_s80_hard_sw_context_read(dev_hndl, c2h, hw_qid,
-				ctxt);
-		break;
-	case QDMA_HW_ACCESS_WRITE:
-		ret_val = qdma_s80_hard_sw_context_write(dev_hndl, c2h, hw_qid,
-				ctxt);
-		break;
-	case QDMA_HW_ACCESS_CLEAR:
-		ret_val = qdma_s80_hard_sw_context_clear(dev_hndl, c2h, hw_qid);
-		break;
-	case QDMA_HW_ACCESS_INVALIDATE:
-		ret_val = qdma_s80_hard_sw_context_invalidate(dev_hndl,
-				c2h, hw_qid);
-		break;
-	default:
-		qdma_log_error("%s: access_type=%d is invalid, err:%d\n",
-					   __func__, access_type,
-					   -QDMA_ERR_INV_PARAM);
-		ret_val = -QDMA_ERR_INV_PARAM;
-		break;
-	}
-	return ret_val;
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_pfetch_context_write() - create prefetch context and program it
- *
- * @dev_hndl:	device handle
- * @hw_qid:	hardware qid of the queue
- * @ctxt:	pointer to the prefetch context data strucutre
- *
- * Return:	0   - success and < 0 - failure
- *****************************************************************************/
-static int qdma_s80_hard_pfetch_context_write(void *dev_hndl, uint16_t hw_qid,
-		const struct qdma_descq_prefetch_ctxt *ctxt)
-{
-	uint32_t pfetch_ctxt[QDMA_S80_HARD_PFETCH_CONTEXT_NUM_WORDS] = {0};
-	enum ind_ctxt_cmd_sel sel = QDMA_CTXT_SEL_PFTCH;
-	uint32_t sw_crdt_l, sw_crdt_h;
-	uint16_t num_words_count = 0;
-
-	if (!dev_hndl || !ctxt) {
-		qdma_log_error("%s: dev_hndl=%p pfetch_ctxt=%p, err:%d\n",
-					   __func__, dev_hndl, ctxt,
-					   -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	sw_crdt_l =
-		FIELD_GET(QDMA_PFTCH_CTXT_SW_CRDT_GET_L_MASK, ctxt->sw_crdt);
-	sw_crdt_h =
-		FIELD_GET(QDMA_PFTCH_CTXT_SW_CRDT_GET_H_MASK, ctxt->sw_crdt);
-
-	pfetch_ctxt[num_words_count++] =
-		FIELD_SET(PREFETCH_CTXT_DATA_W0_BYPASS_MASK, ctxt->bypass) |
-		FIELD_SET(PREFETCH_CTXT_DATA_W0_BUF_SIZE_IDX_MASK,
-				ctxt->bufsz_idx) |
-		FIELD_SET(PREFETCH_CTXT_DATA_W0_PORT_ID_MASK, ctxt->port_id) |
-		FIELD_SET(PREFETCH_CTXT_DATA_W0_ERR_MASK, ctxt->err) |
-		FIELD_SET(PREFETCH_CTXT_DATA_W0_PFCH_EN_MASK, ctxt->pfch_en) |
-		FIELD_SET(PREFETCH_CTXT_DATA_W0_PFCH_MASK, ctxt->pfch) |
-		FIELD_SET(PREFETCH_CTXT_DATA_W0_SW_CRDT_L_MASK, sw_crdt_l);
-
-	pfetch_ctxt[num_words_count++] =
-		FIELD_SET(PREFETCH_CTXT_DATA_W1_SW_CRDT_H_MASK, sw_crdt_h) |
-		FIELD_SET(PREFETCH_CTXT_DATA_W1_VALID_MASK, ctxt->valid);
-
-	return qdma_s80_hard_indirect_reg_write(dev_hndl, sel, hw_qid,
-			pfetch_ctxt, num_words_count);
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_pfetch_context_read() - read prefetch context
- *
- * @dev_hndl:	device handle
- * @hw_qid:	hardware qid of the queue
- * @ctxt:	pointer to the output context data
- *
- * Return:	0   - success and < 0 - failure
- *****************************************************************************/
-static int qdma_s80_hard_pfetch_context_read(void *dev_hndl, uint16_t hw_qid,
-		struct qdma_descq_prefetch_ctxt *ctxt)
-{
-	int rv = 0;
-	uint32_t pfetch_ctxt[QDMA_S80_HARD_PFETCH_CONTEXT_NUM_WORDS] = {0};
-	enum ind_ctxt_cmd_sel sel = QDMA_CTXT_SEL_PFTCH;
-	uint32_t sw_crdt_l, sw_crdt_h;
-
-	if (!dev_hndl || !ctxt) {
-		qdma_log_error("%s: dev_hndl=%p pfetch_ctxt=%p, err:%d\n",
-					   __func__, dev_hndl, ctxt,
-					   -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	rv = qdma_s80_hard_indirect_reg_read(dev_hndl, sel, hw_qid,
-			QDMA_S80_HARD_PFETCH_CONTEXT_NUM_WORDS, pfetch_ctxt);
-	if (rv < 0)
-		return rv;
-
-	ctxt->bypass =
-		(uint8_t)(FIELD_GET(PREFETCH_CTXT_DATA_W0_BYPASS_MASK,
-			pfetch_ctxt[0]));
-	ctxt->bufsz_idx =
-		(uint8_t)(FIELD_GET(PREFETCH_CTXT_DATA_W0_BUF_SIZE_IDX_MASK,
-				pfetch_ctxt[0]));
-	ctxt->port_id =
-		(uint8_t)(FIELD_GET(PREFETCH_CTXT_DATA_W0_PORT_ID_MASK,
-			pfetch_ctxt[0]));
-	ctxt->err =
-		(uint8_t)(FIELD_GET(PREFETCH_CTXT_DATA_W0_ERR_MASK,
-			pfetch_ctxt[0]));
-	ctxt->pfch_en =
-		(uint8_t)(FIELD_GET(PREFETCH_CTXT_DATA_W0_PFCH_EN_MASK,
-			pfetch_ctxt[0]));
-	ctxt->pfch =
-		(uint8_t)(FIELD_GET(PREFETCH_CTXT_DATA_W0_PFCH_MASK,
-			pfetch_ctxt[0]));
-	sw_crdt_l =
-		(uint32_t)FIELD_GET(PREFETCH_CTXT_DATA_W0_SW_CRDT_L_MASK,
-			pfetch_ctxt[0]);
-
-	sw_crdt_h =
-		(uint32_t)FIELD_GET(PREFETCH_CTXT_DATA_W1_SW_CRDT_H_MASK,
-			pfetch_ctxt[1]);
-	ctxt->valid =
-		(uint8_t)(FIELD_GET(PREFETCH_CTXT_DATA_W1_VALID_MASK,
-			pfetch_ctxt[1]));
-
-	ctxt->sw_crdt =
-		(uint16_t)(FIELD_SET(QDMA_PFTCH_CTXT_SW_CRDT_GET_L_MASK,
-			sw_crdt_l) |
-		FIELD_SET(QDMA_PFTCH_CTXT_SW_CRDT_GET_H_MASK, sw_crdt_h));
-
-	return QDMA_SUCCESS;
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_pfetch_context_clear() - clear prefetch context
- *
- * @dev_hndl:	device handle
- * @hw_qid:	hardware qid of the queue
- *
- * Return:	0   - success and < 0 - failure
- *****************************************************************************/
-static int qdma_s80_hard_pfetch_context_clear(void *dev_hndl, uint16_t hw_qid)
-{
-	enum ind_ctxt_cmd_sel sel = QDMA_CTXT_SEL_PFTCH;
-
-	if (!dev_hndl) {
-		qdma_log_error("%s: dev_handle is NULL, err:%d\n",
-					__func__, -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	return qdma_s80_hard_indirect_reg_clear(dev_hndl, sel, hw_qid);
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_pfetch_context_invalidate() - invalidate prefetch context
- *
- * @dev_hndl:	device handle
- * @hw_qid:	hardware qid of the queue
- *
- * Return:	0   - success and < 0 - failure
- *****************************************************************************/
-static int qdma_s80_hard_pfetch_context_invalidate(void *dev_hndl,
-		uint16_t hw_qid)
-{
-	enum ind_ctxt_cmd_sel sel = QDMA_CTXT_SEL_PFTCH;
-
-	if (!dev_hndl) {
-		qdma_log_error("%s: dev_handle is NULL, err:%d\n",
-					__func__, -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	return qdma_s80_hard_indirect_reg_invalidate(dev_hndl, sel, hw_qid);
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_pfetch_ctx_conf() - configure prefetch context
- *
- * @dev_hndl:	device handle
- * @hw_qid:	hardware qid of the queue
- * @ctxt:	pointer to context data
- * @access_type HW access type (qdma_hw_access_type enum) value
- *
- * Return:	0   - success and < 0 - failure
- *****************************************************************************/
-int qdma_s80_hard_pfetch_ctx_conf(void *dev_hndl, uint16_t hw_qid,
-				struct qdma_descq_prefetch_ctxt *ctxt,
-				enum qdma_hw_access_type access_type)
-{
-	int ret_val = 0;
-
-	switch (access_type) {
-	case QDMA_HW_ACCESS_READ:
-		ret_val = qdma_s80_hard_pfetch_context_read(dev_hndl,
-				hw_qid, ctxt);
-		break;
-	case QDMA_HW_ACCESS_WRITE:
-		ret_val = qdma_s80_hard_pfetch_context_write(dev_hndl,
-				hw_qid, ctxt);
-		break;
-	case QDMA_HW_ACCESS_CLEAR:
-		ret_val = qdma_s80_hard_pfetch_context_clear(dev_hndl, hw_qid);
-		break;
-	case QDMA_HW_ACCESS_INVALIDATE:
-		ret_val = qdma_s80_hard_pfetch_context_invalidate(dev_hndl,
-				hw_qid);
-		break;
-	default:
-		qdma_log_error("%s: access_type=%d is invalid, err:%d\n",
-					   __func__, access_type,
-					   -QDMA_ERR_INV_PARAM);
-		ret_val = -QDMA_ERR_INV_PARAM;
-		break;
-	}
-
-	return ret_val;
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_cmpt_context_write() - create completion context and program it
- *
- * @dev_hndl:	device handle
- * @hw_qid:	hardware qid of the queue
- * @ctxt:	pointer to the cmpt context data strucutre
- *
- * Return:	0   - success and < 0 - failure
- *****************************************************************************/
-static int qdma_s80_hard_cmpt_context_write(void *dev_hndl, uint16_t hw_qid,
-			   const struct qdma_descq_cmpt_ctxt *ctxt)
-{
-	uint32_t cmpt_ctxt[QDMA_S80_HARD_CMPT_CONTEXT_NUM_WORDS] = {0};
-	uint16_t num_words_count = 0;
-	uint32_t baddr_l, baddr_h, baddr_m, pidx_l, pidx_h;
-	enum ind_ctxt_cmd_sel sel = QDMA_CTXT_SEL_CMPT;
-
-	/* Input args check */
-	if (!dev_hndl || !ctxt) {
-		qdma_log_error("%s: dev_hndl=%p cmpt_ctxt=%p, err:%d\n",
-					   __func__, dev_hndl, ctxt,
-					   -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	if ((ctxt->desc_sz > QDMA_DESC_SIZE_32B) ||
-		(ctxt->ringsz_idx >= QDMA_NUM_RING_SIZES) ||
-		(ctxt->counter_idx >= QDMA_NUM_C2H_COUNTERS) ||
-		(ctxt->timer_idx >= QDMA_NUM_C2H_TIMERS) ||
-		(ctxt->trig_mode > QDMA_CMPT_UPDATE_TRIG_MODE_TMR_CNTR)) {
-		qdma_log_error
-		("%s Inv dsz(%d)/ridx(%d)/cntr(%d)/tmr(%d)/tm(%d), err:%d\n",
-				__func__,
-				ctxt->desc_sz,
-				ctxt->ringsz_idx,
-				ctxt->counter_idx,
-				ctxt->timer_idx,
-				ctxt->trig_mode,
-				-QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	baddr_l =
-		(uint32_t)FIELD_GET(QDMA_S80_HARD_COMPL_CTXT_BADDR_GET_L_MASK,
-			ctxt->bs_addr);
-	baddr_m =
-		(uint32_t)FIELD_GET(QDMA_S80_HARD_COMPL_CTXT_BADDR_GET_M_MASK,
-			ctxt->bs_addr);
-	baddr_h =
-		(uint32_t)FIELD_GET(QDMA_S80_HARD_COMPL_CTXT_BADDR_GET_H_MASK,
-			ctxt->bs_addr);
-
-	pidx_l = FIELD_GET(QDMA_S80_HARD_COMPL_CTXT_PIDX_GET_L_MASK,
-			ctxt->pidx);
-	pidx_h = FIELD_GET(QDMA_S80_HARD_COMPL_CTXT_PIDX_GET_H_MASK,
-			ctxt->pidx);
-
-	cmpt_ctxt[num_words_count++] =
-		FIELD_SET(CMPL_CTXT_DATA_W0_EN_STAT_DESC_MASK,
-				ctxt->en_stat_desc) |
-		FIELD_SET(CMPL_CTXT_DATA_W0_EN_INT_MASK, ctxt->en_int) |
-		FIELD_SET(CMPL_CTXT_DATA_W0_TRIG_MODE_MASK, ctxt->trig_mode) |
-		FIELD_SET(CMPL_CTXT_DATA_W0_FNC_ID_MASK, ctxt->fnc_id) |
-		FIELD_SET(CMPL_CTXT_DATA_W0_CNTER_IDX_MASK,
-				ctxt->counter_idx) |
-		FIELD_SET(CMPL_CTXT_DATA_W0_TIMER_IDX_MASK,
-				ctxt->timer_idx) |
-		FIELD_SET(CMPL_CTXT_DATA_W0_INT_ST_MASK,
-				ctxt->in_st) |
-		FIELD_SET(CMPL_CTXT_DATA_W0_COLOR_MASK,
-				ctxt->color) |
-		FIELD_SET(CMPL_CTXT_DATA_W0_QSIZE_IDX_MASK,
-				ctxt->ringsz_idx) |
-		FIELD_SET(CMPL_CTXT_DATA_W0_BADDR_64_L_MASK,
-				baddr_l);
-
-	cmpt_ctxt[num_words_count++] =
-		FIELD_SET(CMPL_CTXT_DATA_W1_BADDR_64_M_MASK,
-				baddr_m);
-
-	cmpt_ctxt[num_words_count++] =
-		FIELD_SET(CMPL_CTXT_DATA_W2_BADDR_64_H_MASK,
-				baddr_h) |
-		FIELD_SET(CMPL_CTXT_DATA_W2_DESC_SIZE_MASK,
-				ctxt->desc_sz) |
-		FIELD_SET(CMPL_CTXT_DATA_W2_PIDX_L_MASK,
-				pidx_l);
-
-	cmpt_ctxt[num_words_count++] =
-		FIELD_SET(CMPL_CTXT_DATA_W3_PIDX_H_MASK,
-				pidx_h) |
-		FIELD_SET(CMPL_CTXT_DATA_W3_CIDX_MASK, ctxt->cidx) |
-		FIELD_SET(CMPL_CTXT_DATA_W3_VALID_MASK, ctxt->valid) |
-		FIELD_SET(CMPL_CTXT_DATA_W3_ERR_MASK, ctxt->err) |
-		FIELD_SET(CMPL_CTXT_DATA_W3_USER_TRIG_PEND_MASK,
-				ctxt->user_trig_pend) |
-		FIELD_SET(CMPL_CTXT_DATA_W3_TIMER_RUNNING_MASK,
-				ctxt->timer_running) |
-		FIELD_SET(CMPL_CTXT_DATA_W3_FULL_UPD_MASK,
-				ctxt->full_upd);
-
-	return qdma_s80_hard_indirect_reg_write(dev_hndl, sel, hw_qid,
-			cmpt_ctxt, num_words_count);
-
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_cmpt_context_read() - read completion context
- *
- * @dev_hndl:	device handle
- * @hw_qid:	hardware qid of the queue
- * @ctxt:	    pointer to the context data
- *
- * Return:	0   - success and < 0 - failure
- *****************************************************************************/
-static int qdma_s80_hard_cmpt_context_read(void *dev_hndl, uint16_t hw_qid,
-			   struct qdma_descq_cmpt_ctxt *ctxt)
-{
-	int rv = 0;
-	uint32_t cmpt_ctxt[QDMA_S80_HARD_CMPT_CONTEXT_NUM_WORDS] = {0};
-	enum ind_ctxt_cmd_sel sel = QDMA_CTXT_SEL_CMPT;
-	uint32_t baddr_l, baddr_h, baddr_m,
-			 pidx_l, pidx_h;
-
-	if (!dev_hndl || !ctxt) {
-		qdma_log_error("%s: dev_hndl=%p cmpt_ctxt=%p, err:%d\n",
-					   __func__, dev_hndl, ctxt,
-					   -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	rv = qdma_s80_hard_indirect_reg_read(dev_hndl, sel, hw_qid,
-			QDMA_S80_HARD_CMPT_CONTEXT_NUM_WORDS, cmpt_ctxt);
-	if (rv < 0)
-		return rv;
-
-	ctxt->en_stat_desc =
-		FIELD_GET(CMPL_CTXT_DATA_W0_EN_STAT_DESC_MASK, cmpt_ctxt[0]);
-	ctxt->en_int = FIELD_GET(CMPL_CTXT_DATA_W0_EN_INT_MASK,
-		cmpt_ctxt[0]);
-	ctxt->trig_mode =
-		FIELD_GET(CMPL_CTXT_DATA_W0_TRIG_MODE_MASK, cmpt_ctxt[0]);
-	ctxt->fnc_id =
-		(uint8_t)(FIELD_GET(CMPL_CTXT_DATA_W0_FNC_ID_MASK,
-			cmpt_ctxt[0]));
-	ctxt->counter_idx =
-		(uint8_t)(FIELD_GET(
-			CMPL_CTXT_DATA_W0_CNTER_IDX_MASK,
-			cmpt_ctxt[0]));
-	ctxt->timer_idx =
-		(uint8_t)(FIELD_GET(CMPL_CTXT_DATA_W0_TIMER_IDX_MASK,
-				cmpt_ctxt[0]));
-	ctxt->in_st =
-		(uint8_t)(FIELD_GET(CMPL_CTXT_DATA_W0_INT_ST_MASK,
-			cmpt_ctxt[0]));
-	ctxt->color =
-		(uint8_t)(FIELD_GET(CMPL_CTXT_DATA_W0_COLOR_MASK,
-			cmpt_ctxt[0]));
-	ctxt->ringsz_idx =
-		(uint8_t)(FIELD_GET(CMPL_CTXT_DATA_W0_QSIZE_IDX_MASK,
-			cmpt_ctxt[0]));
-
-	baddr_l =
-		FIELD_GET(CMPL_CTXT_DATA_W0_BADDR_64_L_MASK,
-				cmpt_ctxt[0]);
-	baddr_m =
-		FIELD_GET(CMPL_CTXT_DATA_W1_BADDR_64_M_MASK,
-				cmpt_ctxt[1]);
-	baddr_h =
-		FIELD_GET(CMPL_CTXT_DATA_W2_BADDR_64_H_MASK,
-				cmpt_ctxt[2]);
-
-	ctxt->desc_sz =
-		(uint8_t)(FIELD_GET(CMPL_CTXT_DATA_W2_DESC_SIZE_MASK,
-			cmpt_ctxt[2]));
-	pidx_l = FIELD_GET(CMPL_CTXT_DATA_W2_PIDX_L_MASK,
-			cmpt_ctxt[2]);
-
-	pidx_h = FIELD_GET(CMPL_CTXT_DATA_W3_PIDX_H_MASK,
-			cmpt_ctxt[3]);
-	ctxt->cidx =
-		(uint16_t)(FIELD_GET(CMPL_CTXT_DATA_W3_CIDX_MASK,
-			cmpt_ctxt[3]));
-	ctxt->valid =
-		(uint8_t)(FIELD_GET(CMPL_CTXT_DATA_W3_VALID_MASK,
-			cmpt_ctxt[3]));
-	ctxt->err =
-		(uint8_t)(FIELD_GET(CMPL_CTXT_DATA_W3_ERR_MASK,
-			cmpt_ctxt[3]));
-	ctxt->user_trig_pend =
-		(uint8_t)(FIELD_GET(
-		CMPL_CTXT_DATA_W3_USER_TRIG_PEND_MASK, cmpt_ctxt[3]));
-
-	ctxt->timer_running =
-		(uint8_t)(FIELD_GET(CMPL_CTXT_DATA_W3_TIMER_RUNNING_MASK,
-			cmpt_ctxt[3]));
-	ctxt->full_upd =
-		(uint8_t)(FIELD_GET(CMPL_CTXT_DATA_W3_FULL_UPD_MASK,
-			cmpt_ctxt[3]));
-
-	ctxt->bs_addr =
-		FIELD_SET(QDMA_S80_HARD_COMPL_CTXT_BADDR_GET_L_MASK,
-			(uint64_t)baddr_l) |
-		FIELD_SET(QDMA_S80_HARD_COMPL_CTXT_BADDR_GET_M_MASK,
-			(uint64_t)baddr_m) |
-		FIELD_SET(QDMA_S80_HARD_COMPL_CTXT_BADDR_GET_H_MASK,
-			(uint64_t)baddr_h);
-
-	ctxt->pidx =
-		(uint16_t)(FIELD_SET(QDMA_S80_HARD_COMPL_CTXT_PIDX_GET_L_MASK,
-			pidx_l) |
-		FIELD_SET(QDMA_S80_HARD_COMPL_CTXT_PIDX_GET_H_MASK,
-			pidx_h));
-
-	return QDMA_SUCCESS;
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_cmpt_context_clear() - clear completion context
- *
- * @dev_hndl:	device handle
- * @hw_qid:	hardware qid of the queue
- *
- * Return:	0   - success and < 0 - failure
- *****************************************************************************/
-static int qdma_s80_hard_cmpt_context_clear(void *dev_hndl, uint16_t hw_qid)
-{
-	enum ind_ctxt_cmd_sel sel = QDMA_CTXT_SEL_CMPT;
-
-	if (!dev_hndl) {
-		qdma_log_error("%s: dev_handle is NULL, err:%d\n",
-					__func__, -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	return qdma_s80_hard_indirect_reg_clear(dev_hndl, sel, hw_qid);
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_cmpt_context_invalidate() - invalidate completion context
- *
- * @dev_hndl:	device handle
- * @hw_qid:	hardware qid of the queue
- *
- * Return:	0   - success and < 0 - failure
- *****************************************************************************/
-static int qdma_s80_hard_cmpt_context_invalidate(void *dev_hndl,
-		uint16_t hw_qid)
-{
-	enum ind_ctxt_cmd_sel sel = QDMA_CTXT_SEL_CMPT;
-
-	if (!dev_hndl) {
-		qdma_log_error("%s: dev_handle is NULL, err:%d\n",
-					__func__, -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	return qdma_s80_hard_indirect_reg_invalidate(dev_hndl, sel, hw_qid);
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_cmpt_ctx_conf() - configure completion context
- *
- * @dev_hndl:	device handle
- * @hw_qid:	hardware qid of the queue
- * @ctxt:	pointer to context data
- * @access_type HW access type (qdma_hw_access_type enum) value
- *
- * Return:	0   - success and < 0 - failure
- *****************************************************************************/
-int qdma_s80_hard_cmpt_ctx_conf(void *dev_hndl, uint16_t hw_qid,
-			struct qdma_descq_cmpt_ctxt *ctxt,
-			enum qdma_hw_access_type access_type)
-{
-	int ret_val = 0;
-
-	if (!dev_hndl) {
-		qdma_log_error("%s: dev_handle is NULL, err:%d\n",
-					__func__, -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	switch (access_type) {
-	case QDMA_HW_ACCESS_READ:
-		ret_val = qdma_s80_hard_cmpt_context_read(dev_hndl,
-				hw_qid, ctxt);
-		break;
-	case QDMA_HW_ACCESS_WRITE:
-		ret_val = qdma_s80_hard_cmpt_context_write(dev_hndl,
-				hw_qid, ctxt);
-		break;
-	case QDMA_HW_ACCESS_CLEAR:
-		ret_val = qdma_s80_hard_cmpt_context_clear(dev_hndl, hw_qid);
-		break;
-	case QDMA_HW_ACCESS_INVALIDATE:
-		ret_val = qdma_s80_hard_cmpt_context_invalidate(dev_hndl,
-				hw_qid);
-		break;
-	default:
-		qdma_log_error("%s: access_type=%d is invalid, err:%d\n",
-					   __func__, access_type,
-					   -QDMA_ERR_INV_PARAM);
-		ret_val = -QDMA_ERR_INV_PARAM;
-		break;
-	}
-
-	return ret_val;
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_hw_context_read() - read hardware context
- *
- * @dev_hndl:	device handle
- * @c2h:	is c2h queue
- * @hw_qid:	hardware qid of the queue
- * @ctxt:	pointer to the output context data
- *
- * Return:	0   - success and < 0 - failure
- *****************************************************************************/
-static int qdma_s80_hard_hw_context_read(void *dev_hndl, uint8_t c2h,
-			 uint16_t hw_qid, struct qdma_descq_hw_ctxt *ctxt)
-{
-	int rv = 0;
-	uint32_t hw_ctxt[QDMA_S80_HARD_HW_CONTEXT_NUM_WORDS] = {0};
-	enum ind_ctxt_cmd_sel sel = c2h ? QDMA_CTXT_SEL_HW_C2H :
-			QDMA_CTXT_SEL_HW_H2C;
-
-	if (!dev_hndl || !ctxt) {
-		qdma_log_error("%s: dev_hndl=%p hw_ctxt=%p, err:%d\n",
-						__func__, dev_hndl, ctxt,
-						-QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	rv = qdma_s80_hard_indirect_reg_read(dev_hndl, sel, hw_qid,
-				   QDMA_S80_HARD_HW_CONTEXT_NUM_WORDS, hw_ctxt);
-	if (rv < 0)
-		return rv;
-
-	ctxt->cidx = FIELD_GET(HW_IND_CTXT_DATA_W0_CIDX_MASK, hw_ctxt[0]);
-	ctxt->crd_use =
-		(uint16_t)(FIELD_GET(HW_IND_CTXT_DATA_W0_CRD_USE_MASK,
-				hw_ctxt[0]));
-
-	ctxt->dsc_pend =
-		(uint8_t)(FIELD_GET(HW_IND_CTXT_DATA_W1_DSC_PND_MASK,
-				hw_ctxt[1]));
-	ctxt->idl_stp_b =
-		(uint8_t)(FIELD_GET(HW_IND_CTXT_DATA_W1_IDL_STP_B_MASK,
-			hw_ctxt[1]));
-	ctxt->fetch_pnd =
-		(uint8_t)(FIELD_GET(HW_IND_CTXT_DATA_W1_FETCH_PND_MASK,
-			hw_ctxt[1]));
-
-	return QDMA_SUCCESS;
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_hw_context_clear() - clear hardware context
- *
- * @dev_hndl:	device handle
- * @c2h:	is c2h queue
- * @hw_qid:	hardware qid of the queue
- *
- * Return:	0   - success and < 0 - failure
- *****************************************************************************/
-static int qdma_s80_hard_hw_context_clear(void *dev_hndl, uint8_t c2h,
-			  uint16_t hw_qid)
-{
-	enum ind_ctxt_cmd_sel sel = c2h ? QDMA_CTXT_SEL_HW_C2H :
-			QDMA_CTXT_SEL_HW_H2C;
-
-	if (!dev_hndl) {
-		qdma_log_error("%s: dev_handle is NULL, err:%d\n",
-					__func__, -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	return qdma_s80_hard_indirect_reg_clear(dev_hndl, sel, hw_qid);
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_hw_context_invalidate() - invalidate hardware context
- *
- * @dev_hndl:	device handle
- * @c2h:	is c2h queue
- * @hw_qid:	hardware qid of the queue
- *
- * Return:	0   - success and < 0 - failure
- *****************************************************************************/
-static int qdma_s80_hard_hw_context_invalidate(void *dev_hndl, uint8_t c2h,
-				   uint16_t hw_qid)
-{
-	enum ind_ctxt_cmd_sel sel = c2h ? QDMA_CTXT_SEL_HW_C2H :
-			QDMA_CTXT_SEL_HW_H2C;
-
-	if (!dev_hndl) {
-		qdma_log_error("%s: dev_handle is NULL, err:%d\n",
-					__func__, -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	return qdma_s80_hard_indirect_reg_invalidate(dev_hndl, sel, hw_qid);
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_hw_ctx_conf() - configure HW context
- *
- * @dev_hndl:	device handle
- * @c2h:	is c2h queue
- * @hw_qid:	hardware qid of the queue
- * @ctxt:	pointer to context data
- * @access_type HW access type (qdma_hw_access_type enum) value
- *		QDMA_HW_ACCESS_WRITE unsupported
- *
- * Return:	0   - success and < 0 - failure
- *****************************************************************************/
-int qdma_s80_hard_hw_ctx_conf(void *dev_hndl, uint8_t c2h, uint16_t hw_qid,
-				struct qdma_descq_hw_ctxt *ctxt,
-				enum qdma_hw_access_type access_type)
-{
-	int ret_val = 0;
-
-	switch (access_type) {
-	case QDMA_HW_ACCESS_READ:
-		ret_val = qdma_s80_hard_hw_context_read(dev_hndl, c2h, hw_qid,
-				ctxt);
-		break;
-	case QDMA_HW_ACCESS_CLEAR:
-		ret_val = qdma_s80_hard_hw_context_clear(dev_hndl, c2h, hw_qid);
-		break;
-	case QDMA_HW_ACCESS_INVALIDATE:
-		ret_val = qdma_s80_hard_hw_context_invalidate(dev_hndl, c2h,
-				hw_qid);
-		break;
-	case QDMA_HW_ACCESS_WRITE:
-	default:
-		qdma_log_error("%s: access_type=%d is invalid, err:%d\n",
-						__func__, access_type,
-						-QDMA_ERR_INV_PARAM);
-		ret_val = -QDMA_ERR_INV_PARAM;
-		break;
-	}
-
-
-	return ret_val;
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_indirect_intr_context_write() - create indirect
- * interrupt context and program it
- *
- * @dev_hndl:   device handle
- * @ring_index: indirect interrupt ring index
- * @ctxt:	pointer to the interrupt context data strucutre
- *
- * Return:	0   - success and < 0 - failure
- *****************************************************************************/
-static int qdma_s80_hard_indirect_intr_context_write(void *dev_hndl,
-		uint16_t ring_index, const struct qdma_indirect_intr_ctxt *ctxt)
-{
-	uint32_t intr_ctxt[QDMA_S80_HARD_IND_INTR_CONTEXT_NUM_WORDS] = {0};
-	enum ind_ctxt_cmd_sel sel = QDMA_CTXT_SEL_INT_COAL;
-	uint16_t num_words_count = 0;
-	uint32_t baddr_l, baddr_h;
-
-	if (!dev_hndl || !ctxt) {
-		qdma_log_error("%s: dev_hndl=%p intr_ctxt=%p, err:%d\n",
-						__func__, dev_hndl, ctxt,
-						-QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	if (ctxt->page_size > QDMA_INDIRECT_INTR_RING_SIZE_32KB) {
-		qdma_log_error("%s: ctxt->page_size=%u is too big, err:%d\n",
-					   __func__, ctxt->page_size,
-					   -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	baddr_l =
-		(uint32_t)FIELD_GET(QDMA_S80_HARD_INTR_CTXT_BADDR_GET_L_MASK,
-			ctxt->baddr_4k);
-	baddr_h =
-		(uint32_t)FIELD_GET(QDMA_S80_HARD_INTR_CTXT_BADDR_GET_H_MASK,
-			ctxt->baddr_4k);
-
-	intr_ctxt[num_words_count++] =
-		FIELD_SET(INTR_CTXT_DATA_W0_VALID_MASK, ctxt->valid) |
-		FIELD_SET(INTR_CTXT_DATA_W0_VEC_MASK, ctxt->vec) |
-		FIELD_SET(INTR_CTXT_DATA_W0_INT_ST_MASK,
-				ctxt->int_st) |
-		FIELD_SET(INTR_CTXT_DATA_W0_COLOR_MASK, ctxt->color) |
-		FIELD_SET(INTR_CTXT_DATA_W0_BADDR_4K_L_MASK, baddr_l);
-
-	intr_ctxt[num_words_count++] =
-		FIELD_SET(INTR_CTXT_DATA_W1_BADDR_4K_H_MASK, baddr_h) |
-		FIELD_SET(INTR_CTXT_DATA_W1_PAGE_SIZE_MASK,
-				ctxt->page_size);
-
-	intr_ctxt[num_words_count++] =
-		FIELD_SET(INTR_CTXT_DATA_W2_PIDX_MASK, ctxt->pidx);
-
-	return qdma_s80_hard_indirect_reg_write(dev_hndl, sel, ring_index,
-			intr_ctxt, num_words_count);
-}
-
-/*****************************************************************************/
-/**
- * qdma_indirect_intr_context_read() - read indirect interrupt context
- *
- * @dev_hndl:	device handle
- * @ring_index:	indirect interrupt ring index
- * @ctxt:	pointer to the output context data
- *
- * Return:	0   - success and < 0 - failure
- *****************************************************************************/
-static int qdma_s80_hard_indirect_intr_context_read(void *dev_hndl,
-		uint16_t ring_index, struct qdma_indirect_intr_ctxt *ctxt)
-{
-	int rv = 0;
-	uint32_t intr_ctxt[QDMA_S80_HARD_IND_INTR_CONTEXT_NUM_WORDS] = {0};
-	enum ind_ctxt_cmd_sel sel = QDMA_CTXT_SEL_INT_COAL;
-	uint64_t baddr_l, baddr_h;
-
-	if (!dev_hndl || !ctxt) {
-		qdma_log_error("%s: dev_hndl=%p intr_ctxt=%p, err:%d\n",
-					   __func__, dev_hndl, ctxt,
-					   -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	rv = qdma_s80_hard_indirect_reg_read(dev_hndl, sel, ring_index,
-			QDMA_S80_HARD_IND_INTR_CONTEXT_NUM_WORDS, intr_ctxt);
-	if (rv < 0)
-		return rv;
-
-	ctxt->valid = FIELD_GET(INTR_CTXT_DATA_W0_VALID_MASK, intr_ctxt[0]);
-	ctxt->vec = FIELD_GET(INTR_CTXT_DATA_W0_VEC_MASK,
-			intr_ctxt[0]);
-	ctxt->int_st = FIELD_GET(INTR_CTXT_DATA_W0_INT_ST_MASK,
-			intr_ctxt[0]);
-	ctxt->color =
-		(uint8_t)(FIELD_GET(INTR_CTXT_DATA_W0_COLOR_MASK,
-			intr_ctxt[0]));
-	baddr_l = FIELD_GET(INTR_CTXT_DATA_W0_BADDR_4K_L_MASK,
-			intr_ctxt[0]);
-
-	baddr_h = FIELD_GET(INTR_CTXT_DATA_W1_BADDR_4K_H_MASK,
-			intr_ctxt[1]);
-	ctxt->page_size =
-		(uint8_t)(FIELD_GET(INTR_CTXT_DATA_W1_PAGE_SIZE_MASK,
-			intr_ctxt[1]));
-	ctxt->pidx = FIELD_GET(INTR_CTXT_DATA_W2_PIDX_MASK,
-			intr_ctxt[2]);
-
-	ctxt->baddr_4k =
-		FIELD_SET(QDMA_S80_HARD_INTR_CTXT_BADDR_GET_L_MASK, baddr_l) |
-		FIELD_SET(QDMA_S80_HARD_INTR_CTXT_BADDR_GET_H_MASK, baddr_h);
-
-	return QDMA_SUCCESS;
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_indirect_intr_context_clear() - clear indirect
- * interrupt context
- *
- * @dev_hndl:	device handle
- * @ring_index:	indirect interrupt ring index
- *
- * Return:	0   - success and < 0 - failure
- *****************************************************************************/
-static int qdma_s80_hard_indirect_intr_context_clear(void *dev_hndl,
-		uint16_t ring_index)
-{
-	enum ind_ctxt_cmd_sel sel = QDMA_CTXT_SEL_INT_COAL;
-
-	if (!dev_hndl) {
-		qdma_log_error("%s: dev_handle is NULL, err:%d\n",
-					__func__, -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	return qdma_s80_hard_indirect_reg_clear(dev_hndl, sel, ring_index);
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_indirect_intr_context_invalidate() - invalidate
- * indirect interrupt context
- *
- * @dev_hndl:	device handle
- * @ring_index:	indirect interrupt ring index
- *
- * Return:	0   - success and < 0 - failure
- *****************************************************************************/
-static int qdma_s80_hard_indirect_intr_context_invalidate(void *dev_hndl,
-					  uint16_t ring_index)
-{
-	enum ind_ctxt_cmd_sel sel = QDMA_CTXT_SEL_INT_COAL;
-
-	if (!dev_hndl) {
-		qdma_log_error("%s: dev_handle is NULL, err:%d\n",
-					__func__, -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	return qdma_s80_hard_indirect_reg_invalidate(dev_hndl, sel, ring_index);
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_indirect_intr_ctx_conf() - configure indirect interrupt context
- *
- * @dev_hndl:	device handle
- * @ring_index:	indirect interrupt ring index
- * @ctxt:	pointer to context data
- * @access_type HW access type (qdma_hw_access_type enum) value
- *
- * Return:	0   - success and < 0 - failure
- *****************************************************************************/
-int qdma_s80_hard_indirect_intr_ctx_conf(void *dev_hndl, uint16_t ring_index,
-				struct qdma_indirect_intr_ctxt *ctxt,
-				enum qdma_hw_access_type access_type)
-{
-	int ret_val = 0;
-
-	switch (access_type) {
-	case QDMA_HW_ACCESS_READ:
-		ret_val = qdma_s80_hard_indirect_intr_context_read(dev_hndl,
-							      ring_index,
-							      ctxt);
-		break;
-	case QDMA_HW_ACCESS_WRITE:
-		ret_val = qdma_s80_hard_indirect_intr_context_write(dev_hndl,
-							       ring_index,
-							       ctxt);
-		break;
-	case QDMA_HW_ACCESS_CLEAR:
-		ret_val = qdma_s80_hard_indirect_intr_context_clear(dev_hndl,
-							   ring_index);
-		break;
-	case QDMA_HW_ACCESS_INVALIDATE:
-		ret_val = qdma_s80_hard_indirect_intr_context_invalidate(
-				dev_hndl, ring_index);
-		break;
-	default:
-		qdma_log_error("%s: access_type=%d is invalid, err:%d\n",
-					   __func__, access_type,
-					   -QDMA_ERR_INV_PARAM);
-		ret_val = -QDMA_ERR_INV_PARAM;
-		break;
-	}
-
-	return ret_val;
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_set_default_global_csr() - function to set the global
- *  CSR register to default values. The value can be modified later by using
- *  the set/get csr functions
- *
- * @dev_hndl:	device handle
- *
- * Return:	0   - success and < 0 - failure
- *****************************************************************************/
-int qdma_s80_hard_set_default_global_csr(void *dev_hndl)
-{
-	/* Default values */
-	uint32_t reg_val = 0;
-	uint32_t rng_sz[QDMA_NUM_RING_SIZES] = {2049, 65, 129, 193, 257,
-				385, 513, 769, 1025, 1537, 3073, 4097, 6145,
-				8193, 12289, 16385};
-	uint32_t tmr_cnt[QDMA_NUM_C2H_TIMERS] = {1, 2, 4, 5, 8, 10, 15, 20, 25,
-				30, 50, 75, 100, 125, 150, 200};
-	uint32_t cnt_th[QDMA_NUM_C2H_COUNTERS] = {2, 4, 8, 16, 24,
-				32, 48, 64, 80, 96, 112, 128, 144,
-				160, 176, 192};
-	uint32_t buf_sz[QDMA_NUM_C2H_BUFFER_SIZES] = {4096, 256, 512, 1024,
-				2048, 3968, 4096, 4096, 4096, 4096, 4096, 4096,
-				4096, 8192, 9018, 16384};
-	struct qdma_dev_attributes dev_cap;
-
-	if (!dev_hndl) {
-		qdma_log_error("%s: dev_handle is NULL, err:%d\n",
-					__func__, -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	qdma_s80_hard_get_device_attributes(dev_hndl, &dev_cap);
-
-	/* Configuring CSR registers */
-	/* Global ring sizes */
-	qdma_write_csr_values(dev_hndl, QDMA_S80_HARD_GLBL_RNG_SZ_1_ADDR, 0,
-					QDMA_NUM_RING_SIZES, rng_sz);
-
-	if (dev_cap.st_en || dev_cap.mm_cmpt_en) {
-		/* Counter thresholds */
-		qdma_write_csr_values(dev_hndl,
-				QDMA_S80_HARD_C2H_CNT_TH_1_ADDR, 0,
-				QDMA_NUM_C2H_COUNTERS, cnt_th);
-
-		/* Timer Counters */
-		qdma_write_csr_values(dev_hndl,
-				QDMA_S80_HARD_C2H_TIMER_CNT_1_ADDR, 0,
-				QDMA_NUM_C2H_TIMERS, tmr_cnt);
-
-
-		/* Writeback Interval */
-		reg_val =
-			FIELD_SET(GLBL_DSC_CFG_MAXFETCH_MASK,
-				  DEFAULT_MAX_DSC_FETCH) |
-				  FIELD_SET(GLBL_DSC_CFG_WB_ACC_INT_MASK,
-				  DEFAULT_WRB_INT);
-		qdma_reg_write(dev_hndl,
-				QDMA_S80_HARD_GLBL_DSC_CFG_ADDR, reg_val);
-	}
-
-	if (dev_cap.st_en) {
-		/* Buffer Sizes */
-		qdma_write_csr_values(dev_hndl,
-				QDMA_S80_HARD_C2H_BUF_SZ_0_ADDR, 0,
-				QDMA_NUM_C2H_BUFFER_SIZES, buf_sz);
-
-		/* Prefetch Configuration */
-		reg_val =
-			FIELD_SET(C2H_PFCH_CFG_FL_TH_MASK,
-				DEFAULT_PFCH_STOP_THRESH) |
-				FIELD_SET(C2H_PFCH_CFG_NUM_MASK,
-				DEFAULT_PFCH_NUM_ENTRIES_PER_Q) |
-				FIELD_SET(C2H_PFCH_CFG_QCNT_MASK,
-				DEFAULT_PFCH_MAX_Q_CNT) |
-				FIELD_SET(C2H_PFCH_CFG_EVT_QCNT_TH_MASK,
-				DEFAULT_C2H_INTR_TIMER_TICK);
-		qdma_reg_write(dev_hndl,
-				QDMA_S80_HARD_C2H_PFCH_CFG_ADDR, reg_val);
-
-		/* C2H interrupt timer tick */
-		qdma_reg_write(dev_hndl, QDMA_S80_HARD_C2H_INT_TIMER_TICK_ADDR,
-						DEFAULT_C2H_INTR_TIMER_TICK);
-
-		/* C2h Completion Coalesce Configuration */
-		reg_val =
-			FIELD_SET(C2H_WRB_COAL_CFG_TICK_CNT_MASK,
-				DEFAULT_CMPT_COAL_TIMER_CNT) |
-				FIELD_SET(C2H_WRB_COAL_CFG_TICK_VAL_MASK,
-				DEFAULT_CMPT_COAL_TIMER_TICK) |
-				FIELD_SET(C2H_WRB_COAL_CFG_MAX_BUF_SZ_MASK,
-				DEFAULT_CMPT_COAL_MAX_BUF_SZ);
-		qdma_reg_write(dev_hndl,
-				QDMA_S80_HARD_C2H_WRB_COAL_CFG_ADDR, reg_val);
-
-#if 0
-		/* H2C throttle Configuration*/
-		reg_val =
-			FIELD_SET(QDMA_H2C_DATA_THRESH_MASK,
-				DEFAULT_H2C_THROT_DATA_THRESH) |
-				FIELD_SET(QDMA_H2C_REQ_THROT_EN_DATA_MASK,
-				DEFAULT_THROT_EN_DATA);
-		qdma_reg_write(dev_hndl, QDMA_OFFSET_H2C_REQ_THROT, reg_val);
-#endif
-	}
-
-	return QDMA_SUCCESS;
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_queue_pidx_update() - function to update the desc PIDX
- *
- * @dev_hndl:	device handle
- * @is_vf:	Whether PF or VF
- * @qid:	Queue id relative to the PF/VF calling this API
- * @is_c2h:	Queue direction. Set 1 for C2H and 0 for H2C
- * @reg_info:	data needed for the PIDX register update
- *
- * Return:	0   - success and < 0 - failure
- *****************************************************************************/
-int qdma_s80_hard_queue_pidx_update(void *dev_hndl, uint8_t is_vf, uint16_t qid,
-		uint8_t is_c2h, const struct qdma_q_pidx_reg_info *reg_info)
-{
-	uint32_t reg_addr = 0;
-	uint32_t reg_val = 0;
-
-	if (!dev_hndl) {
-		qdma_log_error("%s: dev_handle is NULL, err:%d\n",
-					__func__, -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-	if (!reg_info) {
-		qdma_log_error("%s: reg_info is NULL, err:%d\n",
-					__func__, -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	if (!is_vf) {
-		reg_addr = (is_c2h) ?
-			QDMA_S80_HARD_OFFSET_DMAP_SEL_C2H_DSC_PIDX :
-			QDMA_S80_HARD_OFFSET_DMAP_SEL_H2C_DSC_PIDX;
-	} else {
-		reg_addr = (is_c2h) ?
-			QDMA_S80_HARD_OFFSET_VF_DMAP_SEL_C2H_DSC_PIDX :
-			QDMA_S80_HARD_OFFSET_VF_DMAP_SEL_H2C_DSC_PIDX;
-	}
-
-	reg_addr += (qid * QDMA_PIDX_STEP);
-
-	reg_val = FIELD_SET(QDMA_S80_HARD_DMA_SEL_DESC_PIDX_MASK,
-					reg_info->pidx) |
-			  FIELD_SET(QDMA_S80_HARD_DMA_SEL_IRQ_EN_MASK,
-					reg_info->irq_en);
-
-	qdma_reg_write(dev_hndl, reg_addr, reg_val);
-
-	return QDMA_SUCCESS;
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_queue_cmpt_cidx_update() - function to update the CMPT
- * CIDX update
- *
- * @dev_hndl:	device handle
- * @is_vf:	Whether PF or VF
- * @qid:	Queue id relative to the PF/VF calling this API
- * @reg_info:	data needed for the CIDX register update
- *
- * Return:	0   - success and < 0 - failure
- *****************************************************************************/
-int qdma_s80_hard_queue_cmpt_cidx_update(void *dev_hndl, uint8_t is_vf,
-		uint16_t qid, const struct qdma_q_cmpt_cidx_reg_info *reg_info)
-{
-	uint32_t reg_addr = (is_vf) ?
-		QDMA_S80_HARD_OFFSET_VF_DMAP_SEL_CMPT_CIDX :
-		QDMA_S80_HARD_OFFSET_DMAP_SEL_CMPT_CIDX;
-	uint32_t reg_val = 0;
-
-	if (!dev_hndl) {
-		qdma_log_error("%s: dev_handle is NULL, err:%d\n",
-					__func__, -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	if (!reg_info) {
-		qdma_log_error("%s: reg_info is NULL, err:%d\n",
-						__func__,
-					   -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	reg_addr += (qid * QDMA_CMPT_CIDX_STEP);
-
-	reg_val =
-		FIELD_SET(QDMA_S80_HARD_DMAP_SEL_CMPT_WRB_CIDX_MASK,
-				reg_info->wrb_cidx) |
-		FIELD_SET(QDMA_S80_HARD_DMAP_SEL_CMPT_CNT_THRESH_MASK,
-				reg_info->counter_idx) |
-		FIELD_SET(QDMA_S80_HARD_DMAP_SEL_CMPT_TMR_CNT_MASK,
-				reg_info->timer_idx) |
-		FIELD_SET(QDMA_S80_HARD_DMAP_SEL_CMPT_TRG_MODE_MASK,
-				reg_info->trig_mode) |
-		FIELD_SET(QDMA_S80_HARD_DMAP_SEL_CMPT_STS_DESC_EN_MASK,
-				reg_info->wrb_en) |
-		FIELD_SET(QDMA_S80_HARD_DMAP_SEL_CMPT_IRQ_EN_MASK,
-				reg_info->irq_en);
-
-	qdma_reg_write(dev_hndl, reg_addr, reg_val);
-
-	return QDMA_SUCCESS;
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_queue_intr_cidx_update() - function to update the
- * CMPT CIDX update
- *
- * @dev_hndl:	device handle
- * @is_vf:	Whether PF or VF
- * @qid:	Queue id relative to the PF/VF calling this API
- * @reg_info:	data needed for the CIDX register update
- *
- * Return:	0   - success and < 0 - failure
- *****************************************************************************/
-int qdma_s80_hard_queue_intr_cidx_update(void *dev_hndl, uint8_t is_vf,
-		uint16_t qid, const struct qdma_intr_cidx_reg_info *reg_info)
-{
-	uint32_t reg_addr = (is_vf) ?
-		QDMA_S80_HARD_OFFSET_VF_DMAP_SEL_INT_CIDX :
-		QDMA_S80_HARD_OFFSET_DMAP_SEL_INT_CIDX;
-	uint32_t reg_val = 0;
-
-	if (!dev_hndl) {
-		qdma_log_error("%s: dev_handle is NULL, err:%d\n",
-					__func__, -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	if (!reg_info) {
-		qdma_log_error("%s: reg_info is NULL, err:%d\n",
-					__func__, -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	reg_addr += qid * QDMA_INT_CIDX_STEP;
-
-	reg_val =
-		FIELD_SET(QDMA_S80_HARD_DMA_SEL_INT_SW_CIDX_MASK,
-			reg_info->sw_cidx) |
-		FIELD_SET(QDMA_S80_HARD_DMA_SEL_INT_RING_IDX_MASK,
-			reg_info->rng_idx);
-
-	qdma_reg_write(dev_hndl, reg_addr, reg_val);
-
-	return QDMA_SUCCESS;
-}
-
-/*****************************************************************************/
-/**
- * qdma_cmp_get_user_bar() - Function to get the
- *			AXI Master Lite(user bar) number
- * @dev_hndl:	device handle
- * @is_vf:	Whether PF or VF
- * @func_id:	function id of the PF
- * @user_bar:	pointer to hold the AXI Master Lite(user bar) number
- *
- * Return:	0   - success and < 0 - failure
- *****************************************************************************/
-int qdma_cmp_get_user_bar(void *dev_hndl, uint8_t is_vf,
-		uint8_t func_id, uint8_t *user_bar)
-{
-	uint8_t bar_found = 0;
-	uint8_t bar_idx = 0;
-	uint32_t user_bar_id = 0;
-	uint32_t reg_addr = 0;
-
-	if (!dev_hndl) {
-		qdma_log_error("%s: dev_handle is NULL, err:%d\n",
-					__func__, -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	if (!user_bar) {
-		qdma_log_error("%s: user_bar is NULL, err:%d\n",
-					__func__, -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	reg_addr = (is_vf) ? QDMA_S80_HARD_GLBL2_PF_VF_BARLITE_EXT_ADDR :
-			QDMA_S80_HARD_GLBL2_PF_BARLITE_EXT_ADDR;
-
-	if (!is_vf) {
-		user_bar_id = qdma_reg_read(dev_hndl, reg_addr);
-		user_bar_id = (user_bar_id >> (6 * func_id)) & 0x3F;
-	} else {
-		*user_bar = QDMA_S80_HARD_VF_USER_BAR_ID;
-		return QDMA_SUCCESS;
-	}
-
-	for (bar_idx = 0; bar_idx < QDMA_BAR_NUM; bar_idx++) {
-		if (user_bar_id & (1 << bar_idx)) {
-			*user_bar = bar_idx;
-			bar_found = 1;
-			break;
-		}
-	}
-	if (bar_found == 0) {
-		*user_bar = 0;
-		qdma_log_error("%s: Bar not found, err:%d\n",
-					__func__,
-					-QDMA_ERR_HWACC_BAR_NOT_FOUND);
-		return -QDMA_ERR_HWACC_BAR_NOT_FOUND;
-	}
-
-	return QDMA_SUCCESS;
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_hw_ram_sbe_err_process() -Function to dump SBE err debug info
- *
- * @dev_hndl: device handle
- * @buf: Bufffer for the debug info to be dumped in
- * @buflen: Length of the buffer
- *
- * Return: void
- *****************************************************************************/
-static void qdma_s80_hard_hw_ram_sbe_err_process(void *dev_hndl)
-{
-	qdma_s80_hard_dump_reg_info(dev_hndl, QDMA_S80_HARD_RAM_SBE_STS_A_ADDR,
-						1, NULL, 0);
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_hw_ram_dbe_err_process() -Function to dump DBE err debug info
- *
- * @dev_hndl: device handle
- * @buf: Bufffer for the debug info to be dumped in
- * @buflen: Length of the buffer
- *
- * Return: void
- *****************************************************************************/
-static void qdma_s80_hard_hw_ram_dbe_err_process(void *dev_hndl)
-{
-	qdma_s80_hard_dump_reg_info(dev_hndl, QDMA_S80_HARD_RAM_DBE_STS_A_ADDR,
-						1, NULL, 0);
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_hw_desc_err_process() -Function to dump Descriptor Error info
- *
- * @dev_hndl: device handle
- * @buf: Bufffer for the debug info to be dumped in
- * @buflen: Length of the buffer
- *
- * Return: void
- *****************************************************************************/
-static void qdma_s80_hard_hw_desc_err_process(void *dev_hndl)
-{
-	int i = 0;
-	uint32_t desc_err_reg_list[] = {
-		QDMA_S80_HARD_GLBL_DSC_ERR_STS_ADDR,
-		QDMA_S80_HARD_GLBL_DSC_ERR_LOG0_ADDR,
-		QDMA_S80_HARD_GLBL_DSC_ERR_LOG1_ADDR,
-		QDMA_S80_HARD_GLBL_DSC_DBG_DAT0_ADDR,
-		QDMA_S80_HARD_GLBL_DSC_DBG_DAT1_ADDR
-	};
-	int desc_err_num_regs = sizeof(desc_err_reg_list)/sizeof(uint32_t);
-
-	for (i = 0; i < desc_err_num_regs; i++) {
-		qdma_s80_hard_dump_reg_info(dev_hndl,
-					desc_err_reg_list[i],
-					1, NULL, 0);
-	}
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_hw_trq_err_process() -Function to dump Target Access Err info
- *
- * @dev_hndl: device handle
- * @buf: Bufffer for the debug info to be dumped in
- * @buflen: Length of the buffer
- *
- * Return: void
- *****************************************************************************/
-static void qdma_s80_hard_hw_trq_err_process(void *dev_hndl)
-{
-	int i = 0;
-	uint32_t trq_err_reg_list[] = {
-		QDMA_S80_HARD_GLBL_TRQ_ERR_STS_ADDR,
-		QDMA_S80_HARD_GLBL_TRQ_ERR_LOG_ADDR
-	};
-	int trq_err_reg_num_regs = sizeof(trq_err_reg_list)/sizeof(uint32_t);
-
-	for (i = 0; i < trq_err_reg_num_regs; i++) {
-		qdma_s80_hard_dump_reg_info(dev_hndl, trq_err_reg_list[i],
-					1, NULL, 0);
-	}
-
-
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_hw_st_h2c_err_process() - Function to dump MM H2C Error info
- *
- * @dev_hndl: device handle
- * @buf: Bufffer for the debug info to be dumped in
- * @buflen: Length of the buffer
- *
- * Return: void
- *****************************************************************************/
-static void qdma_s80_hard_hw_st_h2c_err_process(void *dev_hndl)
-{
-	int i = 0;
-	uint32_t st_h2c_err_reg_list[] = {
-		QDMA_S80_HARD_H2C_ERR_STAT_ADDR,
-		QDMA_S80_HARD_H2C_FIRST_ERR_QID_ADDR,
-		QDMA_S80_HARD_H2C_DBG_REG0_ADDR,
-		QDMA_S80_HARD_H2C_DBG_REG1_ADDR,
-		QDMA_S80_HARD_H2C_DBG_REG2_ADDR,
-		QDMA_S80_HARD_H2C_DBG_REG3_ADDR,
-		QDMA_S80_HARD_H2C_DBG_REG4_ADDR
-	};
-	int st_h2c_err_num_regs = sizeof(st_h2c_err_reg_list)/sizeof(uint32_t);
-
-	for (i = 0; i < st_h2c_err_num_regs; i++) {
-		qdma_s80_hard_dump_reg_info(dev_hndl,
-					st_h2c_err_reg_list[i],
-					1, NULL, 0);
-	}
-}
-
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_hw_st_c2h_err_process() - Function to dump MM H2C Error info
- *
- * @dev_hndl: device handle
- * @buf: Bufffer for the debug info to be dumped in
- * @buflen: Length of the buffer
- *
- * Return: void
- *****************************************************************************/
-static void qdma_s80_hard_hw_st_c2h_err_process(void *dev_hndl)
-{
-	int i = 0;
-	uint32_t st_c2h_err_reg_list[] = {
-		QDMA_S80_HARD_C2H_ERR_STAT_ADDR,
-		QDMA_S80_HARD_C2H_FATAL_ERR_STAT_ADDR,
-		QDMA_S80_HARD_C2H_FIRST_ERR_QID_ADDR,
-		QDMA_S80_HARD_C2H_STAT_S_AXIS_C2H_ACCEPTED_ADDR,
-		QDMA_S80_HARD_C2H_STAT_S_AXIS_WRB_ACCEPTED_ADDR,
-		QDMA_S80_HARD_C2H_STAT_DESC_RSP_PKT_ACCEPTED_ADDR,
-		QDMA_S80_HARD_C2H_STAT_AXIS_PKG_CMP_ADDR,
-		QDMA_S80_HARD_C2H_STAT_DBG_DMA_ENG_0_ADDR,
-		QDMA_S80_HARD_C2H_STAT_DBG_DMA_ENG_1_ADDR,
-		QDMA_S80_HARD_C2H_STAT_DBG_DMA_ENG_2_ADDR,
-		QDMA_S80_HARD_C2H_STAT_DBG_DMA_ENG_3_ADDR,
-		QDMA_S80_HARD_C2H_STAT_DESC_RSP_DROP_ACCEPTED_ADDR,
-		QDMA_S80_HARD_C2H_STAT_DESC_RSP_ERR_ACCEPTED_ADDR
-	};
-	int st_c2h_err_num_regs = sizeof(st_c2h_err_reg_list)/sizeof(uint32_t);
-
-	for (i = 0; i < st_c2h_err_num_regs; i++) {
-		qdma_s80_hard_dump_reg_info(dev_hndl,
-					st_c2h_err_reg_list[i],
-					1, NULL, 0);
-	}
-}
-
-
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_hw_get_error_name() - Function to get the error in str format
- *
- * @err_idx: error index
- *
- * Return: string - success and NULL on failure
- *****************************************************************************/
-const char *qdma_s80_hard_hw_get_error_name(uint32_t err_idx)
-{
-	if (err_idx >= QDMA_S80_HARD_ERRS_ALL) {
-		qdma_log_error("%s: err_idx=%d is invalid, returning NULL\n",
-			__func__,
-			(enum qdma_s80_hard_error_idx)err_idx);
-		return NULL;
-	}
-
-	return qdma_s80_hard_err_info[
-			(enum qdma_s80_hard_error_idx)err_idx].err_name;
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_hw_error_process() - Function to find the error that got
- * triggered and call the handler qdma_hw_error_handler of that
- * particular error.
- *
- * @dev_hndl: device handle
- *
- * Return:	0   - success and < 0 - failure
- *****************************************************************************/
-int qdma_s80_hard_hw_error_process(void *dev_hndl)
-{
-	uint32_t glbl_err_stat = 0, err_stat = 0;
-	uint32_t i = 0, j = 0;
-	int32_t idx = 0;
-	struct qdma_dev_attributes dev_cap;
-	uint32_t hw_err_position[QDMA_S80_HARD_TOTAL_LEAF_ERROR_AGGREGATORS] = {
-		QDMA_S80_HARD_DSC_ERR_POISON,
-		QDMA_S80_HARD_TRQ_ERR_UNMAPPED,
-		QDMA_S80_HARD_ST_C2H_ERR_MTY_MISMATCH,
-		QDMA_S80_HARD_ST_FATAL_ERR_MTY_MISMATCH,
-		QDMA_S80_HARD_ST_H2C_ERR_ZERO_LEN_DESC_ERR,
-		QDMA_S80_HARD_SBE_ERR_MI_H2C0_DAT,
-		QDMA_S80_HARD_DBE_ERR_MI_H2C0_DAT
-	};
-
-	if (!dev_hndl) {
-		qdma_log_error("%s: dev_handle is NULL, err:%d\n",
-				__func__, -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-
-	qdma_s80_hard_get_device_attributes(dev_hndl, &dev_cap);
-
-	glbl_err_stat = qdma_reg_read(dev_hndl,
-			QDMA_S80_HARD_GLBL_ERR_STAT_ADDR);
-	if (!glbl_err_stat)
-		return QDMA_HW_ERR_NOT_DETECTED;
-
-	qdma_log_info("%s: Global Err Reg(0x%x) = 0x%x\n",
-				  __func__, QDMA_S80_HARD_GLBL_ERR_STAT_ADDR,
-				  glbl_err_stat);
-
-	for (i = 0; i < QDMA_S80_HARD_TOTAL_LEAF_ERROR_AGGREGATORS; i++) {
-		j = hw_err_position[i];
-
-		if ((!dev_cap.st_en) &&
-			(j == QDMA_S80_HARD_ST_C2H_ERR_MTY_MISMATCH ||
-			j == QDMA_S80_HARD_ST_FATAL_ERR_MTY_MISMATCH ||
-			j == QDMA_S80_HARD_ST_H2C_ERR_ZERO_LEN_DESC_ERR))
-			continue;
-
-		err_stat = qdma_reg_read(dev_hndl,
-				qdma_s80_hard_err_info[j].stat_reg_addr);
-		if (err_stat) {
-			qdma_log_info("addr = 0x%08x val = 0x%08x",
-				qdma_s80_hard_err_info[j].stat_reg_addr,
-				err_stat);
-
-			qdma_s80_hard_err_info[j].qdma_s80_hard_hw_err_process(
-				dev_hndl);
-			for (idx = j;
-				idx < all_qdma_s80_hard_hw_errs[i];
-				idx++) {
-				/* call the platform specific handler */
-				if (err_stat &
-				qdma_s80_hard_err_info[idx].leaf_err_mask)
-					qdma_log_error("%s detected %s\n",
-						__func__,
-						qdma_s80_hard_hw_get_error_name(
-							idx));
-			}
-			qdma_reg_write(dev_hndl,
-				qdma_s80_hard_err_info[j].stat_reg_addr,
-				err_stat);
-		}
-
-	}
-
-	/* Write 1 to the global status register to clear the bits */
-	qdma_reg_write(dev_hndl,
-			QDMA_S80_HARD_GLBL_ERR_STAT_ADDR, glbl_err_stat);
-
-	return QDMA_SUCCESS;
-}
-
-/*****************************************************************************/
-/**
- * qdma_hw_error_enable() - Function to enable all or a specific error
- *
- * @dev_hndl: device handle
- * @err_idx: error index
- *
- * Return:	0   - success and < 0 - failure
- *****************************************************************************/
-int qdma_s80_hard_hw_error_enable(void *dev_hndl, uint32_t err_idx)
-{
-	uint32_t idx = 0, i = 0;
-	uint32_t reg_val = 0;
-	struct qdma_dev_attributes dev_cap;
-
-	if (!dev_hndl) {
-		qdma_log_error("%s: dev_handle is NULL, err:%d\n",
-				__func__, -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	if (err_idx > QDMA_S80_HARD_ERRS_ALL) {
-		qdma_log_error("%s: err_idx=%d is invalid, err:%d\n",
-				__func__, (enum qdma_s80_hard_error_idx)err_idx,
-				-QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	qdma_s80_hard_get_device_attributes(dev_hndl, &dev_cap);
-
-	if (err_idx == QDMA_S80_HARD_ERRS_ALL) {
-		for (i = 0;
-				i < QDMA_S80_HARD_TOTAL_LEAF_ERROR_AGGREGATORS;
-				i++) {
-
-			idx = all_qdma_s80_hard_hw_errs[i];
-
-			/* Don't access streaming registers in
-			 * MM only bitstreams
-			 */
-			if (!dev_cap.st_en) {
-				if (idx == QDMA_S80_HARD_ST_C2H_ERR_ALL ||
-					idx == QDMA_S80_HARD_ST_FATAL_ERR_ALL ||
-					idx == QDMA_S80_HARD_ST_H2C_ERR_ALL)
-					continue;
-			}
-
-			reg_val = qdma_s80_hard_err_info[idx].leaf_err_mask;
-			qdma_reg_write(dev_hndl,
-				qdma_s80_hard_err_info[idx].mask_reg_addr,
-					reg_val);
-
-			reg_val = qdma_reg_read(dev_hndl,
-					QDMA_S80_HARD_GLBL_ERR_MASK_ADDR);
-			reg_val |= FIELD_SET(
-				qdma_s80_hard_err_info[idx].global_err_mask, 1);
-			qdma_reg_write(dev_hndl,
-					QDMA_S80_HARD_GLBL_ERR_MASK_ADDR,
-					reg_val);
-		}
-
-	} else {
-		/* Don't access streaming registers in MM only bitstreams
-		 *  QDMA_C2H_ERR_MTY_MISMATCH to QDMA_H2C_ERR_ALL are all
-		 *  ST errors
-		 */
-		if (!dev_cap.st_en) {
-			if (err_idx >= QDMA_S80_HARD_ST_C2H_ERR_MTY_MISMATCH &&
-					err_idx <= QDMA_S80_HARD_ST_H2C_ERR_ALL)
-				return QDMA_SUCCESS;
-		}
-
-		reg_val = qdma_reg_read(dev_hndl,
-				qdma_s80_hard_err_info[err_idx].mask_reg_addr);
-		reg_val |=
-			FIELD_SET(qdma_s80_hard_err_info[err_idx].leaf_err_mask,
-				1);
-		qdma_reg_write(dev_hndl,
-				qdma_s80_hard_err_info[err_idx].mask_reg_addr,
-						reg_val);
-
-		reg_val = qdma_reg_read(dev_hndl,
-			QDMA_S80_HARD_GLBL_ERR_MASK_ADDR);
-		reg_val |=
-			FIELD_SET(
-				qdma_s80_hard_err_info[err_idx].global_err_mask,
-				1);
-		qdma_reg_write(dev_hndl,
-			QDMA_S80_HARD_GLBL_ERR_MASK_ADDR, reg_val);
-	}
-
-	return QDMA_SUCCESS;
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_get_device_attributes() - Function to get the qdma
- * device attributes
- *
- * @dev_hndl:	device handle
- * @dev_info:	pointer to hold the device info
- *
- * Return:	0   - success and < 0 - failure
- *****************************************************************************/
-int qdma_s80_hard_get_device_attributes(void *dev_hndl,
-		struct qdma_dev_attributes *dev_info)
-{
-	uint8_t count = 0;
-	uint32_t reg_val = 0;
-
-	if (!dev_hndl) {
-		qdma_log_error("%s: dev_handle is NULL, err:%d\n",
-					__func__, -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-	if (!dev_info) {
-		qdma_log_error("%s: dev_info is NULL, err:%d\n",
-					__func__, -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	/* number of PFs */
-	reg_val = qdma_reg_read(dev_hndl,
-		QDMA_S80_HARD_GLBL2_PF_BARLITE_INT_ADDR);
-	if (FIELD_GET(GLBL2_PF_BARLITE_INT_PF0_BAR_MAP_MASK, reg_val))
-		count++;
-	if (FIELD_GET(GLBL2_PF_BARLITE_INT_PF1_BAR_MAP_MASK, reg_val))
-		count++;
-	if (FIELD_GET(GLBL2_PF_BARLITE_INT_PF2_BAR_MAP_MASK, reg_val))
-		count++;
-	if (FIELD_GET(GLBL2_PF_BARLITE_INT_PF3_BAR_MAP_MASK, reg_val))
-		count++;
-	dev_info->num_pfs = count;
-
-	/* Number of Qs */
-	reg_val = qdma_reg_read(dev_hndl, QDMA_S80_HARD_GLBL2_CHANNEL_CAP_ADDR);
-	dev_info->num_qs = (FIELD_GET(GLBL2_CHANNEL_CAP_MULTIQ_MAX_MASK,
-			reg_val));
-
-	/* FLR present */
-	reg_val = qdma_reg_read(dev_hndl, QDMA_S80_HARD_GLBL2_MISC_CAP_ADDR);
-	dev_info->mailbox_en  = FIELD_GET(QDMA_GLBL2_MAILBOX_EN_MASK, reg_val);
-	dev_info->flr_present = FIELD_GET(QDMA_GLBL2_FLR_PRESENT_MASK, reg_val);
-	dev_info->mm_cmpt_en  = 0;
-
-	/* ST/MM enabled? */
-	reg_val = qdma_reg_read(dev_hndl,
-		QDMA_S80_HARD_GLBL2_CHANNEL_MDMA_ADDR);
-	dev_info->mm_en = (FIELD_GET(GLBL2_CHANNEL_MDMA_C2H_ENG_MASK, reg_val)
-		&& FIELD_GET(GLBL2_CHANNEL_MDMA_H2C_ENG_MASK, reg_val)) ? 1 : 0;
-	dev_info->st_en = (FIELD_GET(GLBL2_CHANNEL_MDMA_C2H_ST_MASK, reg_val)
-		&& FIELD_GET(GLBL2_CHANNEL_MDMA_H2C_ST_MASK,
-		reg_val)) ? 1 : 0;
-
-	/* num of mm channels for Versal Hard is 2 */
-	dev_info->mm_channel_max = 2;
-
-	dev_info->debug_mode = 0;
-	dev_info->desc_eng_mode = 0;
-	dev_info->qid2vec_ctx = 1;
-	dev_info->cmpt_ovf_chk_dis = 0;
-	dev_info->mailbox_intr = 0;
-	dev_info->sw_desc_64b = 0;
-	dev_info->cmpt_desc_64b = 0;
-	dev_info->dynamic_bar = 0;
-	dev_info->legacy_intr = 0;
-	dev_info->cmpt_trig_count_timer = 0;
-
-	return QDMA_SUCCESS;
-}
-
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_credit_context_read() - read credit context
- *
- * @dev_hndl:	device handle
- * @c2h     :	is c2h queue
- * @hw_qid  :	hardware qid of the queue
- * @ctxt    :	pointer to the context data
- *
- * Return   :	0   - success and < 0 - failure
- *****************************************************************************/
-static int qdma_s80_hard_credit_context_read(void *dev_hndl, uint8_t c2h,
-			 uint16_t hw_qid,
-			 struct qdma_descq_credit_ctxt *ctxt)
-{
-	int rv = QDMA_SUCCESS;
-	uint32_t cr_ctxt[QDMA_S80_HARD_CR_CONTEXT_NUM_WORDS] = {0};
-	enum ind_ctxt_cmd_sel sel = c2h ? QDMA_CTXT_SEL_CR_C2H :
-			QDMA_CTXT_SEL_CR_H2C;
-
-	if (!dev_hndl || !ctxt) {
-		qdma_log_error("%s: dev_hndl=%p credit_ctxt=%p, err:%d\n",
-						__func__, dev_hndl, ctxt,
-					   -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	rv = qdma_s80_hard_indirect_reg_read(dev_hndl, sel, hw_qid,
-			QDMA_S80_HARD_CR_CONTEXT_NUM_WORDS, cr_ctxt);
-	if (rv < 0)
-		return rv;
-
-	ctxt->credit = FIELD_GET(CRED_CTXT_DATA_W0_CREDT_MASK,
-			cr_ctxt[0]);
-
-	qdma_log_debug("%s: credit=%u\n", __func__, ctxt->credit);
-
-	return QDMA_SUCCESS;
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_credit_context_clear() - clear credit context
- *
- * @dev_hndl:	device handle
- * @c2h     :	is c2h queue
- * @hw_qid  :	hardware qid of the queue
- *
- * Return   :	0   - success and < 0 - failure
- *****************************************************************************/
-static int qdma_s80_hard_credit_context_clear(void *dev_hndl, uint8_t c2h,
-			  uint16_t hw_qid)
-{
-	enum ind_ctxt_cmd_sel sel = c2h ? QDMA_CTXT_SEL_CR_C2H :
-			QDMA_CTXT_SEL_CR_H2C;
-
-	if (!dev_hndl) {
-		qdma_log_error("%s: dev_handle is NULL, err:%d\n", __func__,
-					   -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	return qdma_s80_hard_indirect_reg_clear(dev_hndl, sel, hw_qid);
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_credit_context_invalidate() - invalidate credit context
- *
- * @dev_hndl:	device handle
- * @c2h     :	is c2h queue
- * @hw_qid  :	hardware qid of the queue
- *
- * Return   :	0   - success and < 0 - failure
- *****************************************************************************/
-static int qdma_s80_hard_credit_context_invalidate(void *dev_hndl, uint8_t c2h,
-				   uint16_t hw_qid)
-{
-	enum ind_ctxt_cmd_sel sel = c2h ? QDMA_CTXT_SEL_CR_C2H :
-			QDMA_CTXT_SEL_CR_H2C;
-
-	if (!dev_hndl) {
-		qdma_log_error("%s: dev_handle is NULL, err:%d\n", __func__,
-					   -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	return qdma_s80_hard_indirect_reg_invalidate(dev_hndl, sel, hw_qid);
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_credit_ctx_conf() - configure credit context
- *
- * @dev_hndl    :	device handle
- * @c2h         :	is c2h queue
- * @hw_qid      :	hardware qid of the queue
- * @ctxt        :	pointer to the context data
- * @access_type :	HW access type (qdma_hw_access_type enum) value
- *		QDMA_HW_ACCESS_WRITE Not supported
- *
- * Return       :	0   - success and < 0 - failure
- *****************************************************************************/
-int qdma_s80_hard_credit_ctx_conf(void *dev_hndl, uint8_t c2h, uint16_t hw_qid,
-			struct qdma_descq_credit_ctxt *ctxt,
-			enum qdma_hw_access_type access_type)
-{
-	int rv = QDMA_SUCCESS;
-
-	switch (access_type) {
-	case QDMA_HW_ACCESS_READ:
-		rv = qdma_s80_hard_credit_context_read(dev_hndl, c2h,
-				hw_qid, ctxt);
-		break;
-	case QDMA_HW_ACCESS_CLEAR:
-		rv = qdma_s80_hard_credit_context_clear(dev_hndl, c2h, hw_qid);
-		break;
-	case QDMA_HW_ACCESS_INVALIDATE:
-		rv = qdma_s80_hard_credit_context_invalidate(dev_hndl, c2h,
-				hw_qid);
-		break;
-	case QDMA_HW_ACCESS_WRITE:
-	default:
-		qdma_log_error("%s: Invalid access type=%d, err:%d\n",
-					   __func__, access_type,
-					   -QDMA_ERR_INV_PARAM);
-		rv = -QDMA_ERR_INV_PARAM;
-		break;
-	}
-
-	return rv;
-}
-
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_dump_config_regs() - Function to get qdma config register
- * dump in a buffer
- *
- * @dev_hndl:	device handle
- * @is_vf:	Whether PF or VF
- * @buf :	pointer to buffer to be filled
- * @buflen :	Length of the buffer
- *
- * Return:	Length up-till the buffer is filled -success and < 0 - failure
- *****************************************************************************/
-int qdma_s80_hard_dump_config_regs(void *dev_hndl, uint8_t is_vf,
-		char *buf, uint32_t buflen)
-{
-	uint32_t i = 0, j = 0;
-	struct xreg_info *reg_info;
-	uint32_t num_regs = qdma_s80_hard_config_num_regs_get();
-	uint32_t len = 0, val = 0;
-	int rv = QDMA_SUCCESS;
-	char name[DEBGFS_GEN_NAME_SZ] = "";
-	struct qdma_dev_attributes dev_cap;
-
-	if (!dev_hndl) {
-		qdma_log_error("%s: dev_handle is NULL, err:%d\n",
-					   __func__, -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	if (buflen < qdma_s80_hard_reg_dump_buf_len()) {
-		qdma_log_error("%s: Buffer too small, err:%d\n", __func__,
-					   -QDMA_ERR_NO_MEM);
-		return -QDMA_ERR_NO_MEM;
-	}
-
-	if (is_vf) {
-		qdma_log_error("%s: Wrong API used for VF, err:%d\n",
-				__func__,
-				-QDMA_ERR_HWACC_FEATURE_NOT_SUPPORTED);
-		return -QDMA_ERR_HWACC_FEATURE_NOT_SUPPORTED;
-	}
-
-	qdma_s80_hard_get_device_attributes(dev_hndl, &dev_cap);
-
-	reg_info = qdma_s80_hard_config_regs_get();
-
-	for (i = 0; i < num_regs; i++) {
-		if ((GET_CAPABILITY_MASK(dev_cap.mm_en, dev_cap.st_en,
-				dev_cap.mm_cmpt_en, dev_cap.mailbox_en)
-				& reg_info[i].mode) == 0)
-			continue;
-
-		for (j = 0; j < reg_info[i].repeat; j++) {
-			rv = QDMA_SNPRINTF_S(name, DEBGFS_GEN_NAME_SZ,
-					DEBGFS_GEN_NAME_SZ,
-					"%s_%d", reg_info[i].name, j);
-			if ((rv < 0) || (rv > DEBGFS_GEN_NAME_SZ)) {
-				qdma_log_error(
-					"%d:%s QDMA_SNPRINTF_S() failed, err:%d\n",
-					__LINE__, __func__,
-					rv);
-				return -QDMA_ERR_NO_MEM;
-			}
-
-			val = qdma_reg_read(dev_hndl,
-					(reg_info[i].addr + (j * 4)));
-			rv = dump_reg(buf + len, buflen - len,
-					(reg_info[i].addr + (j * 4)),
-					name, val);
-			if (rv < 0) {
-				qdma_log_error(
-				"%s Buff too small, err:%d\n",
-				__func__,
-				-QDMA_ERR_NO_MEM);
-				return -QDMA_ERR_NO_MEM;
-			}
-			len += rv;
-		}
-	}
-
-	return len;
-}
-
-/*****************************************************************************/
-/**
- * qdma_dump_s80_hard_queue_context() - Function to get qdma queue context dump
- * in a buffer
- *
- * @dev_hndl:   device handle
- * @hw_qid:     queue id
- * @buf :       pointer to buffer to be filled
- * @buflen :    Length of the buffer
- *
- * Return:	Length up-till the buffer is filled -success and < 0 - failure
- *****************************************************************************/
-int qdma_s80_hard_dump_queue_context(void *dev_hndl,
-		uint8_t st,
-		enum qdma_dev_q_type q_type,
-		struct qdma_descq_context *ctxt_data,
-		char *buf, uint32_t buflen)
-{
-	int rv = 0;
-	uint32_t req_buflen = 0;
-
-	if (!dev_hndl) {
-		qdma_log_error("%s: dev_handle is NULL, err:%d\n",
-			__func__, -QDMA_ERR_INV_PARAM);
-
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	if (!ctxt_data) {
-		qdma_log_error("%s: ctxt_data is NULL, err:%d\n",
-			__func__, -QDMA_ERR_INV_PARAM);
-
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	if (!buf) {
-		qdma_log_error("%s: buf is NULL, err:%d\n",
-			__func__, -QDMA_ERR_INV_PARAM);
-
-		return -QDMA_ERR_INV_PARAM;
-	}
-	if (q_type >= QDMA_DEV_Q_TYPE_MAX) {
-		qdma_log_error("%s: invalid q_type, err:%d\n",
-			__func__, -QDMA_ERR_INV_PARAM);
-
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	rv = qdma_s80_hard_context_buf_len(st, q_type, &req_buflen);
-	if (rv != QDMA_SUCCESS)
-		return rv;
-
-	if (buflen < req_buflen) {
-		qdma_log_error("%s: Too small buffer(%d), reqd(%d), err:%d\n",
-			__func__, buflen, req_buflen, -QDMA_ERR_NO_MEM);
-		return -QDMA_ERR_NO_MEM;
-	}
-
-	rv = dump_s80_hard_context(ctxt_data, st, q_type,
-				buf, buflen);
-
-	return rv;
-}
-
-/*****************************************************************************/
-/**
- * qdma_dump_s80_hard_intr_context() - Function to get qdma interrupt
- * context dump in a buffer
- *
- * @dev_hndl:   device handle
- * @hw_qid:     queue id
- * @buf :       pointer to buffer to be filled
- * @buflen :    Length of the buffer
- *
- * Return:	Length up-till the buffer is filled -success and < 0 - failure
- *****************************************************************************/
-int qdma_s80_hard_dump_intr_context(void *dev_hndl,
-		struct qdma_indirect_intr_ctxt *intr_ctx,
-		int ring_index,
-		char *buf, uint32_t buflen)
-{
-	int rv = 0;
-	uint32_t req_buflen = 0;
-
-	if (!dev_hndl) {
-		qdma_log_error("%s: dev_handle is NULL, err:%d\n",
-			__func__, -QDMA_ERR_INV_PARAM);
-
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	if (!intr_ctx) {
-		qdma_log_error("%s: intr_ctx is NULL, err:%d\n",
-			__func__, -QDMA_ERR_INV_PARAM);
-
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	if (!buf) {
-		qdma_log_error("%s: buf is NULL, err:%d\n",
-			__func__, -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-	req_buflen = qdma_s80_hard_intr_context_buf_len();
-	if (buflen < req_buflen) {
-		qdma_log_error("%s: Too small buffer(%d), reqd(%d), err:%d\n",
-			__func__, buflen, req_buflen, -QDMA_ERR_NO_MEM);
-		return -QDMA_ERR_NO_MEM;
-	}
-
-	rv = dump_s80_hard_intr_context(intr_ctx, ring_index, buf, buflen);
-
-	return rv;
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_read_dump_queue_context() - Function to read and dump the queue
- * context in a buffer
- *
- * @dev_hndl:   device handle
- * @hw_qid:     queue id
- * @st:			Queue Mode(ST or MM)
- * @q_type:		Queue type(H2C/C2H/CMPT)
- * @buf :       pointer to buffer to be filled
- * @buflen :    Length of the buffer
- *
- * Return:	Length up-till the buffer is filled -success and < 0 - failure
- *****************************************************************************/
-int qdma_s80_hard_read_dump_queue_context(void *dev_hndl,
-		uint16_t qid_hw,
-		uint8_t st,
-		enum qdma_dev_q_type q_type,
-		char *buf, uint32_t buflen)
-{
-	int rv = QDMA_SUCCESS;
-	uint32_t req_buflen = 0;
-	struct qdma_descq_context context;
-
-	if (!dev_hndl) {
-		qdma_log_error("%s: dev_handle is NULL, err:%d\n",
-			__func__, -QDMA_ERR_INV_PARAM);
-
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	if (!buf) {
-		qdma_log_error("%s: buf is NULL, err:%d\n",
-			__func__, -QDMA_ERR_INV_PARAM);
-
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	if (q_type >= QDMA_DEV_Q_TYPE_CMPT) {
-		qdma_log_error("%s: Not supported for q_type, err = %d\n",
-			__func__, -QDMA_ERR_INV_PARAM);
-
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	rv = qdma_s80_hard_context_buf_len(st, q_type, &req_buflen);
-
-	if (rv != QDMA_SUCCESS)
-		return rv;
-
-	if (buflen < req_buflen) {
-		qdma_log_error("%s: Too small buffer(%d), reqd(%d), err:%d\n",
-			__func__, buflen, req_buflen, -QDMA_ERR_NO_MEM);
-		return -QDMA_ERR_NO_MEM;
-	}
-
-	qdma_memset(&context, 0, sizeof(struct qdma_descq_context));
-
-	if (q_type != QDMA_DEV_Q_TYPE_CMPT) {
-		rv = qdma_s80_hard_sw_ctx_conf(dev_hndl, (uint8_t)q_type,
-				qid_hw, &(context.sw_ctxt),
-				QDMA_HW_ACCESS_READ);
-		if (rv < 0) {
-			qdma_log_error(
-			"%s: Failed to read sw context, err = %d",
-					__func__, rv);
-			return rv;
-		}
-
-		rv = qdma_s80_hard_hw_ctx_conf(dev_hndl, (uint8_t)q_type,
-				qid_hw, &(context.hw_ctxt),
-				QDMA_HW_ACCESS_READ);
-		if (rv < 0) {
-			qdma_log_error(
-			"%s: Failed to read hw context, err = %d",
-					__func__, rv);
-			return rv;
-		}
-
-		rv = qdma_s80_hard_qid2vec_conf(dev_hndl, (uint8_t)q_type,
-				qid_hw, &(context.qid2vec),
-				QDMA_HW_ACCESS_READ);
-		if (rv < 0) {
-			qdma_log_error(
-			"%s: Failed to read qid2vec context, err = %d",
-					__func__, rv);
-			return rv;
-		}
-
-		rv = qdma_s80_hard_credit_ctx_conf(dev_hndl, (uint8_t)q_type,
-				qid_hw, &(context.cr_ctxt),
-				QDMA_HW_ACCESS_READ);
-		if (rv < 0) {
-			qdma_log_error(
-			"%s: Failed to read credit context, err = %d",
-					__func__, rv);
-			return rv;
-		}
-
-		if (st && (q_type == QDMA_DEV_Q_TYPE_C2H)) {
-			rv = qdma_s80_hard_pfetch_ctx_conf(dev_hndl,
-					qid_hw,
-					&(context.pfetch_ctxt),
-					QDMA_HW_ACCESS_READ);
-			if (rv < 0) {
-				qdma_log_error(
-			"%s: Failed to read pftech context, err = %d",
-						__func__, rv);
-				return rv;
-			}
-		}
-	}
-
-	if ((st && (q_type == QDMA_DEV_Q_TYPE_C2H)) ||
-			(!st && (q_type == QDMA_DEV_Q_TYPE_CMPT))) {
-		rv = qdma_s80_hard_cmpt_ctx_conf(dev_hndl, qid_hw,
-						&(context.cmpt_ctxt),
-						 QDMA_HW_ACCESS_READ);
-		if (rv < 0) {
-			qdma_log_error(
-			"%s: Failed to read cmpt context, err = %d",
-					__func__, rv);
-			return rv;
-		}
-	}
-
-
-
-	rv = dump_s80_hard_context(&context, st, q_type,
-				buf, buflen);
-
-	return rv;
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_init_ctxt_memory() - Initialize the context for all queues
- *
- * @dev_hndl    :	device handle
- *
- * Return       :	0   - success and < 0 - failure
- *****************************************************************************/
-
-int qdma_s80_hard_init_ctxt_memory(void *dev_hndl)
-{
-#ifdef ENABLE_INIT_CTXT_MEMORY
-	uint32_t data[QDMA_REG_IND_CTXT_REG_COUNT];
-	uint16_t i = 0;
-	struct qdma_dev_attributes dev_info;
-
-	if (!dev_hndl) {
-		qdma_log_error("%s: dev_handle is NULL, err:%d\n",
-					__func__, -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	qdma_memset(data, 0, sizeof(uint32_t) * QDMA_REG_IND_CTXT_REG_COUNT);
-	qdma_s80_hard_get_device_attributes(dev_hndl, &dev_info);
-	qdma_log_info("%s: clearing the context for all qs",
-			__func__);
-	for (; i < dev_info.num_qs; i++) {
-		int sel = QDMA_CTXT_SEL_SW_C2H;
-		int rv;
-
-		for (; sel <= QDMA_CTXT_SEL_PFTCH; sel++) {
-			/** if the st mode(h2c/c2h) not enabled
-			 *  in the design, then skip the PFTCH
-			 *  and CMPT context setup
-			 */
-			if ((dev_info.st_en == 0) &&
-			    (sel == QDMA_CTXT_SEL_PFTCH ||
-				sel == QDMA_CTXT_SEL_CMPT)) {
-				qdma_log_debug("%s: ST context is skipped:",
-					__func__);
-				qdma_log_debug(" sel = %d", sel);
-				continue;
-			}
-
-			rv = qdma_s80_hard_indirect_reg_clear(dev_hndl,
-					(enum ind_ctxt_cmd_sel)sel, i);
-			if (rv < 0)
-				return rv;
-		}
-	}
-
-	/* fmap */
-	for (i = 0; i < dev_info.num_pfs; i++)
-		qdma_s80_hard_fmap_clear(dev_hndl, i);
-#else
-	if (!dev_hndl) {
-		qdma_log_error("%s: dev_handle is NULL, err:%d\n",
-					__func__, -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-#endif
-	return 0;
-}
-
-static int get_reg_entry(uint32_t reg_addr, int *reg_entry)
-{
-	uint32_t i = 0;
-	struct xreg_info *reg_info;
-	uint32_t num_regs = qdma_s80_hard_config_num_regs_get();
-
-	reg_info = qdma_s80_hard_config_regs_get();
-
-	for (i = 0; (i < num_regs - 1); i++) {
-		if (reg_info[i].addr == reg_addr) {
-			*reg_entry = i;
-			break;
-		}
-	}
-
-	if (i >= num_regs - 1) {
-		qdma_log_error("%s: 0x%08x is missing register list, err:%d\n",
-					__func__,
-					reg_addr,
-					-QDMA_ERR_INV_PARAM);
-		*reg_entry = -1;
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	return 0;
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_dump_config_reg_list() - Dump the registers
- *
- * @dev_hndl:		device handle
- * @total_regs :	Max registers to read
- * @reg_list :		array of reg addr and reg values
- * @buf :		pointer to buffer to be filled
- * @buflen :		Length of the buffer
- *
- * Return: returns the platform specific error code
- *****************************************************************************/
-int qdma_s80_hard_dump_config_reg_list(void *dev_hndl, uint32_t total_regs,
-		struct qdma_reg_data *reg_list, char *buf, uint32_t buflen)
-{
-	uint32_t j = 0, len = 0;
-	uint32_t reg_count = 0;
-	int reg_data_entry;
-	int rv = 0;
-	char name[DEBGFS_GEN_NAME_SZ] = "";
-	struct xreg_info *reg_info = qdma_s80_hard_config_regs_get();
-
-	if (!dev_hndl) {
-		qdma_log_error("%s: dev_handle is NULL, err:%d\n",
-				__func__, -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	if (!buf) {
-		qdma_log_error("%s: buf is NULL, err:%d\n",
-				__func__, -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	for (reg_count = 0;
-			(reg_count < total_regs);) {
-
-		rv = get_reg_entry(reg_list[reg_count].reg_addr,
-					&reg_data_entry);
-		if (rv < 0) {
-			qdma_log_error("%s: register missing in list, err:%d\n",
-						   __func__,
-						   -QDMA_ERR_INV_PARAM);
-			return rv;
-		}
-
-		for (j = 0; j < reg_info[reg_data_entry].repeat; j++) {
-			rv = QDMA_SNPRINTF_S(name, DEBGFS_GEN_NAME_SZ,
-					DEBGFS_GEN_NAME_SZ,
-					"%s_%d",
-					reg_info[reg_data_entry].name, j);
-			if ((rv < 0) || (rv > DEBGFS_GEN_NAME_SZ)) {
-				qdma_log_error(
-					"%d:%s snprintf failed, err:%d\n",
-					__LINE__, __func__,
-					rv);
-				return -QDMA_ERR_NO_MEM;
-			}
-			rv = dump_reg(buf + len, buflen - len,
-				(reg_info[reg_data_entry].addr + (j * 4)),
-					name,
-					reg_list[reg_count + j].reg_val);
-			if (rv < 0) {
-				qdma_log_error(
-				"%s Buff too small, err:%d\n",
-				__func__,
-				-QDMA_ERR_NO_MEM);
-				return -QDMA_ERR_NO_MEM;
-			}
-			len += rv;
-		}
-		reg_count += j;
-	}
-
-	return len;
-
-}
-
-
-/*****************************************************************************/
-/**
- * qdma_read_reg_list() - read the register values
- *
- * @dev_hndl:		device handle
- * @is_vf:		Whether PF or VF
- * @total_regs :	Max registers to read
- * @reg_list :		array of reg addr and reg values
- *
- * Return: returns the platform specific error code
- *****************************************************************************/
-int qdma_s80_hard_read_reg_list(void *dev_hndl, uint8_t is_vf,
-		uint16_t reg_rd_slot,
-		uint16_t *total_regs,
-		struct qdma_reg_data *reg_list)
-{
-	uint16_t reg_count = 0, i = 0, j = 0;
-	uint32_t num_regs = qdma_s80_hard_config_num_regs_get();
-	struct xreg_info *reg_info = qdma_s80_hard_config_regs_get();
-	struct qdma_dev_attributes dev_cap;
-	uint32_t reg_start_addr = 0;
-	int reg_index = 0;
-	int rv = 0;
-
-	if (!is_vf) {
-		qdma_log_error("%s: not supported for PF, err:%d\n",
-				__func__,
-				-QDMA_ERR_HWACC_FEATURE_NOT_SUPPORTED);
-		return -QDMA_ERR_HWACC_FEATURE_NOT_SUPPORTED;
-	}
-
-	if (!dev_hndl) {
-		qdma_log_error("%s: dev_handle is NULL, err:%d\n",
-					   __func__, -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	if (!reg_list) {
-		qdma_log_error("%s: reg_list is NULL, err:%d\n",
-					   __func__, -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	qdma_s80_hard_get_device_attributes(dev_hndl, &dev_cap);
-
-	switch (reg_rd_slot) {
-	case QDMA_REG_READ_GROUP_1:
-			reg_start_addr = QDMA_S80_REG_GROUP_1_START_ADDR;
-			break;
-	case QDMA_REG_READ_GROUP_2:
-			reg_start_addr = QDMA_S80_REG_GROUP_2_START_ADDR;
-			break;
-	case QDMA_REG_READ_GROUP_3:
-			reg_start_addr = QDMA_S80_REG_GROUP_3_START_ADDR;
-			break;
-	case QDMA_REG_READ_GROUP_4:
-			reg_start_addr = QDMA_S80_REG_GROUP_4_START_ADDR;
-			break;
-	default:
-		qdma_log_error("%s: Invalid slot received\n",
-			   __func__);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	rv = get_reg_entry(reg_start_addr, &reg_index);
-	if (rv < 0) {
-		qdma_log_error("%s: register missing in list, err:%d\n",
-					   __func__,
-					   -QDMA_ERR_INV_PARAM);
-		return rv;
-	}
-
-	for (i = 0, reg_count = 0;
-			((i < num_regs - 1 - reg_index) &&
-			(reg_count < QDMA_MAX_REGISTER_DUMP)); i++) {
-
-		if (((GET_CAPABILITY_MASK(dev_cap.mm_en, dev_cap.st_en,
-				dev_cap.mm_cmpt_en, dev_cap.mailbox_en)
-				& reg_info[i].mode) == 0) ||
-			(reg_info[i].read_type == QDMA_REG_READ_PF_ONLY))
-			continue;
-
-		for (j = 0; j < reg_info[i].repeat &&
-				(reg_count < QDMA_MAX_REGISTER_DUMP);
-				j++) {
-			reg_list[reg_count].reg_addr =
-					(reg_info[i].addr + (j * 4));
-			reg_list[reg_count].reg_val =
-				qdma_reg_read(dev_hndl,
-					reg_list[reg_count].reg_addr);
-			reg_count++;
-		}
-	}
-
-	*total_regs = reg_count;
-	return rv;
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_write_global_ring_sizes() - set the global ring size array
- *
- * @dev_hndl:   device handle
- * @index: Index from where the values needs to written
- * @count: number of entries to be written
- * @glbl_rng_sz: pointer to the array having the values to write
- *
- * (index + count) shall not be more than 16
- *
- * Return:	0   - success and < 0 - failure
- *****************************************************************************/
-static int qdma_s80_hard_write_global_ring_sizes(void *dev_hndl, uint8_t index,
-				uint8_t count, const uint32_t *glbl_rng_sz)
-{
-	if (!dev_hndl || !glbl_rng_sz || !count) {
-		qdma_log_error("%s: dev_hndl=%p glbl_rng_sz=%p, err:%d\n",
-					   __func__, dev_hndl, glbl_rng_sz,
-					   -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	if ((index + count) > QDMA_NUM_RING_SIZES) {
-		qdma_log_error("%s: index=%u count=%u > %d, err:%d\n",
-					   __func__, index, count,
-					   QDMA_NUM_RING_SIZES,
-					   -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	qdma_write_csr_values(dev_hndl,
-			QDMA_S80_HARD_GLBL_RNG_SZ_1_ADDR, index, count,
-			glbl_rng_sz);
-
-	return QDMA_SUCCESS;
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_read_global_ring_sizes() - function to get the
- *	global rng_sz array
- *
- * @dev_hndl:   device handle
- * @index:	 Index from where the values needs to read
- * @count:	 number of entries to be read
- * @glbl_rng_sz: pointer to array to hold the values read
- *
- * (index + count) shall not be more than 16
- *
- * Return:	0   - success and < 0 - failure
- *****************************************************************************/
-static int qdma_s80_hard_read_global_ring_sizes(void *dev_hndl, uint8_t index,
-				uint8_t count, uint32_t *glbl_rng_sz)
-{
-	if (!dev_hndl || !glbl_rng_sz || !count) {
-		qdma_log_error("%s: dev_hndl=%p glbl_rng_sz=%p, err:%d\n",
-					   __func__, dev_hndl, glbl_rng_sz,
-					   -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	if ((index + count) > QDMA_NUM_RING_SIZES) {
-		qdma_log_error("%s: index=%u count=%u > %d, err:%d\n",
-					   __func__, index, count,
-					   QDMA_NUM_C2H_BUFFER_SIZES,
-					   -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	qdma_read_csr_values(dev_hndl,
-			QDMA_S80_HARD_GLBL_RNG_SZ_1_ADDR, index, count,
-			glbl_rng_sz);
-
-	return QDMA_SUCCESS;
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_write_global_timer_count() - function to set the timer values
- *
- * @dev_hndl:   device handle
- * @glbl_tmr_cnt: pointer to the array having the values to write
- * @index:	 Index from where the values needs to written
- * @count:	 number of entries to be written
- *
- * (index + count) shall not be more than 16
- *
- * Return:	0   - success and < 0 - failure
- *****************************************************************************/
-static int qdma_s80_hard_write_global_timer_count(void *dev_hndl, uint8_t index,
-				uint8_t count, const uint32_t *glbl_tmr_cnt)
-{
-	struct qdma_dev_attributes dev_cap;
-
-	if (!dev_hndl || !glbl_tmr_cnt || !count) {
-		qdma_log_error("%s: dev_hndl=%p glbl_tmr_cnt=%p, err:%d\n",
-					   __func__, dev_hndl, glbl_tmr_cnt,
-					   -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	if ((index + count) > QDMA_NUM_C2H_TIMERS) {
-		qdma_log_error("%s: index=%u count=%u > %d, err:%d\n",
-					   __func__, index, count,
-					   QDMA_NUM_C2H_TIMERS,
-					   -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	qdma_s80_hard_get_device_attributes(dev_hndl, &dev_cap);
-
-	if (dev_cap.st_en || dev_cap.mm_cmpt_en)
-		qdma_write_csr_values(dev_hndl,
-				QDMA_S80_HARD_C2H_TIMER_CNT_1_ADDR,
-				index, count, glbl_tmr_cnt);
-	else {
-		qdma_log_error("%s: ST or MM cmpt not supported, err:%d\n",
-				__func__,
-				-QDMA_ERR_HWACC_FEATURE_NOT_SUPPORTED);
-		return -QDMA_ERR_HWACC_FEATURE_NOT_SUPPORTED;
-	}
-
-	return QDMA_SUCCESS;
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_read_global_timer_count() - function to get the timer values
- *
- * @dev_hndl:   device handle
- * @index:	 Index from where the values needs to read
- * @count:	 number of entries to be read
- * @glbl_tmr_cnt: pointer to array to hold the values read
- *
- * (index + count) shall not be more than 16
- *
- * Return:	0   - success and < 0 - failure
- *****************************************************************************/
-static int qdma_s80_hard_read_global_timer_count(void *dev_hndl, uint8_t index,
-				uint8_t count, uint32_t *glbl_tmr_cnt)
-{
-	struct qdma_dev_attributes dev_cap;
-
-	if (!dev_hndl || !glbl_tmr_cnt || !count) {
-		qdma_log_error("%s: dev_hndl=%p glbl_tmr_cnt=%p, err:%d\n",
-					   __func__, dev_hndl, glbl_tmr_cnt,
-					   -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	if ((index + count) > QDMA_NUM_C2H_TIMERS) {
-		qdma_log_error("%s: index=%u count=%u > %d, err:%d\n",
-					   __func__, index, count,
-					   QDMA_NUM_C2H_TIMERS,
-					   -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	qdma_s80_hard_get_device_attributes(dev_hndl, &dev_cap);
-
-	if (dev_cap.st_en || dev_cap.mm_cmpt_en)
-		qdma_read_csr_values(dev_hndl,
-				QDMA_S80_HARD_C2H_TIMER_CNT_1_ADDR, index,
-				count, glbl_tmr_cnt);
-	else {
-		qdma_log_error("%s: ST or MM cmpt not supported, err:%d\n",
-				__func__,
-				-QDMA_ERR_HWACC_FEATURE_NOT_SUPPORTED);
-		return -QDMA_ERR_HWACC_FEATURE_NOT_SUPPORTED;
-	}
-
-	return QDMA_SUCCESS;
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_write_global_counter_threshold() - function to set the counter
- *						threshold values
- *
- * @dev_hndl:   device handle
- * @index:	 Index from where the values needs to written
- * @count:	 number of entries to be written
- * @glbl_cnt_th: pointer to the array having the values to write
- *
- * (index + count) shall not be more than 16
- *
- * Return:	0   - success and < 0 - failure
- *****************************************************************************/
-static int qdma_s80_hard_write_global_counter_threshold(void *dev_hndl,
-		uint8_t index,
-		uint8_t count, const uint32_t *glbl_cnt_th)
-{
-	struct qdma_dev_attributes dev_cap;
-
-	if (!dev_hndl || !glbl_cnt_th || !count) {
-		qdma_log_error("%s: dev_hndl=%p glbl_cnt_th=%p, err:%d\n",
-					   __func__, dev_hndl, glbl_cnt_th,
-					   -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	if ((index + count) > QDMA_NUM_C2H_COUNTERS) {
-		qdma_log_error("%s: index=%u count=%u > %d, err:%d\n",
-					   __func__, index, count,
-					   QDMA_NUM_C2H_BUFFER_SIZES,
-					   -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	qdma_s80_hard_get_device_attributes(dev_hndl, &dev_cap);
-
-	if (dev_cap.st_en || dev_cap.mm_cmpt_en)
-		qdma_write_csr_values(dev_hndl,
-				QDMA_S80_HARD_C2H_CNT_TH_1_ADDR, index,
-				count, glbl_cnt_th);
-	else {
-		qdma_log_error("%s: ST or MM cmpt not supported, err:%d\n",
-				__func__,
-				-QDMA_ERR_HWACC_FEATURE_NOT_SUPPORTED);
-		return -QDMA_ERR_HWACC_FEATURE_NOT_SUPPORTED;
-	}
-
-	return QDMA_SUCCESS;
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_read_global_counter_threshold() - get the counter
- *	threshold values
- *
- * @dev_hndl:   device handle
- * @index:	 Index from where the values needs to read
- * @count:	 number of entries to be read
- * @glbl_cnt_th: pointer to array to hold the values read
- *
- * (index + count) shall not be more than 16
- *
- * Return:	0   - success and < 0 - failure
- *****************************************************************************/
-static int qdma_s80_hard_read_global_counter_threshold(void *dev_hndl,
-		uint8_t index,
-		uint8_t count, uint32_t *glbl_cnt_th)
-{
-	struct qdma_dev_attributes dev_cap;
-
-	if (!dev_hndl || !glbl_cnt_th || !count) {
-		qdma_log_error("%s: dev_hndl=%p glbl_cnt_th=%p, err:%d\n",
-					   __func__, dev_hndl, glbl_cnt_th,
-					   -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	if ((index + count) > QDMA_NUM_C2H_COUNTERS) {
-		qdma_log_error("%s: index=%u count=%u > %d, err:%d\n",
-					   __func__, index, count,
-					   QDMA_NUM_C2H_COUNTERS,
-					   -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	qdma_s80_hard_get_device_attributes(dev_hndl, &dev_cap);
-
-	if (dev_cap.st_en || dev_cap.mm_cmpt_en)
-		qdma_read_csr_values(dev_hndl,
-				QDMA_S80_HARD_C2H_CNT_TH_1_ADDR, index,
-				count, glbl_cnt_th);
-	else {
-		qdma_log_error("%s: ST or MM cmpt not supported, err:%d\n",
-			   __func__, -QDMA_ERR_HWACC_FEATURE_NOT_SUPPORTED);
-		return -QDMA_ERR_HWACC_FEATURE_NOT_SUPPORTED;
-	}
-
-	return QDMA_SUCCESS;
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_write_global_buffer_sizes() - function to set the buffer sizes
- *
- * @dev_hndl:   device handle
- * @index:	 Index from where the values needs to written
- * @count:	 number of entries to be written
- * @glbl_buf_sz: pointer to the array having the values to write
- *
- * (index + count) shall not be more than 16
- *
- * Return:	0   - success and < 0 - failure
- *****************************************************************************/
-static int qdma_s80_hard_write_global_buffer_sizes(void *dev_hndl,
-		uint8_t index,
-		uint8_t count, const uint32_t *glbl_buf_sz)
-{
-	struct qdma_dev_attributes dev_cap;
-
-	if (!dev_hndl || !glbl_buf_sz || !count) {
-		qdma_log_error("%s: dev_hndl=%p glbl_buf_sz=%p, err:%d\n",
-					   __func__, dev_hndl, glbl_buf_sz,
-					   -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	if ((index + count) > QDMA_NUM_C2H_BUFFER_SIZES) {
-		qdma_log_error("%s: index=%u count=%u > %d, err:%d\n",
-					   __func__, index, count,
-					   QDMA_NUM_C2H_BUFFER_SIZES,
-					   -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	qdma_s80_hard_get_device_attributes(dev_hndl, &dev_cap);
-
-	if (dev_cap.st_en)
-		qdma_write_csr_values(dev_hndl,
-				QDMA_S80_HARD_C2H_BUF_SZ_0_ADDR, index,
-				count, glbl_buf_sz);
-	else {
-		qdma_log_error("%s: ST not supported, err:%d\n",
-				__func__,
-				-QDMA_ERR_HWACC_FEATURE_NOT_SUPPORTED);
-		return -QDMA_ERR_HWACC_FEATURE_NOT_SUPPORTED;
-	}
-
-	return QDMA_SUCCESS;
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_read_global_buffer_sizes() - function to get the buffer sizes
- *
- * @dev_hndl:   device handle
- * @index:	 Index from where the values needs to read
- * @count:	 number of entries to be read
- * @glbl_buf_sz: pointer to array to hold the values read
- *
- * (index + count) shall not be more than 16
- *
- * Return:	0   - success and < 0 - failure
- *****************************************************************************/
-static int qdma_s80_hard_read_global_buffer_sizes(void *dev_hndl, uint8_t index,
-				uint8_t count, uint32_t *glbl_buf_sz)
-{
-	struct qdma_dev_attributes dev_cap;
-
-	if (!dev_hndl || !glbl_buf_sz || !count) {
-		qdma_log_error("%s: dev_hndl=%p glbl_buf_sz=%p, err:%d\n",
-					   __func__, dev_hndl, glbl_buf_sz,
-					   -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	if ((index + count) > QDMA_NUM_C2H_BUFFER_SIZES) {
-		qdma_log_error("%s: index=%u count=%u > %d, err:%d\n",
-					   __func__, index, count,
-					   QDMA_NUM_C2H_BUFFER_SIZES,
-					   -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	qdma_s80_hard_get_device_attributes(dev_hndl, &dev_cap);
-
-	if (dev_cap.st_en)
-		qdma_read_csr_values(dev_hndl,
-				QDMA_S80_HARD_C2H_BUF_SZ_0_ADDR, index,
-				count, glbl_buf_sz);
-	else {
-		qdma_log_error("%s: ST is not supported, err:%d\n",
-					__func__,
-					-QDMA_ERR_HWACC_FEATURE_NOT_SUPPORTED);
-		return -QDMA_ERR_HWACC_FEATURE_NOT_SUPPORTED;
-	}
-
-	return QDMA_SUCCESS;
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_global_csr_conf() - function to configure global csr
- *
- * @dev_hndl:	device handle
- * @index:	Index from where the values needs to read
- * @count:	number of entries to be read
- * @csr_val:	uint32_t pointer to csr value
- * @csr_type:	Type of the CSR (qdma_global_csr_type enum) to configure
- * @access_type HW access type (qdma_hw_access_type enum) value
- *		QDMA_HW_ACCESS_CLEAR - Not supported
- *		QDMA_HW_ACCESS_INVALIDATE - Not supported
- *
- * (index + count) shall not be more than 16
- *
- * Return:	0   - success and < 0 - failure
- *****************************************************************************/
-int qdma_s80_hard_global_csr_conf(void *dev_hndl, uint8_t index, uint8_t count,
-				uint32_t *csr_val,
-				enum qdma_global_csr_type csr_type,
-				enum qdma_hw_access_type access_type)
-{
-	int rv = QDMA_SUCCESS;
-
-	switch (csr_type) {
-	case QDMA_CSR_RING_SZ:
-		switch (access_type) {
-		case QDMA_HW_ACCESS_READ:
-			rv = qdma_s80_hard_read_global_ring_sizes(
-						dev_hndl,
-						index,
-						count,
-						csr_val);
-			break;
-		case QDMA_HW_ACCESS_WRITE:
-			rv = qdma_s80_hard_write_global_ring_sizes(
-						dev_hndl,
-						index,
-						count,
-						csr_val);
-			break;
-		default:
-			qdma_log_error("%s: access_type(%d) invalid, err:%d\n",
-							__func__,
-							access_type,
-						   -QDMA_ERR_INV_PARAM);
-			rv = -QDMA_ERR_INV_PARAM;
-			break;
-		}
-		break;
-	case QDMA_CSR_TIMER_CNT:
-		switch (access_type) {
-		case QDMA_HW_ACCESS_READ:
-			rv = qdma_s80_hard_read_global_timer_count(
-						dev_hndl,
-						index,
-						count,
-						csr_val);
-			break;
-		case QDMA_HW_ACCESS_WRITE:
-			rv = qdma_s80_hard_write_global_timer_count(
-						dev_hndl,
-						index,
-						count,
-						csr_val);
-			break;
-		default:
-			qdma_log_error("%s: access_type(%d) invalid, err:%d\n",
-							__func__,
-							access_type,
-						   -QDMA_ERR_INV_PARAM);
-			rv = -QDMA_ERR_INV_PARAM;
-			break;
-		}
-		break;
-	case QDMA_CSR_CNT_TH:
-		switch (access_type) {
-		case QDMA_HW_ACCESS_READ:
-			rv =
-			qdma_s80_hard_read_global_counter_threshold(
-						dev_hndl,
-						index,
-						count,
-						csr_val);
-			break;
-		case QDMA_HW_ACCESS_WRITE:
-			rv =
-			qdma_s80_hard_write_global_counter_threshold(
-						dev_hndl,
-						index,
-						count,
-						csr_val);
-			break;
-		default:
-			qdma_log_error("%s: access_type(%d) invalid, err:%d\n",
-							__func__,
-							access_type,
-						   -QDMA_ERR_INV_PARAM);
-			rv = -QDMA_ERR_INV_PARAM;
-			break;
-		}
-		break;
-	case QDMA_CSR_BUF_SZ:
-		switch (access_type) {
-		case QDMA_HW_ACCESS_READ:
-			rv =
-			qdma_s80_hard_read_global_buffer_sizes(dev_hndl,
-						index,
-						count,
-						csr_val);
-			break;
-		case QDMA_HW_ACCESS_WRITE:
-			rv =
-			qdma_s80_hard_write_global_buffer_sizes(dev_hndl,
-						index,
-						count,
-						csr_val);
-			break;
-		default:
-			qdma_log_error("%s: access_type(%d) invalid, err:%d\n",
-							__func__,
-							access_type,
-						   -QDMA_ERR_INV_PARAM);
-			rv = -QDMA_ERR_INV_PARAM;
-			break;
-		}
-		break;
-	default:
-		qdma_log_error("%s: csr_type(%d) invalid, err:%d\n",
-						__func__,
-						csr_type,
-					   -QDMA_ERR_INV_PARAM);
-		rv = -QDMA_ERR_INV_PARAM;
-		break;
-	}
-
-	return rv;
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_global_writeback_interval_write() -  function to set the
- * writeback interval
- *
- * @dev_hndl	device handle
- * @wb_int:	Writeback Interval
- *
- * Return:	0   - success and < 0 - failure
- *****************************************************************************/
-static int qdma_s80_hard_global_writeback_interval_write(void *dev_hndl,
-		enum qdma_wrb_interval wb_int)
-{
-	uint32_t reg_val;
-	struct qdma_dev_attributes dev_cap;
-
-	if (!dev_hndl) {
-		qdma_log_error("%s: dev_handle is NULL, err:%d\n", __func__,
-					   -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	if (wb_int >=  QDMA_NUM_WRB_INTERVALS) {
-		qdma_log_error("%s: wb_int=%d is invalid, err:%d\n",
-					   __func__, wb_int,
-					   -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	qdma_s80_hard_get_device_attributes(dev_hndl, &dev_cap);
-
-	if (dev_cap.st_en || dev_cap.mm_cmpt_en) {
-		reg_val = qdma_reg_read(dev_hndl,
-				QDMA_S80_HARD_GLBL_DSC_CFG_ADDR);
-		reg_val |= FIELD_SET(GLBL_DSC_CFG_WB_ACC_INT_MASK, wb_int);
-
-		qdma_reg_write(dev_hndl,
-				QDMA_S80_HARD_GLBL_DSC_CFG_ADDR, reg_val);
-	} else {
-		qdma_log_error("%s: ST or MM cmpt not supported, err:%d\n",
-			   __func__, -QDMA_ERR_HWACC_FEATURE_NOT_SUPPORTED);
-		return -QDMA_ERR_HWACC_FEATURE_NOT_SUPPORTED;
-	}
-
-	return QDMA_SUCCESS;
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_global_writeback_interval_read() -  function to get the
- * writeback interval
- *
- * @dev_hndl:	device handle
- * @wb_int:	pointer to the data to hold Writeback Interval
- *
- * Return:	0   - success and < 0 - failure
- *****************************************************************************/
-static int qdma_s80_hard_global_writeback_interval_read(void *dev_hndl,
-		enum qdma_wrb_interval *wb_int)
-{
-	uint32_t reg_val;
-	struct qdma_dev_attributes dev_cap;
-
-	if (!dev_hndl) {
-		qdma_log_error("%s: dev_handle is NULL, err:%d\n", __func__,
-					   -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	if (!wb_int) {
-		qdma_log_error("%s: wb_int is NULL, err:%d\n", __func__,
-					   -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	qdma_s80_hard_get_device_attributes(dev_hndl, &dev_cap);
-
-	if (dev_cap.st_en || dev_cap.mm_cmpt_en) {
-		reg_val = qdma_reg_read(dev_hndl,
-				QDMA_S80_HARD_GLBL_DSC_CFG_ADDR);
-		*wb_int = (enum qdma_wrb_interval)FIELD_GET(
-				GLBL_DSC_CFG_WB_ACC_INT_MASK, reg_val);
-	} else {
-		qdma_log_error("%s: ST or MM cmpt not supported, err:%d\n",
-			   __func__, -QDMA_ERR_HWACC_FEATURE_NOT_SUPPORTED);
-		return -QDMA_ERR_HWACC_FEATURE_NOT_SUPPORTED;
-	}
-
-	return QDMA_SUCCESS;
-}
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_global_writeback_interval_conf() - function to configure
- *					the writeback interval
- *
- * @dev_hndl:   device handle
- * @wb_int:	pointer to the data to hold Writeback Interval
- * @access_type HW access type (qdma_hw_access_type enum) value
- *		QDMA_HW_ACCESS_CLEAR - Not supported
- *		QDMA_HW_ACCESS_INVALIDATE - Not supported
- *
- * Return:	0   - success and < 0 - failure
- *****************************************************************************/
-int qdma_s80_hard_global_writeback_interval_conf(void *dev_hndl,
-				enum qdma_wrb_interval *wb_int,
-				enum qdma_hw_access_type access_type)
-{
-	int rv = QDMA_SUCCESS;
-
-	switch (access_type) {
-	case QDMA_HW_ACCESS_READ:
-		rv =
-		qdma_s80_hard_global_writeback_interval_read(dev_hndl, wb_int);
-		break;
-	case QDMA_HW_ACCESS_WRITE:
-		rv =
-		qdma_s80_hard_global_writeback_interval_write(dev_hndl,
-								*wb_int);
-		break;
-	case QDMA_HW_ACCESS_CLEAR:
-	case QDMA_HW_ACCESS_INVALIDATE:
-	default:
-		qdma_log_error("%s: access_type(%d) invalid, err:%d\n",
-						__func__,
-						access_type,
-					   -QDMA_ERR_INV_PARAM);
-		rv = -QDMA_ERR_INV_PARAM;
-		break;
-	}
-
-	return rv;
-}
-
-
-/*****************************************************************************/
-/**
- * qdma_s80_hard_mm_channel_conf() - Function to enable/disable the MM channel
- *
- * @dev_hndl:	device handle
- * @channel:	MM channel number
- * @is_c2h:	Queue direction. Set 1 for C2H and 0 for H2C
- * @enable:	Enable or disable MM channel
- *
- * Presently, we have only 1 MM channel
- *
- * Return:   0   - success and < 0 - failure
- *****************************************************************************/
-int qdma_s80_hard_mm_channel_conf(void *dev_hndl, uint8_t channel,
-				uint8_t is_c2h,
-				uint8_t enable)
-{
-	uint32_t reg_addr = (is_c2h) ?  QDMA_S80_HARD_C2H_CHANNEL_CTL_ADDR :
-			QDMA_S80_HARD_H2C_CHANNEL_CTL_ADDR;
-	struct qdma_dev_attributes dev_cap;
-
-	if (!dev_hndl) {
-		qdma_log_error("%s: dev_handle is NULL, err:%d\n",
-				__func__, -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	qdma_s80_hard_get_device_attributes(dev_hndl, &dev_cap);
-
-	if (dev_cap.mm_en) {
-		qdma_reg_write(dev_hndl,
-				reg_addr + (channel * QDMA_MM_CONTROL_STEP),
-				enable);
-	}
-
-	return QDMA_SUCCESS;
-}
-
-int qdma_s80_hard_dump_reg_info(void *dev_hndl, uint32_t reg_addr,
-		uint32_t num_regs, char *buf, uint32_t buflen)
-{
-	uint32_t total_num_regs = qdma_s80_hard_config_num_regs_get();
-	struct xreg_info *config_regs  = qdma_s80_hard_config_regs_get();
-	const char *bitfield_name;
-	uint32_t i = 0, num_regs_idx = 0, k = 0, j = 0,
-			bitfield = 0, lsb = 0, msb = 31;
-	int rv = 0;
-	uint32_t reg_val;
-	uint32_t data_len = 0;
-
-	if (!dev_hndl) {
-		qdma_log_error("%s: dev_handle is NULL, err:%d\n",
-				__func__, -QDMA_ERR_INV_PARAM);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	for (i = 0; i < total_num_regs; i++) {
-		if (reg_addr == config_regs[i].addr) {
-			j = i;
-			break;
-		}
-	}
-
-	if (i == total_num_regs) {
-		qdma_log_error("%s: Register not found err:%d\n",
-				__func__, -QDMA_ERR_INV_PARAM);
-		if (buf)
-			QDMA_SNPRINTF_S(buf, buflen,
-					DEBGFS_LINE_SZ,
-					"Register not found 0x%x\n", reg_addr);
-		return -QDMA_ERR_INV_PARAM;
-	}
-
-	num_regs_idx = (j + num_regs < total_num_regs) ?
-					(j + num_regs) : total_num_regs;
-
-	for (; j < num_regs_idx ; j++) {
-		reg_val = qdma_reg_read(dev_hndl,
-				config_regs[j].addr);
-
-		if (buf) {
-			rv = QDMA_SNPRINTF_S(buf, buflen,
-						DEBGFS_LINE_SZ,
-						"\n%-40s 0x%-7x %-#10x %-10d\n",
-						config_regs[j].name,
-						config_regs[j].addr,
-						reg_val, reg_val);
-			if ((rv < 0) || (rv > DEBGFS_LINE_SZ)) {
-				qdma_log_error(
-					"%s: Insufficient buffer, err:%d\n",
-					__func__, -QDMA_ERR_NO_MEM);
-				return -QDMA_ERR_NO_MEM;
-			}
-			buf += rv;
-			data_len += rv;
-			buflen -= rv;
-		} else
-			qdma_log_info("%-40s 0x%-7x %-#10x %-10d\n",
-						  config_regs[j].name,
-						  config_regs[j].addr,
-						  reg_val, reg_val);
-
-
-		for (k = 0;
-			 k < config_regs[j].num_bitfields; k++) {
-
-			bitfield =
-				config_regs[j].bitfields[k].field_mask;
-			bitfield_name =
-				config_regs[i].bitfields[k].field_name;
-			lsb = 0;
-			msb = 31;
-
-			while (!(BIT(lsb) & bitfield))
-				lsb++;
-
-			while (!(BIT(msb) & bitfield))
-				msb--;
-
-			if (msb != lsb) {
-				if (buf) {
-					rv = QDMA_SNPRINTF_S(buf, buflen,
-							DEBGFS_LINE_SZ,
-							"%-40s [%2u,%2u]   %#-10x\n",
-							bitfield_name,
-							msb, lsb,
-							(reg_val & bitfield) >>
-								lsb);
-					if ((rv < 0) || (rv > DEBGFS_LINE_SZ)) {
-						qdma_log_error(
-							"%s: Insufficient buffer, err:%d\n",
-							__func__,
-							-QDMA_ERR_NO_MEM);
-						return -QDMA_ERR_NO_MEM;
-					}
-					buf += rv;
-					data_len += rv;
-					buflen -= rv;
-				} else
-					qdma_log_info(
-						"%-40s [%2u,%2u]   %#-10x\n",
-						bitfield_name,
-						msb, lsb,
-						(reg_val & bitfield) >> lsb);
-
-
-			} else {
-				if (buf) {
-					rv = QDMA_SNPRINTF_S(buf, buflen,
-							DEBGFS_LINE_SZ,
-							"%-40s [%5u]   %#-10x\n",
-							bitfield_name,
-							lsb,
-							(reg_val & bitfield) >>
-								lsb);
-					if ((rv < 0) || (rv > DEBGFS_LINE_SZ)) {
-						qdma_log_error(
-							"%s: Insufficient buffer, err:%d\n",
-							__func__,
-							-QDMA_ERR_NO_MEM);
-						return -QDMA_ERR_NO_MEM;
-					}
-					buf += rv;
-					data_len += rv;
-					buflen -= rv;
-				} else
-					qdma_log_info(
-						"%-40s [%5u]   %#-10x\n",
-						bitfield_name,
-						lsb,
-						(reg_val & bitfield) >> lsb);
-
-			}
-		}
-	}
-
-	return data_len;
-
-}
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_s80_hard_access/qdma_s80_hard_access.h b/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_s80_hard_access/qdma_s80_hard_access.h
deleted file mode 100644
index f0a93ae82b90a9721d3eb4c6aa7208cd5b1baffc..0000000000000000000000000000000000000000
--- a/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_s80_hard_access/qdma_s80_hard_access.h
+++ /dev/null
@@ -1,278 +0,0 @@
-/*
- * Copyright(c) 2019-2020 Xilinx, Inc. All rights reserved.
- *
- * This source code is free software; you can redistribute it and/or modify it
- * under the terms and conditions of the GNU General Public License,
- * version 2, as published by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
- * more details.
- *
- * The full GNU General Public License is included in this distribution in
- * the file called "COPYING".
- */
-
-#ifndef __QDMA_S80_HARD_ACCESS_H_
-#define __QDMA_S80_HARD_ACCESS_H_
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#include "qdma_platform.h"
-
-/**
- * enum qdma_error_idx - qdma errors
- */
-enum qdma_s80_hard_error_idx {
-	/* Descriptor errors */
-	QDMA_S80_HARD_DSC_ERR_POISON,
-	QDMA_S80_HARD_DSC_ERR_UR_CA,
-	QDMA_S80_HARD_DSC_ERR_PARAM,
-	QDMA_S80_HARD_DSC_ERR_ADDR,
-	QDMA_S80_HARD_DSC_ERR_TAG,
-	QDMA_S80_HARD_DSC_ERR_FLR,
-	QDMA_S80_HARD_DSC_ERR_TIMEOUT,
-	QDMA_S80_HARD_DSC_ERR_DAT_POISON,
-	QDMA_S80_HARD_DSC_ERR_FLR_CANCEL,
-	QDMA_S80_HARD_DSC_ERR_DMA,
-	QDMA_S80_HARD_DSC_ERR_DSC,
-	QDMA_S80_HARD_DSC_ERR_RQ_CANCEL,
-	QDMA_S80_HARD_DSC_ERR_DBE,
-	QDMA_S80_HARD_DSC_ERR_SBE,
-	QDMA_S80_HARD_DSC_ERR_ALL,
-
-	/* TRQ Errors */
-	QDMA_S80_HARD_TRQ_ERR_UNMAPPED,
-	QDMA_S80_HARD_TRQ_ERR_QID_RANGE,
-	QDMA_S80_HARD_TRQ_ERR_VF_ACCESS_ERR,
-	QDMA_S80_HARD_TRQ_ERR_TCP_TIMEOUT,
-	QDMA_S80_HARD_TRQ_ERR_ALL,
-
-	/* C2H Errors */
-	QDMA_S80_HARD_ST_C2H_ERR_MTY_MISMATCH,
-	QDMA_S80_HARD_ST_C2H_ERR_LEN_MISMATCH,
-	QDMA_S80_HARD_ST_C2H_ERR_QID_MISMATCH,
-	QDMA_S80_HARD_ST_C2H_ERR_DESC_RSP_ERR,
-	QDMA_S80_HARD_ST_C2H_ERR_ENG_WPL_DATA_PAR_ERR,
-	QDMA_S80_HARD_ST_C2H_ERR_MSI_INT_FAIL,
-	QDMA_S80_HARD_ST_C2H_ERR_ERR_DESC_CNT,
-	QDMA_S80_HARD_ST_C2H_ERR_PORTID_CTXT_MISMATCH,
-	QDMA_S80_HARD_ST_C2H_ERR_PORTID_BYP_IN_MISMATCH,
-	QDMA_S80_HARD_ST_C2H_ERR_WRB_INV_Q_ERR,
-	QDMA_S80_HARD_ST_C2H_ERR_WRB_QFULL_ERR,
-	QDMA_S80_HARD_ST_C2H_ERR_WRB_CIDX_ERR,
-	QDMA_S80_HARD_ST_C2H_ERR_WRB_PRTY_ERR,
-	QDMA_S80_HARD_ST_C2H_ERR_ALL,
-
-	/* Fatal Errors */
-	QDMA_S80_HARD_ST_FATAL_ERR_MTY_MISMATCH,
-	QDMA_S80_HARD_ST_FATAL_ERR_LEN_MISMATCH,
-	QDMA_S80_HARD_ST_FATAL_ERR_QID_MISMATCH,
-	QDMA_S80_HARD_ST_FATAL_ERR_TIMER_FIFO_RAM_RDBE,
-	QDMA_S80_HARD_ST_FATAL_ERR_PFCH_II_RAM_RDBE,
-	QDMA_S80_HARD_ST_FATAL_ERR_WRB_CTXT_RAM_RDBE,
-	QDMA_S80_HARD_ST_FATAL_ERR_PFCH_CTXT_RAM_RDBE,
-	QDMA_S80_HARD_ST_FATAL_ERR_DESC_REQ_FIFO_RAM_RDBE,
-	QDMA_S80_HARD_ST_FATAL_ERR_INT_CTXT_RAM_RDBE,
-	QDMA_S80_HARD_ST_FATAL_ERR_INT_QID2VEC_RAM_RDBE,
-	QDMA_S80_HARD_ST_FATAL_ERR_WRB_COAL_DATA_RAM_RDBE,
-	QDMA_S80_HARD_ST_FATAL_ERR_TUSER_FIFO_RAM_RDBE,
-	QDMA_S80_HARD_ST_FATAL_ERR_QID_FIFO_RAM_RDBE,
-	QDMA_S80_HARD_ST_FATAL_ERR_PAYLOAD_FIFO_RAM_RDBE,
-	QDMA_S80_HARD_ST_FATAL_ERR_WPL_DATA_PAR_ERR,
-	QDMA_S80_HARD_ST_FATAL_ERR_ALL,
-
-	/* H2C Errors */
-	QDMA_S80_HARD_ST_H2C_ERR_ZERO_LEN_DESC_ERR,
-	QDMA_S80_HARD_ST_H2C_ERR_SDI_MRKR_REQ_MOP_ERR,
-	QDMA_S80_HARD_ST_H2C_ERR_NO_DMA_DSC,
-	QDMA_S80_HARD_ST_H2C_ERR_DBE,
-	QDMA_S80_HARD_ST_H2C_ERR_SBE,
-	QDMA_S80_HARD_ST_H2C_ERR_ALL,
-
-	/* Single bit errors */
-	QDMA_S80_HARD_SBE_ERR_MI_H2C0_DAT,
-	QDMA_S80_HARD_SBE_ERR_MI_C2H0_DAT,
-	QDMA_S80_HARD_SBE_ERR_H2C_RD_BRG_DAT,
-	QDMA_S80_HARD_SBE_ERR_H2C_WR_BRG_DAT,
-	QDMA_S80_HARD_SBE_ERR_C2H_RD_BRG_DAT,
-	QDMA_S80_HARD_SBE_ERR_C2H_WR_BRG_DAT,
-	QDMA_S80_HARD_SBE_ERR_FUNC_MAP,
-	QDMA_S80_HARD_SBE_ERR_DSC_HW_CTXT,
-	QDMA_S80_HARD_SBE_ERR_DSC_CRD_RCV,
-	QDMA_S80_HARD_SBE_ERR_DSC_SW_CTXT,
-	QDMA_S80_HARD_SBE_ERR_DSC_CPLI,
-	QDMA_S80_HARD_SBE_ERR_DSC_CPLD,
-	QDMA_S80_HARD_SBE_ERR_PASID_CTXT_RAM,
-	QDMA_S80_HARD_SBE_ERR_TIMER_FIFO_RAM,
-	QDMA_S80_HARD_SBE_ERR_PAYLOAD_FIFO_RAM,
-	QDMA_S80_HARD_SBE_ERR_QID_FIFO_RAM,
-	QDMA_S80_HARD_SBE_ERR_TUSER_FIFO_RAM,
-	QDMA_S80_HARD_SBE_ERR_WRB_COAL_DATA_RAM,
-	QDMA_S80_HARD_SBE_ERR_INT_QID2VEC_RAM,
-	QDMA_S80_HARD_SBE_ERR_INT_CTXT_RAM,
-	QDMA_S80_HARD_SBE_ERR_DESC_REQ_FIFO_RAM,
-	QDMA_S80_HARD_SBE_ERR_PFCH_CTXT_RAM,
-	QDMA_S80_HARD_SBE_ERR_WRB_CTXT_RAM,
-	QDMA_S80_HARD_SBE_ERR_PFCH_LL_RAM,
-	QDMA_S80_HARD_SBE_ERR_ALL,
-
-	/* Double bit Errors */
-	QDMA_S80_HARD_DBE_ERR_MI_H2C0_DAT,
-	QDMA_S80_HARD_DBE_ERR_MI_C2H0_DAT,
-	QDMA_S80_HARD_DBE_ERR_H2C_RD_BRG_DAT,
-	QDMA_S80_HARD_DBE_ERR_H2C_WR_BRG_DAT,
-	QDMA_S80_HARD_DBE_ERR_C2H_RD_BRG_DAT,
-	QDMA_S80_HARD_DBE_ERR_C2H_WR_BRG_DAT,
-	QDMA_S80_HARD_DBE_ERR_FUNC_MAP,
-	QDMA_S80_HARD_DBE_ERR_DSC_HW_CTXT,
-	QDMA_S80_HARD_DBE_ERR_DSC_CRD_RCV,
-	QDMA_S80_HARD_DBE_ERR_DSC_SW_CTXT,
-	QDMA_S80_HARD_DBE_ERR_DSC_CPLI,
-	QDMA_S80_HARD_DBE_ERR_DSC_CPLD,
-	QDMA_S80_HARD_DBE_ERR_PASID_CTXT_RAM,
-	QDMA_S80_HARD_DBE_ERR_TIMER_FIFO_RAM,
-	QDMA_S80_HARD_DBE_ERR_PAYLOAD_FIFO_RAM,
-	QDMA_S80_HARD_DBE_ERR_QID_FIFO_RAM,
-	QDMA_S80_HARD_DBE_ERR_WRB_COAL_DATA_RAM,
-	QDMA_S80_HARD_DBE_ERR_INT_QID2VEC_RAM,
-	QDMA_S80_HARD_DBE_ERR_INT_CTXT_RAM,
-	QDMA_S80_HARD_DBE_ERR_DESC_REQ_FIFO_RAM,
-	QDMA_S80_HARD_DBE_ERR_PFCH_CTXT_RAM,
-	QDMA_S80_HARD_DBE_ERR_WRB_CTXT_RAM,
-	QDMA_S80_HARD_DBE_ERR_PFCH_LL_RAM,
-	QDMA_S80_HARD_DBE_ERR_ALL,
-
-	QDMA_S80_HARD_ERRS_ALL
-};
-
-struct qdma_s80_hard_hw_err_info {
-	enum qdma_s80_hard_error_idx idx;
-	const char *err_name;
-	uint32_t mask_reg_addr;
-	uint32_t stat_reg_addr;
-	uint32_t leaf_err_mask;
-	uint32_t global_err_mask;
-	void (*qdma_s80_hard_hw_err_process)(void *dev_hndl);
-};
-
-
-int qdma_s80_hard_init_ctxt_memory(void *dev_hndl);
-
-int qdma_s80_hard_qid2vec_conf(void *dev_hndl, uint8_t c2h, uint16_t hw_qid,
-			 struct qdma_qid2vec *ctxt,
-			 enum qdma_hw_access_type access_type);
-
-int qdma_s80_hard_fmap_conf(void *dev_hndl, uint16_t func_id,
-			struct qdma_fmap_cfg *config,
-			enum qdma_hw_access_type access_type);
-
-int qdma_s80_hard_sw_ctx_conf(void *dev_hndl, uint8_t c2h, uint16_t hw_qid,
-				struct qdma_descq_sw_ctxt *ctxt,
-				enum qdma_hw_access_type access_type);
-
-int qdma_s80_hard_pfetch_ctx_conf(void *dev_hndl, uint16_t hw_qid,
-				struct qdma_descq_prefetch_ctxt *ctxt,
-				enum qdma_hw_access_type access_type);
-
-int qdma_s80_hard_cmpt_ctx_conf(void *dev_hndl, uint16_t hw_qid,
-			struct qdma_descq_cmpt_ctxt *ctxt,
-			enum qdma_hw_access_type access_type);
-
-int qdma_s80_hard_hw_ctx_conf(void *dev_hndl, uint8_t c2h, uint16_t hw_qid,
-				struct qdma_descq_hw_ctxt *ctxt,
-				enum qdma_hw_access_type access_type);
-
-int qdma_s80_hard_credit_ctx_conf(void *dev_hndl, uint8_t c2h, uint16_t hw_qid,
-			struct qdma_descq_credit_ctxt *ctxt,
-			enum qdma_hw_access_type access_type);
-
-int qdma_s80_hard_indirect_intr_ctx_conf(void *dev_hndl, uint16_t ring_index,
-				struct qdma_indirect_intr_ctxt *ctxt,
-				enum qdma_hw_access_type access_type);
-
-int qdma_s80_hard_set_default_global_csr(void *dev_hndl);
-
-int qdma_s80_hard_queue_pidx_update(void *dev_hndl, uint8_t is_vf, uint16_t qid,
-		uint8_t is_c2h, const struct qdma_q_pidx_reg_info *reg_info);
-
-int qdma_s80_hard_queue_cmpt_cidx_update(void *dev_hndl, uint8_t is_vf,
-		uint16_t qid, const struct qdma_q_cmpt_cidx_reg_info *reg_info);
-
-int qdma_s80_hard_queue_intr_cidx_update(void *dev_hndl, uint8_t is_vf,
-		uint16_t qid, const struct qdma_intr_cidx_reg_info *reg_info);
-
-int qdma_cmp_get_user_bar(void *dev_hndl, uint8_t is_vf,
-		uint8_t func_id, uint8_t *user_bar);
-
-int qdma_s80_hard_get_device_attributes(void *dev_hndl,
-		struct qdma_dev_attributes *dev_info);
-
-uint32_t qdma_s80_hard_reg_dump_buf_len(void);
-
-int qdma_s80_hard_context_buf_len(uint8_t st,
-		enum qdma_dev_q_type q_type, uint32_t *req_buflen);
-
-int qdma_s80_hard_dump_config_regs(void *dev_hndl, uint8_t is_vf,
-		char *buf, uint32_t buflen);
-
-int qdma_s80_hard_hw_error_process(void *dev_hndl);
-const char *qdma_s80_hard_hw_get_error_name(uint32_t err_idx);
-int qdma_s80_hard_hw_error_enable(void *dev_hndl, uint32_t err_idx);
-
-int qdma_s80_hard_dump_queue_context(void *dev_hndl,
-		uint8_t st,
-		enum qdma_dev_q_type q_type,
-		struct qdma_descq_context *ctxt_data,
-		char *buf, uint32_t buflen);
-
-int qdma_s80_hard_dump_intr_context(void *dev_hndl,
-		struct qdma_indirect_intr_ctxt *intr_ctx,
-		int ring_index,
-		char *buf, uint32_t buflen);
-
-int qdma_s80_hard_read_dump_queue_context(void *dev_hndl,
-		uint16_t qid_hw,
-		uint8_t st,
-		enum qdma_dev_q_type q_type,
-		char *buf, uint32_t buflen);
-
-int qdma_s80_hard_dump_config_reg_list(void *dev_hndl,
-		uint32_t total_regs,
-		struct qdma_reg_data *reg_list,
-		char *buf, uint32_t buflen);
-
-int qdma_s80_hard_read_reg_list(void *dev_hndl, uint8_t is_vf,
-		uint16_t reg_rd_slot,
-		uint16_t *total_regs,
-		struct qdma_reg_data *reg_list);
-
-int qdma_s80_hard_global_csr_conf(void *dev_hndl, uint8_t index,
-				uint8_t count,
-				uint32_t *csr_val,
-				enum qdma_global_csr_type csr_type,
-				enum qdma_hw_access_type access_type);
-
-int qdma_s80_hard_global_writeback_interval_conf(void *dev_hndl,
-				enum qdma_wrb_interval *wb_int,
-				enum qdma_hw_access_type access_type);
-
-int qdma_s80_hard_mm_channel_conf(void *dev_hndl, uint8_t channel,
-				uint8_t is_c2h,
-				uint8_t enable);
-
-int qdma_s80_hard_dump_reg_info(void *dev_hndl, uint32_t reg_addr,
-				uint32_t num_regs, char *buf, uint32_t buflen);
-
-uint32_t qdma_s80_hard_get_config_num_regs(void);
-
-struct xreg_info *qdma_s80_hard_get_config_regs(void);
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* __QDMA_S80_HARD_ACCESS_H_ */
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_s80_hard_access/qdma_s80_hard_reg.h b/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_s80_hard_access/qdma_s80_hard_reg.h
deleted file mode 100644
index 5bc3c228fcd40857b0915995d2f1c8f17e126c76..0000000000000000000000000000000000000000
--- a/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_s80_hard_access/qdma_s80_hard_reg.h
+++ /dev/null
@@ -1,2045 +0,0 @@
-/*
- * Copyright(c) 2019-2020 Xilinx, Inc. All rights reserved.
- *
- * This source code is free software; you can redistribute it and/or modify it
- * under the terms and conditions of the GNU General Public License,
- * version 2, as published by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
- * more details.
- *
- * The full GNU General Public License is included in this distribution in
- * the file called "COPYING".
- */
-
-#ifndef __QDMA_S80_HARD_REG_H
-#define __QDMA_S80_HARD_REG_H
-
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#include "qdma_platform.h"
-
-#ifdef CHAR_BIT
-#undef CHAR_BIT
-#endif
-#define CHAR_BIT 8
-
-#ifdef BIT
-#undef BIT
-#endif
-#define BIT(n)                  (1u << (n))
-
-#ifdef BITS_PER_BYTE
-#undef BITS_PER_BYTE
-#endif
-#define BITS_PER_BYTE           CHAR_BIT
-
-#ifdef BITS_PER_LONG
-#undef BITS_PER_LONG
-#endif
-#define BITS_PER_LONG           (sizeof(uint32_t) * BITS_PER_BYTE)
-
-#ifdef BITS_PER_LONG_LONG
-#undef BITS_PER_LONG_LONG
-#endif
-#define BITS_PER_LONG_LONG      (sizeof(uint64_t) * BITS_PER_BYTE)
-
-#ifdef GENMASK
-#undef GENMASK
-#endif
-#define GENMASK(h, l) \
-	((0xFFFFFFFF << (l)) & (0xFFFFFFFF >> (BITS_PER_LONG - 1 - (h))))
-
-#ifdef GENMASK_ULL
-#undef GENMASK_ULL
-#endif
-#define GENMASK_ULL(h, l) \
-	((0xFFFFFFFFFFFFFFFF << (l)) & \
-			(0xFFFFFFFFFFFFFFFF >> (BITS_PER_LONG_LONG - 1 - (h))))
-
-#define DEBGFS_LINE_SZ			(81)
-
-#ifdef ARRAY_SIZE
-#undef ARRAY_SIZE
-#endif
-#define ARRAY_SIZE(arr) (sizeof(arr) / \
-							sizeof(arr[0]))
-
-
-uint32_t qdma_s80_hard_config_num_regs_get(void);
-struct xreg_info *qdma_s80_hard_config_regs_get(void);
-#define QDMA_S80_HARD_CFG_BLK_IDENTIFIER_ADDR              0x00
-#define CFG_BLK_IDENTIFIER_MASK                           GENMASK(31, 20)
-#define CFG_BLK_IDENTIFIER_1_MASK                         GENMASK(19, 16)
-#define CFG_BLK_IDENTIFIER_RSVD_1_MASK                     GENMASK(15, 8)
-#define CFG_BLK_IDENTIFIER_VERSION_MASK                    GENMASK(7, 0)
-#define QDMA_S80_HARD_CFG_BLK_BUSDEV_ADDR                  0x04
-#define CFG_BLK_BUSDEV_BDF_MASK                            GENMASK(15, 0)
-#define QDMA_S80_HARD_CFG_BLK_PCIE_MAX_PLD_SIZE_ADDR       0x08
-#define CFG_BLK_PCIE_MAX_PLD_SIZE_MASK                    GENMASK(2, 0)
-#define QDMA_S80_HARD_CFG_BLK_PCIE_MAX_READ_REQ_SIZE_ADDR  0x0C
-#define CFG_BLK_PCIE_MAX_READ_REQ_SIZE_MASK               GENMASK(2, 0)
-#define QDMA_S80_HARD_CFG_BLK_SYSTEM_ID_ADDR               0x10
-#define CFG_BLK_SYSTEM_ID_MASK                            GENMASK(15, 0)
-#define QDMA_S80_HARD_CFG_BLK_MSI_ENABLE_ADDR              0x014
-#define CFG_BLK_MSI_ENABLE_3_MASK                          BIT(17)
-#define CFG_BLK_MSI_ENABLE_MSIX3_MASK                      BIT(16)
-#define CFG_BLK_MSI_ENABLE_2_MASK                          BIT(13)
-#define CFG_BLK_MSI_ENABLE_MSIX2_MASK                      BIT(12)
-#define CFG_BLK_MSI_ENABLE_1_MASK                          BIT(9)
-#define CFG_BLK_MSI_ENABLE_MSIX1_MASK                      BIT(8)
-#define CFG_BLK_MSI_ENABLE_0_MASK                          BIT(1)
-#define CFG_BLK_MSI_ENABLE_MSIX0_MASK                      BIT(0)
-#define QDMA_S80_HARD_CFG_PCIE_DATA_WIDTH_ADDR             0x18
-#define CFG_PCIE_DATA_WIDTH_DATAPATH_MASK                  GENMASK(2, 0)
-#define QDMA_S80_HARD_CFG_PCIE_CTL_ADDR                    0x1C
-#define CFG_PCIE_CTL_RRQ_DISABLE_MASK                      BIT(1)
-#define CFG_PCIE_CTL_RELAXED_ORDERING_MASK                 BIT(0)
-#define QDMA_S80_HARD_CFG_AXI_USER_MAX_PLD_SIZE_ADDR       0x40
-#define CFG_AXI_USER_MAX_PLD_SIZE_ISSUED_MASK              GENMASK(6, 4)
-#define CFG_AXI_USER_MAX_PLD_SIZE_PROG_MASK                GENMASK(2, 0)
-#define QDMA_S80_HARD_CFG_AXI_USER_MAX_READ_REQ_SIZE_ADDR  0x44
-#define CFG_AXI_USER_MAX_READ_REQ_SIZE_USISSUED_MASK       GENMASK(6, 4)
-#define CFG_AXI_USER_MAX_READ_REQ_SIZE_USPROG_MASK         GENMASK(2, 0)
-#define QDMA_S80_HARD_CFG_BLK_MISC_CTL_ADDR                0x4C
-#define CFG_BLK_MISC_CTL_NUM_TAG_MASK                      GENMASK(19, 8)
-#define CFG_BLK_MISC_CTL_RQ_METERING_MULTIPLIER_MASK       GENMASK(4, 0)
-#define QDMA_S80_HARD_CFG_BLK_SCRATCH_0_ADDR               0x80
-#define CFG_BLK_SCRATCH_0_MASK                            GENMASK(31, 0)
-#define QDMA_S80_HARD_CFG_BLK_SCRATCH_1_ADDR               0x84
-#define CFG_BLK_SCRATCH_1_MASK                            GENMASK(31, 0)
-#define QDMA_S80_HARD_CFG_BLK_SCRATCH_2_ADDR               0x88
-#define CFG_BLK_SCRATCH_2_MASK                            GENMASK(31, 0)
-#define QDMA_S80_HARD_CFG_BLK_SCRATCH_3_ADDR               0x8C
-#define CFG_BLK_SCRATCH_3_MASK                            GENMASK(31, 0)
-#define QDMA_S80_HARD_CFG_BLK_SCRATCH_4_ADDR               0x90
-#define CFG_BLK_SCRATCH_4_MASK                            GENMASK(31, 0)
-#define QDMA_S80_HARD_CFG_BLK_SCRATCH_5_ADDR               0x94
-#define CFG_BLK_SCRATCH_5_MASK                            GENMASK(31, 0)
-#define QDMA_S80_HARD_CFG_BLK_SCRATCH_6_ADDR               0x98
-#define CFG_BLK_SCRATCH_6_MASK                            GENMASK(31, 0)
-#define QDMA_S80_HARD_CFG_BLK_SCRATCH_7_ADDR               0x9C
-#define CFG_BLK_SCRATCH_7_MASK                            GENMASK(31, 0)
-#define QDMA_S80_HARD_RAM_SBE_MSK_A_ADDR                   0xF0
-#define RAM_SBE_MSK_A_MASK                            GENMASK(31, 0)
-#define QDMA_S80_HARD_RAM_SBE_STS_A_ADDR                   0xF4
-#define RAM_SBE_STS_A_RSVD_1_MASK                          BIT(31)
-#define RAM_SBE_STS_A_PFCH_LL_RAM_MASK                     BIT(30)
-#define RAM_SBE_STS_A_WRB_CTXT_RAM_MASK                    BIT(29)
-#define RAM_SBE_STS_A_PFCH_CTXT_RAM_MASK                   BIT(28)
-#define RAM_SBE_STS_A_DESC_REQ_FIFO_RAM_MASK               BIT(27)
-#define RAM_SBE_STS_A_INT_CTXT_RAM_MASK                    BIT(26)
-#define RAM_SBE_STS_A_INT_QID2VEC_RAM_MASK                 BIT(25)
-#define RAM_SBE_STS_A_WRB_COAL_DATA_RAM_MASK               BIT(24)
-#define RAM_SBE_STS_A_TUSER_FIFO_RAM_MASK                  BIT(23)
-#define RAM_SBE_STS_A_QID_FIFO_RAM_MASK                    BIT(22)
-#define RAM_SBE_STS_A_PLD_FIFO_RAM_MASK                    BIT(21)
-#define RAM_SBE_STS_A_TIMER_FIFO_RAM_MASK                  BIT(20)
-#define RAM_SBE_STS_A_PASID_CTXT_RAM_MASK                  BIT(19)
-#define RAM_SBE_STS_A_DSC_CPLD_MASK                        BIT(18)
-#define RAM_SBE_STS_A_DSC_CPLI_MASK                        BIT(17)
-#define RAM_SBE_STS_A_DSC_SW_CTXT_MASK                     BIT(16)
-#define RAM_SBE_STS_A_DSC_CRD_RCV_MASK                     BIT(15)
-#define RAM_SBE_STS_A_DSC_HW_CTXT_MASK                     BIT(14)
-#define RAM_SBE_STS_A_FUNC_MAP_MASK                        BIT(13)
-#define RAM_SBE_STS_A_C2H_WR_BRG_DAT_MASK                  BIT(12)
-#define RAM_SBE_STS_A_C2H_RD_BRG_DAT_MASK                  BIT(11)
-#define RAM_SBE_STS_A_H2C_WR_BRG_DAT_MASK                  BIT(10)
-#define RAM_SBE_STS_A_H2C_RD_BRG_DAT_MASK                  BIT(9)
-#define RAM_SBE_STS_A_RSVD_2_MASK                          GENMASK(8, 5)
-#define RAM_SBE_STS_A_MI_C2H0_DAT_MASK                     BIT(4)
-#define RAM_SBE_STS_A_RSVD_3_MASK                          GENMASK(3, 1)
-#define RAM_SBE_STS_A_MI_H2C0_DAT_MASK                     BIT(0)
-#define QDMA_S80_HARD_RAM_DBE_MSK_A_ADDR                   0xF8
-#define RAM_DBE_MSK_A_MASK                            GENMASK(31, 0)
-#define QDMA_S80_HARD_RAM_DBE_STS_A_ADDR                   0xFC
-#define RAM_DBE_STS_A_RSVD_1_MASK                          BIT(31)
-#define RAM_DBE_STS_A_PFCH_LL_RAM_MASK                     BIT(30)
-#define RAM_DBE_STS_A_WRB_CTXT_RAM_MASK                    BIT(29)
-#define RAM_DBE_STS_A_PFCH_CTXT_RAM_MASK                   BIT(28)
-#define RAM_DBE_STS_A_DESC_REQ_FIFO_RAM_MASK               BIT(27)
-#define RAM_DBE_STS_A_INT_CTXT_RAM_MASK                    BIT(26)
-#define RAM_DBE_STS_A_INT_QID2VEC_RAM_MASK                 BIT(25)
-#define RAM_DBE_STS_A_WRB_COAL_DATA_RAM_MASK               BIT(24)
-#define RAM_DBE_STS_A_TUSER_FIFO_RAM_MASK                  BIT(23)
-#define RAM_DBE_STS_A_QID_FIFO_RAM_MASK                    BIT(22)
-#define RAM_DBE_STS_A_PLD_FIFO_RAM_MASK                    BIT(21)
-#define RAM_DBE_STS_A_TIMER_FIFO_RAM_MASK                  BIT(20)
-#define RAM_DBE_STS_A_PASID_CTXT_RAM_MASK                  BIT(19)
-#define RAM_DBE_STS_A_DSC_CPLD_MASK                        BIT(18)
-#define RAM_DBE_STS_A_DSC_CPLI_MASK                        BIT(17)
-#define RAM_DBE_STS_A_DSC_SW_CTXT_MASK                     BIT(16)
-#define RAM_DBE_STS_A_DSC_CRD_RCV_MASK                     BIT(15)
-#define RAM_DBE_STS_A_DSC_HW_CTXT_MASK                     BIT(14)
-#define RAM_DBE_STS_A_FUNC_MAP_MASK                        BIT(13)
-#define RAM_DBE_STS_A_C2H_WR_BRG_DAT_MASK                  BIT(12)
-#define RAM_DBE_STS_A_C2H_RD_BRG_DAT_MASK                  BIT(11)
-#define RAM_DBE_STS_A_H2C_WR_BRG_DAT_MASK                  BIT(10)
-#define RAM_DBE_STS_A_H2C_RD_BRG_DAT_MASK                  BIT(9)
-#define RAM_DBE_STS_A_RSVD_2_MASK                          GENMASK(8, 5)
-#define RAM_DBE_STS_A_MI_C2H0_DAT_MASK                     BIT(4)
-#define RAM_DBE_STS_A_RSVD_3_MASK                          GENMASK(3, 1)
-#define RAM_DBE_STS_A_MI_H2C0_DAT_MASK                     BIT(0)
-#define QDMA_S80_HARD_GLBL2_IDENTIFIER_ADDR                0x100
-#define GLBL2_IDENTIFIER_MASK                             GENMASK(31, 8)
-#define GLBL2_IDENTIFIER_VERSION_MASK                      GENMASK(7, 0)
-#define QDMA_S80_HARD_GLBL2_PF_BARLITE_INT_ADDR            0x104
-#define GLBL2_PF_BARLITE_INT_PF3_BAR_MAP_MASK              GENMASK(23, 18)
-#define GLBL2_PF_BARLITE_INT_PF2_BAR_MAP_MASK              GENMASK(17, 12)
-#define GLBL2_PF_BARLITE_INT_PF1_BAR_MAP_MASK              GENMASK(11, 6)
-#define GLBL2_PF_BARLITE_INT_PF0_BAR_MAP_MASK              GENMASK(5, 0)
-#define QDMA_S80_HARD_GLBL2_PF_VF_BARLITE_INT_ADDR         0x108
-#define GLBL2_PF_VF_BARLITE_INT_PF3_MAP_MASK               GENMASK(23, 18)
-#define GLBL2_PF_VF_BARLITE_INT_PF2_MAP_MASK               GENMASK(17, 12)
-#define GLBL2_PF_VF_BARLITE_INT_PF1_MAP_MASK               GENMASK(11, 6)
-#define GLBL2_PF_VF_BARLITE_INT_PF0_MAP_MASK               GENMASK(5, 0)
-#define QDMA_S80_HARD_GLBL2_PF_BARLITE_EXT_ADDR            0x10C
-#define GLBL2_PF_BARLITE_EXT_PF3_BAR_MAP_MASK              GENMASK(23, 18)
-#define GLBL2_PF_BARLITE_EXT_PF2_BAR_MAP_MASK              GENMASK(17, 12)
-#define GLBL2_PF_BARLITE_EXT_PF1_BAR_MAP_MASK              GENMASK(11, 6)
-#define GLBL2_PF_BARLITE_EXT_PF0_BAR_MAP_MASK              GENMASK(5, 0)
-#define QDMA_S80_HARD_GLBL2_PF_VF_BARLITE_EXT_ADDR         0x110
-#define GLBL2_PF_VF_BARLITE_EXT_PF3_MAP_MASK               GENMASK(23, 18)
-#define GLBL2_PF_VF_BARLITE_EXT_PF2_MAP_MASK               GENMASK(17, 12)
-#define GLBL2_PF_VF_BARLITE_EXT_PF1_MAP_MASK               GENMASK(11, 6)
-#define GLBL2_PF_VF_BARLITE_EXT_PF0_MAP_MASK               GENMASK(5, 0)
-#define QDMA_S80_HARD_GLBL2_CHANNEL_INST_ADDR              0x114
-#define GLBL2_CHANNEL_INST_RSVD_1_MASK                     GENMASK(31, 18)
-#define GLBL2_CHANNEL_INST_C2H_ST_MASK                     BIT(17)
-#define GLBL2_CHANNEL_INST_H2C_ST_MASK                     BIT(16)
-#define GLBL2_CHANNEL_INST_RSVD_2_MASK                     GENMASK(15, 9)
-#define GLBL2_CHANNEL_INST_C2H_ENG_MASK                    BIT(8)
-#define GLBL2_CHANNEL_INST_RSVD_3_MASK                     GENMASK(7, 1)
-#define GLBL2_CHANNEL_INST_H2C_ENG_MASK                    BIT(0)
-#define QDMA_S80_HARD_GLBL2_CHANNEL_MDMA_ADDR              0x118
-#define GLBL2_CHANNEL_MDMA_RSVD_1_MASK                     GENMASK(31, 18)
-#define GLBL2_CHANNEL_MDMA_C2H_ST_MASK                     BIT(17)
-#define GLBL2_CHANNEL_MDMA_H2C_ST_MASK                     BIT(16)
-#define GLBL2_CHANNEL_MDMA_RSVD_2_MASK                     GENMASK(15, 9)
-#define GLBL2_CHANNEL_MDMA_C2H_ENG_MASK                    BIT(8)
-#define GLBL2_CHANNEL_MDMA_RSVD_3_MASK                     GENMASK(7, 1)
-#define GLBL2_CHANNEL_MDMA_H2C_ENG_MASK                    BIT(0)
-#define QDMA_S80_HARD_GLBL2_CHANNEL_STRM_ADDR              0x11C
-#define GLBL2_CHANNEL_STRM_RSVD_1_MASK                     GENMASK(31, 18)
-#define GLBL2_CHANNEL_STRM_C2H_ST_MASK                     BIT(17)
-#define GLBL2_CHANNEL_STRM_H2C_ST_MASK                     BIT(16)
-#define GLBL2_CHANNEL_STRM_RSVD_2_MASK                     GENMASK(15, 9)
-#define GLBL2_CHANNEL_STRM_C2H_ENG_MASK                    BIT(8)
-#define GLBL2_CHANNEL_STRM_RSVD_3_MASK                     GENMASK(7, 1)
-#define GLBL2_CHANNEL_STRM_H2C_ENG_MASK                    BIT(0)
-#define QDMA_S80_HARD_GLBL2_CHANNEL_CAP_ADDR               0x120
-#define GLBL2_CHANNEL_CAP_RSVD_1_MASK                      GENMASK(31, 12)
-#define GLBL2_CHANNEL_CAP_MULTIQ_MAX_MASK                  GENMASK(11, 0)
-#define QDMA_S80_HARD_GLBL2_CHANNEL_PASID_CAP_ADDR         0x128
-#define GLBL2_CHANNEL_PASID_CAP_RSVD_1_MASK                GENMASK(31, 16)
-#define GLBL2_CHANNEL_PASID_CAP_BRIDGEOFFSET_MASK          GENMASK(15, 4)
-#define GLBL2_CHANNEL_PASID_CAP_RSVD_2_MASK                GENMASK(3, 2)
-#define GLBL2_CHANNEL_PASID_CAP_BRIDGEEN_MASK              BIT(1)
-#define GLBL2_CHANNEL_PASID_CAP_DMAEN_MASK                 BIT(0)
-#define QDMA_S80_HARD_GLBL2_CHANNEL_FUNC_RET_ADDR          0x12C
-#define GLBL2_CHANNEL_FUNC_RET_RSVD_1_MASK                 GENMASK(31, 8)
-#define GLBL2_CHANNEL_FUNC_RET_FUNC_MASK                   GENMASK(7, 0)
-#define QDMA_S80_HARD_GLBL2_SYSTEM_ID_ADDR                 0x130
-#define GLBL2_SYSTEM_ID_RSVD_1_MASK                        GENMASK(31, 16)
-#define GLBL2_SYSTEM_ID_MASK                              GENMASK(15, 0)
-#define QDMA_S80_HARD_GLBL2_MISC_CAP_ADDR                  0x134
-#define GLBL2_MISC_CAP_RSVD_1_MASK                         GENMASK(31, 0)
-#define QDMA_S80_HARD_GLBL2_DBG_PCIE_RQ0_ADDR              0x1B8
-#define GLBL2_PCIE_RQ0_NPH_AVL_MASK                    GENMASK(31, 20)
-#define GLBL2_PCIE_RQ0_RCB_AVL_MASK                    GENMASK(19, 10)
-#define GLBL2_PCIE_RQ0_SLV_RD_CREDS_MASK               GENMASK(9, 4)
-#define GLBL2_PCIE_RQ0_TAG_EP_MASK                     GENMASK(3, 2)
-#define GLBL2_PCIE_RQ0_TAG_FL_MASK                     GENMASK(1, 0)
-#define QDMA_S80_HARD_GLBL2_DBG_PCIE_RQ1_ADDR              0x1BC
-#define GLBL2_PCIE_RQ1_RSVD_1_MASK                     GENMASK(31, 17)
-#define GLBL2_PCIE_RQ1_WTLP_REQ_MASK                   BIT(16)
-#define GLBL2_PCIE_RQ1_WTLP_HEADER_FIFO_FL_MASK        BIT(15)
-#define GLBL2_PCIE_RQ1_WTLP_HEADER_FIFO_EP_MASK        BIT(14)
-#define GLBL2_PCIE_RQ1_RQ_FIFO_EP_MASK                 BIT(13)
-#define GLBL2_PCIE_RQ1_RQ_FIFO_FL_MASK                 BIT(12)
-#define GLBL2_PCIE_RQ1_TLPSM_MASK                      GENMASK(11, 9)
-#define GLBL2_PCIE_RQ1_TLPSM512_MASK                   GENMASK(8, 6)
-#define GLBL2_PCIE_RQ1_RREQ0_RCB_OK_MASK               BIT(5)
-#define GLBL2_PCIE_RQ1_RREQ0_SLV_MASK                  BIT(4)
-#define GLBL2_PCIE_RQ1_RREQ0_VLD_MASK                  BIT(3)
-#define GLBL2_PCIE_RQ1_RREQ1_RCB_OK_MASK               BIT(2)
-#define GLBL2_PCIE_RQ1_RREQ1_SLV_MASK                  BIT(1)
-#define GLBL2_PCIE_RQ1_RREQ1_VLD_MASK                  BIT(0)
-#define QDMA_S80_HARD_GLBL2_DBG_AXIMM_WR0_ADDR             0x1C0
-#define GLBL2_AXIMM_WR0_RSVD_1_MASK                    GENMASK(31, 27)
-#define GLBL2_AXIMM_WR0_WR_REQ_MASK                    BIT(26)
-#define GLBL2_AXIMM_WR0_WR_CHN_MASK                    GENMASK(25, 23)
-#define GLBL2_AXIMM_WR0_WTLP_DATA_FIFO_EP_MASK         BIT(22)
-#define GLBL2_AXIMM_WR0_WPL_FIFO_EP_MASK               BIT(21)
-#define GLBL2_AXIMM_WR0_BRSP_CLAIM_CHN_MASK            GENMASK(20, 18)
-#define GLBL2_AXIMM_WR0_WRREQ_CNT_MASK                 GENMASK(17, 12)
-#define GLBL2_AXIMM_WR0_BID_MASK                       GENMASK(11, 9)
-#define GLBL2_AXIMM_WR0_BVALID_MASK                    BIT(8)
-#define GLBL2_AXIMM_WR0_BREADY_MASK                    BIT(7)
-#define GLBL2_AXIMM_WR0_WVALID_MASK                    BIT(6)
-#define GLBL2_AXIMM_WR0_WREADY_MASK                    BIT(5)
-#define GLBL2_AXIMM_WR0_AWID_MASK                      GENMASK(4, 2)
-#define GLBL2_AXIMM_WR0_AWVALID_MASK                   BIT(1)
-#define GLBL2_AXIMM_WR0_AWREADY_MASK                   BIT(0)
-#define QDMA_S80_HARD_GLBL2_DBG_AXIMM_WR1_ADDR             0x1C4
-#define GLBL2_AXIMM_WR1_RSVD_1_MASK                    GENMASK(31, 30)
-#define GLBL2_AXIMM_WR1_BRSP_CNT4_MASK                 GENMASK(29, 24)
-#define GLBL2_AXIMM_WR1_BRSP_CNT3_MASK                 GENMASK(23, 18)
-#define GLBL2_AXIMM_WR1_BRSP_CNT2_MASK                 GENMASK(17, 12)
-#define GLBL2_AXIMM_WR1_BRSP_CNT1_MASK                 GENMASK(11, 6)
-#define GLBL2_AXIMM_WR1_BRSP_CNT0_MASK                 GENMASK(5, 0)
-#define QDMA_S80_HARD_GLBL2_DBG_AXIMM_RD0_ADDR             0x1C8
-#define GLBL2_AXIMM_RD0_RSVD_1_MASK                    GENMASK(31, 23)
-#define GLBL2_AXIMM_RD0_PND_CNT_MASK                   GENMASK(22, 17)
-#define GLBL2_AXIMM_RD0_RD_CHNL_MASK                   GENMASK(16, 14)
-#define GLBL2_AXIMM_RD0_RD_REQ_MASK                    BIT(13)
-#define GLBL2_AXIMM_RD0_RRSP_CLAIM_CHNL_MASK           GENMASK(12, 10)
-#define GLBL2_AXIMM_RD0_RID_MASK                       GENMASK(9, 7)
-#define GLBL2_AXIMM_RD0_RVALID_MASK                    BIT(6)
-#define GLBL2_AXIMM_RD0_RREADY_MASK                    BIT(5)
-#define GLBL2_AXIMM_RD0_ARID_MASK                      GENMASK(4, 2)
-#define GLBL2_AXIMM_RD0_ARVALID_MASK                   BIT(1)
-#define GLBL2_AXIMM_RD0_ARREADY_MASK                   BIT(0)
-#define QDMA_S80_HARD_GLBL2_DBG_AXIMM_RD1_ADDR             0x1CC
-#define GLBL2_AXIMM_RD1_RSVD_1_MASK                    GENMASK(31, 30)
-#define GLBL2_AXIMM_RD1_RRSP_CNT4_MASK                 GENMASK(29, 24)
-#define GLBL2_AXIMM_RD1_RRSP_CNT3_MASK                 GENMASK(23, 18)
-#define GLBL2_AXIMM_RD1_RRSP_CNT2_MASK                 GENMASK(17, 12)
-#define GLBL2_AXIMM_RD1_RRSP_CNT1_MASK                 GENMASK(11, 6)
-#define GLBL2_AXIMM_RD1_RRSP_CNT0_MASK                 GENMASK(5, 0)
-#define QDMA_S80_HARD_GLBL_RNG_SZ_1_ADDR                   0x204
-#define GLBL_RNG_SZ_1_RSVD_1_MASK                          GENMASK(31, 16)
-#define GLBL_RNG_SZ_1_RING_SIZE_MASK                       GENMASK(15, 0)
-#define QDMA_S80_HARD_GLBL_RNG_SZ_2_ADDR                   0x208
-#define GLBL_RNG_SZ_2_RSVD_1_MASK                          GENMASK(31, 16)
-#define GLBL_RNG_SZ_2_RING_SIZE_MASK                       GENMASK(15, 0)
-#define QDMA_S80_HARD_GLBL_RNG_SZ_3_ADDR                   0x20C
-#define GLBL_RNG_SZ_3_RSVD_1_MASK                          GENMASK(31, 16)
-#define GLBL_RNG_SZ_3_RING_SIZE_MASK                       GENMASK(15, 0)
-#define QDMA_S80_HARD_GLBL_RNG_SZ_4_ADDR                   0x210
-#define GLBL_RNG_SZ_4_RSVD_1_MASK                          GENMASK(31, 16)
-#define GLBL_RNG_SZ_4_RING_SIZE_MASK                       GENMASK(15, 0)
-#define QDMA_S80_HARD_GLBL_RNG_SZ_5_ADDR                   0x214
-#define GLBL_RNG_SZ_5_RSVD_1_MASK                          GENMASK(31, 16)
-#define GLBL_RNG_SZ_5_RING_SIZE_MASK                       GENMASK(15, 0)
-#define QDMA_S80_HARD_GLBL_RNG_SZ_6_ADDR                   0x218
-#define GLBL_RNG_SZ_6_RSVD_1_MASK                          GENMASK(31, 16)
-#define GLBL_RNG_SZ_6_RING_SIZE_MASK                       GENMASK(15, 0)
-#define QDMA_S80_HARD_GLBL_RNG_SZ_7_ADDR                   0x21C
-#define GLBL_RNG_SZ_7_RSVD_1_MASK                          GENMASK(31, 16)
-#define GLBL_RNG_SZ_7_RING_SIZE_MASK                       GENMASK(15, 0)
-#define QDMA_S80_HARD_GLBL_RNG_SZ_8_ADDR                   0x220
-#define GLBL_RNG_SZ_8_RSVD_1_MASK                          GENMASK(31, 16)
-#define GLBL_RNG_SZ_8_RING_SIZE_MASK                       GENMASK(15, 0)
-#define QDMA_S80_HARD_GLBL_RNG_SZ_9_ADDR                   0x224
-#define GLBL_RNG_SZ_9_RSVD_1_MASK                          GENMASK(31, 16)
-#define GLBL_RNG_SZ_9_RING_SIZE_MASK                       GENMASK(15, 0)
-#define QDMA_S80_HARD_GLBL_RNG_SZ_A_ADDR                   0x228
-#define GLBL_RNG_SZ_A_RSVD_1_MASK                          GENMASK(31, 16)
-#define GLBL_RNG_SZ_A_RING_SIZE_MASK                       GENMASK(15, 0)
-#define QDMA_S80_HARD_GLBL_RNG_SZ_B_ADDR                   0x22C
-#define GLBL_RNG_SZ_B_RSVD_1_MASK                          GENMASK(31, 16)
-#define GLBL_RNG_SZ_B_RING_SIZE_MASK                       GENMASK(15, 0)
-#define QDMA_S80_HARD_GLBL_RNG_SZ_C_ADDR                   0x230
-#define GLBL_RNG_SZ_C_RSVD_1_MASK                          GENMASK(31, 16)
-#define GLBL_RNG_SZ_C_RING_SIZE_MASK                       GENMASK(15, 0)
-#define QDMA_S80_HARD_GLBL_RNG_SZ_D_ADDR                   0x234
-#define GLBL_RNG_SZ_D_RSVD_1_MASK                          GENMASK(31, 16)
-#define GLBL_RNG_SZ_D_RING_SIZE_MASK                       GENMASK(15, 0)
-#define QDMA_S80_HARD_GLBL_RNG_SZ_E_ADDR                   0x238
-#define GLBL_RNG_SZ_E_RSVD_1_MASK                          GENMASK(31, 16)
-#define GLBL_RNG_SZ_E_RING_SIZE_MASK                       GENMASK(15, 0)
-#define QDMA_S80_HARD_GLBL_RNG_SZ_F_ADDR                   0x23C
-#define GLBL_RNG_SZ_F_RSVD_1_MASK                          GENMASK(31, 16)
-#define GLBL_RNG_SZ_F_RING_SIZE_MASK                       GENMASK(15, 0)
-#define QDMA_S80_HARD_GLBL_RNG_SZ_10_ADDR                  0x240
-#define GLBL_RNG_SZ_10_RSVD_1_MASK                         GENMASK(31, 16)
-#define GLBL_RNG_SZ_10_RING_SIZE_MASK                      GENMASK(15, 0)
-#define QDMA_S80_HARD_GLBL_ERR_STAT_ADDR                   0x248
-#define GLBL_ERR_STAT_RSVD_1_MASK                          GENMASK(31, 12)
-#define GLBL_ERR_STAT_ERR_H2C_ST_MASK                      BIT(11)
-#define GLBL_ERR_STAT_ERR_BDG_MASK                         BIT(10)
-#define GLBL_ERR_STAT_IND_CTXT_CMD_ERR_MASK                BIT(9)
-#define GLBL_ERR_STAT_ERR_C2H_ST_MASK                      BIT(8)
-#define GLBL_ERR_STAT_ERR_C2H_MM_1_MASK                    BIT(7)
-#define GLBL_ERR_STAT_ERR_C2H_MM_0_MASK                    BIT(6)
-#define GLBL_ERR_STAT_ERR_H2C_MM_1_MASK                    BIT(5)
-#define GLBL_ERR_STAT_ERR_H2C_MM_0_MASK                    BIT(4)
-#define GLBL_ERR_STAT_ERR_TRQ_MASK                         BIT(3)
-#define GLBL_ERR_STAT_ERR_DSC_MASK                         BIT(2)
-#define GLBL_ERR_STAT_ERR_RAM_DBE_MASK                     BIT(1)
-#define GLBL_ERR_STAT_ERR_RAM_SBE_MASK                     BIT(0)
-#define QDMA_S80_HARD_GLBL_ERR_MASK_ADDR                   0x24C
-#define GLBL_ERR_RSVD_1_MASK                          GENMASK(31, 9)
-#define GLBL_ERR_MASK                            GENMASK(8, 0)
-#define QDMA_S80_HARD_GLBL_DSC_CFG_ADDR                    0x250
-#define GLBL_DSC_CFG_RSVD_1_MASK                           GENMASK(31, 10)
-#define GLBL_DSC_CFG_UNC_OVR_COR_MASK                      BIT(9)
-#define GLBL_DSC_CFG_CTXT_FER_DIS_MASK                     BIT(8)
-#define GLBL_DSC_CFG_RSVD_2_MASK                           GENMASK(7, 6)
-#define GLBL_DSC_CFG_MAXFETCH_MASK                         GENMASK(5, 3)
-#define GLBL_DSC_CFG_WB_ACC_INT_MASK                       GENMASK(2, 0)
-#define QDMA_S80_HARD_GLBL_DSC_ERR_STS_ADDR                0x254
-#define GLBL_DSC_ERR_STS_RSVD_1_MASK                       GENMASK(31, 25)
-#define GLBL_DSC_ERR_STS_SBE_MASK                          BIT(24)
-#define GLBL_DSC_ERR_STS_DBE_MASK                          BIT(23)
-#define GLBL_DSC_ERR_STS_RQ_CANCEL_MASK                    BIT(22)
-#define GLBL_DSC_ERR_STS_DSC_MASK                          BIT(21)
-#define GLBL_DSC_ERR_STS_DMA_MASK                          BIT(20)
-#define GLBL_DSC_ERR_STS_FLR_CANCEL_MASK                   BIT(19)
-#define GLBL_DSC_ERR_STS_RSVD_2_MASK                       GENMASK(18, 17)
-#define GLBL_DSC_ERR_STS_DAT_POISON_MASK                   BIT(16)
-#define GLBL_DSC_ERR_STS_TIMEOUT_MASK                      BIT(9)
-#define GLBL_DSC_ERR_STS_FLR_MASK                          BIT(5)
-#define GLBL_DSC_ERR_STS_TAG_MASK                          BIT(4)
-#define GLBL_DSC_ERR_STS_ADDR_MASK                         BIT(3)
-#define GLBL_DSC_ERR_STS_PARAM_MASK                        BIT(2)
-#define GLBL_DSC_ERR_STS_UR_CA_MASK                        BIT(1)
-#define GLBL_DSC_ERR_STS_POISON_MASK                       BIT(0)
-#define QDMA_S80_HARD_GLBL_DSC_ERR_MSK_ADDR                0x258
-#define GLBL_DSC_ERR_MSK_MASK                         GENMASK(8, 0)
-#define QDMA_S80_HARD_GLBL_DSC_ERR_LOG0_ADDR               0x25C
-#define GLBL_DSC_ERR_LOG0_VALID_MASK                       BIT(31)
-#define GLBL_DSC_ERR_LOG0_RSVD_1_MASK                      GENMASK(30, 29)
-#define GLBL_DSC_ERR_LOG0_QID_MASK                         GENMASK(28, 17)
-#define GLBL_DSC_ERR_LOG0_SEL_MASK                         BIT(16)
-#define GLBL_DSC_ERR_LOG0_CIDX_MASK                        GENMASK(15, 0)
-#define QDMA_S80_HARD_GLBL_DSC_ERR_LOG1_ADDR               0x260
-#define GLBL_DSC_ERR_LOG1_RSVD_1_MASK                      GENMASK(31, 9)
-#define GLBL_DSC_ERR_LOG1_SUB_TYPE_MASK                    GENMASK(8, 5)
-#define GLBL_DSC_ERR_LOG1_ERR_TYPE_MASK                    GENMASK(4, 0)
-#define QDMA_S80_HARD_GLBL_TRQ_ERR_STS_ADDR                0x264
-#define GLBL_TRQ_ERR_STS_RSVD_1_MASK                       GENMASK(31, 4)
-#define GLBL_TRQ_ERR_STS_TCP_TIMEOUT_MASK                  BIT(3)
-#define GLBL_TRQ_ERR_STS_VF_ACCESS_ERR_MASK                BIT(2)
-#define GLBL_TRQ_ERR_STS_QID_RANGE_MASK                    BIT(1)
-#define GLBL_TRQ_ERR_STS_UNMAPPED_MASK                     BIT(0)
-#define QDMA_S80_HARD_GLBL_TRQ_ERR_MSK_ADDR                0x268
-#define GLBL_TRQ_ERR_MSK_MASK                         GENMASK(31, 0)
-#define QDMA_S80_HARD_GLBL_TRQ_ERR_LOG_ADDR                0x26C
-#define GLBL_TRQ_ERR_LOG_RSVD_1_MASK                       GENMASK(31, 28)
-#define GLBL_TRQ_ERR_LOG_TARGET_MASK                       GENMASK(27, 24)
-#define GLBL_TRQ_ERR_LOG_FUNC_MASK                         GENMASK(23, 16)
-#define GLBL_TRQ_ERR_LOG_ADDRESS_MASK                      GENMASK(15, 0)
-#define QDMA_S80_HARD_GLBL_DSC_DBG_DAT0_ADDR               0x270
-#define GLBL_DSC_DAT0_RSVD_1_MASK                      GENMASK(31, 30)
-#define GLBL_DSC_DAT0_CTXT_ARB_DIR_MASK                BIT(29)
-#define GLBL_DSC_DAT0_CTXT_ARB_QID_MASK                GENMASK(28, 17)
-#define GLBL_DSC_DAT0_CTXT_ARB_REQ_MASK                GENMASK(16, 12)
-#define GLBL_DSC_DAT0_IRQ_FIFO_FL_MASK                 BIT(11)
-#define GLBL_DSC_DAT0_TMSTALL_MASK                     BIT(10)
-#define GLBL_DSC_DAT0_RRQ_STALL_MASK                   GENMASK(9, 8)
-#define GLBL_DSC_DAT0_RCP_FIFO_SPC_STALL_MASK          GENMASK(7, 6)
-#define GLBL_DSC_DAT0_RRQ_FIFO_SPC_STALL_MASK          GENMASK(5, 4)
-#define GLBL_DSC_DAT0_FAB_MRKR_RSP_STALL_MASK          GENMASK(3, 2)
-#define GLBL_DSC_DAT0_DSC_OUT_STALL_MASK               GENMASK(1, 0)
-#define QDMA_S80_HARD_GLBL_DSC_DBG_DAT1_ADDR               0x274
-#define GLBL_DSC_DAT1_RSVD_1_MASK                      GENMASK(31, 28)
-#define GLBL_DSC_DAT1_EVT_SPC_C2H_MASK                 GENMASK(27, 22)
-#define GLBL_DSC_DAT1_EVT_SP_H2C_MASK                  GENMASK(21, 16)
-#define GLBL_DSC_DAT1_DSC_SPC_C2H_MASK                 GENMASK(15, 8)
-#define GLBL_DSC_DAT1_DSC_SPC_H2C_MASK                 GENMASK(7, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_0_ADDR                  0x400
-#define TRQ_SEL_FMAP_0_RSVD_1_MASK                         GENMASK(31, 23)
-#define TRQ_SEL_FMAP_0_QID_MAX_MASK                        GENMASK(22, 11)
-#define TRQ_SEL_FMAP_0_QID_BASE_MASK                       GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_1_ADDR                  0x404
-#define TRQ_SEL_FMAP_1_RSVD_1_MASK                         GENMASK(31, 23)
-#define TRQ_SEL_FMAP_1_QID_MAX_MASK                        GENMASK(22, 11)
-#define TRQ_SEL_FMAP_1_QID_BASE_MASK                       GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_2_ADDR                  0x408
-#define TRQ_SEL_FMAP_2_RSVD_1_MASK                         GENMASK(31, 23)
-#define TRQ_SEL_FMAP_2_QID_MAX_MASK                        GENMASK(22, 11)
-#define TRQ_SEL_FMAP_2_QID_BASE_MASK                       GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_3_ADDR                  0x40C
-#define TRQ_SEL_FMAP_3_RSVD_1_MASK                         GENMASK(31, 23)
-#define TRQ_SEL_FMAP_3_QID_MAX_MASK                        GENMASK(22, 11)
-#define TRQ_SEL_FMAP_3_QID_BASE_MASK                       GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_4_ADDR                  0x410
-#define TRQ_SEL_FMAP_4_RSVD_1_MASK                         GENMASK(31, 23)
-#define TRQ_SEL_FMAP_4_QID_MAX_MASK                        GENMASK(22, 11)
-#define TRQ_SEL_FMAP_4_QID_BASE_MASK                       GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_5_ADDR                  0x414
-#define TRQ_SEL_FMAP_5_RSVD_1_MASK                         GENMASK(31, 23)
-#define TRQ_SEL_FMAP_5_QID_MAX_MASK                        GENMASK(22, 11)
-#define TRQ_SEL_FMAP_5_QID_BASE_MASK                       GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_6_ADDR                  0x418
-#define TRQ_SEL_FMAP_6_RSVD_1_MASK                         GENMASK(31, 23)
-#define TRQ_SEL_FMAP_6_QID_MAX_MASK                        GENMASK(22, 11)
-#define TRQ_SEL_FMAP_6_QID_BASE_MASK                       GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_7_ADDR                  0x41C
-#define TRQ_SEL_FMAP_7_RSVD_1_MASK                         GENMASK(31, 23)
-#define TRQ_SEL_FMAP_7_QID_MAX_MASK                        GENMASK(22, 11)
-#define TRQ_SEL_FMAP_7_QID_BASE_MASK                       GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_8_ADDR                  0x420
-#define TRQ_SEL_FMAP_8_RSVD_1_MASK                         GENMASK(31, 23)
-#define TRQ_SEL_FMAP_8_QID_MAX_MASK                        GENMASK(22, 11)
-#define TRQ_SEL_FMAP_8_QID_BASE_MASK                       GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_9_ADDR                  0x424
-#define TRQ_SEL_FMAP_9_RSVD_1_MASK                         GENMASK(31, 23)
-#define TRQ_SEL_FMAP_9_QID_MAX_MASK                        GENMASK(22, 11)
-#define TRQ_SEL_FMAP_9_QID_BASE_MASK                       GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_A_ADDR                  0x428
-#define TRQ_SEL_FMAP_A_RSVD_1_MASK                         GENMASK(31, 23)
-#define TRQ_SEL_FMAP_A_QID_MAX_MASK                        GENMASK(22, 11)
-#define TRQ_SEL_FMAP_A_QID_BASE_MASK                       GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_B_ADDR                  0x42C
-#define TRQ_SEL_FMAP_B_RSVD_1_MASK                         GENMASK(31, 23)
-#define TRQ_SEL_FMAP_B_QID_MAX_MASK                        GENMASK(22, 11)
-#define TRQ_SEL_FMAP_B_QID_BASE_MASK                       GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_D_ADDR                  0x430
-#define TRQ_SEL_FMAP_D_RSVD_1_MASK                         GENMASK(31, 23)
-#define TRQ_SEL_FMAP_D_QID_MAX_MASK                        GENMASK(22, 11)
-#define TRQ_SEL_FMAP_D_QID_BASE_MASK                       GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_E_ADDR                  0x434
-#define TRQ_SEL_FMAP_E_RSVD_1_MASK                         GENMASK(31, 23)
-#define TRQ_SEL_FMAP_E_QID_MAX_MASK                        GENMASK(22, 11)
-#define TRQ_SEL_FMAP_E_QID_BASE_MASK                       GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_F_ADDR                  0x438
-#define TRQ_SEL_FMAP_F_RSVD_1_MASK                         GENMASK(31, 23)
-#define TRQ_SEL_FMAP_F_QID_MAX_MASK                        GENMASK(22, 11)
-#define TRQ_SEL_FMAP_F_QID_BASE_MASK                       GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_10_ADDR                 0x43C
-#define TRQ_SEL_FMAP_10_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_10_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_10_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_11_ADDR                 0x440
-#define TRQ_SEL_FMAP_11_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_11_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_11_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_12_ADDR                 0x444
-#define TRQ_SEL_FMAP_12_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_12_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_12_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_13_ADDR                 0x448
-#define TRQ_SEL_FMAP_13_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_13_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_13_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_14_ADDR                 0x44C
-#define TRQ_SEL_FMAP_14_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_14_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_14_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_15_ADDR                 0x450
-#define TRQ_SEL_FMAP_15_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_15_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_15_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_16_ADDR                 0x454
-#define TRQ_SEL_FMAP_16_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_16_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_16_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_17_ADDR                 0x458
-#define TRQ_SEL_FMAP_17_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_17_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_17_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_18_ADDR                 0x45C
-#define TRQ_SEL_FMAP_18_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_18_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_18_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_19_ADDR                 0x460
-#define TRQ_SEL_FMAP_19_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_19_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_19_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_1A_ADDR                 0x464
-#define TRQ_SEL_FMAP_1A_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_1A_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_1A_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_1B_ADDR                 0x468
-#define TRQ_SEL_FMAP_1B_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_1B_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_1B_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_1C_ADDR                 0x46C
-#define TRQ_SEL_FMAP_1C_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_1C_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_1C_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_1D_ADDR                 0x470
-#define TRQ_SEL_FMAP_1D_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_1D_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_1D_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_1E_ADDR                 0x474
-#define TRQ_SEL_FMAP_1E_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_1E_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_1E_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_1F_ADDR                 0x478
-#define TRQ_SEL_FMAP_1F_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_1F_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_1F_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_20_ADDR                 0x47C
-#define TRQ_SEL_FMAP_20_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_20_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_20_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_21_ADDR                 0x480
-#define TRQ_SEL_FMAP_21_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_21_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_21_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_22_ADDR                 0x484
-#define TRQ_SEL_FMAP_22_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_22_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_22_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_23_ADDR                 0x488
-#define TRQ_SEL_FMAP_23_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_23_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_23_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_24_ADDR                 0x48C
-#define TRQ_SEL_FMAP_24_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_24_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_24_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_25_ADDR                 0x490
-#define TRQ_SEL_FMAP_25_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_25_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_25_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_26_ADDR                 0x494
-#define TRQ_SEL_FMAP_26_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_26_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_26_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_27_ADDR                 0x498
-#define TRQ_SEL_FMAP_27_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_27_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_27_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_28_ADDR                 0x49C
-#define TRQ_SEL_FMAP_28_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_28_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_28_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_29_ADDR                 0x4A0
-#define TRQ_SEL_FMAP_29_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_29_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_29_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_2A_ADDR                 0x4A4
-#define TRQ_SEL_FMAP_2A_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_2A_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_2A_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_2B_ADDR                 0x4A8
-#define TRQ_SEL_FMAP_2B_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_2B_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_2B_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_2C_ADDR                 0x4AC
-#define TRQ_SEL_FMAP_2C_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_2C_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_2C_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_2D_ADDR                 0x4B0
-#define TRQ_SEL_FMAP_2D_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_2D_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_2D_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_2E_ADDR                 0x4B4
-#define TRQ_SEL_FMAP_2E_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_2E_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_2E_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_2F_ADDR                 0x4B8
-#define TRQ_SEL_FMAP_2F_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_2F_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_2F_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_30_ADDR                 0x4BC
-#define TRQ_SEL_FMAP_30_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_30_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_30_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_31_ADDR                 0x4D0
-#define TRQ_SEL_FMAP_31_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_31_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_31_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_32_ADDR                 0x4D4
-#define TRQ_SEL_FMAP_32_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_32_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_32_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_33_ADDR                 0x4D8
-#define TRQ_SEL_FMAP_33_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_33_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_33_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_34_ADDR                 0x4DC
-#define TRQ_SEL_FMAP_34_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_34_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_34_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_35_ADDR                 0x4E0
-#define TRQ_SEL_FMAP_35_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_35_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_35_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_36_ADDR                 0x4E4
-#define TRQ_SEL_FMAP_36_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_36_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_36_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_37_ADDR                 0x4E8
-#define TRQ_SEL_FMAP_37_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_37_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_37_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_38_ADDR                 0x4EC
-#define TRQ_SEL_FMAP_38_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_38_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_38_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_39_ADDR                 0x4F0
-#define TRQ_SEL_FMAP_39_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_39_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_39_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_3A_ADDR                 0x4F4
-#define TRQ_SEL_FMAP_3A_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_3A_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_3A_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_3B_ADDR                 0x4F8
-#define TRQ_SEL_FMAP_3B_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_3B_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_3B_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_3C_ADDR                 0x4FC
-#define TRQ_SEL_FMAP_3C_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_3C_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_3C_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_3D_ADDR                 0x500
-#define TRQ_SEL_FMAP_3D_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_3D_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_3D_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_3E_ADDR                 0x504
-#define TRQ_SEL_FMAP_3E_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_3E_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_3E_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_3F_ADDR                 0x508
-#define TRQ_SEL_FMAP_3F_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_3F_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_3F_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_40_ADDR                 0x50C
-#define TRQ_SEL_FMAP_40_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_40_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_40_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_41_ADDR                 0x510
-#define TRQ_SEL_FMAP_41_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_41_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_41_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_42_ADDR                 0x514
-#define TRQ_SEL_FMAP_42_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_42_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_42_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_43_ADDR                 0x518
-#define TRQ_SEL_FMAP_43_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_43_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_43_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_44_ADDR                 0x51C
-#define TRQ_SEL_FMAP_44_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_44_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_44_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_45_ADDR                 0x520
-#define TRQ_SEL_FMAP_45_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_45_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_45_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_46_ADDR                 0x524
-#define TRQ_SEL_FMAP_46_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_46_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_46_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_47_ADDR                 0x528
-#define TRQ_SEL_FMAP_47_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_47_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_47_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_48_ADDR                 0x52C
-#define TRQ_SEL_FMAP_48_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_48_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_48_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_49_ADDR                 0x530
-#define TRQ_SEL_FMAP_49_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_49_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_49_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_4A_ADDR                 0x534
-#define TRQ_SEL_FMAP_4A_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_4A_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_4A_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_4B_ADDR                 0x538
-#define TRQ_SEL_FMAP_4B_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_4B_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_4B_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_4C_ADDR                 0x53C
-#define TRQ_SEL_FMAP_4C_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_4C_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_4C_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_4D_ADDR                 0x540
-#define TRQ_SEL_FMAP_4D_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_4D_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_4D_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_4E_ADDR                 0x544
-#define TRQ_SEL_FMAP_4E_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_4E_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_4E_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_4F_ADDR                 0x548
-#define TRQ_SEL_FMAP_4F_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_4F_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_4F_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_50_ADDR                 0x54C
-#define TRQ_SEL_FMAP_50_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_50_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_50_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_51_ADDR                 0x550
-#define TRQ_SEL_FMAP_51_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_51_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_51_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_52_ADDR                 0x554
-#define TRQ_SEL_FMAP_52_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_52_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_52_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_53_ADDR                 0x558
-#define TRQ_SEL_FMAP_53_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_53_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_53_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_54_ADDR                 0x55C
-#define TRQ_SEL_FMAP_54_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_54_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_54_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_55_ADDR                 0x560
-#define TRQ_SEL_FMAP_55_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_55_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_55_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_56_ADDR                 0x564
-#define TRQ_SEL_FMAP_56_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_56_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_56_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_57_ADDR                 0x568
-#define TRQ_SEL_FMAP_57_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_57_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_57_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_58_ADDR                 0x56C
-#define TRQ_SEL_FMAP_58_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_58_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_58_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_59_ADDR                 0x570
-#define TRQ_SEL_FMAP_59_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_59_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_59_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_5A_ADDR                 0x574
-#define TRQ_SEL_FMAP_5A_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_5A_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_5A_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_5B_ADDR                 0x578
-#define TRQ_SEL_FMAP_5B_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_5B_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_5B_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_5C_ADDR                 0x57C
-#define TRQ_SEL_FMAP_5C_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_5C_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_5C_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_5D_ADDR                 0x580
-#define TRQ_SEL_FMAP_5D_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_5D_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_5D_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_5E_ADDR                 0x584
-#define TRQ_SEL_FMAP_5E_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_5E_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_5E_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_5F_ADDR                 0x588
-#define TRQ_SEL_FMAP_5F_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_5F_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_5F_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_60_ADDR                 0x58C
-#define TRQ_SEL_FMAP_60_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_60_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_60_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_61_ADDR                 0x590
-#define TRQ_SEL_FMAP_61_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_61_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_61_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_62_ADDR                 0x594
-#define TRQ_SEL_FMAP_62_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_62_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_62_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_63_ADDR                 0x598
-#define TRQ_SEL_FMAP_63_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_63_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_63_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_64_ADDR                 0x59C
-#define TRQ_SEL_FMAP_64_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_64_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_64_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_65_ADDR                 0x5A0
-#define TRQ_SEL_FMAP_65_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_65_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_65_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_66_ADDR                 0x5A4
-#define TRQ_SEL_FMAP_66_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_66_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_66_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_67_ADDR                 0x5A8
-#define TRQ_SEL_FMAP_67_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_67_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_67_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_68_ADDR                 0x5AC
-#define TRQ_SEL_FMAP_68_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_68_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_68_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_69_ADDR                 0x5B0
-#define TRQ_SEL_FMAP_69_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_69_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_69_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_6A_ADDR                 0x5B4
-#define TRQ_SEL_FMAP_6A_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_6A_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_6A_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_6B_ADDR                 0x5B8
-#define TRQ_SEL_FMAP_6B_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_6B_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_6B_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_6C_ADDR                 0x5BC
-#define TRQ_SEL_FMAP_6C_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_6C_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_6C_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_6D_ADDR                 0x5C0
-#define TRQ_SEL_FMAP_6D_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_6D_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_6D_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_6E_ADDR                 0x5C4
-#define TRQ_SEL_FMAP_6E_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_6E_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_6E_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_6F_ADDR                 0x5C8
-#define TRQ_SEL_FMAP_6F_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_6F_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_6F_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_70_ADDR                 0x5CC
-#define TRQ_SEL_FMAP_70_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_70_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_70_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_71_ADDR                 0x5D0
-#define TRQ_SEL_FMAP_71_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_71_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_71_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_72_ADDR                 0x5D4
-#define TRQ_SEL_FMAP_72_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_72_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_72_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_73_ADDR                 0x5D8
-#define TRQ_SEL_FMAP_73_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_73_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_73_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_74_ADDR                 0x5DC
-#define TRQ_SEL_FMAP_74_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_74_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_74_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_75_ADDR                 0x5E0
-#define TRQ_SEL_FMAP_75_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_75_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_75_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_76_ADDR                 0x5E4
-#define TRQ_SEL_FMAP_76_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_76_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_76_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_77_ADDR                 0x5E8
-#define TRQ_SEL_FMAP_77_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_77_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_77_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_78_ADDR                 0x5EC
-#define TRQ_SEL_FMAP_78_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_78_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_78_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_79_ADDR                 0x5F0
-#define TRQ_SEL_FMAP_79_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_79_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_79_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_7A_ADDR                 0x5F4
-#define TRQ_SEL_FMAP_7A_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_7A_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_7A_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_7B_ADDR                 0x5F8
-#define TRQ_SEL_FMAP_7B_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_7B_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_7B_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_7C_ADDR                 0x5FC
-#define TRQ_SEL_FMAP_7C_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_7C_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_7C_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_7D_ADDR                 0x600
-#define TRQ_SEL_FMAP_7D_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_7D_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_7D_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_7E_ADDR                 0x604
-#define TRQ_SEL_FMAP_7E_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_7E_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_7E_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_7F_ADDR                 0x608
-#define TRQ_SEL_FMAP_7F_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_7F_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_7F_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_80_ADDR                 0x60C
-#define TRQ_SEL_FMAP_80_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_80_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_80_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_81_ADDR                 0x610
-#define TRQ_SEL_FMAP_81_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_81_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_81_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_82_ADDR                 0x614
-#define TRQ_SEL_FMAP_82_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_82_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_82_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_83_ADDR                 0x618
-#define TRQ_SEL_FMAP_83_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_83_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_83_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_84_ADDR                 0x61C
-#define TRQ_SEL_FMAP_84_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_84_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_84_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_85_ADDR                 0x620
-#define TRQ_SEL_FMAP_85_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_85_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_85_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_86_ADDR                 0x624
-#define TRQ_SEL_FMAP_86_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_86_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_86_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_87_ADDR                 0x628
-#define TRQ_SEL_FMAP_87_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_87_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_87_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_88_ADDR                 0x62C
-#define TRQ_SEL_FMAP_88_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_88_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_88_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_89_ADDR                 0x630
-#define TRQ_SEL_FMAP_89_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_89_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_89_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_8A_ADDR                 0x634
-#define TRQ_SEL_FMAP_8A_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_8A_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_8A_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_8B_ADDR                 0x638
-#define TRQ_SEL_FMAP_8B_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_8B_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_8B_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_8C_ADDR                 0x63C
-#define TRQ_SEL_FMAP_8C_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_8C_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_8C_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_8D_ADDR                 0x640
-#define TRQ_SEL_FMAP_8D_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_8D_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_8D_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_8E_ADDR                 0x644
-#define TRQ_SEL_FMAP_8E_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_8E_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_8E_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_8F_ADDR                 0x648
-#define TRQ_SEL_FMAP_8F_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_8F_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_8F_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_90_ADDR                 0x64C
-#define TRQ_SEL_FMAP_90_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_90_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_90_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_91_ADDR                 0x650
-#define TRQ_SEL_FMAP_91_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_91_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_91_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_92_ADDR                 0x654
-#define TRQ_SEL_FMAP_92_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_92_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_92_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_93_ADDR                 0x658
-#define TRQ_SEL_FMAP_93_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_93_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_93_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_94_ADDR                 0x65C
-#define TRQ_SEL_FMAP_94_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_94_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_94_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_95_ADDR                 0x660
-#define TRQ_SEL_FMAP_95_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_95_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_95_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_96_ADDR                 0x664
-#define TRQ_SEL_FMAP_96_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_96_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_96_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_97_ADDR                 0x668
-#define TRQ_SEL_FMAP_97_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_97_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_97_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_98_ADDR                 0x66C
-#define TRQ_SEL_FMAP_98_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_98_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_98_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_99_ADDR                 0x670
-#define TRQ_SEL_FMAP_99_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_99_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_99_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_9A_ADDR                 0x674
-#define TRQ_SEL_FMAP_9A_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_9A_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_9A_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_9B_ADDR                 0x678
-#define TRQ_SEL_FMAP_9B_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_9B_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_9B_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_9C_ADDR                 0x67C
-#define TRQ_SEL_FMAP_9C_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_9C_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_9C_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_9D_ADDR                 0x680
-#define TRQ_SEL_FMAP_9D_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_9D_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_9D_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_9E_ADDR                 0x684
-#define TRQ_SEL_FMAP_9E_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_9E_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_9E_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_9F_ADDR                 0x688
-#define TRQ_SEL_FMAP_9F_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_9F_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_9F_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_A0_ADDR                 0x68C
-#define TRQ_SEL_FMAP_A0_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_A0_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_A0_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_A1_ADDR                 0x690
-#define TRQ_SEL_FMAP_A1_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_A1_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_A1_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_A2_ADDR                 0x694
-#define TRQ_SEL_FMAP_A2_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_A2_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_A2_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_A3_ADDR                 0x698
-#define TRQ_SEL_FMAP_A3_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_A3_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_A3_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_A4_ADDR                 0x69C
-#define TRQ_SEL_FMAP_A4_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_A4_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_A4_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_A5_ADDR                 0x6A0
-#define TRQ_SEL_FMAP_A5_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_A5_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_A5_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_A6_ADDR                 0x6A4
-#define TRQ_SEL_FMAP_A6_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_A6_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_A6_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_A7_ADDR                 0x6A8
-#define TRQ_SEL_FMAP_A7_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_A7_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_A7_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_A8_ADDR                 0x6AC
-#define TRQ_SEL_FMAP_A8_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_A8_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_A8_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_A9_ADDR                 0x6B0
-#define TRQ_SEL_FMAP_A9_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_A9_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_A9_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_AA_ADDR                 0x6B4
-#define TRQ_SEL_FMAP_AA_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_AA_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_AA_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_AB_ADDR                 0x6B8
-#define TRQ_SEL_FMAP_AB_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_AB_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_AB_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_AC_ADDR                 0x6BC
-#define TRQ_SEL_FMAP_AC_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_AC_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_AC_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_AD_ADDR                 0x6D0
-#define TRQ_SEL_FMAP_AD_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_AD_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_AD_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_AE_ADDR                 0x6D4
-#define TRQ_SEL_FMAP_AE_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_AE_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_AE_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_AF_ADDR                 0x6D8
-#define TRQ_SEL_FMAP_AF_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_AF_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_AF_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_B0_ADDR                 0x6DC
-#define TRQ_SEL_FMAP_B0_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_B0_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_B0_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_B1_ADDR                 0x6E0
-#define TRQ_SEL_FMAP_B1_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_B1_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_B1_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_B2_ADDR                 0x6E4
-#define TRQ_SEL_FMAP_B2_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_B2_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_B2_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_B3_ADDR                 0x6E8
-#define TRQ_SEL_FMAP_B3_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_B3_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_B3_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_B4_ADDR                 0x6EC
-#define TRQ_SEL_FMAP_B4_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_B4_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_B4_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_B5_ADDR                 0x6F0
-#define TRQ_SEL_FMAP_B5_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_B5_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_B5_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_B6_ADDR                 0x6F4
-#define TRQ_SEL_FMAP_B6_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_B6_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_B6_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_B7_ADDR                 0x6F8
-#define TRQ_SEL_FMAP_B7_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_B7_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_B7_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_B8_ADDR                 0x6FC
-#define TRQ_SEL_FMAP_B8_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_B8_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_B8_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_B9_ADDR                 0x700
-#define TRQ_SEL_FMAP_B9_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_B9_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_B9_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_BA_ADDR                 0x704
-#define TRQ_SEL_FMAP_BA_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_BA_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_BA_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_BB_ADDR                 0x708
-#define TRQ_SEL_FMAP_BB_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_BB_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_BB_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_BC_ADDR                 0x70C
-#define TRQ_SEL_FMAP_BC_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_BC_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_BC_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_BD_ADDR                 0x710
-#define TRQ_SEL_FMAP_BD_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_BD_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_BD_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_BE_ADDR                 0x714
-#define TRQ_SEL_FMAP_BE_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_BE_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_BE_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_BF_ADDR                 0x718
-#define TRQ_SEL_FMAP_BF_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_BF_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_BF_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_C0_ADDR                 0x71C
-#define TRQ_SEL_FMAP_C0_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_C0_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_C0_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_C1_ADDR                 0x720
-#define TRQ_SEL_FMAP_C1_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_C1_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_C1_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_C2_ADDR                 0x734
-#define TRQ_SEL_FMAP_C2_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_C2_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_C2_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_C3_ADDR                 0x748
-#define TRQ_SEL_FMAP_C3_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_C3_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_C3_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_C4_ADDR                 0x74C
-#define TRQ_SEL_FMAP_C4_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_C4_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_C4_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_C5_ADDR                 0x750
-#define TRQ_SEL_FMAP_C5_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_C5_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_C5_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_C6_ADDR                 0x754
-#define TRQ_SEL_FMAP_C6_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_C6_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_C6_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_C7_ADDR                 0x758
-#define TRQ_SEL_FMAP_C7_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_C7_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_C7_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_C8_ADDR                 0x75C
-#define TRQ_SEL_FMAP_C8_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_C8_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_C8_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_C9_ADDR                 0x760
-#define TRQ_SEL_FMAP_C9_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_C9_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_C9_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_CA_ADDR                 0x764
-#define TRQ_SEL_FMAP_CA_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_CA_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_CA_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_CB_ADDR                 0x768
-#define TRQ_SEL_FMAP_CB_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_CB_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_CB_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_CC_ADDR                 0x76C
-#define TRQ_SEL_FMAP_CC_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_CC_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_CC_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_CD_ADDR                 0x770
-#define TRQ_SEL_FMAP_CD_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_CD_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_CD_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_CE_ADDR                 0x774
-#define TRQ_SEL_FMAP_CE_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_CE_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_CE_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_CF_ADDR                 0x778
-#define TRQ_SEL_FMAP_CF_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_CF_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_CF_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_D0_ADDR                 0x77C
-#define TRQ_SEL_FMAP_D0_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_D0_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_D0_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_D1_ADDR                 0x780
-#define TRQ_SEL_FMAP_D1_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_D1_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_D1_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_D2_ADDR                 0x784
-#define TRQ_SEL_FMAP_D2_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_D2_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_D2_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_D3_ADDR                 0x788
-#define TRQ_SEL_FMAP_D3_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_D3_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_D3_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_D4_ADDR                 0x78C
-#define TRQ_SEL_FMAP_D4_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_D4_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_D4_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_D5_ADDR                 0x790
-#define TRQ_SEL_FMAP_D5_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_D5_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_D5_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_D6_ADDR                 0x794
-#define TRQ_SEL_FMAP_D6_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_D6_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_D6_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_D7_ADDR                 0x798
-#define TRQ_SEL_FMAP_D7_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_D7_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_D7_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_D8_ADDR                 0x79C
-#define TRQ_SEL_FMAP_D8_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_D8_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_D8_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_D9_ADDR                 0x7A0
-#define TRQ_SEL_FMAP_D9_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_D9_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_D9_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_DA_ADDR                 0x7A4
-#define TRQ_SEL_FMAP_DA_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_DA_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_DA_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_DB_ADDR                 0x7A8
-#define TRQ_SEL_FMAP_DB_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_DB_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_DB_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_DC_ADDR                 0x7AC
-#define TRQ_SEL_FMAP_DC_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_DC_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_DC_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_DD_ADDR                 0x7B0
-#define TRQ_SEL_FMAP_DD_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_DD_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_DD_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_DE_ADDR                 0x7B4
-#define TRQ_SEL_FMAP_DE_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_DE_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_DE_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_DF_ADDR                 0x7B8
-#define TRQ_SEL_FMAP_DF_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_DF_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_DF_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_E0_ADDR                 0x7BC
-#define TRQ_SEL_FMAP_E0_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_E0_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_E0_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_E1_ADDR                 0x7C0
-#define TRQ_SEL_FMAP_E1_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_E1_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_E1_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_E2_ADDR                 0x7C4
-#define TRQ_SEL_FMAP_E2_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_E2_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_E2_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_E3_ADDR                 0x7C8
-#define TRQ_SEL_FMAP_E3_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_E3_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_E3_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_E4_ADDR                 0x7CC
-#define TRQ_SEL_FMAP_E4_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_E4_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_E4_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_E5_ADDR                 0x7D0
-#define TRQ_SEL_FMAP_E5_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_E5_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_E5_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_E6_ADDR                 0x7D4
-#define TRQ_SEL_FMAP_E6_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_E6_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_E6_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_E7_ADDR                 0x7D8
-#define TRQ_SEL_FMAP_E7_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_E7_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_E7_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_E8_ADDR                 0x7DC
-#define TRQ_SEL_FMAP_E8_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_E8_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_E8_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_E9_ADDR                 0x7E0
-#define TRQ_SEL_FMAP_E9_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_E9_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_E9_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_EA_ADDR                 0x7E4
-#define TRQ_SEL_FMAP_EA_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_EA_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_EA_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_EB_ADDR                 0x7E8
-#define TRQ_SEL_FMAP_EB_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_EB_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_EB_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_EC_ADDR                 0x7EC
-#define TRQ_SEL_FMAP_EC_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_EC_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_EC_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_ED_ADDR                 0x7F0
-#define TRQ_SEL_FMAP_ED_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_ED_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_ED_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_EE_ADDR                 0x7F4
-#define TRQ_SEL_FMAP_EE_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_EE_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_EE_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_EF_ADDR                 0x7F8
-#define TRQ_SEL_FMAP_EF_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_EF_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_EF_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_TRQ_SEL_FMAP_F0_ADDR                 0x7FC
-#define TRQ_SEL_FMAP_F0_RSVD_1_MASK                        GENMASK(31, 23)
-#define TRQ_SEL_FMAP_F0_QID_MAX_MASK                       GENMASK(22, 11)
-#define TRQ_SEL_FMAP_F0_QID_BASE_MASK                      GENMASK(10, 0)
-#define QDMA_S80_HARD_IND_CTXT_DATA_3_ADDR                 0x804
-#define IND_CTXT_DATA_3_DATA_MASK                          GENMASK(31, 0)
-#define QDMA_S80_HARD_IND_CTXT_DATA_2_ADDR                 0x808
-#define IND_CTXT_DATA_2_DATA_MASK                          GENMASK(31, 0)
-#define QDMA_S80_HARD_IND_CTXT_DATA_1_ADDR                 0x80C
-#define IND_CTXT_DATA_1_DATA_MASK                          GENMASK(31, 0)
-#define QDMA_S80_HARD_IND_CTXT_DATA_0_ADDR                 0x810
-#define IND_CTXT_DATA_0_DATA_MASK                          GENMASK(31, 0)
-#define QDMA_S80_HARD_IND_CTXT3_ADDR                       0x814
-#define IND_CTXT3_MASK                                GENMASK(31, 0)
-#define QDMA_S80_HARD_IND_CTXT2_ADDR                       0x818
-#define IND_CTXT2_MASK                                GENMASK(31, 0)
-#define QDMA_S80_HARD_IND_CTXT1_ADDR                       0x81C
-#define IND_CTXT1_MASK                                GENMASK(31, 0)
-#define QDMA_S80_HARD_IND_CTXT0_ADDR                       0x820
-#define IND_CTXT0_MASK                                GENMASK(31, 0)
-#define QDMA_S80_HARD_IND_CTXT_CMD_ADDR                    0x824
-#define IND_CTXT_CMD_RSVD_1_MASK                           GENMASK(31, 18)
-#define IND_CTXT_CMD_QID_MASK                              GENMASK(17, 7)
-#define IND_CTXT_CMD_OP_MASK                               GENMASK(6, 5)
-#define IND_CTXT_CMD_SET_MASK                              GENMASK(4, 1)
-#define IND_CTXT_CMD_BUSY_MASK                             BIT(0)
-#define QDMA_S80_HARD_C2H_TIMER_CNT_1_ADDR                 0xA00
-#define C2H_TIMER_CNT_1_RSVD_1_MASK                        GENMASK(31, 8)
-#define C2H_TIMER_CNT_1_MASK                              GENMASK(7, 0)
-#define QDMA_S80_HARD_C2H_TIMER_CNT_2_ADDR                 0xA04
-#define C2H_TIMER_CNT_2_RSVD_1_MASK                        GENMASK(31, 8)
-#define C2H_TIMER_CNT_2_MASK                              GENMASK(7, 0)
-#define QDMA_S80_HARD_C2H_TIMER_CNT_3_ADDR                 0xA08
-#define C2H_TIMER_CNT_3_RSVD_1_MASK                        GENMASK(31, 8)
-#define C2H_TIMER_CNT_3_MASK                              GENMASK(7, 0)
-#define QDMA_S80_HARD_C2H_TIMER_CNT_4_ADDR                 0xA0C
-#define C2H_TIMER_CNT_4_RSVD_1_MASK                        GENMASK(31, 8)
-#define C2H_TIMER_CNT_4_MASK                              GENMASK(7, 0)
-#define QDMA_S80_HARD_C2H_TIMER_CNT_5_ADDR                 0xA10
-#define C2H_TIMER_CNT_5_RSVD_1_MASK                        GENMASK(31, 8)
-#define C2H_TIMER_CNT_5_MASK                              GENMASK(7, 0)
-#define QDMA_S80_HARD_C2H_TIMER_CNT_6_ADDR                 0xA14
-#define C2H_TIMER_CNT_6_RSVD_1_MASK                        GENMASK(31, 8)
-#define C2H_TIMER_CNT_6_MASK                              GENMASK(7, 0)
-#define QDMA_S80_HARD_C2H_TIMER_CNT_7_ADDR                 0xA18
-#define C2H_TIMER_CNT_7_RSVD_1_MASK                        GENMASK(31, 8)
-#define C2H_TIMER_CNT_7_MASK                              GENMASK(7, 0)
-#define QDMA_S80_HARD_C2H_TIMER_CNT_8_ADDR                 0xA1C
-#define C2H_TIMER_CNT_8_RSVD_1_MASK                        GENMASK(31, 8)
-#define C2H_TIMER_CNT_8_MASK                              GENMASK(7, 0)
-#define QDMA_S80_HARD_C2H_TIMER_CNT_9_ADDR                 0xA20
-#define C2H_TIMER_CNT_9_RSVD_1_MASK                        GENMASK(31, 8)
-#define C2H_TIMER_CNT_9_MASK                              GENMASK(7, 0)
-#define QDMA_S80_HARD_C2H_TIMER_CNT_A_ADDR                 0xA24
-#define C2H_TIMER_CNT_A_RSVD_1_MASK                        GENMASK(31, 8)
-#define C2H_TIMER_CNT_A_MASK                              GENMASK(7, 0)
-#define QDMA_S80_HARD_C2H_TIMER_CNT_B_ADDR                 0xA28
-#define C2H_TIMER_CNT_B_RSVD_1_MASK                        GENMASK(31, 8)
-#define C2H_TIMER_CNT_B_MASK                              GENMASK(7, 0)
-#define QDMA_S80_HARD_C2H_TIMER_CNT_C_ADDR                 0xA2C
-#define C2H_TIMER_CNT_C_RSVD_1_MASK                        GENMASK(31, 8)
-#define C2H_TIMER_CNT_C_MASK                              GENMASK(7, 0)
-#define QDMA_S80_HARD_C2H_TIMER_CNT_D_ADDR                 0xA30
-#define C2H_TIMER_CNT_D_RSVD_1_MASK                        GENMASK(31, 8)
-#define C2H_TIMER_CNT_D_MASK                              GENMASK(7, 0)
-#define QDMA_S80_HARD_C2H_TIMER_CNT_E_ADDR                 0xA34
-#define C2H_TIMER_CNT_E_RSVD_1_MASK                        GENMASK(31, 8)
-#define C2H_TIMER_CNT_E_MASK                              GENMASK(7, 0)
-#define QDMA_S80_HARD_C2H_TIMER_CNT_F_ADDR                 0xA38
-#define C2H_TIMER_CNT_F_RSVD_1_MASK                        GENMASK(31, 8)
-#define C2H_TIMER_CNT_F_MASK                              GENMASK(7, 0)
-#define QDMA_S80_HARD_C2H_TIMER_CNT_10_ADDR                0xA3C
-#define C2H_TIMER_CNT_10_RSVD_1_MASK                       GENMASK(31, 8)
-#define C2H_TIMER_CNT_10_MASK                             GENMASK(7, 0)
-#define QDMA_S80_HARD_C2H_CNT_TH_1_ADDR                    0xA40
-#define C2H_CNT_TH_1_RSVD_1_MASK                           GENMASK(31, 8)
-#define C2H_CNT_TH_1_THESHOLD_CNT_MASK                     GENMASK(7, 0)
-#define QDMA_S80_HARD_C2H_CNT_TH_2_ADDR                    0xA44
-#define C2H_CNT_TH_2_RSVD_1_MASK                           GENMASK(31, 8)
-#define C2H_CNT_TH_2_THESHOLD_CNT_MASK                     GENMASK(7, 0)
-#define QDMA_S80_HARD_C2H_CNT_TH_3_ADDR                    0xA48
-#define C2H_CNT_TH_3_RSVD_1_MASK                           GENMASK(31, 8)
-#define C2H_CNT_TH_3_THESHOLD_CNT_MASK                     GENMASK(7, 0)
-#define QDMA_S80_HARD_C2H_CNT_TH_4_ADDR                    0xA4C
-#define C2H_CNT_TH_4_RSVD_1_MASK                           GENMASK(31, 8)
-#define C2H_CNT_TH_4_THESHOLD_CNT_MASK                     GENMASK(7, 0)
-#define QDMA_S80_HARD_C2H_CNT_TH_5_ADDR                    0xA50
-#define C2H_CNT_TH_5_RSVD_1_MASK                           GENMASK(31, 8)
-#define C2H_CNT_TH_5_THESHOLD_CNT_MASK                     GENMASK(7, 0)
-#define QDMA_S80_HARD_C2H_CNT_TH_6_ADDR                    0xA54
-#define C2H_CNT_TH_6_RSVD_1_MASK                           GENMASK(31, 8)
-#define C2H_CNT_TH_6_THESHOLD_CNT_MASK                     GENMASK(7, 0)
-#define QDMA_S80_HARD_C2H_CNT_TH_7_ADDR                    0xA58
-#define C2H_CNT_TH_7_RSVD_1_MASK                           GENMASK(31, 8)
-#define C2H_CNT_TH_7_THESHOLD_CNT_MASK                     GENMASK(7, 0)
-#define QDMA_S80_HARD_C2H_CNT_TH_8_ADDR                    0xA5C
-#define C2H_CNT_TH_8_RSVD_1_MASK                           GENMASK(31, 8)
-#define C2H_CNT_TH_8_THESHOLD_CNT_MASK                     GENMASK(7, 0)
-#define QDMA_S80_HARD_C2H_CNT_TH_9_ADDR                    0xA60
-#define C2H_CNT_TH_9_RSVD_1_MASK                           GENMASK(31, 8)
-#define C2H_CNT_TH_9_THESHOLD_CNT_MASK                     GENMASK(7, 0)
-#define QDMA_S80_HARD_C2H_CNT_TH_A_ADDR                    0xA64
-#define C2H_CNT_TH_A_RSVD_1_MASK                           GENMASK(31, 8)
-#define C2H_CNT_TH_A_THESHOLD_CNT_MASK                     GENMASK(7, 0)
-#define QDMA_S80_HARD_C2H_CNT_TH_B_ADDR                    0xA68
-#define C2H_CNT_TH_B_RSVD_1_MASK                           GENMASK(31, 8)
-#define C2H_CNT_TH_B_THESHOLD_CNT_MASK                     GENMASK(7, 0)
-#define QDMA_S80_HARD_C2H_CNT_TH_C_ADDR                    0xA6C
-#define C2H_CNT_TH_C_RSVD_1_MASK                           GENMASK(31, 8)
-#define C2H_CNT_TH_C_THESHOLD_CNT_MASK                     GENMASK(7, 0)
-#define QDMA_S80_HARD_C2H_CNT_TH_D_ADDR                    0xA70
-#define C2H_CNT_TH_D_RSVD_1_MASK                           GENMASK(31, 8)
-#define C2H_CNT_TH_D_THESHOLD_CNT_MASK                     GENMASK(7, 0)
-#define QDMA_S80_HARD_C2H_CNT_TH_E_ADDR                    0xA74
-#define C2H_CNT_TH_E_RSVD_1_MASK                           GENMASK(31, 8)
-#define C2H_CNT_TH_E_THESHOLD_CNT_MASK                     GENMASK(7, 0)
-#define QDMA_S80_HARD_C2H_CNT_TH_F_ADDR                    0xA78
-#define C2H_CNT_TH_F_RSVD_1_MASK                           GENMASK(31, 8)
-#define C2H_CNT_TH_F_THESHOLD_CNT_MASK                     GENMASK(7, 0)
-#define QDMA_S80_HARD_C2H_CNT_TH_10_ADDR                   0xA7C
-#define C2H_CNT_TH_10_RSVD_1_MASK                          GENMASK(31, 8)
-#define C2H_CNT_TH_10_THESHOLD_CNT_MASK                    GENMASK(7, 0)
-#define QDMA_S80_HARD_C2H_QID2VEC_MAP_QID_ADDR             0xA80
-#define C2H_QID2VEC_MAP_QID_RSVD_1_MASK                    GENMASK(31, 11)
-#define C2H_QID2VEC_MAP_QID_QID_MASK                       GENMASK(10, 0)
-#define QDMA_S80_HARD_C2H_QID2VEC_MAP_ADDR                 0xA84
-#define C2H_QID2VEC_MAP_RSVD_1_MASK                        GENMASK(31, 19)
-#define C2H_QID2VEC_MAP_H2C_EN_COAL_MASK                   BIT(18)
-#define C2H_QID2VEC_MAP_H2C_VECTOR_MASK                    GENMASK(17, 9)
-#define C2H_QID2VEC_MAP_C2H_EN_COAL_MASK                   BIT(8)
-#define C2H_QID2VEC_MAP_C2H_VECTOR_MASK                    GENMASK(7, 0)
-#define QDMA_S80_HARD_C2H_STAT_S_AXIS_C2H_ACCEPTED_ADDR    0xA88
-#define C2H_STAT_S_AXIS_C2H_ACCEPTED_MASK                 GENMASK(31, 0)
-#define QDMA_S80_HARD_C2H_STAT_S_AXIS_WRB_ACCEPTED_ADDR    0xA8C
-#define C2H_STAT_S_AXIS_WRB_ACCEPTED_MASK                 GENMASK(31, 0)
-#define QDMA_S80_HARD_C2H_STAT_DESC_RSP_PKT_ACCEPTED_ADDR  0xA90
-#define C2H_STAT_DESC_RSP_PKT_ACCEPTED_D_MASK              GENMASK(31, 0)
-#define QDMA_S80_HARD_C2H_STAT_AXIS_PKG_CMP_ADDR           0xA94
-#define C2H_STAT_AXIS_PKG_CMP_MASK                        GENMASK(31, 0)
-#define QDMA_S80_HARD_C2H_STAT_DESC_RSP_ACCEPTED_ADDR      0xA98
-#define C2H_STAT_DESC_RSP_ACCEPTED_D_MASK                  GENMASK(31, 0)
-#define QDMA_S80_HARD_C2H_STAT_DESC_RSP_CMP_ADDR           0xA9C
-#define C2H_STAT_DESC_RSP_CMP_D_MASK                       GENMASK(31, 0)
-#define QDMA_S80_HARD_C2H_STAT_WRQ_OUT_ADDR                0xAA0
-#define C2H_STAT_WRQ_OUT_MASK                             GENMASK(31, 0)
-#define QDMA_S80_HARD_C2H_STAT_WPL_REN_ACCEPTED_ADDR       0xAA4
-#define C2H_STAT_WPL_REN_ACCEPTED_MASK                    GENMASK(31, 0)
-#define QDMA_S80_HARD_C2H_STAT_TOTAL_WRQ_LEN_ADDR          0xAA8
-#define C2H_STAT_TOTAL_WRQ_LEN_MASK                       GENMASK(31, 0)
-#define QDMA_S80_HARD_C2H_STAT_TOTAL_WPL_LEN_ADDR          0xAAC
-#define C2H_STAT_TOTAL_WPL_LEN_MASK                       GENMASK(31, 0)
-#define QDMA_S80_HARD_C2H_BUF_SZ_0_ADDR                    0xAB0
-#define C2H_BUF_SZ_0_SIZE_MASK                             GENMASK(31, 0)
-#define QDMA_S80_HARD_C2H_BUF_SZ_1_ADDR                    0xAB4
-#define C2H_BUF_SZ_1_SIZE_MASK                             GENMASK(31, 0)
-#define QDMA_S80_HARD_C2H_BUF_SZ_2_ADDR                    0xAB8
-#define C2H_BUF_SZ_2_SIZE_MASK                             GENMASK(31, 0)
-#define QDMA_S80_HARD_C2H_BUF_SZ_3_ADDR                    0xABC
-#define C2H_BUF_SZ_3_SIZE_MASK                             GENMASK(31, 0)
-#define QDMA_S80_HARD_C2H_BUF_SZ_4_ADDR                    0xAC0
-#define C2H_BUF_SZ_4_SIZE_MASK                             GENMASK(31, 0)
-#define QDMA_S80_HARD_C2H_BUF_SZ_5_ADDR                    0xAC4
-#define C2H_BUF_SZ_5_SIZE_MASK                             GENMASK(31, 0)
-#define QDMA_S80_HARD_C2H_BUF_SZ_7_ADDR                    0XAC8
-#define C2H_BUF_SZ_7_SIZE_MASK                             GENMASK(31, 0)
-#define QDMA_S80_HARD_C2H_BUF_SZ_8_ADDR                    0XACC
-#define C2H_BUF_SZ_8_SIZE_MASK                             GENMASK(31, 0)
-#define QDMA_S80_HARD_C2H_BUF_SZ_9_ADDR                    0xAD0
-#define C2H_BUF_SZ_9_SIZE_MASK                             GENMASK(31, 0)
-#define QDMA_S80_HARD_C2H_BUF_SZ_10_ADDR                   0xAD4
-#define C2H_BUF_SZ_10_SIZE_MASK                            GENMASK(31, 0)
-#define QDMA_S80_HARD_C2H_BUF_SZ_11_ADDR                   0xAD8
-#define C2H_BUF_SZ_11_SIZE_MASK                            GENMASK(31, 0)
-#define QDMA_S80_HARD_C2H_BUF_SZ_12_ADDR                   0xAE0
-#define C2H_BUF_SZ_12_SIZE_MASK                            GENMASK(31, 0)
-#define QDMA_S80_HARD_C2H_BUF_SZ_13_ADDR                   0xAE4
-#define C2H_BUF_SZ_13_SIZE_MASK                            GENMASK(31, 0)
-#define QDMA_S80_HARD_C2H_BUF_SZ_14_ADDR                   0xAE8
-#define C2H_BUF_SZ_14_SIZE_MASK                            GENMASK(31, 0)
-#define QDMA_S80_HARD_C2H_BUF_SZ_15_ADDR                   0XAEC
-#define C2H_BUF_SZ_15_SIZE_MASK                            GENMASK(31, 0)
-#define QDMA_S80_HARD_C2H_ERR_STAT_ADDR                    0xAF0
-#define C2H_ERR_STAT_RSVD_1_MASK                           GENMASK(31, 16)
-#define C2H_ERR_STAT_WRB_PRTY_ERR_MASK                     BIT(15)
-#define C2H_ERR_STAT_WRB_CIDX_ERR_MASK                     BIT(14)
-#define C2H_ERR_STAT_WRB_QFULL_ERR_MASK                    BIT(13)
-#define C2H_ERR_STAT_WRB_INV_Q_ERR_MASK                    BIT(12)
-#define C2H_ERR_STAT_PORT_ID_BYP_IN_MISMATCH_MASK          BIT(11)
-#define C2H_ERR_STAT_PORT_ID_CTXT_MISMATCH_MASK            BIT(10)
-#define C2H_ERR_STAT_ERR_DESC_CNT_MASK                     BIT(9)
-#define C2H_ERR_STAT_RSVD_2_MASK                           BIT(8)
-#define C2H_ERR_STAT_MSI_INT_FAIL_MASK                     BIT(7)
-#define C2H_ERR_STAT_ENG_WPL_DATA_PAR_ERR_MASK             BIT(6)
-#define C2H_ERR_STAT_RSVD_3_MASK                           BIT(5)
-#define C2H_ERR_STAT_DESC_RSP_ERR_MASK                     BIT(4)
-#define C2H_ERR_STAT_QID_MISMATCH_MASK                     BIT(3)
-#define C2H_ERR_STAT_RSVD_4_MASK                           BIT(2)
-#define C2H_ERR_STAT_LEN_MISMATCH_MASK                     BIT(1)
-#define C2H_ERR_STAT_MTY_MISMATCH_MASK                     BIT(0)
-#define QDMA_S80_HARD_C2H_ERR_MASK_ADDR                    0xAF4
-#define C2H_ERR_EN_MASK                          GENMASK(31, 0)
-#define QDMA_S80_HARD_C2H_FATAL_ERR_STAT_ADDR              0xAF8
-#define C2H_FATAL_ERR_STAT_RSVD_1_MASK                     GENMASK(31, 19)
-#define C2H_FATAL_ERR_STAT_WPL_DATA_PAR_ERR_MASK           BIT(18)
-#define C2H_FATAL_ERR_STAT_PLD_FIFO_RAM_RDBE_MASK          BIT(17)
-#define C2H_FATAL_ERR_STAT_QID_FIFO_RAM_RDBE_MASK          BIT(16)
-#define C2H_FATAL_ERR_STAT_TUSER_FIFO_RAM_RDBE_MASK        BIT(15)
-#define C2H_FATAL_ERR_STAT_WRB_COAL_DATA_RAM_RDBE_MASK     BIT(14)
-#define C2H_FATAL_ERR_STAT_INT_QID2VEC_RAM_RDBE_MASK       BIT(13)
-#define C2H_FATAL_ERR_STAT_INT_CTXT_RAM_RDBE_MASK          BIT(12)
-#define C2H_FATAL_ERR_STAT_DESC_REQ_FIFO_RAM_RDBE_MASK     BIT(11)
-#define C2H_FATAL_ERR_STAT_PFCH_CTXT_RAM_RDBE_MASK         BIT(10)
-#define C2H_FATAL_ERR_STAT_WRB_CTXT_RAM_RDBE_MASK          BIT(9)
-#define C2H_FATAL_ERR_STAT_PFCH_LL_RAM_RDBE_MASK           BIT(8)
-#define C2H_FATAL_ERR_STAT_TIMER_FIFO_RAM_RDBE_MASK        GENMASK(7, 4)
-#define C2H_FATAL_ERR_STAT_QID_MISMATCH_MASK               BIT(3)
-#define C2H_FATAL_ERR_STAT_RSVD_2_MASK                     BIT(2)
-#define C2H_FATAL_ERR_STAT_LEN_MISMATCH_MASK               BIT(1)
-#define C2H_FATAL_ERR_STAT_MTY_MISMATCH_MASK               BIT(0)
-#define QDMA_S80_HARD_C2H_FATAL_ERR_MASK_ADDR              0xAFC
-#define C2H_FATAL_ERR_C2HEN_MASK                 GENMASK(31, 0)
-#define QDMA_S80_HARD_C2H_FATAL_ERR_ENABLE_ADDR            0xB00
-#define C2H_FATAL_ERR_ENABLE_RSVD_1_MASK                   GENMASK(31, 2)
-#define C2H_FATAL_ERR_ENABLE_WPL_PAR_INV_MASK             BIT(1)
-#define C2H_FATAL_ERR_ENABLE_WRQ_DIS_MASK                 BIT(0)
-#define QDMA_S80_HARD_GLBL_ERR_INT_ADDR                    0xB04
-#define GLBL_ERR_INT_RSVD_1_MASK                           GENMASK(31, 18)
-#define GLBL_ERR_INT_ARM_MASK                             BIT(17)
-#define GLBL_ERR_INT_EN_COAL_MASK                          BIT(16)
-#define GLBL_ERR_INT_VEC_MASK                              GENMASK(15, 8)
-#define GLBL_ERR_INT_FUNC_MASK                             GENMASK(7, 0)
-#define QDMA_S80_HARD_C2H_PFCH_CFG_ADDR                    0xB08
-#define C2H_PFCH_CFG_EVT_QCNT_TH_MASK                      GENMASK(31, 25)
-#define C2H_PFCH_CFG_QCNT_MASK                             GENMASK(24, 16)
-#define C2H_PFCH_CFG_NUM_MASK                              GENMASK(15, 8)
-#define C2H_PFCH_CFG_FL_TH_MASK                            GENMASK(7, 0)
-#define QDMA_S80_HARD_C2H_INT_TIMER_TICK_ADDR              0xB0C
-#define C2H_INT_TIMER_TICK_MASK                           GENMASK(31, 0)
-#define QDMA_S80_HARD_C2H_STAT_DESC_RSP_DROP_ACCEPTED_ADDR 0xB10
-#define C2H_STAT_DESC_RSP_DROP_ACCEPTED_D_MASK             GENMASK(31, 0)
-#define QDMA_S80_HARD_C2H_STAT_DESC_RSP_ERR_ACCEPTED_ADDR  0xB14
-#define C2H_STAT_DESC_RSP_ERR_ACCEPTED_D_MASK              GENMASK(31, 0)
-#define QDMA_S80_HARD_C2H_STAT_DESC_REQ_ADDR               0xB18
-#define C2H_STAT_DESC_REQ_MASK                            GENMASK(31, 0)
-#define QDMA_S80_HARD_C2H_STAT_DBG_DMA_ENG_0_ADDR          0xB1C
-#define C2H_STAT_DMA_ENG_0_RSVD_1_MASK                 BIT(31)
-#define C2H_STAT_DMA_ENG_0_WRB_FIFO_OUT_CNT_MASK       GENMASK(30, 28)
-#define C2H_STAT_DMA_ENG_0_QID_FIFO_OUT_CNT_MASK       GENMASK(27, 18)
-#define C2H_STAT_DMA_ENG_0_PLD_FIFO_OUT_CNT_MASK       GENMASK(17, 8)
-#define C2H_STAT_DMA_ENG_0_WRQ_FIFO_OUT_CNT_MASK       GENMASK(7, 5)
-#define C2H_STAT_DMA_ENG_0_WRB_SM_CS_MASK              BIT(4)
-#define C2H_STAT_DMA_ENG_0_MAIN_SM_CS_MASK             GENMASK(3, 0)
-#define QDMA_S80_HARD_C2H_STAT_DBG_DMA_ENG_1_ADDR          0xB20
-#define C2H_STAT_DMA_ENG_1_RSVD_1_MASK                 BIT(31)
-#define C2H_STAT_DMA_ENG_1_DESC_RSP_LAST_MASK          BIT(30)
-#define C2H_STAT_DMA_ENG_1_PLD_FIFO_IN_CNT_MASK        GENMASK(29, 20)
-#define C2H_STAT_DMA_ENG_1_PLD_FIFO_OUTPUT_CNT_MASK    GENMASK(19, 10)
-#define C2H_STAT_DMA_ENG_1_QID_FIFO_IN_CNT_MASK        GENMASK(9, 0)
-#define QDMA_S80_HARD_C2H_STAT_DBG_DMA_ENG_2_ADDR          0xB24
-#define C2H_STAT_DMA_ENG_2_RSVD_1_MASK                 GENMASK(31, 30)
-#define C2H_STAT_DMA_ENG_2_WRB_FIFO_IN_CNT_MASK        GENMASK(29, 20)
-#define C2H_STAT_DMA_ENG_2_WRB_FIFO_OUTPUT_CNT_MASK    GENMASK(19, 10)
-#define C2H_STAT_DMA_ENG_2_QID_FIFO_OUTPUT_CNT_MASK    GENMASK(9, 0)
-#define QDMA_S80_HARD_C2H_STAT_DBG_DMA_ENG_3_ADDR          0xB28
-#define C2H_STAT_DMA_ENG_3_RSVD_1_MASK                 GENMASK(31, 30)
-#define C2H_STAT_DMA_ENG_3_ADDR_4K_SPLIT_CNT_MASK      GENMASK(29, 20)
-#define C2H_STAT_DMA_ENG_3_WRQ_FIFO_IN_CNT_MASK        GENMASK(19, 10)
-#define C2H_STAT_DMA_ENG_3_WRQ_FIFO_OUTPUT_CNT_MASK    GENMASK(9, 0)
-#define QDMA_S80_HARD_C2H_DBG_PFCH_ERR_CTXT_ADDR           0xB2C
-#define C2H_PFCH_ERR_CTXT_RSVD_1_MASK                  GENMASK(31, 14)
-#define C2H_PFCH_ERR_CTXT_ERR_STAT_MASK                BIT(13)
-#define C2H_PFCH_ERR_CTXT_CMD_WR_MASK                  BIT(12)
-#define C2H_PFCH_ERR_CTXT_QID_MASK                     GENMASK(11, 1)
-#define C2H_PFCH_ERR_CTXT_DONE_MASK                    BIT(0)
-#define QDMA_S80_HARD_C2H_FIRST_ERR_QID_ADDR               0xB30
-#define C2H_FIRST_ERR_QID_RSVD_1_MASK                      GENMASK(31, 21)
-#define C2H_FIRST_ERR_QID_ERR_STAT_MASK                    GENMASK(20, 16)
-#define C2H_FIRST_ERR_QID_CMD_WR_MASK                      GENMASK(15, 12)
-#define C2H_FIRST_ERR_QID_QID_MASK                         GENMASK(11, 0)
-#define QDMA_S80_HARD_STAT_NUM_WRB_IN_ADDR                 0xB34
-#define STAT_NUM_WRB_IN_RSVD_1_MASK                        GENMASK(31, 16)
-#define STAT_NUM_WRB_IN_WRB_CNT_MASK                       GENMASK(15, 0)
-#define QDMA_S80_HARD_STAT_NUM_WRB_OUT_ADDR                0xB38
-#define STAT_NUM_WRB_OUT_RSVD_1_MASK                       GENMASK(31, 16)
-#define STAT_NUM_WRB_OUT_WRB_CNT_MASK                      GENMASK(15, 0)
-#define QDMA_S80_HARD_STAT_NUM_WRB_DRP_ADDR                0xB3C
-#define STAT_NUM_WRB_DRP_RSVD_1_MASK                       GENMASK(31, 16)
-#define STAT_NUM_WRB_DRP_WRB_CNT_MASK                      GENMASK(15, 0)
-#define QDMA_S80_HARD_STAT_NUM_STAT_DESC_OUT_ADDR          0xB40
-#define STAT_NUM_STAT_DESC_OUT_RSVD_1_MASK                 GENMASK(31, 16)
-#define STAT_NUM_STAT_DESC_OUT_CNT_MASK                    GENMASK(15, 0)
-#define QDMA_S80_HARD_STAT_NUM_DSC_CRDT_SENT_ADDR          0xB44
-#define STAT_NUM_DSC_CRDT_SENT_RSVD_1_MASK                 GENMASK(31, 16)
-#define STAT_NUM_DSC_CRDT_SENT_CNT_MASK                    GENMASK(15, 0)
-#define QDMA_S80_HARD_STAT_NUM_FCH_DSC_RCVD_ADDR           0xB48
-#define STAT_NUM_FCH_DSC_RCVD_RSVD_1_MASK                  GENMASK(31, 16)
-#define STAT_NUM_FCH_DSC_RCVD_DSC_CNT_MASK                 GENMASK(15, 0)
-#define QDMA_S80_HARD_STAT_NUM_BYP_DSC_RCVD_ADDR           0xB4C
-#define STAT_NUM_BYP_DSC_RCVD_RSVD_1_MASK                  GENMASK(31, 11)
-#define STAT_NUM_BYP_DSC_RCVD_DSC_CNT_MASK                 GENMASK(10, 0)
-#define QDMA_S80_HARD_C2H_WRB_COAL_CFG_ADDR                0xB50
-#define C2H_WRB_COAL_CFG_MAX_BUF_SZ_MASK                   GENMASK(31, 26)
-#define C2H_WRB_COAL_CFG_TICK_VAL_MASK                     GENMASK(25, 14)
-#define C2H_WRB_COAL_CFG_TICK_CNT_MASK                     GENMASK(13, 2)
-#define C2H_WRB_COAL_CFG_SET_GLB_FLUSH_MASK                BIT(1)
-#define C2H_WRB_COAL_CFG_DONE_GLB_FLUSH_MASK               BIT(0)
-#define QDMA_S80_HARD_C2H_INTR_H2C_REQ_ADDR                0xB54
-#define C2H_INTR_H2C_REQ_RSVD_1_MASK                       GENMASK(31, 18)
-#define C2H_INTR_H2C_REQ_CNT_MASK                          GENMASK(17, 0)
-#define QDMA_S80_HARD_C2H_INTR_C2H_MM_REQ_ADDR             0xB58
-#define C2H_INTR_C2H_MM_REQ_RSVD_1_MASK                    GENMASK(31, 18)
-#define C2H_INTR_C2H_MM_REQ_CNT_MASK                       GENMASK(17, 0)
-#define QDMA_S80_HARD_C2H_INTR_ERR_INT_REQ_ADDR            0xB5C
-#define C2H_INTR_ERR_INT_REQ_RSVD_1_MASK                   GENMASK(31, 18)
-#define C2H_INTR_ERR_INT_REQ_CNT_MASK                      GENMASK(17, 0)
-#define QDMA_S80_HARD_C2H_INTR_C2H_ST_REQ_ADDR             0xB60
-#define C2H_INTR_C2H_ST_REQ_RSVD_1_MASK                    GENMASK(31, 18)
-#define C2H_INTR_C2H_ST_REQ_CNT_MASK                       GENMASK(17, 0)
-#define QDMA_S80_HARD_C2H_INTR_H2C_ERR_C2H_MM_MSIX_ACK_ADDR 0xB64
-#define C2H_INTR_H2C_ERR_C2H_MM_MSIX_ACK_RSVD_1_MASK       GENMASK(31, 18)
-#define C2H_INTR_H2C_ERR_C2H_MM_MSIX_ACK_CNT_MASK          GENMASK(17, 0)
-#define QDMA_S80_HARD_C2H_INTR_H2C_ERR_C2H_MM_MSIX_FAIL_ADDR 0xB68
-#define C2H_INTR_H2C_ERR_C2H_MM_MSIX_FAIL_RSVD_1_MASK      GENMASK(31, 18)
-#define C2H_INTR_H2C_ERR_C2H_MM_MSIX_FAIL_CNT_MASK         GENMASK(17, 0)
-#define QDMA_S80_HARD_C2H_INTR_H2C_ERR_C2H_MM_MSIX_NO_MSIX_ADDR 0xB6C
-#define C2H_INTR_H2C_ERR_C2H_MM_MSIX_NO_MSIX_RSVD_1_MASK   GENMASK(31, 18)
-#define C2H_INTR_H2C_ERR_C2H_MM_MSIX_NO_MSIX_CNT_MASK      GENMASK(17, 0)
-#define QDMA_S80_HARD_C2H_INTR_H2C_ERR_C2H_MM_CTXT_INVAL_ADDR 0xB70
-#define C2H_INTR_H2C_ERR_C2H_MM_CTXT_INVAL_RSVD_1_MASK     GENMASK(31, 18)
-#define C2H_INTR_H2C_ERR_C2H_MM_CTXT_INVAL_CNT_MASK        GENMASK(17, 0)
-#define QDMA_S80_HARD_C2H_INTR_C2H_ST_MSIX_ACK_ADDR        0xB74
-#define C2H_INTR_C2H_ST_MSIX_ACK_RSVD_1_MASK               GENMASK(31, 18)
-#define C2H_INTR_C2H_ST_MSIX_ACK_CNT_MASK                  GENMASK(17, 0)
-#define QDMA_S80_HARD_C2H_INTR_C2H_ST_MSIX_FAIL_ADDR       0xB78
-#define C2H_INTR_C2H_ST_MSIX_FAIL_RSVD_1_MASK              GENMASK(31, 18)
-#define C2H_INTR_C2H_ST_MSIX_FAIL_CNT_MASK                 GENMASK(17, 0)
-#define QDMA_S80_HARD_C2H_INTR_C2H_ST_NO_MSIX_ADDR         0xB7C
-#define C2H_INTR_C2H_ST_NO_MSIX_RSVD_1_MASK                GENMASK(31, 18)
-#define C2H_INTR_C2H_ST_NO_MSIX_CNT_MASK                   GENMASK(17, 0)
-#define QDMA_S80_HARD_C2H_INTR_C2H_ST_CTXT_INVAL_ADDR      0xB80
-#define C2H_INTR_C2H_ST_CTXT_INVAL_RSVD_1_MASK             GENMASK(31, 18)
-#define C2H_INTR_C2H_ST_CTXT_INVAL_CNT_MASK                GENMASK(17, 0)
-#define QDMA_S80_HARD_C2H_STAT_WR_CMP_ADDR                 0xB84
-#define C2H_STAT_WR_CMP_RSVD_1_MASK                        GENMASK(31, 18)
-#define C2H_STAT_WR_CMP_CNT_MASK                           GENMASK(17, 0)
-#define QDMA_S80_HARD_C2H_STAT_DBG_DMA_ENG_4_ADDR          0xB88
-#define C2H_STAT_DMA_ENG_4_TUSER_FIFO_OUT_VLD_MASK     BIT(31)
-#define C2H_STAT_DMA_ENG_4_WRB_FIFO_IN_RDY_MASK        BIT(30)
-#define C2H_STAT_DMA_ENG_4_TUSER_FIFO_IN_CNT_MASK      GENMASK(29, 20)
-#define C2H_STAT_DMA_ENG_4_TUSER_FIFO_OUTPUT_CNT_MASK  GENMASK(19, 10)
-#define C2H_STAT_DMA_ENG_4_TUSER_FIFO_OUT_CNT_MASK     GENMASK(9, 0)
-#define QDMA_S80_HARD_C2H_STAT_DBG_DMA_ENG_5_ADDR          0xB8C
-#define C2H_STAT_DMA_ENG_5_RSVD_1_MASK                 GENMASK(31, 25)
-#define C2H_STAT_DMA_ENG_5_TUSER_COMB_OUT_VLD_MASK     BIT(24)
-#define C2H_STAT_DMA_ENG_5_TUSER_FIFO_IN_RDY_MASK      BIT(23)
-#define C2H_STAT_DMA_ENG_5_TUSER_COMB_IN_CNT_MASK      GENMASK(22, 13)
-#define C2H_STAT_DMA_ENG_5_TUSE_COMB_OUTPUT_CNT_MASK   GENMASK(12, 3)
-#define C2H_STAT_DMA_ENG_5_TUSER_COMB_CNT_MASK         GENMASK(2, 0)
-#define QDMA_S80_HARD_C2H_DBG_PFCH_QID_ADDR                0xB90
-#define C2H_PFCH_QID_RSVD_1_MASK                       GENMASK(31, 15)
-#define C2H_PFCH_QID_ERR_CTXT_MASK                     BIT(14)
-#define C2H_PFCH_QID_TARGET_MASK                       GENMASK(13, 11)
-#define C2H_PFCH_QID_QID_OR_TAG_MASK                   GENMASK(10, 0)
-#define QDMA_S80_HARD_C2H_DBG_PFCH_ADDR                    0xB94
-#define C2H_PFCH_DATA_MASK                             GENMASK(31, 0)
-#define QDMA_S80_HARD_C2H_INT_DBG_ADDR                     0xB98
-#define C2H_INT_RSVD_1_MASK                            GENMASK(31, 8)
-#define C2H_INT_INT_COAL_SM_MASK                       GENMASK(7, 4)
-#define C2H_INT_INT_SM_MASK                            GENMASK(3, 0)
-#define QDMA_S80_HARD_C2H_STAT_IMM_ACCEPTED_ADDR           0xB9C
-#define C2H_STAT_IMM_ACCEPTED_RSVD_1_MASK                  GENMASK(31, 18)
-#define C2H_STAT_IMM_ACCEPTED_CNT_MASK                     GENMASK(17, 0)
-#define QDMA_S80_HARD_C2H_STAT_MARKER_ACCEPTED_ADDR        0xBA0
-#define C2H_STAT_MARKER_ACCEPTED_RSVD_1_MASK               GENMASK(31, 18)
-#define C2H_STAT_MARKER_ACCEPTED_CNT_MASK                  GENMASK(17, 0)
-#define QDMA_S80_HARD_C2H_STAT_DISABLE_CMP_ACCEPTED_ADDR   0xBA4
-#define C2H_STAT_DISABLE_CMP_ACCEPTED_RSVD_1_MASK          GENMASK(31, 18)
-#define C2H_STAT_DISABLE_CMP_ACCEPTED_CNT_MASK             GENMASK(17, 0)
-#define QDMA_S80_HARD_C2H_PLD_FIFO_CRDT_CNT_ADDR           0xBA8
-#define C2H_PLD_FIFO_CRDT_CNT_RSVD_1_MASK                  GENMASK(31, 18)
-#define C2H_PLD_FIFO_CRDT_CNT_CNT_MASK                     GENMASK(17, 0)
-#define QDMA_S80_HARD_H2C_ERR_STAT_ADDR                    0xE00
-#define H2C_ERR_STAT_RSVD_1_MASK                           GENMASK(31, 5)
-#define H2C_ERR_STAT_SBE_MASK                              BIT(4)
-#define H2C_ERR_STAT_DBE_MASK                              BIT(3)
-#define H2C_ERR_STAT_NO_DMA_DS_MASK                        BIT(2)
-#define H2C_ERR_STAT_SDI_MRKR_REQ_MOP_ERR_MASK             BIT(1)
-#define H2C_ERR_STAT_ZERO_LEN_DS_MASK                      BIT(0)
-#define QDMA_S80_HARD_H2C_ERR_MASK_ADDR                    0xE04
-#define H2C_ERR_EN_MASK                          GENMASK(31, 0)
-#define QDMA_S80_HARD_H2C_FIRST_ERR_QID_ADDR               0xE08
-#define H2C_FIRST_ERR_QID_RSVD_1_MASK                      GENMASK(31, 20)
-#define H2C_FIRST_ERR_QID_ERR_TYPE_MASK                    GENMASK(19, 16)
-#define H2C_FIRST_ERR_QID_RSVD_2_MASK                      GENMASK(15, 12)
-#define H2C_FIRST_ERR_QID_QID_MASK                         GENMASK(11, 0)
-#define QDMA_S80_HARD_H2C_DBG_REG0_ADDR                    0xE0C
-#define H2C_REG0_NUM_DSC_RCVD_MASK                     GENMASK(31, 16)
-#define H2C_REG0_NUM_WRB_SENT_MASK                     GENMASK(15, 0)
-#define QDMA_S80_HARD_H2C_DBG_REG1_ADDR                    0xE10
-#define H2C_REG1_NUM_REQ_SENT_MASK                     GENMASK(31, 16)
-#define H2C_REG1_NUM_CMP_SENT_MASK                     GENMASK(15, 0)
-#define QDMA_S80_HARD_H2C_DBG_REG2_ADDR                    0xE14
-#define H2C_REG2_RSVD_1_MASK                           GENMASK(31, 16)
-#define H2C_REG2_NUM_ERR_DSC_RCVD_MASK                 GENMASK(15, 0)
-#define QDMA_S80_HARD_H2C_DBG_REG3_ADDR                    0xE18
-#define H2C_REG3_MASK                              BIT(31)
-#define H2C_REG3_DSCO_FIFO_EMPTY_MASK                  BIT(30)
-#define H2C_REG3_DSCO_FIFO_FULL_MASK                   BIT(29)
-#define H2C_REG3_CUR_RC_STATE_MASK                     GENMASK(28, 26)
-#define H2C_REG3_RDREQ_LINES_MASK                      GENMASK(25, 16)
-#define H2C_REG3_RDATA_LINES_AVAIL_MASK                GENMASK(15, 6)
-#define H2C_REG3_PEND_FIFO_EMPTY_MASK                  BIT(5)
-#define H2C_REG3_PEND_FIFO_FULL_MASK                   BIT(4)
-#define H2C_REG3_CUR_RQ_STATE_MASK                     GENMASK(3, 2)
-#define H2C_REG3_DSCI_FIFO_FULL_MASK                   BIT(1)
-#define H2C_REG3_DSCI_FIFO_EMPTY_MASK                  BIT(0)
-#define QDMA_S80_HARD_H2C_DBG_REG4_ADDR                    0xE1C
-#define H2C_REG4_RDREQ_ADDR_MASK                       GENMASK(31, 0)
-#define QDMA_S80_HARD_H2C_FATAL_ERR_EN_ADDR                0xE20
-#define H2C_FATAL_ERR_EN_RSVD_1_MASK                       GENMASK(31, 1)
-#define H2C_FATAL_ERR_EN_H2C_MASK                          BIT(0)
-#define QDMA_S80_HARD_C2H_CHANNEL_CTL_ADDR                 0x1004
-#define C2H_CHANNEL_CTL_RSVD_1_MASK                        GENMASK(31, 1)
-#define C2H_CHANNEL_CTL_RUN_MASK                           BIT(0)
-#define QDMA_S80_HARD_C2H_CHANNEL_CTL_1_ADDR               0x1008
-#define C2H_CHANNEL_CTL_1_RUN_MASK                         GENMASK(31, 1)
-#define C2H_CHANNEL_CTL_1_RUN_1_MASK                       BIT(0)
-#define QDMA_S80_HARD_C2H_MM_STATUS_ADDR                   0x1040
-#define C2H_MM_STATUS_RSVD_1_MASK                          GENMASK(31, 1)
-#define C2H_MM_STATUS_RUN_MASK                             BIT(0)
-#define QDMA_S80_HARD_C2H_CHANNEL_CMPL_DESC_CNT_ADDR       0x1048
-#define C2H_CHANNEL_CMPL_DESC_CNT_C2H_CO_MASK              GENMASK(31, 0)
-#define QDMA_S80_HARD_C2H_MM_ERR_CODE_ENABLE_MASK_ADDR     0x1054
-#define C2H_MM_ERR_CODE_ENABLE_RSVD_1_MASK            BIT(31)
-#define C2H_MM_ERR_CODE_ENABLE_WR_UC_RAM_MASK         BIT(30)
-#define C2H_MM_ERR_CODE_ENABLE_WR_UR_MASK             BIT(29)
-#define C2H_MM_ERR_CODE_ENABLE_WR_FLR_MASK            BIT(28)
-#define C2H_MM_ERR_CODE_ENABLE_RSVD_2_MASK            GENMASK(27, 2)
-#define C2H_MM_ERR_CODE_ENABLE_RD_SLV_ERR_MASK        BIT(1)
-#define C2H_MM_ERR_CODE_ENABLE_WR_SLV_ERR_MASK        BIT(0)
-#define QDMA_S80_HARD_C2H_MM_ERR_CODE_ADDR                 0x1058
-#define C2H_MM_ERR_CODE_RSVD_1_MASK                        GENMASK(31, 18)
-#define C2H_MM_ERR_CODE_VALID_MASK                         BIT(17)
-#define C2H_MM_ERR_CODE_RDWR_MASK                          BIT(16)
-#define C2H_MM_ERR_CODE_MASK                              GENMASK(4, 0)
-#define QDMA_S80_HARD_C2H_MM_ERR_INFO_ADDR                 0x105C
-#define C2H_MM_ERR_INFO_RSVD_1_MASK                        GENMASK(31, 29)
-#define C2H_MM_ERR_INFO_QID_MASK                           GENMASK(28, 17)
-#define C2H_MM_ERR_INFO_DIR_MASK                           BIT(16)
-#define C2H_MM_ERR_INFO_CIDX_MASK                          GENMASK(15, 0)
-#define QDMA_S80_HARD_C2H_MM_PERF_MON_CTL_ADDR             0x10C0
-#define C2H_MM_PERF_MON_CTL_RSVD_1_MASK                    GENMASK(31, 4)
-#define C2H_MM_PERF_MON_CTL_IMM_START_MASK                 BIT(3)
-#define C2H_MM_PERF_MON_CTL_RUN_START_MASK                 BIT(2)
-#define C2H_MM_PERF_MON_CTL_IMM_CLEAR_MASK                 BIT(1)
-#define C2H_MM_PERF_MON_CTL_RUN_CLEAR_MASK                 BIT(0)
-#define QDMA_S80_HARD_C2H_MM_PERF_MON_CYCLE_CNT0_ADDR      0x10C4
-#define C2H_MM_PERF_MON_CYCLE_CNT0_CYC_CNT_MASK            GENMASK(31, 0)
-#define QDMA_S80_HARD_C2H_MM_PERF_MON_CYCLE_CNT1_ADDR      0x10C8
-#define C2H_MM_PERF_MON_CYCLE_CNT1_RSVD_1_MASK             GENMASK(31, 10)
-#define C2H_MM_PERF_MON_CYCLE_CNT1_CYC_CNT_MASK            GENMASK(9, 0)
-#define QDMA_S80_HARD_C2H_MM_PERF_MON_DATA_CNT0_ADDR       0x10CC
-#define C2H_MM_PERF_MON_DATA_CNT0_DCNT_MASK                GENMASK(31, 0)
-#define QDMA_S80_HARD_C2H_MM_PERF_MON_DATA_CNT1_ADDR       0x10D0
-#define C2H_MM_PERF_MON_DATA_CNT1_RSVD_1_MASK              GENMASK(31, 10)
-#define C2H_MM_PERF_MON_DATA_CNT1_DCNT_MASK                GENMASK(9, 0)
-#define QDMA_S80_HARD_C2H_MM_DBG_ADDR                      0x10E8
-#define C2H_MM_RSVD_1_MASK                             GENMASK(31, 24)
-#define C2H_MM_RRQ_ENTRIES_MASK                        GENMASK(23, 17)
-#define C2H_MM_DAT_FIFO_SPC_MASK                       GENMASK(16, 7)
-#define C2H_MM_RD_STALL_MASK                           BIT(6)
-#define C2H_MM_RRQ_FIFO_FI_MASK                        BIT(5)
-#define C2H_MM_WR_STALL_MASK                           BIT(4)
-#define C2H_MM_WRQ_FIFO_FI_MASK                        BIT(3)
-#define C2H_MM_WBK_STALL_MASK                          BIT(2)
-#define C2H_MM_DSC_FIFO_EP_MASK                        BIT(1)
-#define C2H_MM_DSC_FIFO_FL_MASK                        BIT(0)
-#define QDMA_S80_HARD_H2C_CHANNEL_CTL_ADDR                 0x1204
-#define H2C_CHANNEL_CTL_RSVD_1_MASK                        GENMASK(31, 1)
-#define H2C_CHANNEL_CTL_RUN_MASK                           BIT(0)
-#define QDMA_S80_HARD_H2C_CHANNEL_CTL_1_ADDR               0x1208
-#define H2C_CHANNEL_CTL_1_RUN_MASK                         BIT(0)
-#define QDMA_S80_HARD_H2C_CHANNEL_CTL_2_ADDR               0x120C
-#define H2C_CHANNEL_CTL_2_RUN_MASK                         BIT(0)
-#define QDMA_S80_HARD_H2C_MM_STATUS_ADDR                   0x1240
-#define H2C_MM_STATUS_RSVD_1_MASK                          GENMASK(31, 1)
-#define H2C_MM_STATUS_RUN_MASK                             BIT(0)
-#define QDMA_S80_HARD_H2C_CHANNEL_CMPL_DESC_CNT_ADDR       0x1248
-#define H2C_CHANNEL_CMPL_DESC_CNT_H2C_CO_MASK              GENMASK(31, 0)
-#define QDMA_S80_HARD_H2C_MM_ERR_CODE_ENABLE_MASK_ADDR     0x1254
-#define H2C_MM_ERR_CODE_ENABLE_RSVD_1_MASK            GENMASK(31, 30)
-#define H2C_MM_ERR_CODE_ENABLE_WR_SLV_ERR_MASK        BIT(29)
-#define H2C_MM_ERR_CODE_ENABLE_WR_DEC_ERR_MASK        BIT(28)
-#define H2C_MM_ERR_CODE_ENABLE_RSVD_2_MASK            GENMASK(27, 23)
-#define H2C_MM_ERR_CODE_ENABLE_RD_RQ_DIS_ERR_MASK     BIT(22)
-#define H2C_MM_ERR_CODE_ENABLE_RSVD_3_MASK            GENMASK(21, 17)
-#define H2C_MM_ERR_CODE_ENABLE_RD_DAT_POISON_ERR_MASK BIT(16)
-#define H2C_MM_ERR_CODE_ENABLE_RSVD_4_MASK            GENMASK(15, 9)
-#define H2C_MM_ERR_CODE_ENABLE_RD_FLR_ERR_MASK        BIT(8)
-#define H2C_MM_ERR_CODE_ENABLE_RSVD_5_MASK            GENMASK(7, 6)
-#define H2C_MM_ERR_CODE_ENABLE_RD_HDR_ADR_ERR_MASK    BIT(5)
-#define H2C_MM_ERR_CODE_ENABLE_RD_HDR_PARA_MASK       BIT(4)
-#define H2C_MM_ERR_CODE_ENABLE_RD_HDR_BYTE_ERR_MASK   BIT(3)
-#define H2C_MM_ERR_CODE_ENABLE_RD_UR_CA_MASK          BIT(2)
-#define H2C_MM_ERR_CODE_ENABLE_RD_HRD_POISON_ERR_MASK BIT(1)
-#define H2C_MM_ERR_CODE_ENABLE_RSVD_6_MASK            BIT(0)
-#define QDMA_S80_HARD_H2C_MM_ERR_CODE_ADDR                 0x1258
-#define H2C_MM_ERR_CODE_RSVD_1_MASK                        GENMASK(31, 18)
-#define H2C_MM_ERR_CODE_VALID_MASK                         BIT(17)
-#define H2C_MM_ERR_CODE_RDWR_MASK                          BIT(16)
-#define H2C_MM_ERR_CODE_MASK                              GENMASK(4, 0)
-#define QDMA_S80_HARD_H2C_MM_ERR_INFO_ADDR                 0x125C
-#define H2C_MM_ERR_INFO_RSVD_1_MASK                        GENMASK(31, 29)
-#define H2C_MM_ERR_INFO_QID_MASK                           GENMASK(28, 17)
-#define H2C_MM_ERR_INFO_DIR_MASK                           BIT(16)
-#define H2C_MM_ERR_INFO_CIDX_MASK                          GENMASK(15, 0)
-#define QDMA_S80_HARD_H2C_MM_PERF_MON_CTL_ADDR             0x12C0
-#define H2C_MM_PERF_MON_CTL_RSVD_1_MASK                    GENMASK(31, 4)
-#define H2C_MM_PERF_MON_CTL_IMM_START_MASK                 BIT(3)
-#define H2C_MM_PERF_MON_CTL_RUN_START_MASK                 BIT(2)
-#define H2C_MM_PERF_MON_CTL_IMM_CLEAR_MASK                 BIT(1)
-#define H2C_MM_PERF_MON_CTL_RUN_CLEAR_MASK                 BIT(0)
-#define QDMA_S80_HARD_H2C_MM_PERF_MON_CYCLE_CNT0_ADDR      0x12C4
-#define H2C_MM_PERF_MON_CYCLE_CNT0_CYC_CNT_MASK            GENMASK(31, 0)
-#define QDMA_S80_HARD_H2C_MM_PERF_MON_CYCLE_CNT1_ADDR      0x12C8
-#define H2C_MM_PERF_MON_CYCLE_CNT1_RSVD_1_MASK             GENMASK(31, 10)
-#define H2C_MM_PERF_MON_CYCLE_CNT1_CYC_CNT_MASK            GENMASK(9, 0)
-#define QDMA_S80_HARD_H2C_MM_PERF_MON_DATA_CNT0_ADDR       0x12CC
-#define H2C_MM_PERF_MON_DATA_CNT0_DCNT_MASK                GENMASK(31, 0)
-#define QDMA_S80_HARD_H2C_MM_PERF_MON_DATA_CNT1_ADDR       0x12D0
-#define H2C_MM_PERF_MON_DATA_CNT1_RSVD_1_MASK              GENMASK(31, 10)
-#define H2C_MM_PERF_MON_DATA_CNT1_DCNT_MASK                GENMASK(9, 0)
-#define QDMA_S80_HARD_H2C_MM_DBG_ADDR                      0x12E8
-#define H2C_MM_RSVD_1_MASK                             GENMASK(31, 24)
-#define H2C_MM_RRQ_ENTRIES_MASK                        GENMASK(23, 17)
-#define H2C_MM_DAT_FIFO_SPC_MASK                       GENMASK(16, 7)
-#define H2C_MM_RD_STALL_MASK                           BIT(6)
-#define H2C_MM_RRQ_FIFO_FI_MASK                        BIT(5)
-#define H2C_MM_WR_STALL_MASK                           BIT(4)
-#define H2C_MM_WRQ_FIFO_FI_MASK                        BIT(3)
-#define H2C_MM_WBK_STALL_MASK                          BIT(2)
-#define H2C_MM_DSC_FIFO_EP_MASK                        BIT(1)
-#define H2C_MM_DSC_FIFO_FL_MASK                        BIT(0)
-#define QDMA_S80_HARD_FUNC_STATUS_REG_ADDR                 0x2400
-#define FUNC_STATUS_REG_RSVD_1_MASK                        GENMASK(31, 12)
-#define FUNC_STATUS_REG_CUR_SRC_FN_MASK                    GENMASK(11, 4)
-#define FUNC_STATUS_REG_ACK_MASK                           BIT(2)
-#define FUNC_STATUS_REG_O_MSG_MASK                         BIT(1)
-#define FUNC_STATUS_REG_I_MSG_MASK                         BIT(0)
-#define QDMA_S80_HARD_FUNC_CMD_REG_ADDR                    0x2404
-#define FUNC_CMD_REG_RSVD_1_MASK                           GENMASK(31, 3)
-#define FUNC_CMD_REG_RSVD_2_MASK                           BIT(2)
-#define FUNC_CMD_REG_MSG_RCV_MASK                          BIT(1)
-#define FUNC_CMD_REG_MSG_SENT_MASK                         BIT(0)
-#define QDMA_S80_HARD_FUNC_INTERRUPT_VECTOR_REG_ADDR       0x2408
-#define FUNC_INTERRUPT_VECTOR_REG_RSVD_1_MASK              GENMASK(31, 5)
-#define FUNC_INTERRUPT_VECTOR_REG_IN_MASK                  GENMASK(4, 0)
-#define QDMA_S80_HARD_TARGET_FUNC_REG_ADDR                 0x240C
-#define TARGET_FUNC_REG_RSVD_1_MASK                        GENMASK(31, 8)
-#define TARGET_FUNC_REG_N_ID_MASK                          GENMASK(7, 0)
-#define QDMA_S80_HARD_FUNC_INTERRUPT_CTL_REG_ADDR          0x2410
-#define FUNC_INTERRUPT_CTL_REG_RSVD_1_MASK                 GENMASK(31, 1)
-#define FUNC_INTERRUPT_CTL_REG_INT_EN_MASK                 BIT(0)
-#define SW_IND_CTXT_DATA_W3_DSC_BASE_H_MASK               GENMASK(31, 0)
-#define SW_IND_CTXT_DATA_W2_DSC_BASE_L_MASK               GENMASK(31, 0)
-#define SW_IND_CTXT_DATA_W1_IS_MM_MASK                    BIT(31)
-#define SW_IND_CTXT_DATA_W1_MRKR_DIS_MASK                 BIT(30)
-#define SW_IND_CTXT_DATA_W1_IRQ_REQ_MASK                  BIT(29)
-#define SW_IND_CTXT_DATA_W1_ERR_WB_SENT_MASK              BIT(28)
-#define SW_IND_CTXT_DATA_W1_ERR_MASK                      GENMASK(27, 26)
-#define SW_IND_CTXT_DATA_W1_IRQ_NO_LAST_MASK              BIT(25)
-#define SW_IND_CTXT_DATA_W1_PORT_ID_MASK                  GENMASK(24, 22)
-#define SW_IND_CTXT_DATA_W1_IRQ_EN_MASK                   BIT(21)
-#define SW_IND_CTXT_DATA_W1_WBK_EN_MASK                   BIT(20)
-#define SW_IND_CTXT_DATA_W1_MM_CHN_MASK                   BIT(19)
-#define SW_IND_CTXT_DATA_W1_BYPASS_MASK                   BIT(18)
-#define SW_IND_CTXT_DATA_W1_DSC_SZ_MASK                   GENMASK(17, 16)
-#define SW_IND_CTXT_DATA_W1_RNG_SZ_MASK                   GENMASK(15, 12)
-#define SW_IND_CTXT_DATA_W1_FNC_ID_MASK                   GENMASK(11, 4)
-#define SW_IND_CTXT_DATA_W1_WBI_INTVL_EN_MASK             BIT(3)
-#define SW_IND_CTXT_DATA_W1_WBI_CHK_MASK                  BIT(2)
-#define SW_IND_CTXT_DATA_W1_FCRD_EN_MASK                  BIT(1)
-#define SW_IND_CTXT_DATA_W1_QEN_MASK                      BIT(0)
-#define SW_IND_CTXT_DATA_W0_RSV_MASK                      GENMASK(31, 17)
-#define SW_IND_CTXT_DATA_W0_IRQ_ARM_MASK                  BIT(16)
-#define SW_IND_CTXT_DATA_W0_PIDX_MASK                     GENMASK(15, 0)
-#define HW_IND_CTXT_DATA_W1_RSVD_MASK                     GENMASK(15, 11)
-#define HW_IND_CTXT_DATA_W1_FETCH_PND_MASK                BIT(10)
-#define HW_IND_CTXT_DATA_W1_IDL_STP_B_MASK                BIT(9)
-#define HW_IND_CTXT_DATA_W1_DSC_PND_MASK                  BIT(8)
-#define HW_IND_CTXT_DATA_W1_RSVD_1_MASK                   GENMASK(7, 0)
-#define HW_IND_CTXT_DATA_W0_CRD_USE_MASK                  GENMASK(31, 16)
-#define HW_IND_CTXT_DATA_W0_CIDX_MASK                     GENMASK(15, 0)
-#define CRED_CTXT_DATA_W0_RSVD_1_MASK                     GENMASK(31, 16)
-#define CRED_CTXT_DATA_W0_CREDT_MASK                      GENMASK(15, 0)
-#define PREFETCH_CTXT_DATA_W1_VALID_MASK                  BIT(13)
-#define PREFETCH_CTXT_DATA_W1_SW_CRDT_H_MASK              GENMASK(12, 0)
-#define PREFETCH_CTXT_DATA_W0_SW_CRDT_L_MASK              GENMASK(31, 29)
-#define PREFETCH_CTXT_DATA_W0_PFCH_MASK                   BIT(28)
-#define PREFETCH_CTXT_DATA_W0_PFCH_EN_MASK                BIT(27)
-#define PREFETCH_CTXT_DATA_W0_ERR_MASK                    BIT(26)
-#define PREFETCH_CTXT_DATA_W0_RSVD_MASK                   GENMASK(25, 8)
-#define PREFETCH_CTXT_DATA_W0_PORT_ID_MASK                GENMASK(7, 5)
-#define PREFETCH_CTXT_DATA_W0_BUF_SIZE_IDX_MASK           GENMASK(4, 1)
-#define PREFETCH_CTXT_DATA_W0_BYPASS_MASK                 BIT(0)
-#define CMPL_CTXT_DATA_W3_RSVD_MASK                       GENMASK(31, 30)
-#define CMPL_CTXT_DATA_W3_FULL_UPD_MASK                   BIT(29)
-#define CMPL_CTXT_DATA_W3_TIMER_RUNNING_MASK              BIT(28)
-#define CMPL_CTXT_DATA_W3_USER_TRIG_PEND_MASK             BIT(27)
-#define CMPL_CTXT_DATA_W3_ERR_MASK                        GENMASK(26, 25)
-#define CMPL_CTXT_DATA_W3_VALID_MASK                      BIT(24)
-#define CMPL_CTXT_DATA_W3_CIDX_MASK                       GENMASK(23, 8)
-#define CMPL_CTXT_DATA_W3_PIDX_H_MASK                     GENMASK(7, 0)
-#define CMPL_CTXT_DATA_W2_PIDX_L_MASK                     GENMASK(31, 24)
-#define CMPL_CTXT_DATA_W2_DESC_SIZE_MASK                  GENMASK(23, 22)
-#define CMPL_CTXT_DATA_W2_BADDR_64_H_MASK                 GENMASK(21, 0)
-#define CMPL_CTXT_DATA_W1_BADDR_64_M_MASK                 GENMASK(31, 0)
-#define CMPL_CTXT_DATA_W0_BADDR_64_L_MASK                 GENMASK(31, 28)
-#define CMPL_CTXT_DATA_W0_QSIZE_IDX_MASK                  GENMASK(27, 24)
-#define CMPL_CTXT_DATA_W0_COLOR_MASK                      BIT(23)
-#define CMPL_CTXT_DATA_W0_INT_ST_MASK                     GENMASK(22, 21)
-#define CMPL_CTXT_DATA_W0_TIMER_IDX_MASK                  GENMASK(20, 17)
-#define CMPL_CTXT_DATA_W0_CNTER_IDX_MASK                  GENMASK(16, 13)
-#define CMPL_CTXT_DATA_W0_FNC_ID_MASK                     GENMASK(12, 5)
-#define CMPL_CTXT_DATA_W0_TRIG_MODE_MASK                  GENMASK(4, 2)
-#define CMPL_CTXT_DATA_W0_EN_INT_MASK                     BIT(1)
-#define CMPL_CTXT_DATA_W0_EN_STAT_DESC_MASK               BIT(0)
-#define INTR_CTXT_DATA_W2_PIDX_MASK                       GENMASK(11, 0)
-#define INTR_CTXT_DATA_W1_PAGE_SIZE_MASK                  GENMASK(31, 29)
-#define INTR_CTXT_DATA_W1_BADDR_4K_H_MASK                 GENMASK(28, 0)
-#define INTR_CTXT_DATA_W0_BADDR_4K_L_MASK                 GENMASK(31, 9)
-#define INTR_CTXT_DATA_W0_COLOR_MASK                      BIT(8)
-#define INTR_CTXT_DATA_W0_INT_ST_MASK                     BIT(7)
-#define INTR_CTXT_DATA_W0_RSVD_MASK                       BIT(6)
-#define INTR_CTXT_DATA_W0_VEC_MASK                        GENMASK(5, 1)
-#define INTR_CTXT_DATA_W0_VALID_MASK                      BIT(0)
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif
-
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_s80_hard_access/qdma_s80_hard_reg_dump.c b/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_s80_hard_access/qdma_s80_hard_reg_dump.c
deleted file mode 100644
index 638d5929c666dde78afc885673a3b8a9d8d74a14..0000000000000000000000000000000000000000
--- a/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_s80_hard_access/qdma_s80_hard_reg_dump.c
+++ /dev/null
@@ -1,8024 +0,0 @@
-/*
- * Copyright(c) 2019-2020 Xilinx, Inc. All rights reserved.
- *
- * This source code is free software; you can redistribute it and/or modify it
- * under the terms and conditions of the GNU General Public License,
- * version 2, as published by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
- * more details.
- *
- * The full GNU General Public License is included in this distribution in
- * the file called "COPYING".
- *
- * This source code is free software; you can redistribute it and/or modify it
- * under the terms and conditions of the GNU General Public License,
- * version 2, as published by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
- * more details.
- *
- * The full GNU General Public License is included in this distribution in
- * the file called "COPYING".
- */
-
-#include "qdma_s80_hard_reg.h"
-#include "qdma_reg_dump.h"
-
-#ifdef ENABLE_WPP_TRACING
-#include "qdma_s80_hard_reg_dump.tmh"
-#endif
-
-
-static struct regfield_info
-	cfg_blk_identifier_field_info[] = {
-	{"CFG_BLK_IDENTIFIER",
-		CFG_BLK_IDENTIFIER_MASK},
-	{"CFG_BLK_IDENTIFIER_1",
-		CFG_BLK_IDENTIFIER_1_MASK},
-	{"CFG_BLK_IDENTIFIER_RSVD_1",
-		CFG_BLK_IDENTIFIER_RSVD_1_MASK},
-	{"CFG_BLK_IDENTIFIER_VERSION",
-		CFG_BLK_IDENTIFIER_VERSION_MASK},
-};
-
-
-static struct regfield_info
-	cfg_blk_busdev_field_info[] = {
-	{"CFG_BLK_BUSDEV_BDF",
-		CFG_BLK_BUSDEV_BDF_MASK},
-};
-
-
-static struct regfield_info
-	cfg_blk_pcie_max_pld_size_field_info[] = {
-	{"CFG_BLK_PCIE_MAX_PLD_SIZE",
-		CFG_BLK_PCIE_MAX_PLD_SIZE_MASK},
-};
-
-
-static struct regfield_info
-	cfg_blk_pcie_max_read_req_size_field_info[] = {
-	{"CFG_BLK_PCIE_MAX_READ_REQ_SIZE",
-		CFG_BLK_PCIE_MAX_READ_REQ_SIZE_MASK},
-};
-
-
-static struct regfield_info
-	cfg_blk_system_id_field_info[] = {
-	{"CFG_BLK_SYSTEM_ID",
-		CFG_BLK_SYSTEM_ID_MASK},
-};
-
-
-static struct regfield_info
-	cfg_blk_msi_enable_field_info[] = {
-	{"CFG_BLK_MSI_ENABLE_3",
-		CFG_BLK_MSI_ENABLE_3_MASK},
-	{"CFG_BLK_MSI_ENABLE_MSIX3",
-		CFG_BLK_MSI_ENABLE_MSIX3_MASK},
-	{"CFG_BLK_MSI_ENABLE_2",
-		CFG_BLK_MSI_ENABLE_2_MASK},
-	{"CFG_BLK_MSI_ENABLE_MSIX2",
-		CFG_BLK_MSI_ENABLE_MSIX2_MASK},
-	{"CFG_BLK_MSI_ENABLE_1",
-		CFG_BLK_MSI_ENABLE_1_MASK},
-	{"CFG_BLK_MSI_ENABLE_MSIX1",
-		CFG_BLK_MSI_ENABLE_MSIX1_MASK},
-	{"CFG_BLK_MSI_ENABLE_0",
-		CFG_BLK_MSI_ENABLE_0_MASK},
-	{"CFG_BLK_MSI_ENABLE_MSIX0",
-		CFG_BLK_MSI_ENABLE_MSIX0_MASK},
-};
-
-
-static struct regfield_info
-	cfg_pcie_data_width_field_info[] = {
-	{"CFG_PCIE_DATA_WIDTH_DATAPATH",
-		CFG_PCIE_DATA_WIDTH_DATAPATH_MASK},
-};
-
-
-static struct regfield_info
-	cfg_pcie_ctl_field_info[] = {
-	{"CFG_PCIE_CTL_RRQ_DISABLE",
-		CFG_PCIE_CTL_RRQ_DISABLE_MASK},
-	{"CFG_PCIE_CTL_RELAXED_ORDERING",
-		CFG_PCIE_CTL_RELAXED_ORDERING_MASK},
-};
-
-
-static struct regfield_info
-	cfg_axi_user_max_pld_size_field_info[] = {
-	{"CFG_AXI_USER_MAX_PLD_SIZE_ISSUED",
-		CFG_AXI_USER_MAX_PLD_SIZE_ISSUED_MASK},
-	{"CFG_AXI_USER_MAX_PLD_SIZE_PROG",
-		CFG_AXI_USER_MAX_PLD_SIZE_PROG_MASK},
-};
-
-
-static struct regfield_info
-	cfg_axi_user_max_read_req_size_field_info[] = {
-	{"CFG_AXI_USER_MAX_READ_REQ_SIZE_USISSUED",
-		CFG_AXI_USER_MAX_READ_REQ_SIZE_USISSUED_MASK},
-	{"CFG_AXI_USER_MAX_READ_REQ_SIZE_USPROG",
-		CFG_AXI_USER_MAX_READ_REQ_SIZE_USPROG_MASK},
-};
-
-
-static struct regfield_info
-	cfg_blk_misc_ctl_field_info[] = {
-	{"CFG_BLK_MISC_CTL_NUM_TAG",
-		CFG_BLK_MISC_CTL_NUM_TAG_MASK},
-	{"CFG_BLK_MISC_CTL_RQ_METERING_MULTIPLIER",
-		CFG_BLK_MISC_CTL_RQ_METERING_MULTIPLIER_MASK},
-};
-
-
-static struct regfield_info
-	cfg_blk_scratch_0_field_info[] = {
-	{"CFG_BLK_SCRATCH_0",
-		CFG_BLK_SCRATCH_0_MASK},
-};
-
-
-static struct regfield_info
-	cfg_blk_scratch_1_field_info[] = {
-	{"CFG_BLK_SCRATCH_1",
-		CFG_BLK_SCRATCH_1_MASK},
-};
-
-
-static struct regfield_info
-	cfg_blk_scratch_2_field_info[] = {
-	{"CFG_BLK_SCRATCH_2",
-		CFG_BLK_SCRATCH_2_MASK},
-};
-
-
-static struct regfield_info
-	cfg_blk_scratch_3_field_info[] = {
-	{"CFG_BLK_SCRATCH_3",
-		CFG_BLK_SCRATCH_3_MASK},
-};
-
-
-static struct regfield_info
-	cfg_blk_scratch_4_field_info[] = {
-	{"CFG_BLK_SCRATCH_4",
-		CFG_BLK_SCRATCH_4_MASK},
-};
-
-
-static struct regfield_info
-	cfg_blk_scratch_5_field_info[] = {
-	{"CFG_BLK_SCRATCH_5",
-		CFG_BLK_SCRATCH_5_MASK},
-};
-
-
-static struct regfield_info
-	cfg_blk_scratch_6_field_info[] = {
-	{"CFG_BLK_SCRATCH_6",
-		CFG_BLK_SCRATCH_6_MASK},
-};
-
-
-static struct regfield_info
-	cfg_blk_scratch_7_field_info[] = {
-	{"CFG_BLK_SCRATCH_7",
-		CFG_BLK_SCRATCH_7_MASK},
-};
-
-
-static struct regfield_info
-	ram_sbe_msk_a_field_info[] = {
-	{"RAM_SBE_MSK_A",
-		RAM_SBE_MSK_A_MASK},
-};
-
-
-static struct regfield_info
-	ram_sbe_sts_a_field_info[] = {
-	{"RAM_SBE_STS_A_RSVD_1",
-		RAM_SBE_STS_A_RSVD_1_MASK},
-	{"RAM_SBE_STS_A_PFCH_LL_RAM",
-		RAM_SBE_STS_A_PFCH_LL_RAM_MASK},
-	{"RAM_SBE_STS_A_WRB_CTXT_RAM",
-		RAM_SBE_STS_A_WRB_CTXT_RAM_MASK},
-	{"RAM_SBE_STS_A_PFCH_CTXT_RAM",
-		RAM_SBE_STS_A_PFCH_CTXT_RAM_MASK},
-	{"RAM_SBE_STS_A_DESC_REQ_FIFO_RAM",
-		RAM_SBE_STS_A_DESC_REQ_FIFO_RAM_MASK},
-	{"RAM_SBE_STS_A_INT_CTXT_RAM",
-		RAM_SBE_STS_A_INT_CTXT_RAM_MASK},
-	{"RAM_SBE_STS_A_INT_QID2VEC_RAM",
-		RAM_SBE_STS_A_INT_QID2VEC_RAM_MASK},
-	{"RAM_SBE_STS_A_WRB_COAL_DATA_RAM",
-		RAM_SBE_STS_A_WRB_COAL_DATA_RAM_MASK},
-	{"RAM_SBE_STS_A_TUSER_FIFO_RAM",
-		RAM_SBE_STS_A_TUSER_FIFO_RAM_MASK},
-	{"RAM_SBE_STS_A_QID_FIFO_RAM",
-		RAM_SBE_STS_A_QID_FIFO_RAM_MASK},
-	{"RAM_SBE_STS_A_PLD_FIFO_RAM",
-		RAM_SBE_STS_A_PLD_FIFO_RAM_MASK},
-	{"RAM_SBE_STS_A_TIMER_FIFO_RAM",
-		RAM_SBE_STS_A_TIMER_FIFO_RAM_MASK},
-	{"RAM_SBE_STS_A_PASID_CTXT_RAM",
-		RAM_SBE_STS_A_PASID_CTXT_RAM_MASK},
-	{"RAM_SBE_STS_A_DSC_CPLD",
-		RAM_SBE_STS_A_DSC_CPLD_MASK},
-	{"RAM_SBE_STS_A_DSC_CPLI",
-		RAM_SBE_STS_A_DSC_CPLI_MASK},
-	{"RAM_SBE_STS_A_DSC_SW_CTXT",
-		RAM_SBE_STS_A_DSC_SW_CTXT_MASK},
-	{"RAM_SBE_STS_A_DSC_CRD_RCV",
-		RAM_SBE_STS_A_DSC_CRD_RCV_MASK},
-	{"RAM_SBE_STS_A_DSC_HW_CTXT",
-		RAM_SBE_STS_A_DSC_HW_CTXT_MASK},
-	{"RAM_SBE_STS_A_FUNC_MAP",
-		RAM_SBE_STS_A_FUNC_MAP_MASK},
-	{"RAM_SBE_STS_A_C2H_WR_BRG_DAT",
-		RAM_SBE_STS_A_C2H_WR_BRG_DAT_MASK},
-	{"RAM_SBE_STS_A_C2H_RD_BRG_DAT",
-		RAM_SBE_STS_A_C2H_RD_BRG_DAT_MASK},
-	{"RAM_SBE_STS_A_H2C_WR_BRG_DAT",
-		RAM_SBE_STS_A_H2C_WR_BRG_DAT_MASK},
-	{"RAM_SBE_STS_A_H2C_RD_BRG_DAT",
-		RAM_SBE_STS_A_H2C_RD_BRG_DAT_MASK},
-	{"RAM_SBE_STS_A_RSVD_2",
-		RAM_SBE_STS_A_RSVD_2_MASK},
-	{"RAM_SBE_STS_A_MI_C2H0_DAT",
-		RAM_SBE_STS_A_MI_C2H0_DAT_MASK},
-	{"RAM_SBE_STS_A_RSVD_3",
-		RAM_SBE_STS_A_RSVD_3_MASK},
-	{"RAM_SBE_STS_A_MI_H2C0_DAT",
-		RAM_SBE_STS_A_MI_H2C0_DAT_MASK},
-};
-
-
-static struct regfield_info
-	ram_dbe_msk_a_field_info[] = {
-	{"RAM_DBE_MSK_A",
-		RAM_DBE_MSK_A_MASK},
-};
-
-
-static struct regfield_info
-	ram_dbe_sts_a_field_info[] = {
-	{"RAM_DBE_STS_A_RSVD_1",
-		RAM_DBE_STS_A_RSVD_1_MASK},
-	{"RAM_DBE_STS_A_PFCH_LL_RAM",
-		RAM_DBE_STS_A_PFCH_LL_RAM_MASK},
-	{"RAM_DBE_STS_A_WRB_CTXT_RAM",
-		RAM_DBE_STS_A_WRB_CTXT_RAM_MASK},
-	{"RAM_DBE_STS_A_PFCH_CTXT_RAM",
-		RAM_DBE_STS_A_PFCH_CTXT_RAM_MASK},
-	{"RAM_DBE_STS_A_DESC_REQ_FIFO_RAM",
-		RAM_DBE_STS_A_DESC_REQ_FIFO_RAM_MASK},
-	{"RAM_DBE_STS_A_INT_CTXT_RAM",
-		RAM_DBE_STS_A_INT_CTXT_RAM_MASK},
-	{"RAM_DBE_STS_A_INT_QID2VEC_RAM",
-		RAM_DBE_STS_A_INT_QID2VEC_RAM_MASK},
-	{"RAM_DBE_STS_A_WRB_COAL_DATA_RAM",
-		RAM_DBE_STS_A_WRB_COAL_DATA_RAM_MASK},
-	{"RAM_DBE_STS_A_TUSER_FIFO_RAM",
-		RAM_DBE_STS_A_TUSER_FIFO_RAM_MASK},
-	{"RAM_DBE_STS_A_QID_FIFO_RAM",
-		RAM_DBE_STS_A_QID_FIFO_RAM_MASK},
-	{"RAM_DBE_STS_A_PLD_FIFO_RAM",
-		RAM_DBE_STS_A_PLD_FIFO_RAM_MASK},
-	{"RAM_DBE_STS_A_TIMER_FIFO_RAM",
-		RAM_DBE_STS_A_TIMER_FIFO_RAM_MASK},
-	{"RAM_DBE_STS_A_PASID_CTXT_RAM",
-		RAM_DBE_STS_A_PASID_CTXT_RAM_MASK},
-	{"RAM_DBE_STS_A_DSC_CPLD",
-		RAM_DBE_STS_A_DSC_CPLD_MASK},
-	{"RAM_DBE_STS_A_DSC_CPLI",
-		RAM_DBE_STS_A_DSC_CPLI_MASK},
-	{"RAM_DBE_STS_A_DSC_SW_CTXT",
-		RAM_DBE_STS_A_DSC_SW_CTXT_MASK},
-	{"RAM_DBE_STS_A_DSC_CRD_RCV",
-		RAM_DBE_STS_A_DSC_CRD_RCV_MASK},
-	{"RAM_DBE_STS_A_DSC_HW_CTXT",
-		RAM_DBE_STS_A_DSC_HW_CTXT_MASK},
-	{"RAM_DBE_STS_A_FUNC_MAP",
-		RAM_DBE_STS_A_FUNC_MAP_MASK},
-	{"RAM_DBE_STS_A_C2H_WR_BRG_DAT",
-		RAM_DBE_STS_A_C2H_WR_BRG_DAT_MASK},
-	{"RAM_DBE_STS_A_C2H_RD_BRG_DAT",
-		RAM_DBE_STS_A_C2H_RD_BRG_DAT_MASK},
-	{"RAM_DBE_STS_A_H2C_WR_BRG_DAT",
-		RAM_DBE_STS_A_H2C_WR_BRG_DAT_MASK},
-	{"RAM_DBE_STS_A_H2C_RD_BRG_DAT",
-		RAM_DBE_STS_A_H2C_RD_BRG_DAT_MASK},
-	{"RAM_DBE_STS_A_RSVD_2",
-		RAM_DBE_STS_A_RSVD_2_MASK},
-	{"RAM_DBE_STS_A_MI_C2H0_DAT",
-		RAM_DBE_STS_A_MI_C2H0_DAT_MASK},
-	{"RAM_DBE_STS_A_RSVD_3",
-		RAM_DBE_STS_A_RSVD_3_MASK},
-	{"RAM_DBE_STS_A_MI_H2C0_DAT",
-		RAM_DBE_STS_A_MI_H2C0_DAT_MASK},
-};
-
-
-static struct regfield_info
-	glbl2_identifier_field_info[] = {
-	{"GLBL2_IDENTIFIER",
-		GLBL2_IDENTIFIER_MASK},
-	{"GLBL2_IDENTIFIER_VERSION",
-		GLBL2_IDENTIFIER_VERSION_MASK},
-};
-
-
-static struct regfield_info
-	glbl2_pf_barlite_int_field_info[] = {
-	{"GLBL2_PF_BARLITE_INT_PF3_BAR_MAP",
-		GLBL2_PF_BARLITE_INT_PF3_BAR_MAP_MASK},
-	{"GLBL2_PF_BARLITE_INT_PF2_BAR_MAP",
-		GLBL2_PF_BARLITE_INT_PF2_BAR_MAP_MASK},
-	{"GLBL2_PF_BARLITE_INT_PF1_BAR_MAP",
-		GLBL2_PF_BARLITE_INT_PF1_BAR_MAP_MASK},
-	{"GLBL2_PF_BARLITE_INT_PF0_BAR_MAP",
-		GLBL2_PF_BARLITE_INT_PF0_BAR_MAP_MASK},
-};
-
-
-static struct regfield_info
-	glbl2_pf_vf_barlite_int_field_info[] = {
-	{"GLBL2_PF_VF_BARLITE_INT_PF3_MAP",
-		GLBL2_PF_VF_BARLITE_INT_PF3_MAP_MASK},
-	{"GLBL2_PF_VF_BARLITE_INT_PF2_MAP",
-		GLBL2_PF_VF_BARLITE_INT_PF2_MAP_MASK},
-	{"GLBL2_PF_VF_BARLITE_INT_PF1_MAP",
-		GLBL2_PF_VF_BARLITE_INT_PF1_MAP_MASK},
-	{"GLBL2_PF_VF_BARLITE_INT_PF0_MAP",
-		GLBL2_PF_VF_BARLITE_INT_PF0_MAP_MASK},
-};
-
-
-static struct regfield_info
-	glbl2_pf_barlite_ext_field_info[] = {
-	{"GLBL2_PF_BARLITE_EXT_PF3_BAR_MAP",
-		GLBL2_PF_BARLITE_EXT_PF3_BAR_MAP_MASK},
-	{"GLBL2_PF_BARLITE_EXT_PF2_BAR_MAP",
-		GLBL2_PF_BARLITE_EXT_PF2_BAR_MAP_MASK},
-	{"GLBL2_PF_BARLITE_EXT_PF1_BAR_MAP",
-		GLBL2_PF_BARLITE_EXT_PF1_BAR_MAP_MASK},
-	{"GLBL2_PF_BARLITE_EXT_PF0_BAR_MAP",
-		GLBL2_PF_BARLITE_EXT_PF0_BAR_MAP_MASK},
-};
-
-
-static struct regfield_info
-	glbl2_pf_vf_barlite_ext_field_info[] = {
-	{"GLBL2_PF_VF_BARLITE_EXT_PF3_MAP",
-		GLBL2_PF_VF_BARLITE_EXT_PF3_MAP_MASK},
-	{"GLBL2_PF_VF_BARLITE_EXT_PF2_MAP",
-		GLBL2_PF_VF_BARLITE_EXT_PF2_MAP_MASK},
-	{"GLBL2_PF_VF_BARLITE_EXT_PF1_MAP",
-		GLBL2_PF_VF_BARLITE_EXT_PF1_MAP_MASK},
-	{"GLBL2_PF_VF_BARLITE_EXT_PF0_MAP",
-		GLBL2_PF_VF_BARLITE_EXT_PF0_MAP_MASK},
-};
-
-
-static struct regfield_info
-	glbl2_channel_inst_field_info[] = {
-	{"GLBL2_CHANNEL_INST_RSVD_1",
-		GLBL2_CHANNEL_INST_RSVD_1_MASK},
-	{"GLBL2_CHANNEL_INST_C2H_ST",
-		GLBL2_CHANNEL_INST_C2H_ST_MASK},
-	{"GLBL2_CHANNEL_INST_H2C_ST",
-		GLBL2_CHANNEL_INST_H2C_ST_MASK},
-	{"GLBL2_CHANNEL_INST_RSVD_2",
-		GLBL2_CHANNEL_INST_RSVD_2_MASK},
-	{"GLBL2_CHANNEL_INST_C2H_ENG",
-		GLBL2_CHANNEL_INST_C2H_ENG_MASK},
-	{"GLBL2_CHANNEL_INST_RSVD_3",
-		GLBL2_CHANNEL_INST_RSVD_3_MASK},
-	{"GLBL2_CHANNEL_INST_H2C_ENG",
-		GLBL2_CHANNEL_INST_H2C_ENG_MASK},
-};
-
-
-static struct regfield_info
-	glbl2_channel_mdma_field_info[] = {
-	{"GLBL2_CHANNEL_MDMA_RSVD_1",
-		GLBL2_CHANNEL_MDMA_RSVD_1_MASK},
-	{"GLBL2_CHANNEL_MDMA_C2H_ST",
-		GLBL2_CHANNEL_MDMA_C2H_ST_MASK},
-	{"GLBL2_CHANNEL_MDMA_H2C_ST",
-		GLBL2_CHANNEL_MDMA_H2C_ST_MASK},
-	{"GLBL2_CHANNEL_MDMA_RSVD_2",
-		GLBL2_CHANNEL_MDMA_RSVD_2_MASK},
-	{"GLBL2_CHANNEL_MDMA_C2H_ENG",
-		GLBL2_CHANNEL_MDMA_C2H_ENG_MASK},
-	{"GLBL2_CHANNEL_MDMA_RSVD_3",
-		GLBL2_CHANNEL_MDMA_RSVD_3_MASK},
-	{"GLBL2_CHANNEL_MDMA_H2C_ENG",
-		GLBL2_CHANNEL_MDMA_H2C_ENG_MASK},
-};
-
-
-static struct regfield_info
-	glbl2_channel_strm_field_info[] = {
-	{"GLBL2_CHANNEL_STRM_RSVD_1",
-		GLBL2_CHANNEL_STRM_RSVD_1_MASK},
-	{"GLBL2_CHANNEL_STRM_C2H_ST",
-		GLBL2_CHANNEL_STRM_C2H_ST_MASK},
-	{"GLBL2_CHANNEL_STRM_H2C_ST",
-		GLBL2_CHANNEL_STRM_H2C_ST_MASK},
-	{"GLBL2_CHANNEL_STRM_RSVD_2",
-		GLBL2_CHANNEL_STRM_RSVD_2_MASK},
-	{"GLBL2_CHANNEL_STRM_C2H_ENG",
-		GLBL2_CHANNEL_STRM_C2H_ENG_MASK},
-	{"GLBL2_CHANNEL_STRM_RSVD_3",
-		GLBL2_CHANNEL_STRM_RSVD_3_MASK},
-	{"GLBL2_CHANNEL_STRM_H2C_ENG",
-		GLBL2_CHANNEL_STRM_H2C_ENG_MASK},
-};
-
-
-static struct regfield_info
-	glbl2_channel_cap_field_info[] = {
-	{"GLBL2_CHANNEL_CAP_RSVD_1",
-		GLBL2_CHANNEL_CAP_RSVD_1_MASK},
-	{"GLBL2_CHANNEL_CAP_MULTIQ_MAX",
-		GLBL2_CHANNEL_CAP_MULTIQ_MAX_MASK},
-};
-
-
-static struct regfield_info
-	glbl2_channel_pasid_cap_field_info[] = {
-	{"GLBL2_CHANNEL_PASID_CAP_RSVD_1",
-		GLBL2_CHANNEL_PASID_CAP_RSVD_1_MASK},
-	{"GLBL2_CHANNEL_PASID_CAP_BRIDGEOFFSET",
-		GLBL2_CHANNEL_PASID_CAP_BRIDGEOFFSET_MASK},
-	{"GLBL2_CHANNEL_PASID_CAP_RSVD_2",
-		GLBL2_CHANNEL_PASID_CAP_RSVD_2_MASK},
-	{"GLBL2_CHANNEL_PASID_CAP_BRIDGEEN",
-		GLBL2_CHANNEL_PASID_CAP_BRIDGEEN_MASK},
-	{"GLBL2_CHANNEL_PASID_CAP_DMAEN",
-		GLBL2_CHANNEL_PASID_CAP_DMAEN_MASK},
-};
-
-
-static struct regfield_info
-	glbl2_channel_func_ret_field_info[] = {
-	{"GLBL2_CHANNEL_FUNC_RET_RSVD_1",
-		GLBL2_CHANNEL_FUNC_RET_RSVD_1_MASK},
-	{"GLBL2_CHANNEL_FUNC_RET_FUNC",
-		GLBL2_CHANNEL_FUNC_RET_FUNC_MASK},
-};
-
-
-static struct regfield_info
-	glbl2_system_id_field_info[] = {
-	{"GLBL2_SYSTEM_ID_RSVD_1",
-		GLBL2_SYSTEM_ID_RSVD_1_MASK},
-	{"GLBL2_SYSTEM_ID",
-		GLBL2_SYSTEM_ID_MASK},
-};
-
-
-static struct regfield_info
-	glbl2_misc_cap_field_info[] = {
-	{"GLBL2_MISC_CAP_RSVD_1",
-		GLBL2_MISC_CAP_RSVD_1_MASK},
-};
-
-
-static struct regfield_info
-	glbl2_dbg_pcie_rq0_field_info[] = {
-	{"GLBL2_PCIE_RQ0_NPH_AVL",
-		GLBL2_PCIE_RQ0_NPH_AVL_MASK},
-	{"GLBL2_PCIE_RQ0_RCB_AVL",
-		GLBL2_PCIE_RQ0_RCB_AVL_MASK},
-	{"GLBL2_PCIE_RQ0_SLV_RD_CREDS",
-		GLBL2_PCIE_RQ0_SLV_RD_CREDS_MASK},
-	{"GLBL2_PCIE_RQ0_TAG_EP",
-		GLBL2_PCIE_RQ0_TAG_EP_MASK},
-	{"GLBL2_PCIE_RQ0_TAG_FL",
-		GLBL2_PCIE_RQ0_TAG_FL_MASK},
-};
-
-
-static struct regfield_info
-	glbl2_dbg_pcie_rq1_field_info[] = {
-	{"GLBL2_PCIE_RQ1_RSVD_1",
-		GLBL2_PCIE_RQ1_RSVD_1_MASK},
-	{"GLBL2_PCIE_RQ1_WTLP_REQ",
-		GLBL2_PCIE_RQ1_WTLP_REQ_MASK},
-	{"GLBL2_PCIE_RQ1_WTLP_HEADER_FIFO_FL",
-		GLBL2_PCIE_RQ1_WTLP_HEADER_FIFO_FL_MASK},
-	{"GLBL2_PCIE_RQ1_WTLP_HEADER_FIFO_EP",
-		GLBL2_PCIE_RQ1_WTLP_HEADER_FIFO_EP_MASK},
-	{"GLBL2_PCIE_RQ1_RQ_FIFO_EP",
-		GLBL2_PCIE_RQ1_RQ_FIFO_EP_MASK},
-	{"GLBL2_PCIE_RQ1_RQ_FIFO_FL",
-		GLBL2_PCIE_RQ1_RQ_FIFO_FL_MASK},
-	{"GLBL2_PCIE_RQ1_TLPSM",
-		GLBL2_PCIE_RQ1_TLPSM_MASK},
-	{"GLBL2_PCIE_RQ1_TLPSM512",
-		GLBL2_PCIE_RQ1_TLPSM512_MASK},
-	{"GLBL2_PCIE_RQ1_RREQ0_RCB_OK",
-		GLBL2_PCIE_RQ1_RREQ0_RCB_OK_MASK},
-	{"GLBL2_PCIE_RQ1_RREQ0_SLV",
-		GLBL2_PCIE_RQ1_RREQ0_SLV_MASK},
-	{"GLBL2_PCIE_RQ1_RREQ0_VLD",
-		GLBL2_PCIE_RQ1_RREQ0_VLD_MASK},
-	{"GLBL2_PCIE_RQ1_RREQ1_RCB_OK",
-		GLBL2_PCIE_RQ1_RREQ1_RCB_OK_MASK},
-	{"GLBL2_PCIE_RQ1_RREQ1_SLV",
-		GLBL2_PCIE_RQ1_RREQ1_SLV_MASK},
-	{"GLBL2_PCIE_RQ1_RREQ1_VLD",
-		GLBL2_PCIE_RQ1_RREQ1_VLD_MASK},
-};
-
-
-static struct regfield_info
-	glbl2_dbg_aximm_wr0_field_info[] = {
-	{"GLBL2_AXIMM_WR0_RSVD_1",
-		GLBL2_AXIMM_WR0_RSVD_1_MASK},
-	{"GLBL2_AXIMM_WR0_WR_REQ",
-		GLBL2_AXIMM_WR0_WR_REQ_MASK},
-	{"GLBL2_AXIMM_WR0_WR_CHN",
-		GLBL2_AXIMM_WR0_WR_CHN_MASK},
-	{"GLBL2_AXIMM_WR0_WTLP_DATA_FIFO_EP",
-		GLBL2_AXIMM_WR0_WTLP_DATA_FIFO_EP_MASK},
-	{"GLBL2_AXIMM_WR0_WPL_FIFO_EP",
-		GLBL2_AXIMM_WR0_WPL_FIFO_EP_MASK},
-	{"GLBL2_AXIMM_WR0_BRSP_CLAIM_CHN",
-		GLBL2_AXIMM_WR0_BRSP_CLAIM_CHN_MASK},
-	{"GLBL2_AXIMM_WR0_WRREQ_CNT",
-		GLBL2_AXIMM_WR0_WRREQ_CNT_MASK},
-	{"GLBL2_AXIMM_WR0_BID",
-		GLBL2_AXIMM_WR0_BID_MASK},
-	{"GLBL2_AXIMM_WR0_BVALID",
-		GLBL2_AXIMM_WR0_BVALID_MASK},
-	{"GLBL2_AXIMM_WR0_BREADY",
-		GLBL2_AXIMM_WR0_BREADY_MASK},
-	{"GLBL2_AXIMM_WR0_WVALID",
-		GLBL2_AXIMM_WR0_WVALID_MASK},
-	{"GLBL2_AXIMM_WR0_WREADY",
-		GLBL2_AXIMM_WR0_WREADY_MASK},
-	{"GLBL2_AXIMM_WR0_AWID",
-		GLBL2_AXIMM_WR0_AWID_MASK},
-	{"GLBL2_AXIMM_WR0_AWVALID",
-		GLBL2_AXIMM_WR0_AWVALID_MASK},
-	{"GLBL2_AXIMM_WR0_AWREADY",
-		GLBL2_AXIMM_WR0_AWREADY_MASK},
-};
-
-
-static struct regfield_info
-	glbl2_dbg_aximm_wr1_field_info[] = {
-	{"GLBL2_AXIMM_WR1_RSVD_1",
-		GLBL2_AXIMM_WR1_RSVD_1_MASK},
-	{"GLBL2_AXIMM_WR1_BRSP_CNT4",
-		GLBL2_AXIMM_WR1_BRSP_CNT4_MASK},
-	{"GLBL2_AXIMM_WR1_BRSP_CNT3",
-		GLBL2_AXIMM_WR1_BRSP_CNT3_MASK},
-	{"GLBL2_AXIMM_WR1_BRSP_CNT2",
-		GLBL2_AXIMM_WR1_BRSP_CNT2_MASK},
-	{"GLBL2_AXIMM_WR1_BRSP_CNT1",
-		GLBL2_AXIMM_WR1_BRSP_CNT1_MASK},
-	{"GLBL2_AXIMM_WR1_BRSP_CNT0",
-		GLBL2_AXIMM_WR1_BRSP_CNT0_MASK},
-};
-
-
-static struct regfield_info
-	glbl2_dbg_aximm_rd0_field_info[] = {
-	{"GLBL2_AXIMM_RD0_RSVD_1",
-		GLBL2_AXIMM_RD0_RSVD_1_MASK},
-	{"GLBL2_AXIMM_RD0_PND_CNT",
-		GLBL2_AXIMM_RD0_PND_CNT_MASK},
-	{"GLBL2_AXIMM_RD0_RD_CHNL",
-		GLBL2_AXIMM_RD0_RD_CHNL_MASK},
-	{"GLBL2_AXIMM_RD0_RD_REQ",
-		GLBL2_AXIMM_RD0_RD_REQ_MASK},
-	{"GLBL2_AXIMM_RD0_RRSP_CLAIM_CHNL",
-		GLBL2_AXIMM_RD0_RRSP_CLAIM_CHNL_MASK},
-	{"GLBL2_AXIMM_RD0_RID",
-		GLBL2_AXIMM_RD0_RID_MASK},
-	{"GLBL2_AXIMM_RD0_RVALID",
-		GLBL2_AXIMM_RD0_RVALID_MASK},
-	{"GLBL2_AXIMM_RD0_RREADY",
-		GLBL2_AXIMM_RD0_RREADY_MASK},
-	{"GLBL2_AXIMM_RD0_ARID",
-		GLBL2_AXIMM_RD0_ARID_MASK},
-	{"GLBL2_AXIMM_RD0_ARVALID",
-		GLBL2_AXIMM_RD0_ARVALID_MASK},
-	{"GLBL2_AXIMM_RD0_ARREADY",
-		GLBL2_AXIMM_RD0_ARREADY_MASK},
-};
-
-
-static struct regfield_info
-	glbl2_dbg_aximm_rd1_field_info[] = {
-	{"GLBL2_AXIMM_RD1_RSVD_1",
-		GLBL2_AXIMM_RD1_RSVD_1_MASK},
-	{"GLBL2_AXIMM_RD1_RRSP_CNT4",
-		GLBL2_AXIMM_RD1_RRSP_CNT4_MASK},
-	{"GLBL2_AXIMM_RD1_RRSP_CNT3",
-		GLBL2_AXIMM_RD1_RRSP_CNT3_MASK},
-	{"GLBL2_AXIMM_RD1_RRSP_CNT2",
-		GLBL2_AXIMM_RD1_RRSP_CNT2_MASK},
-	{"GLBL2_AXIMM_RD1_RRSP_CNT1",
-		GLBL2_AXIMM_RD1_RRSP_CNT1_MASK},
-	{"GLBL2_AXIMM_RD1_RRSP_CNT0",
-		GLBL2_AXIMM_RD1_RRSP_CNT0_MASK},
-};
-
-
-static struct regfield_info
-	glbl_rng_sz_1_field_info[] = {
-	{"GLBL_RNG_SZ_1_RSVD_1",
-		GLBL_RNG_SZ_1_RSVD_1_MASK},
-	{"GLBL_RNG_SZ_1_RING_SIZE",
-		GLBL_RNG_SZ_1_RING_SIZE_MASK},
-};
-
-
-static struct regfield_info
-	glbl_rng_sz_2_field_info[] = {
-	{"GLBL_RNG_SZ_2_RSVD_1",
-		GLBL_RNG_SZ_2_RSVD_1_MASK},
-	{"GLBL_RNG_SZ_2_RING_SIZE",
-		GLBL_RNG_SZ_2_RING_SIZE_MASK},
-};
-
-
-static struct regfield_info
-	glbl_rng_sz_3_field_info[] = {
-	{"GLBL_RNG_SZ_3_RSVD_1",
-		GLBL_RNG_SZ_3_RSVD_1_MASK},
-	{"GLBL_RNG_SZ_3_RING_SIZE",
-		GLBL_RNG_SZ_3_RING_SIZE_MASK},
-};
-
-
-static struct regfield_info
-	glbl_rng_sz_4_field_info[] = {
-	{"GLBL_RNG_SZ_4_RSVD_1",
-		GLBL_RNG_SZ_4_RSVD_1_MASK},
-	{"GLBL_RNG_SZ_4_RING_SIZE",
-		GLBL_RNG_SZ_4_RING_SIZE_MASK},
-};
-
-
-static struct regfield_info
-	glbl_rng_sz_5_field_info[] = {
-	{"GLBL_RNG_SZ_5_RSVD_1",
-		GLBL_RNG_SZ_5_RSVD_1_MASK},
-	{"GLBL_RNG_SZ_5_RING_SIZE",
-		GLBL_RNG_SZ_5_RING_SIZE_MASK},
-};
-
-
-static struct regfield_info
-	glbl_rng_sz_6_field_info[] = {
-	{"GLBL_RNG_SZ_6_RSVD_1",
-		GLBL_RNG_SZ_6_RSVD_1_MASK},
-	{"GLBL_RNG_SZ_6_RING_SIZE",
-		GLBL_RNG_SZ_6_RING_SIZE_MASK},
-};
-
-
-static struct regfield_info
-	glbl_rng_sz_7_field_info[] = {
-	{"GLBL_RNG_SZ_7_RSVD_1",
-		GLBL_RNG_SZ_7_RSVD_1_MASK},
-	{"GLBL_RNG_SZ_7_RING_SIZE",
-		GLBL_RNG_SZ_7_RING_SIZE_MASK},
-};
-
-
-static struct regfield_info
-	glbl_rng_sz_8_field_info[] = {
-	{"GLBL_RNG_SZ_8_RSVD_1",
-		GLBL_RNG_SZ_8_RSVD_1_MASK},
-	{"GLBL_RNG_SZ_8_RING_SIZE",
-		GLBL_RNG_SZ_8_RING_SIZE_MASK},
-};
-
-
-static struct regfield_info
-	glbl_rng_sz_9_field_info[] = {
-	{"GLBL_RNG_SZ_9_RSVD_1",
-		GLBL_RNG_SZ_9_RSVD_1_MASK},
-	{"GLBL_RNG_SZ_9_RING_SIZE",
-		GLBL_RNG_SZ_9_RING_SIZE_MASK},
-};
-
-
-static struct regfield_info
-	glbl_rng_sz_a_field_info[] = {
-	{"GLBL_RNG_SZ_A_RSVD_1",
-		GLBL_RNG_SZ_A_RSVD_1_MASK},
-	{"GLBL_RNG_SZ_A_RING_SIZE",
-		GLBL_RNG_SZ_A_RING_SIZE_MASK},
-};
-
-
-static struct regfield_info
-	glbl_rng_sz_b_field_info[] = {
-	{"GLBL_RNG_SZ_B_RSVD_1",
-		GLBL_RNG_SZ_B_RSVD_1_MASK},
-	{"GLBL_RNG_SZ_B_RING_SIZE",
-		GLBL_RNG_SZ_B_RING_SIZE_MASK},
-};
-
-
-static struct regfield_info
-	glbl_rng_sz_c_field_info[] = {
-	{"GLBL_RNG_SZ_C_RSVD_1",
-		GLBL_RNG_SZ_C_RSVD_1_MASK},
-	{"GLBL_RNG_SZ_C_RING_SIZE",
-		GLBL_RNG_SZ_C_RING_SIZE_MASK},
-};
-
-
-static struct regfield_info
-	glbl_rng_sz_d_field_info[] = {
-	{"GLBL_RNG_SZ_D_RSVD_1",
-		GLBL_RNG_SZ_D_RSVD_1_MASK},
-	{"GLBL_RNG_SZ_D_RING_SIZE",
-		GLBL_RNG_SZ_D_RING_SIZE_MASK},
-};
-
-
-static struct regfield_info
-	glbl_rng_sz_e_field_info[] = {
-	{"GLBL_RNG_SZ_E_RSVD_1",
-		GLBL_RNG_SZ_E_RSVD_1_MASK},
-	{"GLBL_RNG_SZ_E_RING_SIZE",
-		GLBL_RNG_SZ_E_RING_SIZE_MASK},
-};
-
-
-static struct regfield_info
-	glbl_rng_sz_f_field_info[] = {
-	{"GLBL_RNG_SZ_F_RSVD_1",
-		GLBL_RNG_SZ_F_RSVD_1_MASK},
-	{"GLBL_RNG_SZ_F_RING_SIZE",
-		GLBL_RNG_SZ_F_RING_SIZE_MASK},
-};
-
-
-static struct regfield_info
-	glbl_rng_sz_10_field_info[] = {
-	{"GLBL_RNG_SZ_10_RSVD_1",
-		GLBL_RNG_SZ_10_RSVD_1_MASK},
-	{"GLBL_RNG_SZ_10_RING_SIZE",
-		GLBL_RNG_SZ_10_RING_SIZE_MASK},
-};
-
-
-static struct regfield_info
-	glbl_err_stat_field_info[] = {
-	{"GLBL_ERR_STAT_RSVD_1",
-		GLBL_ERR_STAT_RSVD_1_MASK},
-	{"GLBL_ERR_STAT_ERR_H2C_ST",
-		GLBL_ERR_STAT_ERR_H2C_ST_MASK},
-	{"GLBL_ERR_STAT_ERR_BDG",
-		GLBL_ERR_STAT_ERR_BDG_MASK},
-	{"GLBL_ERR_STAT_IND_CTXT_CMD_ERR",
-		GLBL_ERR_STAT_IND_CTXT_CMD_ERR_MASK},
-	{"GLBL_ERR_STAT_ERR_C2H_ST",
-		GLBL_ERR_STAT_ERR_C2H_ST_MASK},
-	{"GLBL_ERR_STAT_ERR_C2H_MM_1",
-		GLBL_ERR_STAT_ERR_C2H_MM_1_MASK},
-	{"GLBL_ERR_STAT_ERR_C2H_MM_0",
-		GLBL_ERR_STAT_ERR_C2H_MM_0_MASK},
-	{"GLBL_ERR_STAT_ERR_H2C_MM_1",
-		GLBL_ERR_STAT_ERR_H2C_MM_1_MASK},
-	{"GLBL_ERR_STAT_ERR_H2C_MM_0",
-		GLBL_ERR_STAT_ERR_H2C_MM_0_MASK},
-	{"GLBL_ERR_STAT_ERR_TRQ",
-		GLBL_ERR_STAT_ERR_TRQ_MASK},
-	{"GLBL_ERR_STAT_ERR_DSC",
-		GLBL_ERR_STAT_ERR_DSC_MASK},
-	{"GLBL_ERR_STAT_ERR_RAM_DBE",
-		GLBL_ERR_STAT_ERR_RAM_DBE_MASK},
-	{"GLBL_ERR_STAT_ERR_RAM_SBE",
-		GLBL_ERR_STAT_ERR_RAM_SBE_MASK},
-};
-
-
-static struct regfield_info
-	glbl_err_mask_field_info[] = {
-	{"GLBL_ERR_RSVD_1",
-		GLBL_ERR_RSVD_1_MASK},
-	{"GLBL_ERR",
-		GLBL_ERR_MASK},
-};
-
-
-static struct regfield_info
-	glbl_dsc_cfg_field_info[] = {
-	{"GLBL_DSC_CFG_RSVD_1",
-		GLBL_DSC_CFG_RSVD_1_MASK},
-	{"GLBL_DSC_CFG_UNC_OVR_COR",
-		GLBL_DSC_CFG_UNC_OVR_COR_MASK},
-	{"GLBL_DSC_CFG_CTXT_FER_DIS",
-		GLBL_DSC_CFG_CTXT_FER_DIS_MASK},
-	{"GLBL_DSC_CFG_RSVD_2",
-		GLBL_DSC_CFG_RSVD_2_MASK},
-	{"GLBL_DSC_CFG_MAXFETCH",
-		GLBL_DSC_CFG_MAXFETCH_MASK},
-	{"GLBL_DSC_CFG_WB_ACC_INT",
-		GLBL_DSC_CFG_WB_ACC_INT_MASK},
-};
-
-
-static struct regfield_info
-	glbl_dsc_err_sts_field_info[] = {
-	{"GLBL_DSC_ERR_STS_RSVD_1",
-		GLBL_DSC_ERR_STS_RSVD_1_MASK},
-	{"GLBL_DSC_ERR_STS_SBE",
-		GLBL_DSC_ERR_STS_SBE_MASK},
-	{"GLBL_DSC_ERR_STS_DBE",
-		GLBL_DSC_ERR_STS_DBE_MASK},
-	{"GLBL_DSC_ERR_STS_RQ_CANCEL",
-		GLBL_DSC_ERR_STS_RQ_CANCEL_MASK},
-	{"GLBL_DSC_ERR_STS_DSC",
-		GLBL_DSC_ERR_STS_DSC_MASK},
-	{"GLBL_DSC_ERR_STS_DMA",
-		GLBL_DSC_ERR_STS_DMA_MASK},
-	{"GLBL_DSC_ERR_STS_FLR_CANCEL",
-		GLBL_DSC_ERR_STS_FLR_CANCEL_MASK},
-	{"GLBL_DSC_ERR_STS_RSVD_2",
-		GLBL_DSC_ERR_STS_RSVD_2_MASK},
-	{"GLBL_DSC_ERR_STS_DAT_POISON",
-		GLBL_DSC_ERR_STS_DAT_POISON_MASK},
-	{"GLBL_DSC_ERR_STS_TIMEOUT",
-		GLBL_DSC_ERR_STS_TIMEOUT_MASK},
-	{"GLBL_DSC_ERR_STS_FLR",
-		GLBL_DSC_ERR_STS_FLR_MASK},
-	{"GLBL_DSC_ERR_STS_TAG",
-		GLBL_DSC_ERR_STS_TAG_MASK},
-	{"GLBL_DSC_ERR_STS_ADDR",
-		GLBL_DSC_ERR_STS_ADDR_MASK},
-	{"GLBL_DSC_ERR_STS_PARAM",
-		GLBL_DSC_ERR_STS_PARAM_MASK},
-	{"GLBL_DSC_ERR_STS_UR_CA",
-		GLBL_DSC_ERR_STS_UR_CA_MASK},
-	{"GLBL_DSC_ERR_STS_POISON",
-		GLBL_DSC_ERR_STS_POISON_MASK},
-};
-
-
-static struct regfield_info
-	glbl_dsc_err_msk_field_info[] = {
-	{"GLBL_DSC_ERR_MSK",
-		GLBL_DSC_ERR_MSK_MASK},
-};
-
-
-static struct regfield_info
-	glbl_dsc_err_log0_field_info[] = {
-	{"GLBL_DSC_ERR_LOG0_VALID",
-		GLBL_DSC_ERR_LOG0_VALID_MASK},
-	{"GLBL_DSC_ERR_LOG0_RSVD_1",
-		GLBL_DSC_ERR_LOG0_RSVD_1_MASK},
-	{"GLBL_DSC_ERR_LOG0_QID",
-		GLBL_DSC_ERR_LOG0_QID_MASK},
-	{"GLBL_DSC_ERR_LOG0_SEL",
-		GLBL_DSC_ERR_LOG0_SEL_MASK},
-	{"GLBL_DSC_ERR_LOG0_CIDX",
-		GLBL_DSC_ERR_LOG0_CIDX_MASK},
-};
-
-
-static struct regfield_info
-	glbl_dsc_err_log1_field_info[] = {
-	{"GLBL_DSC_ERR_LOG1_RSVD_1",
-		GLBL_DSC_ERR_LOG1_RSVD_1_MASK},
-	{"GLBL_DSC_ERR_LOG1_SUB_TYPE",
-		GLBL_DSC_ERR_LOG1_SUB_TYPE_MASK},
-	{"GLBL_DSC_ERR_LOG1_ERR_TYPE",
-		GLBL_DSC_ERR_LOG1_ERR_TYPE_MASK},
-};
-
-
-static struct regfield_info
-	glbl_trq_err_sts_field_info[] = {
-	{"GLBL_TRQ_ERR_STS_RSVD_1",
-		GLBL_TRQ_ERR_STS_RSVD_1_MASK},
-	{"GLBL_TRQ_ERR_STS_TCP_TIMEOUT",
-		GLBL_TRQ_ERR_STS_TCP_TIMEOUT_MASK},
-	{"GLBL_TRQ_ERR_STS_VF_ACCESS_ERR",
-		GLBL_TRQ_ERR_STS_VF_ACCESS_ERR_MASK},
-	{"GLBL_TRQ_ERR_STS_QID_RANGE",
-		GLBL_TRQ_ERR_STS_QID_RANGE_MASK},
-	{"GLBL_TRQ_ERR_STS_UNMAPPED",
-		GLBL_TRQ_ERR_STS_UNMAPPED_MASK},
-};
-
-
-static struct regfield_info
-	glbl_trq_err_msk_field_info[] = {
-	{"GLBL_TRQ_ERR_MSK",
-		GLBL_TRQ_ERR_MSK_MASK},
-};
-
-
-static struct regfield_info
-	glbl_trq_err_log_field_info[] = {
-	{"GLBL_TRQ_ERR_LOG_RSVD_1",
-		GLBL_TRQ_ERR_LOG_RSVD_1_MASK},
-	{"GLBL_TRQ_ERR_LOG_TARGET",
-		GLBL_TRQ_ERR_LOG_TARGET_MASK},
-	{"GLBL_TRQ_ERR_LOG_FUNC",
-		GLBL_TRQ_ERR_LOG_FUNC_MASK},
-	{"GLBL_TRQ_ERR_LOG_ADDRESS",
-		GLBL_TRQ_ERR_LOG_ADDRESS_MASK},
-};
-
-
-static struct regfield_info
-	glbl_dsc_dbg_dat0_field_info[] = {
-	{"GLBL_DSC_DAT0_RSVD_1",
-		GLBL_DSC_DAT0_RSVD_1_MASK},
-	{"GLBL_DSC_DAT0_CTXT_ARB_DIR",
-		GLBL_DSC_DAT0_CTXT_ARB_DIR_MASK},
-	{"GLBL_DSC_DAT0_CTXT_ARB_QID",
-		GLBL_DSC_DAT0_CTXT_ARB_QID_MASK},
-	{"GLBL_DSC_DAT0_CTXT_ARB_REQ",
-		GLBL_DSC_DAT0_CTXT_ARB_REQ_MASK},
-	{"GLBL_DSC_DAT0_IRQ_FIFO_FL",
-		GLBL_DSC_DAT0_IRQ_FIFO_FL_MASK},
-	{"GLBL_DSC_DAT0_TMSTALL",
-		GLBL_DSC_DAT0_TMSTALL_MASK},
-	{"GLBL_DSC_DAT0_RRQ_STALL",
-		GLBL_DSC_DAT0_RRQ_STALL_MASK},
-	{"GLBL_DSC_DAT0_RCP_FIFO_SPC_STALL",
-		GLBL_DSC_DAT0_RCP_FIFO_SPC_STALL_MASK},
-	{"GLBL_DSC_DAT0_RRQ_FIFO_SPC_STALL",
-		GLBL_DSC_DAT0_RRQ_FIFO_SPC_STALL_MASK},
-	{"GLBL_DSC_DAT0_FAB_MRKR_RSP_STALL",
-		GLBL_DSC_DAT0_FAB_MRKR_RSP_STALL_MASK},
-	{"GLBL_DSC_DAT0_DSC_OUT_STALL",
-		GLBL_DSC_DAT0_DSC_OUT_STALL_MASK},
-};
-
-
-static struct regfield_info
-	glbl_dsc_dbg_dat1_field_info[] = {
-	{"GLBL_DSC_DAT1_RSVD_1",
-		GLBL_DSC_DAT1_RSVD_1_MASK},
-	{"GLBL_DSC_DAT1_EVT_SPC_C2H",
-		GLBL_DSC_DAT1_EVT_SPC_C2H_MASK},
-	{"GLBL_DSC_DAT1_EVT_SP_H2C",
-		GLBL_DSC_DAT1_EVT_SP_H2C_MASK},
-	{"GLBL_DSC_DAT1_DSC_SPC_C2H",
-		GLBL_DSC_DAT1_DSC_SPC_C2H_MASK},
-	{"GLBL_DSC_DAT1_DSC_SPC_H2C",
-		GLBL_DSC_DAT1_DSC_SPC_H2C_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_0_field_info[] = {
-	{"TRQ_SEL_FMAP_0_RSVD_1",
-		TRQ_SEL_FMAP_0_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_0_QID_MAX",
-		TRQ_SEL_FMAP_0_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_0_QID_BASE",
-		TRQ_SEL_FMAP_0_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_1_field_info[] = {
-	{"TRQ_SEL_FMAP_1_RSVD_1",
-		TRQ_SEL_FMAP_1_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_1_QID_MAX",
-		TRQ_SEL_FMAP_1_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_1_QID_BASE",
-		TRQ_SEL_FMAP_1_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_2_field_info[] = {
-	{"TRQ_SEL_FMAP_2_RSVD_1",
-		TRQ_SEL_FMAP_2_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_2_QID_MAX",
-		TRQ_SEL_FMAP_2_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_2_QID_BASE",
-		TRQ_SEL_FMAP_2_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_3_field_info[] = {
-	{"TRQ_SEL_FMAP_3_RSVD_1",
-		TRQ_SEL_FMAP_3_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_3_QID_MAX",
-		TRQ_SEL_FMAP_3_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_3_QID_BASE",
-		TRQ_SEL_FMAP_3_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_4_field_info[] = {
-	{"TRQ_SEL_FMAP_4_RSVD_1",
-		TRQ_SEL_FMAP_4_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_4_QID_MAX",
-		TRQ_SEL_FMAP_4_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_4_QID_BASE",
-		TRQ_SEL_FMAP_4_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_5_field_info[] = {
-	{"TRQ_SEL_FMAP_5_RSVD_1",
-		TRQ_SEL_FMAP_5_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_5_QID_MAX",
-		TRQ_SEL_FMAP_5_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_5_QID_BASE",
-		TRQ_SEL_FMAP_5_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_6_field_info[] = {
-	{"TRQ_SEL_FMAP_6_RSVD_1",
-		TRQ_SEL_FMAP_6_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_6_QID_MAX",
-		TRQ_SEL_FMAP_6_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_6_QID_BASE",
-		TRQ_SEL_FMAP_6_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_7_field_info[] = {
-	{"TRQ_SEL_FMAP_7_RSVD_1",
-		TRQ_SEL_FMAP_7_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_7_QID_MAX",
-		TRQ_SEL_FMAP_7_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_7_QID_BASE",
-		TRQ_SEL_FMAP_7_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_8_field_info[] = {
-	{"TRQ_SEL_FMAP_8_RSVD_1",
-		TRQ_SEL_FMAP_8_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_8_QID_MAX",
-		TRQ_SEL_FMAP_8_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_8_QID_BASE",
-		TRQ_SEL_FMAP_8_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_9_field_info[] = {
-	{"TRQ_SEL_FMAP_9_RSVD_1",
-		TRQ_SEL_FMAP_9_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_9_QID_MAX",
-		TRQ_SEL_FMAP_9_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_9_QID_BASE",
-		TRQ_SEL_FMAP_9_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_a_field_info[] = {
-	{"TRQ_SEL_FMAP_A_RSVD_1",
-		TRQ_SEL_FMAP_A_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_A_QID_MAX",
-		TRQ_SEL_FMAP_A_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_A_QID_BASE",
-		TRQ_SEL_FMAP_A_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_b_field_info[] = {
-	{"TRQ_SEL_FMAP_B_RSVD_1",
-		TRQ_SEL_FMAP_B_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_B_QID_MAX",
-		TRQ_SEL_FMAP_B_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_B_QID_BASE",
-		TRQ_SEL_FMAP_B_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_d_field_info[] = {
-	{"TRQ_SEL_FMAP_D_RSVD_1",
-		TRQ_SEL_FMAP_D_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_D_QID_MAX",
-		TRQ_SEL_FMAP_D_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_D_QID_BASE",
-		TRQ_SEL_FMAP_D_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_e_field_info[] = {
-	{"TRQ_SEL_FMAP_E_RSVD_1",
-		TRQ_SEL_FMAP_E_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_E_QID_MAX",
-		TRQ_SEL_FMAP_E_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_E_QID_BASE",
-		TRQ_SEL_FMAP_E_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_f_field_info[] = {
-	{"TRQ_SEL_FMAP_F_RSVD_1",
-		TRQ_SEL_FMAP_F_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_F_QID_MAX",
-		TRQ_SEL_FMAP_F_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_F_QID_BASE",
-		TRQ_SEL_FMAP_F_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_10_field_info[] = {
-	{"TRQ_SEL_FMAP_10_RSVD_1",
-		TRQ_SEL_FMAP_10_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_10_QID_MAX",
-		TRQ_SEL_FMAP_10_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_10_QID_BASE",
-		TRQ_SEL_FMAP_10_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_11_field_info[] = {
-	{"TRQ_SEL_FMAP_11_RSVD_1",
-		TRQ_SEL_FMAP_11_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_11_QID_MAX",
-		TRQ_SEL_FMAP_11_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_11_QID_BASE",
-		TRQ_SEL_FMAP_11_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_12_field_info[] = {
-	{"TRQ_SEL_FMAP_12_RSVD_1",
-		TRQ_SEL_FMAP_12_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_12_QID_MAX",
-		TRQ_SEL_FMAP_12_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_12_QID_BASE",
-		TRQ_SEL_FMAP_12_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_13_field_info[] = {
-	{"TRQ_SEL_FMAP_13_RSVD_1",
-		TRQ_SEL_FMAP_13_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_13_QID_MAX",
-		TRQ_SEL_FMAP_13_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_13_QID_BASE",
-		TRQ_SEL_FMAP_13_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_14_field_info[] = {
-	{"TRQ_SEL_FMAP_14_RSVD_1",
-		TRQ_SEL_FMAP_14_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_14_QID_MAX",
-		TRQ_SEL_FMAP_14_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_14_QID_BASE",
-		TRQ_SEL_FMAP_14_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_15_field_info[] = {
-	{"TRQ_SEL_FMAP_15_RSVD_1",
-		TRQ_SEL_FMAP_15_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_15_QID_MAX",
-		TRQ_SEL_FMAP_15_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_15_QID_BASE",
-		TRQ_SEL_FMAP_15_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_16_field_info[] = {
-	{"TRQ_SEL_FMAP_16_RSVD_1",
-		TRQ_SEL_FMAP_16_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_16_QID_MAX",
-		TRQ_SEL_FMAP_16_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_16_QID_BASE",
-		TRQ_SEL_FMAP_16_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_17_field_info[] = {
-	{"TRQ_SEL_FMAP_17_RSVD_1",
-		TRQ_SEL_FMAP_17_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_17_QID_MAX",
-		TRQ_SEL_FMAP_17_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_17_QID_BASE",
-		TRQ_SEL_FMAP_17_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_18_field_info[] = {
-	{"TRQ_SEL_FMAP_18_RSVD_1",
-		TRQ_SEL_FMAP_18_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_18_QID_MAX",
-		TRQ_SEL_FMAP_18_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_18_QID_BASE",
-		TRQ_SEL_FMAP_18_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_19_field_info[] = {
-	{"TRQ_SEL_FMAP_19_RSVD_1",
-		TRQ_SEL_FMAP_19_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_19_QID_MAX",
-		TRQ_SEL_FMAP_19_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_19_QID_BASE",
-		TRQ_SEL_FMAP_19_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_1a_field_info[] = {
-	{"TRQ_SEL_FMAP_1A_RSVD_1",
-		TRQ_SEL_FMAP_1A_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_1A_QID_MAX",
-		TRQ_SEL_FMAP_1A_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_1A_QID_BASE",
-		TRQ_SEL_FMAP_1A_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_1b_field_info[] = {
-	{"TRQ_SEL_FMAP_1B_RSVD_1",
-		TRQ_SEL_FMAP_1B_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_1B_QID_MAX",
-		TRQ_SEL_FMAP_1B_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_1B_QID_BASE",
-		TRQ_SEL_FMAP_1B_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_1c_field_info[] = {
-	{"TRQ_SEL_FMAP_1C_RSVD_1",
-		TRQ_SEL_FMAP_1C_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_1C_QID_MAX",
-		TRQ_SEL_FMAP_1C_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_1C_QID_BASE",
-		TRQ_SEL_FMAP_1C_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_1d_field_info[] = {
-	{"TRQ_SEL_FMAP_1D_RSVD_1",
-		TRQ_SEL_FMAP_1D_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_1D_QID_MAX",
-		TRQ_SEL_FMAP_1D_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_1D_QID_BASE",
-		TRQ_SEL_FMAP_1D_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_1e_field_info[] = {
-	{"TRQ_SEL_FMAP_1E_RSVD_1",
-		TRQ_SEL_FMAP_1E_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_1E_QID_MAX",
-		TRQ_SEL_FMAP_1E_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_1E_QID_BASE",
-		TRQ_SEL_FMAP_1E_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_1f_field_info[] = {
-	{"TRQ_SEL_FMAP_1F_RSVD_1",
-		TRQ_SEL_FMAP_1F_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_1F_QID_MAX",
-		TRQ_SEL_FMAP_1F_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_1F_QID_BASE",
-		TRQ_SEL_FMAP_1F_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_20_field_info[] = {
-	{"TRQ_SEL_FMAP_20_RSVD_1",
-		TRQ_SEL_FMAP_20_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_20_QID_MAX",
-		TRQ_SEL_FMAP_20_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_20_QID_BASE",
-		TRQ_SEL_FMAP_20_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_21_field_info[] = {
-	{"TRQ_SEL_FMAP_21_RSVD_1",
-		TRQ_SEL_FMAP_21_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_21_QID_MAX",
-		TRQ_SEL_FMAP_21_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_21_QID_BASE",
-		TRQ_SEL_FMAP_21_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_22_field_info[] = {
-	{"TRQ_SEL_FMAP_22_RSVD_1",
-		TRQ_SEL_FMAP_22_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_22_QID_MAX",
-		TRQ_SEL_FMAP_22_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_22_QID_BASE",
-		TRQ_SEL_FMAP_22_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_23_field_info[] = {
-	{"TRQ_SEL_FMAP_23_RSVD_1",
-		TRQ_SEL_FMAP_23_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_23_QID_MAX",
-		TRQ_SEL_FMAP_23_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_23_QID_BASE",
-		TRQ_SEL_FMAP_23_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_24_field_info[] = {
-	{"TRQ_SEL_FMAP_24_RSVD_1",
-		TRQ_SEL_FMAP_24_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_24_QID_MAX",
-		TRQ_SEL_FMAP_24_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_24_QID_BASE",
-		TRQ_SEL_FMAP_24_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_25_field_info[] = {
-	{"TRQ_SEL_FMAP_25_RSVD_1",
-		TRQ_SEL_FMAP_25_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_25_QID_MAX",
-		TRQ_SEL_FMAP_25_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_25_QID_BASE",
-		TRQ_SEL_FMAP_25_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_26_field_info[] = {
-	{"TRQ_SEL_FMAP_26_RSVD_1",
-		TRQ_SEL_FMAP_26_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_26_QID_MAX",
-		TRQ_SEL_FMAP_26_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_26_QID_BASE",
-		TRQ_SEL_FMAP_26_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_27_field_info[] = {
-	{"TRQ_SEL_FMAP_27_RSVD_1",
-		TRQ_SEL_FMAP_27_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_27_QID_MAX",
-		TRQ_SEL_FMAP_27_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_27_QID_BASE",
-		TRQ_SEL_FMAP_27_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_28_field_info[] = {
-	{"TRQ_SEL_FMAP_28_RSVD_1",
-		TRQ_SEL_FMAP_28_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_28_QID_MAX",
-		TRQ_SEL_FMAP_28_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_28_QID_BASE",
-		TRQ_SEL_FMAP_28_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_29_field_info[] = {
-	{"TRQ_SEL_FMAP_29_RSVD_1",
-		TRQ_SEL_FMAP_29_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_29_QID_MAX",
-		TRQ_SEL_FMAP_29_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_29_QID_BASE",
-		TRQ_SEL_FMAP_29_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_2a_field_info[] = {
-	{"TRQ_SEL_FMAP_2A_RSVD_1",
-		TRQ_SEL_FMAP_2A_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_2A_QID_MAX",
-		TRQ_SEL_FMAP_2A_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_2A_QID_BASE",
-		TRQ_SEL_FMAP_2A_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_2b_field_info[] = {
-	{"TRQ_SEL_FMAP_2B_RSVD_1",
-		TRQ_SEL_FMAP_2B_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_2B_QID_MAX",
-		TRQ_SEL_FMAP_2B_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_2B_QID_BASE",
-		TRQ_SEL_FMAP_2B_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_2c_field_info[] = {
-	{"TRQ_SEL_FMAP_2C_RSVD_1",
-		TRQ_SEL_FMAP_2C_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_2C_QID_MAX",
-		TRQ_SEL_FMAP_2C_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_2C_QID_BASE",
-		TRQ_SEL_FMAP_2C_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_2d_field_info[] = {
-	{"TRQ_SEL_FMAP_2D_RSVD_1",
-		TRQ_SEL_FMAP_2D_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_2D_QID_MAX",
-		TRQ_SEL_FMAP_2D_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_2D_QID_BASE",
-		TRQ_SEL_FMAP_2D_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_2e_field_info[] = {
-	{"TRQ_SEL_FMAP_2E_RSVD_1",
-		TRQ_SEL_FMAP_2E_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_2E_QID_MAX",
-		TRQ_SEL_FMAP_2E_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_2E_QID_BASE",
-		TRQ_SEL_FMAP_2E_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_2f_field_info[] = {
-	{"TRQ_SEL_FMAP_2F_RSVD_1",
-		TRQ_SEL_FMAP_2F_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_2F_QID_MAX",
-		TRQ_SEL_FMAP_2F_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_2F_QID_BASE",
-		TRQ_SEL_FMAP_2F_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_30_field_info[] = {
-	{"TRQ_SEL_FMAP_30_RSVD_1",
-		TRQ_SEL_FMAP_30_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_30_QID_MAX",
-		TRQ_SEL_FMAP_30_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_30_QID_BASE",
-		TRQ_SEL_FMAP_30_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_31_field_info[] = {
-	{"TRQ_SEL_FMAP_31_RSVD_1",
-		TRQ_SEL_FMAP_31_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_31_QID_MAX",
-		TRQ_SEL_FMAP_31_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_31_QID_BASE",
-		TRQ_SEL_FMAP_31_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_32_field_info[] = {
-	{"TRQ_SEL_FMAP_32_RSVD_1",
-		TRQ_SEL_FMAP_32_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_32_QID_MAX",
-		TRQ_SEL_FMAP_32_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_32_QID_BASE",
-		TRQ_SEL_FMAP_32_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_33_field_info[] = {
-	{"TRQ_SEL_FMAP_33_RSVD_1",
-		TRQ_SEL_FMAP_33_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_33_QID_MAX",
-		TRQ_SEL_FMAP_33_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_33_QID_BASE",
-		TRQ_SEL_FMAP_33_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_34_field_info[] = {
-	{"TRQ_SEL_FMAP_34_RSVD_1",
-		TRQ_SEL_FMAP_34_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_34_QID_MAX",
-		TRQ_SEL_FMAP_34_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_34_QID_BASE",
-		TRQ_SEL_FMAP_34_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_35_field_info[] = {
-	{"TRQ_SEL_FMAP_35_RSVD_1",
-		TRQ_SEL_FMAP_35_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_35_QID_MAX",
-		TRQ_SEL_FMAP_35_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_35_QID_BASE",
-		TRQ_SEL_FMAP_35_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_36_field_info[] = {
-	{"TRQ_SEL_FMAP_36_RSVD_1",
-		TRQ_SEL_FMAP_36_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_36_QID_MAX",
-		TRQ_SEL_FMAP_36_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_36_QID_BASE",
-		TRQ_SEL_FMAP_36_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_37_field_info[] = {
-	{"TRQ_SEL_FMAP_37_RSVD_1",
-		TRQ_SEL_FMAP_37_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_37_QID_MAX",
-		TRQ_SEL_FMAP_37_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_37_QID_BASE",
-		TRQ_SEL_FMAP_37_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_38_field_info[] = {
-	{"TRQ_SEL_FMAP_38_RSVD_1",
-		TRQ_SEL_FMAP_38_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_38_QID_MAX",
-		TRQ_SEL_FMAP_38_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_38_QID_BASE",
-		TRQ_SEL_FMAP_38_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_39_field_info[] = {
-	{"TRQ_SEL_FMAP_39_RSVD_1",
-		TRQ_SEL_FMAP_39_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_39_QID_MAX",
-		TRQ_SEL_FMAP_39_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_39_QID_BASE",
-		TRQ_SEL_FMAP_39_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_3a_field_info[] = {
-	{"TRQ_SEL_FMAP_3A_RSVD_1",
-		TRQ_SEL_FMAP_3A_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_3A_QID_MAX",
-		TRQ_SEL_FMAP_3A_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_3A_QID_BASE",
-		TRQ_SEL_FMAP_3A_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_3b_field_info[] = {
-	{"TRQ_SEL_FMAP_3B_RSVD_1",
-		TRQ_SEL_FMAP_3B_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_3B_QID_MAX",
-		TRQ_SEL_FMAP_3B_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_3B_QID_BASE",
-		TRQ_SEL_FMAP_3B_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_3c_field_info[] = {
-	{"TRQ_SEL_FMAP_3C_RSVD_1",
-		TRQ_SEL_FMAP_3C_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_3C_QID_MAX",
-		TRQ_SEL_FMAP_3C_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_3C_QID_BASE",
-		TRQ_SEL_FMAP_3C_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_3d_field_info[] = {
-	{"TRQ_SEL_FMAP_3D_RSVD_1",
-		TRQ_SEL_FMAP_3D_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_3D_QID_MAX",
-		TRQ_SEL_FMAP_3D_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_3D_QID_BASE",
-		TRQ_SEL_FMAP_3D_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_3e_field_info[] = {
-	{"TRQ_SEL_FMAP_3E_RSVD_1",
-		TRQ_SEL_FMAP_3E_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_3E_QID_MAX",
-		TRQ_SEL_FMAP_3E_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_3E_QID_BASE",
-		TRQ_SEL_FMAP_3E_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_3f_field_info[] = {
-	{"TRQ_SEL_FMAP_3F_RSVD_1",
-		TRQ_SEL_FMAP_3F_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_3F_QID_MAX",
-		TRQ_SEL_FMAP_3F_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_3F_QID_BASE",
-		TRQ_SEL_FMAP_3F_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_40_field_info[] = {
-	{"TRQ_SEL_FMAP_40_RSVD_1",
-		TRQ_SEL_FMAP_40_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_40_QID_MAX",
-		TRQ_SEL_FMAP_40_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_40_QID_BASE",
-		TRQ_SEL_FMAP_40_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_41_field_info[] = {
-	{"TRQ_SEL_FMAP_41_RSVD_1",
-		TRQ_SEL_FMAP_41_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_41_QID_MAX",
-		TRQ_SEL_FMAP_41_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_41_QID_BASE",
-		TRQ_SEL_FMAP_41_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_42_field_info[] = {
-	{"TRQ_SEL_FMAP_42_RSVD_1",
-		TRQ_SEL_FMAP_42_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_42_QID_MAX",
-		TRQ_SEL_FMAP_42_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_42_QID_BASE",
-		TRQ_SEL_FMAP_42_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_43_field_info[] = {
-	{"TRQ_SEL_FMAP_43_RSVD_1",
-		TRQ_SEL_FMAP_43_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_43_QID_MAX",
-		TRQ_SEL_FMAP_43_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_43_QID_BASE",
-		TRQ_SEL_FMAP_43_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_44_field_info[] = {
-	{"TRQ_SEL_FMAP_44_RSVD_1",
-		TRQ_SEL_FMAP_44_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_44_QID_MAX",
-		TRQ_SEL_FMAP_44_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_44_QID_BASE",
-		TRQ_SEL_FMAP_44_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_45_field_info[] = {
-	{"TRQ_SEL_FMAP_45_RSVD_1",
-		TRQ_SEL_FMAP_45_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_45_QID_MAX",
-		TRQ_SEL_FMAP_45_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_45_QID_BASE",
-		TRQ_SEL_FMAP_45_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_46_field_info[] = {
-	{"TRQ_SEL_FMAP_46_RSVD_1",
-		TRQ_SEL_FMAP_46_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_46_QID_MAX",
-		TRQ_SEL_FMAP_46_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_46_QID_BASE",
-		TRQ_SEL_FMAP_46_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_47_field_info[] = {
-	{"TRQ_SEL_FMAP_47_RSVD_1",
-		TRQ_SEL_FMAP_47_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_47_QID_MAX",
-		TRQ_SEL_FMAP_47_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_47_QID_BASE",
-		TRQ_SEL_FMAP_47_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_48_field_info[] = {
-	{"TRQ_SEL_FMAP_48_RSVD_1",
-		TRQ_SEL_FMAP_48_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_48_QID_MAX",
-		TRQ_SEL_FMAP_48_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_48_QID_BASE",
-		TRQ_SEL_FMAP_48_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_49_field_info[] = {
-	{"TRQ_SEL_FMAP_49_RSVD_1",
-		TRQ_SEL_FMAP_49_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_49_QID_MAX",
-		TRQ_SEL_FMAP_49_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_49_QID_BASE",
-		TRQ_SEL_FMAP_49_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_4a_field_info[] = {
-	{"TRQ_SEL_FMAP_4A_RSVD_1",
-		TRQ_SEL_FMAP_4A_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_4A_QID_MAX",
-		TRQ_SEL_FMAP_4A_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_4A_QID_BASE",
-		TRQ_SEL_FMAP_4A_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_4b_field_info[] = {
-	{"TRQ_SEL_FMAP_4B_RSVD_1",
-		TRQ_SEL_FMAP_4B_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_4B_QID_MAX",
-		TRQ_SEL_FMAP_4B_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_4B_QID_BASE",
-		TRQ_SEL_FMAP_4B_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_4c_field_info[] = {
-	{"TRQ_SEL_FMAP_4C_RSVD_1",
-		TRQ_SEL_FMAP_4C_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_4C_QID_MAX",
-		TRQ_SEL_FMAP_4C_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_4C_QID_BASE",
-		TRQ_SEL_FMAP_4C_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_4d_field_info[] = {
-	{"TRQ_SEL_FMAP_4D_RSVD_1",
-		TRQ_SEL_FMAP_4D_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_4D_QID_MAX",
-		TRQ_SEL_FMAP_4D_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_4D_QID_BASE",
-		TRQ_SEL_FMAP_4D_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_4e_field_info[] = {
-	{"TRQ_SEL_FMAP_4E_RSVD_1",
-		TRQ_SEL_FMAP_4E_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_4E_QID_MAX",
-		TRQ_SEL_FMAP_4E_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_4E_QID_BASE",
-		TRQ_SEL_FMAP_4E_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_4f_field_info[] = {
-	{"TRQ_SEL_FMAP_4F_RSVD_1",
-		TRQ_SEL_FMAP_4F_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_4F_QID_MAX",
-		TRQ_SEL_FMAP_4F_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_4F_QID_BASE",
-		TRQ_SEL_FMAP_4F_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_50_field_info[] = {
-	{"TRQ_SEL_FMAP_50_RSVD_1",
-		TRQ_SEL_FMAP_50_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_50_QID_MAX",
-		TRQ_SEL_FMAP_50_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_50_QID_BASE",
-		TRQ_SEL_FMAP_50_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_51_field_info[] = {
-	{"TRQ_SEL_FMAP_51_RSVD_1",
-		TRQ_SEL_FMAP_51_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_51_QID_MAX",
-		TRQ_SEL_FMAP_51_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_51_QID_BASE",
-		TRQ_SEL_FMAP_51_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_52_field_info[] = {
-	{"TRQ_SEL_FMAP_52_RSVD_1",
-		TRQ_SEL_FMAP_52_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_52_QID_MAX",
-		TRQ_SEL_FMAP_52_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_52_QID_BASE",
-		TRQ_SEL_FMAP_52_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_53_field_info[] = {
-	{"TRQ_SEL_FMAP_53_RSVD_1",
-		TRQ_SEL_FMAP_53_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_53_QID_MAX",
-		TRQ_SEL_FMAP_53_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_53_QID_BASE",
-		TRQ_SEL_FMAP_53_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_54_field_info[] = {
-	{"TRQ_SEL_FMAP_54_RSVD_1",
-		TRQ_SEL_FMAP_54_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_54_QID_MAX",
-		TRQ_SEL_FMAP_54_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_54_QID_BASE",
-		TRQ_SEL_FMAP_54_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_55_field_info[] = {
-	{"TRQ_SEL_FMAP_55_RSVD_1",
-		TRQ_SEL_FMAP_55_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_55_QID_MAX",
-		TRQ_SEL_FMAP_55_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_55_QID_BASE",
-		TRQ_SEL_FMAP_55_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_56_field_info[] = {
-	{"TRQ_SEL_FMAP_56_RSVD_1",
-		TRQ_SEL_FMAP_56_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_56_QID_MAX",
-		TRQ_SEL_FMAP_56_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_56_QID_BASE",
-		TRQ_SEL_FMAP_56_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_57_field_info[] = {
-	{"TRQ_SEL_FMAP_57_RSVD_1",
-		TRQ_SEL_FMAP_57_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_57_QID_MAX",
-		TRQ_SEL_FMAP_57_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_57_QID_BASE",
-		TRQ_SEL_FMAP_57_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_58_field_info[] = {
-	{"TRQ_SEL_FMAP_58_RSVD_1",
-		TRQ_SEL_FMAP_58_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_58_QID_MAX",
-		TRQ_SEL_FMAP_58_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_58_QID_BASE",
-		TRQ_SEL_FMAP_58_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_59_field_info[] = {
-	{"TRQ_SEL_FMAP_59_RSVD_1",
-		TRQ_SEL_FMAP_59_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_59_QID_MAX",
-		TRQ_SEL_FMAP_59_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_59_QID_BASE",
-		TRQ_SEL_FMAP_59_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_5a_field_info[] = {
-	{"TRQ_SEL_FMAP_5A_RSVD_1",
-		TRQ_SEL_FMAP_5A_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_5A_QID_MAX",
-		TRQ_SEL_FMAP_5A_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_5A_QID_BASE",
-		TRQ_SEL_FMAP_5A_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_5b_field_info[] = {
-	{"TRQ_SEL_FMAP_5B_RSVD_1",
-		TRQ_SEL_FMAP_5B_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_5B_QID_MAX",
-		TRQ_SEL_FMAP_5B_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_5B_QID_BASE",
-		TRQ_SEL_FMAP_5B_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_5c_field_info[] = {
-	{"TRQ_SEL_FMAP_5C_RSVD_1",
-		TRQ_SEL_FMAP_5C_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_5C_QID_MAX",
-		TRQ_SEL_FMAP_5C_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_5C_QID_BASE",
-		TRQ_SEL_FMAP_5C_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_5d_field_info[] = {
-	{"TRQ_SEL_FMAP_5D_RSVD_1",
-		TRQ_SEL_FMAP_5D_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_5D_QID_MAX",
-		TRQ_SEL_FMAP_5D_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_5D_QID_BASE",
-		TRQ_SEL_FMAP_5D_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_5e_field_info[] = {
-	{"TRQ_SEL_FMAP_5E_RSVD_1",
-		TRQ_SEL_FMAP_5E_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_5E_QID_MAX",
-		TRQ_SEL_FMAP_5E_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_5E_QID_BASE",
-		TRQ_SEL_FMAP_5E_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_5f_field_info[] = {
-	{"TRQ_SEL_FMAP_5F_RSVD_1",
-		TRQ_SEL_FMAP_5F_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_5F_QID_MAX",
-		TRQ_SEL_FMAP_5F_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_5F_QID_BASE",
-		TRQ_SEL_FMAP_5F_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_60_field_info[] = {
-	{"TRQ_SEL_FMAP_60_RSVD_1",
-		TRQ_SEL_FMAP_60_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_60_QID_MAX",
-		TRQ_SEL_FMAP_60_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_60_QID_BASE",
-		TRQ_SEL_FMAP_60_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_61_field_info[] = {
-	{"TRQ_SEL_FMAP_61_RSVD_1",
-		TRQ_SEL_FMAP_61_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_61_QID_MAX",
-		TRQ_SEL_FMAP_61_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_61_QID_BASE",
-		TRQ_SEL_FMAP_61_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_62_field_info[] = {
-	{"TRQ_SEL_FMAP_62_RSVD_1",
-		TRQ_SEL_FMAP_62_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_62_QID_MAX",
-		TRQ_SEL_FMAP_62_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_62_QID_BASE",
-		TRQ_SEL_FMAP_62_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_63_field_info[] = {
-	{"TRQ_SEL_FMAP_63_RSVD_1",
-		TRQ_SEL_FMAP_63_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_63_QID_MAX",
-		TRQ_SEL_FMAP_63_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_63_QID_BASE",
-		TRQ_SEL_FMAP_63_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_64_field_info[] = {
-	{"TRQ_SEL_FMAP_64_RSVD_1",
-		TRQ_SEL_FMAP_64_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_64_QID_MAX",
-		TRQ_SEL_FMAP_64_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_64_QID_BASE",
-		TRQ_SEL_FMAP_64_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_65_field_info[] = {
-	{"TRQ_SEL_FMAP_65_RSVD_1",
-		TRQ_SEL_FMAP_65_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_65_QID_MAX",
-		TRQ_SEL_FMAP_65_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_65_QID_BASE",
-		TRQ_SEL_FMAP_65_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_66_field_info[] = {
-	{"TRQ_SEL_FMAP_66_RSVD_1",
-		TRQ_SEL_FMAP_66_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_66_QID_MAX",
-		TRQ_SEL_FMAP_66_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_66_QID_BASE",
-		TRQ_SEL_FMAP_66_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_67_field_info[] = {
-	{"TRQ_SEL_FMAP_67_RSVD_1",
-		TRQ_SEL_FMAP_67_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_67_QID_MAX",
-		TRQ_SEL_FMAP_67_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_67_QID_BASE",
-		TRQ_SEL_FMAP_67_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_68_field_info[] = {
-	{"TRQ_SEL_FMAP_68_RSVD_1",
-		TRQ_SEL_FMAP_68_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_68_QID_MAX",
-		TRQ_SEL_FMAP_68_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_68_QID_BASE",
-		TRQ_SEL_FMAP_68_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_69_field_info[] = {
-	{"TRQ_SEL_FMAP_69_RSVD_1",
-		TRQ_SEL_FMAP_69_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_69_QID_MAX",
-		TRQ_SEL_FMAP_69_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_69_QID_BASE",
-		TRQ_SEL_FMAP_69_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_6a_field_info[] = {
-	{"TRQ_SEL_FMAP_6A_RSVD_1",
-		TRQ_SEL_FMAP_6A_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_6A_QID_MAX",
-		TRQ_SEL_FMAP_6A_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_6A_QID_BASE",
-		TRQ_SEL_FMAP_6A_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_6b_field_info[] = {
-	{"TRQ_SEL_FMAP_6B_RSVD_1",
-		TRQ_SEL_FMAP_6B_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_6B_QID_MAX",
-		TRQ_SEL_FMAP_6B_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_6B_QID_BASE",
-		TRQ_SEL_FMAP_6B_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_6c_field_info[] = {
-	{"TRQ_SEL_FMAP_6C_RSVD_1",
-		TRQ_SEL_FMAP_6C_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_6C_QID_MAX",
-		TRQ_SEL_FMAP_6C_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_6C_QID_BASE",
-		TRQ_SEL_FMAP_6C_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_6d_field_info[] = {
-	{"TRQ_SEL_FMAP_6D_RSVD_1",
-		TRQ_SEL_FMAP_6D_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_6D_QID_MAX",
-		TRQ_SEL_FMAP_6D_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_6D_QID_BASE",
-		TRQ_SEL_FMAP_6D_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_6e_field_info[] = {
-	{"TRQ_SEL_FMAP_6E_RSVD_1",
-		TRQ_SEL_FMAP_6E_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_6E_QID_MAX",
-		TRQ_SEL_FMAP_6E_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_6E_QID_BASE",
-		TRQ_SEL_FMAP_6E_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_6f_field_info[] = {
-	{"TRQ_SEL_FMAP_6F_RSVD_1",
-		TRQ_SEL_FMAP_6F_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_6F_QID_MAX",
-		TRQ_SEL_FMAP_6F_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_6F_QID_BASE",
-		TRQ_SEL_FMAP_6F_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_70_field_info[] = {
-	{"TRQ_SEL_FMAP_70_RSVD_1",
-		TRQ_SEL_FMAP_70_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_70_QID_MAX",
-		TRQ_SEL_FMAP_70_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_70_QID_BASE",
-		TRQ_SEL_FMAP_70_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_71_field_info[] = {
-	{"TRQ_SEL_FMAP_71_RSVD_1",
-		TRQ_SEL_FMAP_71_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_71_QID_MAX",
-		TRQ_SEL_FMAP_71_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_71_QID_BASE",
-		TRQ_SEL_FMAP_71_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_72_field_info[] = {
-	{"TRQ_SEL_FMAP_72_RSVD_1",
-		TRQ_SEL_FMAP_72_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_72_QID_MAX",
-		TRQ_SEL_FMAP_72_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_72_QID_BASE",
-		TRQ_SEL_FMAP_72_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_73_field_info[] = {
-	{"TRQ_SEL_FMAP_73_RSVD_1",
-		TRQ_SEL_FMAP_73_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_73_QID_MAX",
-		TRQ_SEL_FMAP_73_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_73_QID_BASE",
-		TRQ_SEL_FMAP_73_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_74_field_info[] = {
-	{"TRQ_SEL_FMAP_74_RSVD_1",
-		TRQ_SEL_FMAP_74_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_74_QID_MAX",
-		TRQ_SEL_FMAP_74_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_74_QID_BASE",
-		TRQ_SEL_FMAP_74_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_75_field_info[] = {
-	{"TRQ_SEL_FMAP_75_RSVD_1",
-		TRQ_SEL_FMAP_75_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_75_QID_MAX",
-		TRQ_SEL_FMAP_75_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_75_QID_BASE",
-		TRQ_SEL_FMAP_75_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_76_field_info[] = {
-	{"TRQ_SEL_FMAP_76_RSVD_1",
-		TRQ_SEL_FMAP_76_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_76_QID_MAX",
-		TRQ_SEL_FMAP_76_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_76_QID_BASE",
-		TRQ_SEL_FMAP_76_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_77_field_info[] = {
-	{"TRQ_SEL_FMAP_77_RSVD_1",
-		TRQ_SEL_FMAP_77_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_77_QID_MAX",
-		TRQ_SEL_FMAP_77_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_77_QID_BASE",
-		TRQ_SEL_FMAP_77_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_78_field_info[] = {
-	{"TRQ_SEL_FMAP_78_RSVD_1",
-		TRQ_SEL_FMAP_78_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_78_QID_MAX",
-		TRQ_SEL_FMAP_78_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_78_QID_BASE",
-		TRQ_SEL_FMAP_78_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_79_field_info[] = {
-	{"TRQ_SEL_FMAP_79_RSVD_1",
-		TRQ_SEL_FMAP_79_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_79_QID_MAX",
-		TRQ_SEL_FMAP_79_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_79_QID_BASE",
-		TRQ_SEL_FMAP_79_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_7a_field_info[] = {
-	{"TRQ_SEL_FMAP_7A_RSVD_1",
-		TRQ_SEL_FMAP_7A_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_7A_QID_MAX",
-		TRQ_SEL_FMAP_7A_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_7A_QID_BASE",
-		TRQ_SEL_FMAP_7A_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_7b_field_info[] = {
-	{"TRQ_SEL_FMAP_7B_RSVD_1",
-		TRQ_SEL_FMAP_7B_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_7B_QID_MAX",
-		TRQ_SEL_FMAP_7B_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_7B_QID_BASE",
-		TRQ_SEL_FMAP_7B_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_7c_field_info[] = {
-	{"TRQ_SEL_FMAP_7C_RSVD_1",
-		TRQ_SEL_FMAP_7C_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_7C_QID_MAX",
-		TRQ_SEL_FMAP_7C_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_7C_QID_BASE",
-		TRQ_SEL_FMAP_7C_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_7d_field_info[] = {
-	{"TRQ_SEL_FMAP_7D_RSVD_1",
-		TRQ_SEL_FMAP_7D_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_7D_QID_MAX",
-		TRQ_SEL_FMAP_7D_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_7D_QID_BASE",
-		TRQ_SEL_FMAP_7D_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_7e_field_info[] = {
-	{"TRQ_SEL_FMAP_7E_RSVD_1",
-		TRQ_SEL_FMAP_7E_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_7E_QID_MAX",
-		TRQ_SEL_FMAP_7E_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_7E_QID_BASE",
-		TRQ_SEL_FMAP_7E_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_7f_field_info[] = {
-	{"TRQ_SEL_FMAP_7F_RSVD_1",
-		TRQ_SEL_FMAP_7F_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_7F_QID_MAX",
-		TRQ_SEL_FMAP_7F_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_7F_QID_BASE",
-		TRQ_SEL_FMAP_7F_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_80_field_info[] = {
-	{"TRQ_SEL_FMAP_80_RSVD_1",
-		TRQ_SEL_FMAP_80_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_80_QID_MAX",
-		TRQ_SEL_FMAP_80_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_80_QID_BASE",
-		TRQ_SEL_FMAP_80_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_81_field_info[] = {
-	{"TRQ_SEL_FMAP_81_RSVD_1",
-		TRQ_SEL_FMAP_81_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_81_QID_MAX",
-		TRQ_SEL_FMAP_81_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_81_QID_BASE",
-		TRQ_SEL_FMAP_81_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_82_field_info[] = {
-	{"TRQ_SEL_FMAP_82_RSVD_1",
-		TRQ_SEL_FMAP_82_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_82_QID_MAX",
-		TRQ_SEL_FMAP_82_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_82_QID_BASE",
-		TRQ_SEL_FMAP_82_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_83_field_info[] = {
-	{"TRQ_SEL_FMAP_83_RSVD_1",
-		TRQ_SEL_FMAP_83_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_83_QID_MAX",
-		TRQ_SEL_FMAP_83_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_83_QID_BASE",
-		TRQ_SEL_FMAP_83_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_84_field_info[] = {
-	{"TRQ_SEL_FMAP_84_RSVD_1",
-		TRQ_SEL_FMAP_84_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_84_QID_MAX",
-		TRQ_SEL_FMAP_84_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_84_QID_BASE",
-		TRQ_SEL_FMAP_84_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_85_field_info[] = {
-	{"TRQ_SEL_FMAP_85_RSVD_1",
-		TRQ_SEL_FMAP_85_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_85_QID_MAX",
-		TRQ_SEL_FMAP_85_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_85_QID_BASE",
-		TRQ_SEL_FMAP_85_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_86_field_info[] = {
-	{"TRQ_SEL_FMAP_86_RSVD_1",
-		TRQ_SEL_FMAP_86_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_86_QID_MAX",
-		TRQ_SEL_FMAP_86_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_86_QID_BASE",
-		TRQ_SEL_FMAP_86_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_87_field_info[] = {
-	{"TRQ_SEL_FMAP_87_RSVD_1",
-		TRQ_SEL_FMAP_87_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_87_QID_MAX",
-		TRQ_SEL_FMAP_87_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_87_QID_BASE",
-		TRQ_SEL_FMAP_87_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_88_field_info[] = {
-	{"TRQ_SEL_FMAP_88_RSVD_1",
-		TRQ_SEL_FMAP_88_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_88_QID_MAX",
-		TRQ_SEL_FMAP_88_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_88_QID_BASE",
-		TRQ_SEL_FMAP_88_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_89_field_info[] = {
-	{"TRQ_SEL_FMAP_89_RSVD_1",
-		TRQ_SEL_FMAP_89_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_89_QID_MAX",
-		TRQ_SEL_FMAP_89_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_89_QID_BASE",
-		TRQ_SEL_FMAP_89_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_8a_field_info[] = {
-	{"TRQ_SEL_FMAP_8A_RSVD_1",
-		TRQ_SEL_FMAP_8A_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_8A_QID_MAX",
-		TRQ_SEL_FMAP_8A_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_8A_QID_BASE",
-		TRQ_SEL_FMAP_8A_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_8b_field_info[] = {
-	{"TRQ_SEL_FMAP_8B_RSVD_1",
-		TRQ_SEL_FMAP_8B_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_8B_QID_MAX",
-		TRQ_SEL_FMAP_8B_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_8B_QID_BASE",
-		TRQ_SEL_FMAP_8B_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_8c_field_info[] = {
-	{"TRQ_SEL_FMAP_8C_RSVD_1",
-		TRQ_SEL_FMAP_8C_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_8C_QID_MAX",
-		TRQ_SEL_FMAP_8C_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_8C_QID_BASE",
-		TRQ_SEL_FMAP_8C_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_8d_field_info[] = {
-	{"TRQ_SEL_FMAP_8D_RSVD_1",
-		TRQ_SEL_FMAP_8D_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_8D_QID_MAX",
-		TRQ_SEL_FMAP_8D_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_8D_QID_BASE",
-		TRQ_SEL_FMAP_8D_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_8e_field_info[] = {
-	{"TRQ_SEL_FMAP_8E_RSVD_1",
-		TRQ_SEL_FMAP_8E_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_8E_QID_MAX",
-		TRQ_SEL_FMAP_8E_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_8E_QID_BASE",
-		TRQ_SEL_FMAP_8E_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_8f_field_info[] = {
-	{"TRQ_SEL_FMAP_8F_RSVD_1",
-		TRQ_SEL_FMAP_8F_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_8F_QID_MAX",
-		TRQ_SEL_FMAP_8F_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_8F_QID_BASE",
-		TRQ_SEL_FMAP_8F_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_90_field_info[] = {
-	{"TRQ_SEL_FMAP_90_RSVD_1",
-		TRQ_SEL_FMAP_90_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_90_QID_MAX",
-		TRQ_SEL_FMAP_90_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_90_QID_BASE",
-		TRQ_SEL_FMAP_90_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_91_field_info[] = {
-	{"TRQ_SEL_FMAP_91_RSVD_1",
-		TRQ_SEL_FMAP_91_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_91_QID_MAX",
-		TRQ_SEL_FMAP_91_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_91_QID_BASE",
-		TRQ_SEL_FMAP_91_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_92_field_info[] = {
-	{"TRQ_SEL_FMAP_92_RSVD_1",
-		TRQ_SEL_FMAP_92_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_92_QID_MAX",
-		TRQ_SEL_FMAP_92_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_92_QID_BASE",
-		TRQ_SEL_FMAP_92_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_93_field_info[] = {
-	{"TRQ_SEL_FMAP_93_RSVD_1",
-		TRQ_SEL_FMAP_93_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_93_QID_MAX",
-		TRQ_SEL_FMAP_93_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_93_QID_BASE",
-		TRQ_SEL_FMAP_93_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_94_field_info[] = {
-	{"TRQ_SEL_FMAP_94_RSVD_1",
-		TRQ_SEL_FMAP_94_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_94_QID_MAX",
-		TRQ_SEL_FMAP_94_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_94_QID_BASE",
-		TRQ_SEL_FMAP_94_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_95_field_info[] = {
-	{"TRQ_SEL_FMAP_95_RSVD_1",
-		TRQ_SEL_FMAP_95_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_95_QID_MAX",
-		TRQ_SEL_FMAP_95_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_95_QID_BASE",
-		TRQ_SEL_FMAP_95_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_96_field_info[] = {
-	{"TRQ_SEL_FMAP_96_RSVD_1",
-		TRQ_SEL_FMAP_96_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_96_QID_MAX",
-		TRQ_SEL_FMAP_96_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_96_QID_BASE",
-		TRQ_SEL_FMAP_96_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_97_field_info[] = {
-	{"TRQ_SEL_FMAP_97_RSVD_1",
-		TRQ_SEL_FMAP_97_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_97_QID_MAX",
-		TRQ_SEL_FMAP_97_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_97_QID_BASE",
-		TRQ_SEL_FMAP_97_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_98_field_info[] = {
-	{"TRQ_SEL_FMAP_98_RSVD_1",
-		TRQ_SEL_FMAP_98_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_98_QID_MAX",
-		TRQ_SEL_FMAP_98_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_98_QID_BASE",
-		TRQ_SEL_FMAP_98_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_99_field_info[] = {
-	{"TRQ_SEL_FMAP_99_RSVD_1",
-		TRQ_SEL_FMAP_99_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_99_QID_MAX",
-		TRQ_SEL_FMAP_99_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_99_QID_BASE",
-		TRQ_SEL_FMAP_99_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_9a_field_info[] = {
-	{"TRQ_SEL_FMAP_9A_RSVD_1",
-		TRQ_SEL_FMAP_9A_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_9A_QID_MAX",
-		TRQ_SEL_FMAP_9A_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_9A_QID_BASE",
-		TRQ_SEL_FMAP_9A_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_9b_field_info[] = {
-	{"TRQ_SEL_FMAP_9B_RSVD_1",
-		TRQ_SEL_FMAP_9B_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_9B_QID_MAX",
-		TRQ_SEL_FMAP_9B_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_9B_QID_BASE",
-		TRQ_SEL_FMAP_9B_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_9c_field_info[] = {
-	{"TRQ_SEL_FMAP_9C_RSVD_1",
-		TRQ_SEL_FMAP_9C_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_9C_QID_MAX",
-		TRQ_SEL_FMAP_9C_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_9C_QID_BASE",
-		TRQ_SEL_FMAP_9C_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_9d_field_info[] = {
-	{"TRQ_SEL_FMAP_9D_RSVD_1",
-		TRQ_SEL_FMAP_9D_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_9D_QID_MAX",
-		TRQ_SEL_FMAP_9D_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_9D_QID_BASE",
-		TRQ_SEL_FMAP_9D_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_9e_field_info[] = {
-	{"TRQ_SEL_FMAP_9E_RSVD_1",
-		TRQ_SEL_FMAP_9E_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_9E_QID_MAX",
-		TRQ_SEL_FMAP_9E_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_9E_QID_BASE",
-		TRQ_SEL_FMAP_9E_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_9f_field_info[] = {
-	{"TRQ_SEL_FMAP_9F_RSVD_1",
-		TRQ_SEL_FMAP_9F_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_9F_QID_MAX",
-		TRQ_SEL_FMAP_9F_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_9F_QID_BASE",
-		TRQ_SEL_FMAP_9F_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_a0_field_info[] = {
-	{"TRQ_SEL_FMAP_A0_RSVD_1",
-		TRQ_SEL_FMAP_A0_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_A0_QID_MAX",
-		TRQ_SEL_FMAP_A0_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_A0_QID_BASE",
-		TRQ_SEL_FMAP_A0_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_a1_field_info[] = {
-	{"TRQ_SEL_FMAP_A1_RSVD_1",
-		TRQ_SEL_FMAP_A1_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_A1_QID_MAX",
-		TRQ_SEL_FMAP_A1_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_A1_QID_BASE",
-		TRQ_SEL_FMAP_A1_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_a2_field_info[] = {
-	{"TRQ_SEL_FMAP_A2_RSVD_1",
-		TRQ_SEL_FMAP_A2_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_A2_QID_MAX",
-		TRQ_SEL_FMAP_A2_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_A2_QID_BASE",
-		TRQ_SEL_FMAP_A2_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_a3_field_info[] = {
-	{"TRQ_SEL_FMAP_A3_RSVD_1",
-		TRQ_SEL_FMAP_A3_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_A3_QID_MAX",
-		TRQ_SEL_FMAP_A3_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_A3_QID_BASE",
-		TRQ_SEL_FMAP_A3_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_a4_field_info[] = {
-	{"TRQ_SEL_FMAP_A4_RSVD_1",
-		TRQ_SEL_FMAP_A4_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_A4_QID_MAX",
-		TRQ_SEL_FMAP_A4_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_A4_QID_BASE",
-		TRQ_SEL_FMAP_A4_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_a5_field_info[] = {
-	{"TRQ_SEL_FMAP_A5_RSVD_1",
-		TRQ_SEL_FMAP_A5_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_A5_QID_MAX",
-		TRQ_SEL_FMAP_A5_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_A5_QID_BASE",
-		TRQ_SEL_FMAP_A5_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_a6_field_info[] = {
-	{"TRQ_SEL_FMAP_A6_RSVD_1",
-		TRQ_SEL_FMAP_A6_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_A6_QID_MAX",
-		TRQ_SEL_FMAP_A6_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_A6_QID_BASE",
-		TRQ_SEL_FMAP_A6_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_a7_field_info[] = {
-	{"TRQ_SEL_FMAP_A7_RSVD_1",
-		TRQ_SEL_FMAP_A7_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_A7_QID_MAX",
-		TRQ_SEL_FMAP_A7_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_A7_QID_BASE",
-		TRQ_SEL_FMAP_A7_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_a8_field_info[] = {
-	{"TRQ_SEL_FMAP_A8_RSVD_1",
-		TRQ_SEL_FMAP_A8_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_A8_QID_MAX",
-		TRQ_SEL_FMAP_A8_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_A8_QID_BASE",
-		TRQ_SEL_FMAP_A8_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_a9_field_info[] = {
-	{"TRQ_SEL_FMAP_A9_RSVD_1",
-		TRQ_SEL_FMAP_A9_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_A9_QID_MAX",
-		TRQ_SEL_FMAP_A9_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_A9_QID_BASE",
-		TRQ_SEL_FMAP_A9_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_aa_field_info[] = {
-	{"TRQ_SEL_FMAP_AA_RSVD_1",
-		TRQ_SEL_FMAP_AA_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_AA_QID_MAX",
-		TRQ_SEL_FMAP_AA_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_AA_QID_BASE",
-		TRQ_SEL_FMAP_AA_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_ab_field_info[] = {
-	{"TRQ_SEL_FMAP_AB_RSVD_1",
-		TRQ_SEL_FMAP_AB_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_AB_QID_MAX",
-		TRQ_SEL_FMAP_AB_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_AB_QID_BASE",
-		TRQ_SEL_FMAP_AB_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_ac_field_info[] = {
-	{"TRQ_SEL_FMAP_AC_RSVD_1",
-		TRQ_SEL_FMAP_AC_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_AC_QID_MAX",
-		TRQ_SEL_FMAP_AC_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_AC_QID_BASE",
-		TRQ_SEL_FMAP_AC_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_ad_field_info[] = {
-	{"TRQ_SEL_FMAP_AD_RSVD_1",
-		TRQ_SEL_FMAP_AD_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_AD_QID_MAX",
-		TRQ_SEL_FMAP_AD_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_AD_QID_BASE",
-		TRQ_SEL_FMAP_AD_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_ae_field_info[] = {
-	{"TRQ_SEL_FMAP_AE_RSVD_1",
-		TRQ_SEL_FMAP_AE_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_AE_QID_MAX",
-		TRQ_SEL_FMAP_AE_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_AE_QID_BASE",
-		TRQ_SEL_FMAP_AE_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_af_field_info[] = {
-	{"TRQ_SEL_FMAP_AF_RSVD_1",
-		TRQ_SEL_FMAP_AF_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_AF_QID_MAX",
-		TRQ_SEL_FMAP_AF_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_AF_QID_BASE",
-		TRQ_SEL_FMAP_AF_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_b0_field_info[] = {
-	{"TRQ_SEL_FMAP_B0_RSVD_1",
-		TRQ_SEL_FMAP_B0_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_B0_QID_MAX",
-		TRQ_SEL_FMAP_B0_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_B0_QID_BASE",
-		TRQ_SEL_FMAP_B0_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_b1_field_info[] = {
-	{"TRQ_SEL_FMAP_B1_RSVD_1",
-		TRQ_SEL_FMAP_B1_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_B1_QID_MAX",
-		TRQ_SEL_FMAP_B1_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_B1_QID_BASE",
-		TRQ_SEL_FMAP_B1_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_b2_field_info[] = {
-	{"TRQ_SEL_FMAP_B2_RSVD_1",
-		TRQ_SEL_FMAP_B2_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_B2_QID_MAX",
-		TRQ_SEL_FMAP_B2_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_B2_QID_BASE",
-		TRQ_SEL_FMAP_B2_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_b3_field_info[] = {
-	{"TRQ_SEL_FMAP_B3_RSVD_1",
-		TRQ_SEL_FMAP_B3_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_B3_QID_MAX",
-		TRQ_SEL_FMAP_B3_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_B3_QID_BASE",
-		TRQ_SEL_FMAP_B3_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_b4_field_info[] = {
-	{"TRQ_SEL_FMAP_B4_RSVD_1",
-		TRQ_SEL_FMAP_B4_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_B4_QID_MAX",
-		TRQ_SEL_FMAP_B4_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_B4_QID_BASE",
-		TRQ_SEL_FMAP_B4_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_b5_field_info[] = {
-	{"TRQ_SEL_FMAP_B5_RSVD_1",
-		TRQ_SEL_FMAP_B5_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_B5_QID_MAX",
-		TRQ_SEL_FMAP_B5_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_B5_QID_BASE",
-		TRQ_SEL_FMAP_B5_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_b6_field_info[] = {
-	{"TRQ_SEL_FMAP_B6_RSVD_1",
-		TRQ_SEL_FMAP_B6_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_B6_QID_MAX",
-		TRQ_SEL_FMAP_B6_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_B6_QID_BASE",
-		TRQ_SEL_FMAP_B6_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_b7_field_info[] = {
-	{"TRQ_SEL_FMAP_B7_RSVD_1",
-		TRQ_SEL_FMAP_B7_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_B7_QID_MAX",
-		TRQ_SEL_FMAP_B7_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_B7_QID_BASE",
-		TRQ_SEL_FMAP_B7_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_b8_field_info[] = {
-	{"TRQ_SEL_FMAP_B8_RSVD_1",
-		TRQ_SEL_FMAP_B8_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_B8_QID_MAX",
-		TRQ_SEL_FMAP_B8_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_B8_QID_BASE",
-		TRQ_SEL_FMAP_B8_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_b9_field_info[] = {
-	{"TRQ_SEL_FMAP_B9_RSVD_1",
-		TRQ_SEL_FMAP_B9_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_B9_QID_MAX",
-		TRQ_SEL_FMAP_B9_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_B9_QID_BASE",
-		TRQ_SEL_FMAP_B9_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_ba_field_info[] = {
-	{"TRQ_SEL_FMAP_BA_RSVD_1",
-		TRQ_SEL_FMAP_BA_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_BA_QID_MAX",
-		TRQ_SEL_FMAP_BA_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_BA_QID_BASE",
-		TRQ_SEL_FMAP_BA_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_bb_field_info[] = {
-	{"TRQ_SEL_FMAP_BB_RSVD_1",
-		TRQ_SEL_FMAP_BB_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_BB_QID_MAX",
-		TRQ_SEL_FMAP_BB_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_BB_QID_BASE",
-		TRQ_SEL_FMAP_BB_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_bc_field_info[] = {
-	{"TRQ_SEL_FMAP_BC_RSVD_1",
-		TRQ_SEL_FMAP_BC_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_BC_QID_MAX",
-		TRQ_SEL_FMAP_BC_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_BC_QID_BASE",
-		TRQ_SEL_FMAP_BC_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_bd_field_info[] = {
-	{"TRQ_SEL_FMAP_BD_RSVD_1",
-		TRQ_SEL_FMAP_BD_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_BD_QID_MAX",
-		TRQ_SEL_FMAP_BD_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_BD_QID_BASE",
-		TRQ_SEL_FMAP_BD_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_be_field_info[] = {
-	{"TRQ_SEL_FMAP_BE_RSVD_1",
-		TRQ_SEL_FMAP_BE_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_BE_QID_MAX",
-		TRQ_SEL_FMAP_BE_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_BE_QID_BASE",
-		TRQ_SEL_FMAP_BE_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_bf_field_info[] = {
-	{"TRQ_SEL_FMAP_BF_RSVD_1",
-		TRQ_SEL_FMAP_BF_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_BF_QID_MAX",
-		TRQ_SEL_FMAP_BF_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_BF_QID_BASE",
-		TRQ_SEL_FMAP_BF_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_c0_field_info[] = {
-	{"TRQ_SEL_FMAP_C0_RSVD_1",
-		TRQ_SEL_FMAP_C0_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_C0_QID_MAX",
-		TRQ_SEL_FMAP_C0_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_C0_QID_BASE",
-		TRQ_SEL_FMAP_C0_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_c1_field_info[] = {
-	{"TRQ_SEL_FMAP_C1_RSVD_1",
-		TRQ_SEL_FMAP_C1_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_C1_QID_MAX",
-		TRQ_SEL_FMAP_C1_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_C1_QID_BASE",
-		TRQ_SEL_FMAP_C1_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_c2_field_info[] = {
-	{"TRQ_SEL_FMAP_C2_RSVD_1",
-		TRQ_SEL_FMAP_C2_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_C2_QID_MAX",
-		TRQ_SEL_FMAP_C2_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_C2_QID_BASE",
-		TRQ_SEL_FMAP_C2_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_c3_field_info[] = {
-	{"TRQ_SEL_FMAP_C3_RSVD_1",
-		TRQ_SEL_FMAP_C3_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_C3_QID_MAX",
-		TRQ_SEL_FMAP_C3_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_C3_QID_BASE",
-		TRQ_SEL_FMAP_C3_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_c4_field_info[] = {
-	{"TRQ_SEL_FMAP_C4_RSVD_1",
-		TRQ_SEL_FMAP_C4_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_C4_QID_MAX",
-		TRQ_SEL_FMAP_C4_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_C4_QID_BASE",
-		TRQ_SEL_FMAP_C4_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_c5_field_info[] = {
-	{"TRQ_SEL_FMAP_C5_RSVD_1",
-		TRQ_SEL_FMAP_C5_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_C5_QID_MAX",
-		TRQ_SEL_FMAP_C5_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_C5_QID_BASE",
-		TRQ_SEL_FMAP_C5_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_c6_field_info[] = {
-	{"TRQ_SEL_FMAP_C6_RSVD_1",
-		TRQ_SEL_FMAP_C6_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_C6_QID_MAX",
-		TRQ_SEL_FMAP_C6_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_C6_QID_BASE",
-		TRQ_SEL_FMAP_C6_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_c7_field_info[] = {
-	{"TRQ_SEL_FMAP_C7_RSVD_1",
-		TRQ_SEL_FMAP_C7_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_C7_QID_MAX",
-		TRQ_SEL_FMAP_C7_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_C7_QID_BASE",
-		TRQ_SEL_FMAP_C7_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_c8_field_info[] = {
-	{"TRQ_SEL_FMAP_C8_RSVD_1",
-		TRQ_SEL_FMAP_C8_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_C8_QID_MAX",
-		TRQ_SEL_FMAP_C8_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_C8_QID_BASE",
-		TRQ_SEL_FMAP_C8_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_c9_field_info[] = {
-	{"TRQ_SEL_FMAP_C9_RSVD_1",
-		TRQ_SEL_FMAP_C9_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_C9_QID_MAX",
-		TRQ_SEL_FMAP_C9_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_C9_QID_BASE",
-		TRQ_SEL_FMAP_C9_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_ca_field_info[] = {
-	{"TRQ_SEL_FMAP_CA_RSVD_1",
-		TRQ_SEL_FMAP_CA_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_CA_QID_MAX",
-		TRQ_SEL_FMAP_CA_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_CA_QID_BASE",
-		TRQ_SEL_FMAP_CA_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_cb_field_info[] = {
-	{"TRQ_SEL_FMAP_CB_RSVD_1",
-		TRQ_SEL_FMAP_CB_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_CB_QID_MAX",
-		TRQ_SEL_FMAP_CB_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_CB_QID_BASE",
-		TRQ_SEL_FMAP_CB_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_cc_field_info[] = {
-	{"TRQ_SEL_FMAP_CC_RSVD_1",
-		TRQ_SEL_FMAP_CC_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_CC_QID_MAX",
-		TRQ_SEL_FMAP_CC_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_CC_QID_BASE",
-		TRQ_SEL_FMAP_CC_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_cd_field_info[] = {
-	{"TRQ_SEL_FMAP_CD_RSVD_1",
-		TRQ_SEL_FMAP_CD_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_CD_QID_MAX",
-		TRQ_SEL_FMAP_CD_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_CD_QID_BASE",
-		TRQ_SEL_FMAP_CD_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_ce_field_info[] = {
-	{"TRQ_SEL_FMAP_CE_RSVD_1",
-		TRQ_SEL_FMAP_CE_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_CE_QID_MAX",
-		TRQ_SEL_FMAP_CE_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_CE_QID_BASE",
-		TRQ_SEL_FMAP_CE_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_cf_field_info[] = {
-	{"TRQ_SEL_FMAP_CF_RSVD_1",
-		TRQ_SEL_FMAP_CF_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_CF_QID_MAX",
-		TRQ_SEL_FMAP_CF_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_CF_QID_BASE",
-		TRQ_SEL_FMAP_CF_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_d0_field_info[] = {
-	{"TRQ_SEL_FMAP_D0_RSVD_1",
-		TRQ_SEL_FMAP_D0_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_D0_QID_MAX",
-		TRQ_SEL_FMAP_D0_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_D0_QID_BASE",
-		TRQ_SEL_FMAP_D0_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_d1_field_info[] = {
-	{"TRQ_SEL_FMAP_D1_RSVD_1",
-		TRQ_SEL_FMAP_D1_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_D1_QID_MAX",
-		TRQ_SEL_FMAP_D1_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_D1_QID_BASE",
-		TRQ_SEL_FMAP_D1_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_d2_field_info[] = {
-	{"TRQ_SEL_FMAP_D2_RSVD_1",
-		TRQ_SEL_FMAP_D2_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_D2_QID_MAX",
-		TRQ_SEL_FMAP_D2_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_D2_QID_BASE",
-		TRQ_SEL_FMAP_D2_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_d3_field_info[] = {
-	{"TRQ_SEL_FMAP_D3_RSVD_1",
-		TRQ_SEL_FMAP_D3_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_D3_QID_MAX",
-		TRQ_SEL_FMAP_D3_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_D3_QID_BASE",
-		TRQ_SEL_FMAP_D3_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_d4_field_info[] = {
-	{"TRQ_SEL_FMAP_D4_RSVD_1",
-		TRQ_SEL_FMAP_D4_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_D4_QID_MAX",
-		TRQ_SEL_FMAP_D4_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_D4_QID_BASE",
-		TRQ_SEL_FMAP_D4_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_d5_field_info[] = {
-	{"TRQ_SEL_FMAP_D5_RSVD_1",
-		TRQ_SEL_FMAP_D5_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_D5_QID_MAX",
-		TRQ_SEL_FMAP_D5_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_D5_QID_BASE",
-		TRQ_SEL_FMAP_D5_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_d6_field_info[] = {
-	{"TRQ_SEL_FMAP_D6_RSVD_1",
-		TRQ_SEL_FMAP_D6_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_D6_QID_MAX",
-		TRQ_SEL_FMAP_D6_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_D6_QID_BASE",
-		TRQ_SEL_FMAP_D6_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_d7_field_info[] = {
-	{"TRQ_SEL_FMAP_D7_RSVD_1",
-		TRQ_SEL_FMAP_D7_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_D7_QID_MAX",
-		TRQ_SEL_FMAP_D7_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_D7_QID_BASE",
-		TRQ_SEL_FMAP_D7_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_d8_field_info[] = {
-	{"TRQ_SEL_FMAP_D8_RSVD_1",
-		TRQ_SEL_FMAP_D8_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_D8_QID_MAX",
-		TRQ_SEL_FMAP_D8_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_D8_QID_BASE",
-		TRQ_SEL_FMAP_D8_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_d9_field_info[] = {
-	{"TRQ_SEL_FMAP_D9_RSVD_1",
-		TRQ_SEL_FMAP_D9_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_D9_QID_MAX",
-		TRQ_SEL_FMAP_D9_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_D9_QID_BASE",
-		TRQ_SEL_FMAP_D9_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_da_field_info[] = {
-	{"TRQ_SEL_FMAP_DA_RSVD_1",
-		TRQ_SEL_FMAP_DA_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_DA_QID_MAX",
-		TRQ_SEL_FMAP_DA_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_DA_QID_BASE",
-		TRQ_SEL_FMAP_DA_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_db_field_info[] = {
-	{"TRQ_SEL_FMAP_DB_RSVD_1",
-		TRQ_SEL_FMAP_DB_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_DB_QID_MAX",
-		TRQ_SEL_FMAP_DB_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_DB_QID_BASE",
-		TRQ_SEL_FMAP_DB_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_dc_field_info[] = {
-	{"TRQ_SEL_FMAP_DC_RSVD_1",
-		TRQ_SEL_FMAP_DC_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_DC_QID_MAX",
-		TRQ_SEL_FMAP_DC_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_DC_QID_BASE",
-		TRQ_SEL_FMAP_DC_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_dd_field_info[] = {
-	{"TRQ_SEL_FMAP_DD_RSVD_1",
-		TRQ_SEL_FMAP_DD_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_DD_QID_MAX",
-		TRQ_SEL_FMAP_DD_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_DD_QID_BASE",
-		TRQ_SEL_FMAP_DD_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_de_field_info[] = {
-	{"TRQ_SEL_FMAP_DE_RSVD_1",
-		TRQ_SEL_FMAP_DE_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_DE_QID_MAX",
-		TRQ_SEL_FMAP_DE_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_DE_QID_BASE",
-		TRQ_SEL_FMAP_DE_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_df_field_info[] = {
-	{"TRQ_SEL_FMAP_DF_RSVD_1",
-		TRQ_SEL_FMAP_DF_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_DF_QID_MAX",
-		TRQ_SEL_FMAP_DF_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_DF_QID_BASE",
-		TRQ_SEL_FMAP_DF_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_e0_field_info[] = {
-	{"TRQ_SEL_FMAP_E0_RSVD_1",
-		TRQ_SEL_FMAP_E0_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_E0_QID_MAX",
-		TRQ_SEL_FMAP_E0_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_E0_QID_BASE",
-		TRQ_SEL_FMAP_E0_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_e1_field_info[] = {
-	{"TRQ_SEL_FMAP_E1_RSVD_1",
-		TRQ_SEL_FMAP_E1_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_E1_QID_MAX",
-		TRQ_SEL_FMAP_E1_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_E1_QID_BASE",
-		TRQ_SEL_FMAP_E1_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_e2_field_info[] = {
-	{"TRQ_SEL_FMAP_E2_RSVD_1",
-		TRQ_SEL_FMAP_E2_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_E2_QID_MAX",
-		TRQ_SEL_FMAP_E2_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_E2_QID_BASE",
-		TRQ_SEL_FMAP_E2_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_e3_field_info[] = {
-	{"TRQ_SEL_FMAP_E3_RSVD_1",
-		TRQ_SEL_FMAP_E3_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_E3_QID_MAX",
-		TRQ_SEL_FMAP_E3_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_E3_QID_BASE",
-		TRQ_SEL_FMAP_E3_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_e4_field_info[] = {
-	{"TRQ_SEL_FMAP_E4_RSVD_1",
-		TRQ_SEL_FMAP_E4_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_E4_QID_MAX",
-		TRQ_SEL_FMAP_E4_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_E4_QID_BASE",
-		TRQ_SEL_FMAP_E4_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_e5_field_info[] = {
-	{"TRQ_SEL_FMAP_E5_RSVD_1",
-		TRQ_SEL_FMAP_E5_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_E5_QID_MAX",
-		TRQ_SEL_FMAP_E5_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_E5_QID_BASE",
-		TRQ_SEL_FMAP_E5_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_e6_field_info[] = {
-	{"TRQ_SEL_FMAP_E6_RSVD_1",
-		TRQ_SEL_FMAP_E6_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_E6_QID_MAX",
-		TRQ_SEL_FMAP_E6_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_E6_QID_BASE",
-		TRQ_SEL_FMAP_E6_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_e7_field_info[] = {
-	{"TRQ_SEL_FMAP_E7_RSVD_1",
-		TRQ_SEL_FMAP_E7_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_E7_QID_MAX",
-		TRQ_SEL_FMAP_E7_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_E7_QID_BASE",
-		TRQ_SEL_FMAP_E7_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_e8_field_info[] = {
-	{"TRQ_SEL_FMAP_E8_RSVD_1",
-		TRQ_SEL_FMAP_E8_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_E8_QID_MAX",
-		TRQ_SEL_FMAP_E8_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_E8_QID_BASE",
-		TRQ_SEL_FMAP_E8_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_e9_field_info[] = {
-	{"TRQ_SEL_FMAP_E9_RSVD_1",
-		TRQ_SEL_FMAP_E9_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_E9_QID_MAX",
-		TRQ_SEL_FMAP_E9_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_E9_QID_BASE",
-		TRQ_SEL_FMAP_E9_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_ea_field_info[] = {
-	{"TRQ_SEL_FMAP_EA_RSVD_1",
-		TRQ_SEL_FMAP_EA_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_EA_QID_MAX",
-		TRQ_SEL_FMAP_EA_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_EA_QID_BASE",
-		TRQ_SEL_FMAP_EA_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_eb_field_info[] = {
-	{"TRQ_SEL_FMAP_EB_RSVD_1",
-		TRQ_SEL_FMAP_EB_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_EB_QID_MAX",
-		TRQ_SEL_FMAP_EB_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_EB_QID_BASE",
-		TRQ_SEL_FMAP_EB_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_ec_field_info[] = {
-	{"TRQ_SEL_FMAP_EC_RSVD_1",
-		TRQ_SEL_FMAP_EC_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_EC_QID_MAX",
-		TRQ_SEL_FMAP_EC_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_EC_QID_BASE",
-		TRQ_SEL_FMAP_EC_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_ed_field_info[] = {
-	{"TRQ_SEL_FMAP_ED_RSVD_1",
-		TRQ_SEL_FMAP_ED_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_ED_QID_MAX",
-		TRQ_SEL_FMAP_ED_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_ED_QID_BASE",
-		TRQ_SEL_FMAP_ED_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_ee_field_info[] = {
-	{"TRQ_SEL_FMAP_EE_RSVD_1",
-		TRQ_SEL_FMAP_EE_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_EE_QID_MAX",
-		TRQ_SEL_FMAP_EE_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_EE_QID_BASE",
-		TRQ_SEL_FMAP_EE_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_ef_field_info[] = {
-	{"TRQ_SEL_FMAP_EF_RSVD_1",
-		TRQ_SEL_FMAP_EF_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_EF_QID_MAX",
-		TRQ_SEL_FMAP_EF_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_EF_QID_BASE",
-		TRQ_SEL_FMAP_EF_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	trq_sel_fmap_f0_field_info[] = {
-	{"TRQ_SEL_FMAP_F0_RSVD_1",
-		TRQ_SEL_FMAP_F0_RSVD_1_MASK},
-	{"TRQ_SEL_FMAP_F0_QID_MAX",
-		TRQ_SEL_FMAP_F0_QID_MAX_MASK},
-	{"TRQ_SEL_FMAP_F0_QID_BASE",
-		TRQ_SEL_FMAP_F0_QID_BASE_MASK},
-};
-
-
-static struct regfield_info
-	ind_ctxt_data_3_field_info[] = {
-	{"IND_CTXT_DATA_3_DATA",
-		IND_CTXT_DATA_3_DATA_MASK},
-};
-
-
-static struct regfield_info
-	ind_ctxt_data_2_field_info[] = {
-	{"IND_CTXT_DATA_2_DATA",
-		IND_CTXT_DATA_2_DATA_MASK},
-};
-
-
-static struct regfield_info
-	ind_ctxt_data_1_field_info[] = {
-	{"IND_CTXT_DATA_1_DATA",
-		IND_CTXT_DATA_1_DATA_MASK},
-};
-
-
-static struct regfield_info
-	ind_ctxt_data_0_field_info[] = {
-	{"IND_CTXT_DATA_0_DATA",
-		IND_CTXT_DATA_0_DATA_MASK},
-};
-
-
-static struct regfield_info
-	ind_ctxt3_field_info[] = {
-	{"IND_CTXT3",
-		IND_CTXT3_MASK},
-};
-
-
-static struct regfield_info
-	ind_ctxt2_field_info[] = {
-	{"IND_CTXT2",
-		IND_CTXT2_MASK},
-};
-
-
-static struct regfield_info
-	ind_ctxt1_field_info[] = {
-	{"IND_CTXT1",
-		IND_CTXT1_MASK},
-};
-
-
-static struct regfield_info
-	ind_ctxt0_field_info[] = {
-	{"IND_CTXT0",
-		IND_CTXT0_MASK},
-};
-
-
-static struct regfield_info
-	ind_ctxt_cmd_field_info[] = {
-	{"IND_CTXT_CMD_RSVD_1",
-		IND_CTXT_CMD_RSVD_1_MASK},
-	{"IND_CTXT_CMD_QID",
-		IND_CTXT_CMD_QID_MASK},
-	{"IND_CTXT_CMD_OP",
-		IND_CTXT_CMD_OP_MASK},
-	{"IND_CTXT_CMD_SET",
-		IND_CTXT_CMD_SET_MASK},
-	{"IND_CTXT_CMD_BUSY",
-		IND_CTXT_CMD_BUSY_MASK},
-};
-
-
-static struct regfield_info
-	c2h_timer_cnt_1_field_info[] = {
-	{"C2H_TIMER_CNT_1_RSVD_1",
-		C2H_TIMER_CNT_1_RSVD_1_MASK},
-	{"C2H_TIMER_CNT_1",
-		C2H_TIMER_CNT_1_MASK},
-};
-
-
-static struct regfield_info
-	c2h_timer_cnt_2_field_info[] = {
-	{"C2H_TIMER_CNT_2_RSVD_1",
-		C2H_TIMER_CNT_2_RSVD_1_MASK},
-	{"C2H_TIMER_CNT_2",
-		C2H_TIMER_CNT_2_MASK},
-};
-
-
-static struct regfield_info
-	c2h_timer_cnt_3_field_info[] = {
-	{"C2H_TIMER_CNT_3_RSVD_1",
-		C2H_TIMER_CNT_3_RSVD_1_MASK},
-	{"C2H_TIMER_CNT_3",
-		C2H_TIMER_CNT_3_MASK},
-};
-
-
-static struct regfield_info
-	c2h_timer_cnt_4_field_info[] = {
-	{"C2H_TIMER_CNT_4_RSVD_1",
-		C2H_TIMER_CNT_4_RSVD_1_MASK},
-	{"C2H_TIMER_CNT_4",
-		C2H_TIMER_CNT_4_MASK},
-};
-
-
-static struct regfield_info
-	c2h_timer_cnt_5_field_info[] = {
-	{"C2H_TIMER_CNT_5_RSVD_1",
-		C2H_TIMER_CNT_5_RSVD_1_MASK},
-	{"C2H_TIMER_CNT_5",
-		C2H_TIMER_CNT_5_MASK},
-};
-
-
-static struct regfield_info
-	c2h_timer_cnt_6_field_info[] = {
-	{"C2H_TIMER_CNT_6_RSVD_1",
-		C2H_TIMER_CNT_6_RSVD_1_MASK},
-	{"C2H_TIMER_CNT_6",
-		C2H_TIMER_CNT_6_MASK},
-};
-
-
-static struct regfield_info
-	c2h_timer_cnt_7_field_info[] = {
-	{"C2H_TIMER_CNT_7_RSVD_1",
-		C2H_TIMER_CNT_7_RSVD_1_MASK},
-	{"C2H_TIMER_CNT_7",
-		C2H_TIMER_CNT_7_MASK},
-};
-
-
-static struct regfield_info
-	c2h_timer_cnt_8_field_info[] = {
-	{"C2H_TIMER_CNT_8_RSVD_1",
-		C2H_TIMER_CNT_8_RSVD_1_MASK},
-	{"C2H_TIMER_CNT_8",
-		C2H_TIMER_CNT_8_MASK},
-};
-
-
-static struct regfield_info
-	c2h_timer_cnt_9_field_info[] = {
-	{"C2H_TIMER_CNT_9_RSVD_1",
-		C2H_TIMER_CNT_9_RSVD_1_MASK},
-	{"C2H_TIMER_CNT_9",
-		C2H_TIMER_CNT_9_MASK},
-};
-
-
-static struct regfield_info
-	c2h_timer_cnt_a_field_info[] = {
-	{"C2H_TIMER_CNT_A_RSVD_1",
-		C2H_TIMER_CNT_A_RSVD_1_MASK},
-	{"C2H_TIMER_CNT_A",
-		C2H_TIMER_CNT_A_MASK},
-};
-
-
-static struct regfield_info
-	c2h_timer_cnt_b_field_info[] = {
-	{"C2H_TIMER_CNT_B_RSVD_1",
-		C2H_TIMER_CNT_B_RSVD_1_MASK},
-	{"C2H_TIMER_CNT_B",
-		C2H_TIMER_CNT_B_MASK},
-};
-
-
-static struct regfield_info
-	c2h_timer_cnt_c_field_info[] = {
-	{"C2H_TIMER_CNT_C_RSVD_1",
-		C2H_TIMER_CNT_C_RSVD_1_MASK},
-	{"C2H_TIMER_CNT_C",
-		C2H_TIMER_CNT_C_MASK},
-};
-
-
-static struct regfield_info
-	c2h_timer_cnt_d_field_info[] = {
-	{"C2H_TIMER_CNT_D_RSVD_1",
-		C2H_TIMER_CNT_D_RSVD_1_MASK},
-	{"C2H_TIMER_CNT_D",
-		C2H_TIMER_CNT_D_MASK},
-};
-
-
-static struct regfield_info
-	c2h_timer_cnt_e_field_info[] = {
-	{"C2H_TIMER_CNT_E_RSVD_1",
-		C2H_TIMER_CNT_E_RSVD_1_MASK},
-	{"C2H_TIMER_CNT_E",
-		C2H_TIMER_CNT_E_MASK},
-};
-
-
-static struct regfield_info
-	c2h_timer_cnt_f_field_info[] = {
-	{"C2H_TIMER_CNT_F_RSVD_1",
-		C2H_TIMER_CNT_F_RSVD_1_MASK},
-	{"C2H_TIMER_CNT_F",
-		C2H_TIMER_CNT_F_MASK},
-};
-
-
-static struct regfield_info
-	c2h_timer_cnt_10_field_info[] = {
-	{"C2H_TIMER_CNT_10_RSVD_1",
-		C2H_TIMER_CNT_10_RSVD_1_MASK},
-	{"C2H_TIMER_CNT_10",
-		C2H_TIMER_CNT_10_MASK},
-};
-
-
-static struct regfield_info
-	c2h_cnt_th_1_field_info[] = {
-	{"C2H_CNT_TH_1_RSVD_1",
-		C2H_CNT_TH_1_RSVD_1_MASK},
-	{"C2H_CNT_TH_1_THESHOLD_CNT",
-		C2H_CNT_TH_1_THESHOLD_CNT_MASK},
-};
-
-
-static struct regfield_info
-	c2h_cnt_th_2_field_info[] = {
-	{"C2H_CNT_TH_2_RSVD_1",
-		C2H_CNT_TH_2_RSVD_1_MASK},
-	{"C2H_CNT_TH_2_THESHOLD_CNT",
-		C2H_CNT_TH_2_THESHOLD_CNT_MASK},
-};
-
-
-static struct regfield_info
-	c2h_cnt_th_3_field_info[] = {
-	{"C2H_CNT_TH_3_RSVD_1",
-		C2H_CNT_TH_3_RSVD_1_MASK},
-	{"C2H_CNT_TH_3_THESHOLD_CNT",
-		C2H_CNT_TH_3_THESHOLD_CNT_MASK},
-};
-
-
-static struct regfield_info
-	c2h_cnt_th_4_field_info[] = {
-	{"C2H_CNT_TH_4_RSVD_1",
-		C2H_CNT_TH_4_RSVD_1_MASK},
-	{"C2H_CNT_TH_4_THESHOLD_CNT",
-		C2H_CNT_TH_4_THESHOLD_CNT_MASK},
-};
-
-
-static struct regfield_info
-	c2h_cnt_th_5_field_info[] = {
-	{"C2H_CNT_TH_5_RSVD_1",
-		C2H_CNT_TH_5_RSVD_1_MASK},
-	{"C2H_CNT_TH_5_THESHOLD_CNT",
-		C2H_CNT_TH_5_THESHOLD_CNT_MASK},
-};
-
-
-static struct regfield_info
-	c2h_cnt_th_6_field_info[] = {
-	{"C2H_CNT_TH_6_RSVD_1",
-		C2H_CNT_TH_6_RSVD_1_MASK},
-	{"C2H_CNT_TH_6_THESHOLD_CNT",
-		C2H_CNT_TH_6_THESHOLD_CNT_MASK},
-};
-
-
-static struct regfield_info
-	c2h_cnt_th_7_field_info[] = {
-	{"C2H_CNT_TH_7_RSVD_1",
-		C2H_CNT_TH_7_RSVD_1_MASK},
-	{"C2H_CNT_TH_7_THESHOLD_CNT",
-		C2H_CNT_TH_7_THESHOLD_CNT_MASK},
-};
-
-
-static struct regfield_info
-	c2h_cnt_th_8_field_info[] = {
-	{"C2H_CNT_TH_8_RSVD_1",
-		C2H_CNT_TH_8_RSVD_1_MASK},
-	{"C2H_CNT_TH_8_THESHOLD_CNT",
-		C2H_CNT_TH_8_THESHOLD_CNT_MASK},
-};
-
-
-static struct regfield_info
-	c2h_cnt_th_9_field_info[] = {
-	{"C2H_CNT_TH_9_RSVD_1",
-		C2H_CNT_TH_9_RSVD_1_MASK},
-	{"C2H_CNT_TH_9_THESHOLD_CNT",
-		C2H_CNT_TH_9_THESHOLD_CNT_MASK},
-};
-
-
-static struct regfield_info
-	c2h_cnt_th_a_field_info[] = {
-	{"C2H_CNT_TH_A_RSVD_1",
-		C2H_CNT_TH_A_RSVD_1_MASK},
-	{"C2H_CNT_TH_A_THESHOLD_CNT",
-		C2H_CNT_TH_A_THESHOLD_CNT_MASK},
-};
-
-
-static struct regfield_info
-	c2h_cnt_th_b_field_info[] = {
-	{"C2H_CNT_TH_B_RSVD_1",
-		C2H_CNT_TH_B_RSVD_1_MASK},
-	{"C2H_CNT_TH_B_THESHOLD_CNT",
-		C2H_CNT_TH_B_THESHOLD_CNT_MASK},
-};
-
-
-static struct regfield_info
-	c2h_cnt_th_c_field_info[] = {
-	{"C2H_CNT_TH_C_RSVD_1",
-		C2H_CNT_TH_C_RSVD_1_MASK},
-	{"C2H_CNT_TH_C_THESHOLD_CNT",
-		C2H_CNT_TH_C_THESHOLD_CNT_MASK},
-};
-
-
-static struct regfield_info
-	c2h_cnt_th_d_field_info[] = {
-	{"C2H_CNT_TH_D_RSVD_1",
-		C2H_CNT_TH_D_RSVD_1_MASK},
-	{"C2H_CNT_TH_D_THESHOLD_CNT",
-		C2H_CNT_TH_D_THESHOLD_CNT_MASK},
-};
-
-
-static struct regfield_info
-	c2h_cnt_th_e_field_info[] = {
-	{"C2H_CNT_TH_E_RSVD_1",
-		C2H_CNT_TH_E_RSVD_1_MASK},
-	{"C2H_CNT_TH_E_THESHOLD_CNT",
-		C2H_CNT_TH_E_THESHOLD_CNT_MASK},
-};
-
-
-static struct regfield_info
-	c2h_cnt_th_f_field_info[] = {
-	{"C2H_CNT_TH_F_RSVD_1",
-		C2H_CNT_TH_F_RSVD_1_MASK},
-	{"C2H_CNT_TH_F_THESHOLD_CNT",
-		C2H_CNT_TH_F_THESHOLD_CNT_MASK},
-};
-
-
-static struct regfield_info
-	c2h_cnt_th_10_field_info[] = {
-	{"C2H_CNT_TH_10_RSVD_1",
-		C2H_CNT_TH_10_RSVD_1_MASK},
-	{"C2H_CNT_TH_10_THESHOLD_CNT",
-		C2H_CNT_TH_10_THESHOLD_CNT_MASK},
-};
-
-
-static struct regfield_info
-	c2h_qid2vec_map_qid_field_info[] = {
-	{"C2H_QID2VEC_MAP_QID_RSVD_1",
-		C2H_QID2VEC_MAP_QID_RSVD_1_MASK},
-	{"C2H_QID2VEC_MAP_QID_QID",
-		C2H_QID2VEC_MAP_QID_QID_MASK},
-};
-
-
-static struct regfield_info
-	c2h_qid2vec_map_field_info[] = {
-	{"C2H_QID2VEC_MAP_RSVD_1",
-		C2H_QID2VEC_MAP_RSVD_1_MASK},
-	{"C2H_QID2VEC_MAP_H2C_EN_COAL",
-		C2H_QID2VEC_MAP_H2C_EN_COAL_MASK},
-	{"C2H_QID2VEC_MAP_H2C_VECTOR",
-		C2H_QID2VEC_MAP_H2C_VECTOR_MASK},
-	{"C2H_QID2VEC_MAP_C2H_EN_COAL",
-		C2H_QID2VEC_MAP_C2H_EN_COAL_MASK},
-	{"C2H_QID2VEC_MAP_C2H_VECTOR",
-		C2H_QID2VEC_MAP_C2H_VECTOR_MASK},
-};
-
-
-static struct regfield_info
-	c2h_stat_s_axis_c2h_accepted_field_info[] = {
-	{"C2H_STAT_S_AXIS_C2H_ACCEPTED",
-		C2H_STAT_S_AXIS_C2H_ACCEPTED_MASK},
-};
-
-
-static struct regfield_info
-	c2h_stat_s_axis_wrb_accepted_field_info[] = {
-	{"C2H_STAT_S_AXIS_WRB_ACCEPTED",
-		C2H_STAT_S_AXIS_WRB_ACCEPTED_MASK},
-};
-
-
-static struct regfield_info
-	c2h_stat_desc_rsp_pkt_accepted_field_info[] = {
-	{"C2H_STAT_DESC_RSP_PKT_ACCEPTED_D",
-		C2H_STAT_DESC_RSP_PKT_ACCEPTED_D_MASK},
-};
-
-
-static struct regfield_info
-	c2h_stat_axis_pkg_cmp_field_info[] = {
-	{"C2H_STAT_AXIS_PKG_CMP",
-		C2H_STAT_AXIS_PKG_CMP_MASK},
-};
-
-
-static struct regfield_info
-	c2h_stat_desc_rsp_accepted_field_info[] = {
-	{"C2H_STAT_DESC_RSP_ACCEPTED_D",
-		C2H_STAT_DESC_RSP_ACCEPTED_D_MASK},
-};
-
-
-static struct regfield_info
-	c2h_stat_desc_rsp_cmp_field_info[] = {
-	{"C2H_STAT_DESC_RSP_CMP_D",
-		C2H_STAT_DESC_RSP_CMP_D_MASK},
-};
-
-
-static struct regfield_info
-	c2h_stat_wrq_out_field_info[] = {
-	{"C2H_STAT_WRQ_OUT",
-		C2H_STAT_WRQ_OUT_MASK},
-};
-
-
-static struct regfield_info
-	c2h_stat_wpl_ren_accepted_field_info[] = {
-	{"C2H_STAT_WPL_REN_ACCEPTED",
-		C2H_STAT_WPL_REN_ACCEPTED_MASK},
-};
-
-
-static struct regfield_info
-	c2h_stat_total_wrq_len_field_info[] = {
-	{"C2H_STAT_TOTAL_WRQ_LEN",
-		C2H_STAT_TOTAL_WRQ_LEN_MASK},
-};
-
-
-static struct regfield_info
-	c2h_stat_total_wpl_len_field_info[] = {
-	{"C2H_STAT_TOTAL_WPL_LEN",
-		C2H_STAT_TOTAL_WPL_LEN_MASK},
-};
-
-
-static struct regfield_info
-	c2h_buf_sz_0_field_info[] = {
-	{"C2H_BUF_SZ_0_SIZE",
-		C2H_BUF_SZ_0_SIZE_MASK},
-};
-
-
-static struct regfield_info
-	c2h_buf_sz_1_field_info[] = {
-	{"C2H_BUF_SZ_1_SIZE",
-		C2H_BUF_SZ_1_SIZE_MASK},
-};
-
-
-static struct regfield_info
-	c2h_buf_sz_2_field_info[] = {
-	{"C2H_BUF_SZ_2_SIZE",
-		C2H_BUF_SZ_2_SIZE_MASK},
-};
-
-
-static struct regfield_info
-	c2h_buf_sz_3_field_info[] = {
-	{"C2H_BUF_SZ_3_SIZE",
-		C2H_BUF_SZ_3_SIZE_MASK},
-};
-
-
-static struct regfield_info
-	c2h_buf_sz_4_field_info[] = {
-	{"C2H_BUF_SZ_4_SIZE",
-		C2H_BUF_SZ_4_SIZE_MASK},
-};
-
-
-static struct regfield_info
-	c2h_buf_sz_5_field_info[] = {
-	{"C2H_BUF_SZ_5_SIZE",
-		C2H_BUF_SZ_5_SIZE_MASK},
-};
-
-
-static struct regfield_info
-	c2h_buf_sz_7_field_info[] = {
-	{"C2H_BUF_SZ_7_SIZE",
-		C2H_BUF_SZ_7_SIZE_MASK},
-};
-
-
-static struct regfield_info
-	c2h_buf_sz_8_field_info[] = {
-	{"C2H_BUF_SZ_8_SIZE",
-		C2H_BUF_SZ_8_SIZE_MASK},
-};
-
-
-static struct regfield_info
-	c2h_buf_sz_9_field_info[] = {
-	{"C2H_BUF_SZ_9_SIZE",
-		C2H_BUF_SZ_9_SIZE_MASK},
-};
-
-
-static struct regfield_info
-	c2h_buf_sz_10_field_info[] = {
-	{"C2H_BUF_SZ_10_SIZE",
-		C2H_BUF_SZ_10_SIZE_MASK},
-};
-
-
-static struct regfield_info
-	c2h_buf_sz_11_field_info[] = {
-	{"C2H_BUF_SZ_11_SIZE",
-		C2H_BUF_SZ_11_SIZE_MASK},
-};
-
-
-static struct regfield_info
-	c2h_buf_sz_12_field_info[] = {
-	{"C2H_BUF_SZ_12_SIZE",
-		C2H_BUF_SZ_12_SIZE_MASK},
-};
-
-
-static struct regfield_info
-	c2h_buf_sz_13_field_info[] = {
-	{"C2H_BUF_SZ_13_SIZE",
-		C2H_BUF_SZ_13_SIZE_MASK},
-};
-
-
-static struct regfield_info
-	c2h_buf_sz_14_field_info[] = {
-	{"C2H_BUF_SZ_14_SIZE",
-		C2H_BUF_SZ_14_SIZE_MASK},
-};
-
-
-static struct regfield_info
-	c2h_buf_sz_15_field_info[] = {
-	{"C2H_BUF_SZ_15_SIZE",
-		C2H_BUF_SZ_15_SIZE_MASK},
-};
-
-
-static struct regfield_info
-	c2h_err_stat_field_info[] = {
-	{"C2H_ERR_STAT_RSVD_1",
-		C2H_ERR_STAT_RSVD_1_MASK},
-	{"C2H_ERR_STAT_WRB_PRTY_ERR",
-		C2H_ERR_STAT_WRB_PRTY_ERR_MASK},
-	{"C2H_ERR_STAT_WRB_CIDX_ERR",
-		C2H_ERR_STAT_WRB_CIDX_ERR_MASK},
-	{"C2H_ERR_STAT_WRB_QFULL_ERR",
-		C2H_ERR_STAT_WRB_QFULL_ERR_MASK},
-	{"C2H_ERR_STAT_WRB_INV_Q_ERR",
-		C2H_ERR_STAT_WRB_INV_Q_ERR_MASK},
-	{"C2H_ERR_STAT_PORT_ID_BYP_IN_MISMATCH",
-		C2H_ERR_STAT_PORT_ID_BYP_IN_MISMATCH_MASK},
-	{"C2H_ERR_STAT_PORT_ID_CTXT_MISMATCH",
-		C2H_ERR_STAT_PORT_ID_CTXT_MISMATCH_MASK},
-	{"C2H_ERR_STAT_ERR_DESC_CNT",
-		C2H_ERR_STAT_ERR_DESC_CNT_MASK},
-	{"C2H_ERR_STAT_RSVD_2",
-		C2H_ERR_STAT_RSVD_2_MASK},
-	{"C2H_ERR_STAT_MSI_INT_FAIL",
-		C2H_ERR_STAT_MSI_INT_FAIL_MASK},
-	{"C2H_ERR_STAT_ENG_WPL_DATA_PAR_ERR",
-		C2H_ERR_STAT_ENG_WPL_DATA_PAR_ERR_MASK},
-	{"C2H_ERR_STAT_RSVD_3",
-		C2H_ERR_STAT_RSVD_3_MASK},
-	{"C2H_ERR_STAT_DESC_RSP_ERR",
-		C2H_ERR_STAT_DESC_RSP_ERR_MASK},
-	{"C2H_ERR_STAT_QID_MISMATCH",
-		C2H_ERR_STAT_QID_MISMATCH_MASK},
-	{"C2H_ERR_STAT_RSVD_4",
-		C2H_ERR_STAT_RSVD_4_MASK},
-	{"C2H_ERR_STAT_LEN_MISMATCH",
-		C2H_ERR_STAT_LEN_MISMATCH_MASK},
-	{"C2H_ERR_STAT_MTY_MISMATCH",
-		C2H_ERR_STAT_MTY_MISMATCH_MASK},
-};
-
-
-static struct regfield_info
-	c2h_err_mask_field_info[] = {
-	{"C2H_ERR_EN",
-		C2H_ERR_EN_MASK},
-};
-
-
-static struct regfield_info
-	c2h_fatal_err_stat_field_info[] = {
-	{"C2H_FATAL_ERR_STAT_RSVD_1",
-		C2H_FATAL_ERR_STAT_RSVD_1_MASK},
-	{"C2H_FATAL_ERR_STAT_WPL_DATA_PAR_ERR",
-		C2H_FATAL_ERR_STAT_WPL_DATA_PAR_ERR_MASK},
-	{"C2H_FATAL_ERR_STAT_PLD_FIFO_RAM_RDBE",
-		C2H_FATAL_ERR_STAT_PLD_FIFO_RAM_RDBE_MASK},
-	{"C2H_FATAL_ERR_STAT_QID_FIFO_RAM_RDBE",
-		C2H_FATAL_ERR_STAT_QID_FIFO_RAM_RDBE_MASK},
-	{"C2H_FATAL_ERR_STAT_TUSER_FIFO_RAM_RDBE",
-		C2H_FATAL_ERR_STAT_TUSER_FIFO_RAM_RDBE_MASK},
-	{"C2H_FATAL_ERR_STAT_WRB_COAL_DATA_RAM_RDBE",
-		C2H_FATAL_ERR_STAT_WRB_COAL_DATA_RAM_RDBE_MASK},
-	{"C2H_FATAL_ERR_STAT_INT_QID2VEC_RAM_RDBE",
-		C2H_FATAL_ERR_STAT_INT_QID2VEC_RAM_RDBE_MASK},
-	{"C2H_FATAL_ERR_STAT_INT_CTXT_RAM_RDBE",
-		C2H_FATAL_ERR_STAT_INT_CTXT_RAM_RDBE_MASK},
-	{"C2H_FATAL_ERR_STAT_DESC_REQ_FIFO_RAM_RDBE",
-		C2H_FATAL_ERR_STAT_DESC_REQ_FIFO_RAM_RDBE_MASK},
-	{"C2H_FATAL_ERR_STAT_PFCH_CTXT_RAM_RDBE",
-		C2H_FATAL_ERR_STAT_PFCH_CTXT_RAM_RDBE_MASK},
-	{"C2H_FATAL_ERR_STAT_WRB_CTXT_RAM_RDBE",
-		C2H_FATAL_ERR_STAT_WRB_CTXT_RAM_RDBE_MASK},
-	{"C2H_FATAL_ERR_STAT_PFCH_LL_RAM_RDBE",
-		C2H_FATAL_ERR_STAT_PFCH_LL_RAM_RDBE_MASK},
-	{"C2H_FATAL_ERR_STAT_TIMER_FIFO_RAM_RDBE",
-		C2H_FATAL_ERR_STAT_TIMER_FIFO_RAM_RDBE_MASK},
-	{"C2H_FATAL_ERR_STAT_QID_MISMATCH",
-		C2H_FATAL_ERR_STAT_QID_MISMATCH_MASK},
-	{"C2H_FATAL_ERR_STAT_RSVD_2",
-		C2H_FATAL_ERR_STAT_RSVD_2_MASK},
-	{"C2H_FATAL_ERR_STAT_LEN_MISMATCH",
-		C2H_FATAL_ERR_STAT_LEN_MISMATCH_MASK},
-	{"C2H_FATAL_ERR_STAT_MTY_MISMATCH",
-		C2H_FATAL_ERR_STAT_MTY_MISMATCH_MASK},
-};
-
-
-static struct regfield_info
-	c2h_fatal_err_mask_field_info[] = {
-	{"C2H_FATAL_ERR_C2HEN",
-		C2H_FATAL_ERR_C2HEN_MASK},
-};
-
-
-static struct regfield_info
-	c2h_fatal_err_enable_field_info[] = {
-	{"C2H_FATAL_ERR_ENABLE_RSVD_1",
-		C2H_FATAL_ERR_ENABLE_RSVD_1_MASK},
-	{"C2H_FATAL_ERR_ENABLE_WPL_PAR_INV",
-		C2H_FATAL_ERR_ENABLE_WPL_PAR_INV_MASK},
-	{"C2H_FATAL_ERR_ENABLE_WRQ_DIS",
-		C2H_FATAL_ERR_ENABLE_WRQ_DIS_MASK},
-};
-
-
-static struct regfield_info
-	glbl_err_int_field_info[] = {
-	{"GLBL_ERR_INT_RSVD_1",
-		GLBL_ERR_INT_RSVD_1_MASK},
-	{"GLBL_ERR_INT_ARM",
-		GLBL_ERR_INT_ARM_MASK},
-	{"GLBL_ERR_INT_EN_COAL",
-		GLBL_ERR_INT_EN_COAL_MASK},
-	{"GLBL_ERR_INT_VEC",
-		GLBL_ERR_INT_VEC_MASK},
-	{"GLBL_ERR_INT_FUNC",
-		GLBL_ERR_INT_FUNC_MASK},
-};
-
-
-static struct regfield_info
-	c2h_pfch_cfg_field_info[] = {
-	{"C2H_PFCH_CFG_EVT_QCNT_TH",
-		C2H_PFCH_CFG_EVT_QCNT_TH_MASK},
-	{"C2H_PFCH_CFG_QCNT",
-		C2H_PFCH_CFG_QCNT_MASK},
-	{"C2H_PFCH_CFG_NUM",
-		C2H_PFCH_CFG_NUM_MASK},
-	{"C2H_PFCH_CFG_FL_TH",
-		C2H_PFCH_CFG_FL_TH_MASK},
-};
-
-
-static struct regfield_info
-	c2h_int_timer_tick_field_info[] = {
-	{"C2H_INT_TIMER_TICK",
-		C2H_INT_TIMER_TICK_MASK},
-};
-
-
-static struct regfield_info
-	c2h_stat_desc_rsp_drop_accepted_field_info[] = {
-	{"C2H_STAT_DESC_RSP_DROP_ACCEPTED_D",
-		C2H_STAT_DESC_RSP_DROP_ACCEPTED_D_MASK},
-};
-
-
-static struct regfield_info
-	c2h_stat_desc_rsp_err_accepted_field_info[] = {
-	{"C2H_STAT_DESC_RSP_ERR_ACCEPTED_D",
-		C2H_STAT_DESC_RSP_ERR_ACCEPTED_D_MASK},
-};
-
-
-static struct regfield_info
-	c2h_stat_desc_req_field_info[] = {
-	{"C2H_STAT_DESC_REQ",
-		C2H_STAT_DESC_REQ_MASK},
-};
-
-
-static struct regfield_info
-	c2h_stat_dbg_dma_eng_0_field_info[] = {
-	{"C2H_STAT_DMA_ENG_0_RSVD_1",
-		C2H_STAT_DMA_ENG_0_RSVD_1_MASK},
-	{"C2H_STAT_DMA_ENG_0_WRB_FIFO_OUT_CNT",
-		C2H_STAT_DMA_ENG_0_WRB_FIFO_OUT_CNT_MASK},
-	{"C2H_STAT_DMA_ENG_0_QID_FIFO_OUT_CNT",
-		C2H_STAT_DMA_ENG_0_QID_FIFO_OUT_CNT_MASK},
-	{"C2H_STAT_DMA_ENG_0_PLD_FIFO_OUT_CNT",
-		C2H_STAT_DMA_ENG_0_PLD_FIFO_OUT_CNT_MASK},
-	{"C2H_STAT_DMA_ENG_0_WRQ_FIFO_OUT_CNT",
-		C2H_STAT_DMA_ENG_0_WRQ_FIFO_OUT_CNT_MASK},
-	{"C2H_STAT_DMA_ENG_0_WRB_SM_CS",
-		C2H_STAT_DMA_ENG_0_WRB_SM_CS_MASK},
-	{"C2H_STAT_DMA_ENG_0_MAIN_SM_CS",
-		C2H_STAT_DMA_ENG_0_MAIN_SM_CS_MASK},
-};
-
-
-static struct regfield_info
-	c2h_stat_dbg_dma_eng_1_field_info[] = {
-	{"C2H_STAT_DMA_ENG_1_RSVD_1",
-		C2H_STAT_DMA_ENG_1_RSVD_1_MASK},
-	{"C2H_STAT_DMA_ENG_1_DESC_RSP_LAST",
-		C2H_STAT_DMA_ENG_1_DESC_RSP_LAST_MASK},
-	{"C2H_STAT_DMA_ENG_1_PLD_FIFO_IN_CNT",
-		C2H_STAT_DMA_ENG_1_PLD_FIFO_IN_CNT_MASK},
-	{"C2H_STAT_DMA_ENG_1_PLD_FIFO_OUTPUT_CNT",
-		C2H_STAT_DMA_ENG_1_PLD_FIFO_OUTPUT_CNT_MASK},
-	{"C2H_STAT_DMA_ENG_1_QID_FIFO_IN_CNT",
-		C2H_STAT_DMA_ENG_1_QID_FIFO_IN_CNT_MASK},
-};
-
-
-static struct regfield_info
-	c2h_stat_dbg_dma_eng_2_field_info[] = {
-	{"C2H_STAT_DMA_ENG_2_RSVD_1",
-		C2H_STAT_DMA_ENG_2_RSVD_1_MASK},
-	{"C2H_STAT_DMA_ENG_2_WRB_FIFO_IN_CNT",
-		C2H_STAT_DMA_ENG_2_WRB_FIFO_IN_CNT_MASK},
-	{"C2H_STAT_DMA_ENG_2_WRB_FIFO_OUTPUT_CNT",
-		C2H_STAT_DMA_ENG_2_WRB_FIFO_OUTPUT_CNT_MASK},
-	{"C2H_STAT_DMA_ENG_2_QID_FIFO_OUTPUT_CNT",
-		C2H_STAT_DMA_ENG_2_QID_FIFO_OUTPUT_CNT_MASK},
-};
-
-
-static struct regfield_info
-	c2h_stat_dbg_dma_eng_3_field_info[] = {
-	{"C2H_STAT_DMA_ENG_3_RSVD_1",
-		C2H_STAT_DMA_ENG_3_RSVD_1_MASK},
-	{"C2H_STAT_DMA_ENG_3_ADDR_4K_SPLIT_CNT",
-		C2H_STAT_DMA_ENG_3_ADDR_4K_SPLIT_CNT_MASK},
-	{"C2H_STAT_DMA_ENG_3_WRQ_FIFO_IN_CNT",
-		C2H_STAT_DMA_ENG_3_WRQ_FIFO_IN_CNT_MASK},
-	{"C2H_STAT_DMA_ENG_3_WRQ_FIFO_OUTPUT_CNT",
-		C2H_STAT_DMA_ENG_3_WRQ_FIFO_OUTPUT_CNT_MASK},
-};
-
-
-static struct regfield_info
-	c2h_dbg_pfch_err_ctxt_field_info[] = {
-	{"C2H_PFCH_ERR_CTXT_RSVD_1",
-		C2H_PFCH_ERR_CTXT_RSVD_1_MASK},
-	{"C2H_PFCH_ERR_CTXT_ERR_STAT",
-		C2H_PFCH_ERR_CTXT_ERR_STAT_MASK},
-	{"C2H_PFCH_ERR_CTXT_CMD_WR",
-		C2H_PFCH_ERR_CTXT_CMD_WR_MASK},
-	{"C2H_PFCH_ERR_CTXT_QID",
-		C2H_PFCH_ERR_CTXT_QID_MASK},
-	{"C2H_PFCH_ERR_CTXT_DONE",
-		C2H_PFCH_ERR_CTXT_DONE_MASK},
-};
-
-
-static struct regfield_info
-	c2h_first_err_qid_field_info[] = {
-	{"C2H_FIRST_ERR_QID_RSVD_1",
-		C2H_FIRST_ERR_QID_RSVD_1_MASK},
-	{"C2H_FIRST_ERR_QID_ERR_STAT",
-		C2H_FIRST_ERR_QID_ERR_STAT_MASK},
-	{"C2H_FIRST_ERR_QID_CMD_WR",
-		C2H_FIRST_ERR_QID_CMD_WR_MASK},
-	{"C2H_FIRST_ERR_QID_QID",
-		C2H_FIRST_ERR_QID_QID_MASK},
-};
-
-
-static struct regfield_info
-	stat_num_wrb_in_field_info[] = {
-	{"STAT_NUM_WRB_IN_RSVD_1",
-		STAT_NUM_WRB_IN_RSVD_1_MASK},
-	{"STAT_NUM_WRB_IN_WRB_CNT",
-		STAT_NUM_WRB_IN_WRB_CNT_MASK},
-};
-
-
-static struct regfield_info
-	stat_num_wrb_out_field_info[] = {
-	{"STAT_NUM_WRB_OUT_RSVD_1",
-		STAT_NUM_WRB_OUT_RSVD_1_MASK},
-	{"STAT_NUM_WRB_OUT_WRB_CNT",
-		STAT_NUM_WRB_OUT_WRB_CNT_MASK},
-};
-
-
-static struct regfield_info
-	stat_num_wrb_drp_field_info[] = {
-	{"STAT_NUM_WRB_DRP_RSVD_1",
-		STAT_NUM_WRB_DRP_RSVD_1_MASK},
-	{"STAT_NUM_WRB_DRP_WRB_CNT",
-		STAT_NUM_WRB_DRP_WRB_CNT_MASK},
-};
-
-
-static struct regfield_info
-	stat_num_stat_desc_out_field_info[] = {
-	{"STAT_NUM_STAT_DESC_OUT_RSVD_1",
-		STAT_NUM_STAT_DESC_OUT_RSVD_1_MASK},
-	{"STAT_NUM_STAT_DESC_OUT_CNT",
-		STAT_NUM_STAT_DESC_OUT_CNT_MASK},
-};
-
-
-static struct regfield_info
-	stat_num_dsc_crdt_sent_field_info[] = {
-	{"STAT_NUM_DSC_CRDT_SENT_RSVD_1",
-		STAT_NUM_DSC_CRDT_SENT_RSVD_1_MASK},
-	{"STAT_NUM_DSC_CRDT_SENT_CNT",
-		STAT_NUM_DSC_CRDT_SENT_CNT_MASK},
-};
-
-
-static struct regfield_info
-	stat_num_fch_dsc_rcvd_field_info[] = {
-	{"STAT_NUM_FCH_DSC_RCVD_RSVD_1",
-		STAT_NUM_FCH_DSC_RCVD_RSVD_1_MASK},
-	{"STAT_NUM_FCH_DSC_RCVD_DSC_CNT",
-		STAT_NUM_FCH_DSC_RCVD_DSC_CNT_MASK},
-};
-
-
-static struct regfield_info
-	stat_num_byp_dsc_rcvd_field_info[] = {
-	{"STAT_NUM_BYP_DSC_RCVD_RSVD_1",
-		STAT_NUM_BYP_DSC_RCVD_RSVD_1_MASK},
-	{"STAT_NUM_BYP_DSC_RCVD_DSC_CNT",
-		STAT_NUM_BYP_DSC_RCVD_DSC_CNT_MASK},
-};
-
-
-static struct regfield_info
-	c2h_wrb_coal_cfg_field_info[] = {
-	{"C2H_WRB_COAL_CFG_MAX_BUF_SZ",
-		C2H_WRB_COAL_CFG_MAX_BUF_SZ_MASK},
-	{"C2H_WRB_COAL_CFG_TICK_VAL",
-		C2H_WRB_COAL_CFG_TICK_VAL_MASK},
-	{"C2H_WRB_COAL_CFG_TICK_CNT",
-		C2H_WRB_COAL_CFG_TICK_CNT_MASK},
-	{"C2H_WRB_COAL_CFG_SET_GLB_FLUSH",
-		C2H_WRB_COAL_CFG_SET_GLB_FLUSH_MASK},
-	{"C2H_WRB_COAL_CFG_DONE_GLB_FLUSH",
-		C2H_WRB_COAL_CFG_DONE_GLB_FLUSH_MASK},
-};
-
-
-static struct regfield_info
-	c2h_intr_h2c_req_field_info[] = {
-	{"C2H_INTR_H2C_REQ_RSVD_1",
-		C2H_INTR_H2C_REQ_RSVD_1_MASK},
-	{"C2H_INTR_H2C_REQ_CNT",
-		C2H_INTR_H2C_REQ_CNT_MASK},
-};
-
-
-static struct regfield_info
-	c2h_intr_c2h_mm_req_field_info[] = {
-	{"C2H_INTR_C2H_MM_REQ_RSVD_1",
-		C2H_INTR_C2H_MM_REQ_RSVD_1_MASK},
-	{"C2H_INTR_C2H_MM_REQ_CNT",
-		C2H_INTR_C2H_MM_REQ_CNT_MASK},
-};
-
-
-static struct regfield_info
-	c2h_intr_err_int_req_field_info[] = {
-	{"C2H_INTR_ERR_INT_REQ_RSVD_1",
-		C2H_INTR_ERR_INT_REQ_RSVD_1_MASK},
-	{"C2H_INTR_ERR_INT_REQ_CNT",
-		C2H_INTR_ERR_INT_REQ_CNT_MASK},
-};
-
-
-static struct regfield_info
-	c2h_intr_c2h_st_req_field_info[] = {
-	{"C2H_INTR_C2H_ST_REQ_RSVD_1",
-		C2H_INTR_C2H_ST_REQ_RSVD_1_MASK},
-	{"C2H_INTR_C2H_ST_REQ_CNT",
-		C2H_INTR_C2H_ST_REQ_CNT_MASK},
-};
-
-
-static struct regfield_info
-	c2h_intr_h2c_err_c2h_mm_msix_ack_field_info[] = {
-	{"C2H_INTR_H2C_ERR_C2H_MM_MSIX_ACK_RSVD_1",
-		C2H_INTR_H2C_ERR_C2H_MM_MSIX_ACK_RSVD_1_MASK},
-	{"C2H_INTR_H2C_ERR_C2H_MM_MSIX_ACK_CNT",
-		C2H_INTR_H2C_ERR_C2H_MM_MSIX_ACK_CNT_MASK},
-};
-
-
-static struct regfield_info
-	c2h_intr_h2c_err_c2h_mm_msix_fail_field_info[] = {
-	{"C2H_INTR_H2C_ERR_C2H_MM_MSIX_FAIL_RSVD_1",
-		C2H_INTR_H2C_ERR_C2H_MM_MSIX_FAIL_RSVD_1_MASK},
-	{"C2H_INTR_H2C_ERR_C2H_MM_MSIX_FAIL_CNT",
-		C2H_INTR_H2C_ERR_C2H_MM_MSIX_FAIL_CNT_MASK},
-};
-
-
-static struct regfield_info
-	c2h_intr_h2c_err_c2h_mm_msix_no_msix_field_info[] = {
-	{"C2H_INTR_H2C_ERR_C2H_MM_MSIX_NO_MSIX_RSVD_1",
-		C2H_INTR_H2C_ERR_C2H_MM_MSIX_NO_MSIX_RSVD_1_MASK},
-	{"C2H_INTR_H2C_ERR_C2H_MM_MSIX_NO_MSIX_CNT",
-		C2H_INTR_H2C_ERR_C2H_MM_MSIX_NO_MSIX_CNT_MASK},
-};
-
-
-static struct regfield_info
-	c2h_intr_h2c_err_c2h_mm_ctxt_inval_field_info[] = {
-	{"C2H_INTR_H2C_ERR_C2H_MM_CTXT_INVAL_RSVD_1",
-		C2H_INTR_H2C_ERR_C2H_MM_CTXT_INVAL_RSVD_1_MASK},
-	{"C2H_INTR_H2C_ERR_C2H_MM_CTXT_INVAL_CNT",
-		C2H_INTR_H2C_ERR_C2H_MM_CTXT_INVAL_CNT_MASK},
-};
-
-
-static struct regfield_info
-	c2h_intr_c2h_st_msix_ack_field_info[] = {
-	{"C2H_INTR_C2H_ST_MSIX_ACK_RSVD_1",
-		C2H_INTR_C2H_ST_MSIX_ACK_RSVD_1_MASK},
-	{"C2H_INTR_C2H_ST_MSIX_ACK_CNT",
-		C2H_INTR_C2H_ST_MSIX_ACK_CNT_MASK},
-};
-
-
-static struct regfield_info
-	c2h_intr_c2h_st_msix_fail_field_info[] = {
-	{"C2H_INTR_C2H_ST_MSIX_FAIL_RSVD_1",
-		C2H_INTR_C2H_ST_MSIX_FAIL_RSVD_1_MASK},
-	{"C2H_INTR_C2H_ST_MSIX_FAIL_CNT",
-		C2H_INTR_C2H_ST_MSIX_FAIL_CNT_MASK},
-};
-
-
-static struct regfield_info
-	c2h_intr_c2h_st_no_msix_field_info[] = {
-	{"C2H_INTR_C2H_ST_NO_MSIX_RSVD_1",
-		C2H_INTR_C2H_ST_NO_MSIX_RSVD_1_MASK},
-	{"C2H_INTR_C2H_ST_NO_MSIX_CNT",
-		C2H_INTR_C2H_ST_NO_MSIX_CNT_MASK},
-};
-
-
-static struct regfield_info
-	c2h_intr_c2h_st_ctxt_inval_field_info[] = {
-	{"C2H_INTR_C2H_ST_CTXT_INVAL_RSVD_1",
-		C2H_INTR_C2H_ST_CTXT_INVAL_RSVD_1_MASK},
-	{"C2H_INTR_C2H_ST_CTXT_INVAL_CNT",
-		C2H_INTR_C2H_ST_CTXT_INVAL_CNT_MASK},
-};
-
-
-static struct regfield_info
-	c2h_stat_wr_cmp_field_info[] = {
-	{"C2H_STAT_WR_CMP_RSVD_1",
-		C2H_STAT_WR_CMP_RSVD_1_MASK},
-	{"C2H_STAT_WR_CMP_CNT",
-		C2H_STAT_WR_CMP_CNT_MASK},
-};
-
-
-static struct regfield_info
-	c2h_stat_dbg_dma_eng_4_field_info[] = {
-	{"C2H_STAT_DMA_ENG_4_TUSER_FIFO_OUT_VLD",
-		C2H_STAT_DMA_ENG_4_TUSER_FIFO_OUT_VLD_MASK},
-	{"C2H_STAT_DMA_ENG_4_WRB_FIFO_IN_RDY",
-		C2H_STAT_DMA_ENG_4_WRB_FIFO_IN_RDY_MASK},
-	{"C2H_STAT_DMA_ENG_4_TUSER_FIFO_IN_CNT",
-		C2H_STAT_DMA_ENG_4_TUSER_FIFO_IN_CNT_MASK},
-	{"C2H_STAT_DMA_ENG_4_TUSER_FIFO_OUTPUT_CNT",
-		C2H_STAT_DMA_ENG_4_TUSER_FIFO_OUTPUT_CNT_MASK},
-	{"C2H_STAT_DMA_ENG_4_TUSER_FIFO_OUT_CNT",
-		C2H_STAT_DMA_ENG_4_TUSER_FIFO_OUT_CNT_MASK},
-};
-
-
-static struct regfield_info
-	c2h_stat_dbg_dma_eng_5_field_info[] = {
-	{"C2H_STAT_DMA_ENG_5_RSVD_1",
-		C2H_STAT_DMA_ENG_5_RSVD_1_MASK},
-	{"C2H_STAT_DMA_ENG_5_TUSER_COMB_OUT_VLD",
-		C2H_STAT_DMA_ENG_5_TUSER_COMB_OUT_VLD_MASK},
-	{"C2H_STAT_DMA_ENG_5_TUSER_FIFO_IN_RDY",
-		C2H_STAT_DMA_ENG_5_TUSER_FIFO_IN_RDY_MASK},
-	{"C2H_STAT_DMA_ENG_5_TUSER_COMB_IN_CNT",
-		C2H_STAT_DMA_ENG_5_TUSER_COMB_IN_CNT_MASK},
-	{"C2H_STAT_DMA_ENG_5_TUSE_COMB_OUTPUT_CNT",
-		C2H_STAT_DMA_ENG_5_TUSE_COMB_OUTPUT_CNT_MASK},
-	{"C2H_STAT_DMA_ENG_5_TUSER_COMB_CNT",
-		C2H_STAT_DMA_ENG_5_TUSER_COMB_CNT_MASK},
-};
-
-
-static struct regfield_info
-	c2h_dbg_pfch_qid_field_info[] = {
-	{"C2H_PFCH_QID_RSVD_1",
-		C2H_PFCH_QID_RSVD_1_MASK},
-	{"C2H_PFCH_QID_ERR_CTXT",
-		C2H_PFCH_QID_ERR_CTXT_MASK},
-	{"C2H_PFCH_QID_TARGET",
-		C2H_PFCH_QID_TARGET_MASK},
-	{"C2H_PFCH_QID_QID_OR_TAG",
-		C2H_PFCH_QID_QID_OR_TAG_MASK},
-};
-
-
-static struct regfield_info
-	c2h_dbg_pfch_field_info[] = {
-	{"C2H_PFCH_DATA",
-		C2H_PFCH_DATA_MASK},
-};
-
-
-static struct regfield_info
-	c2h_int_dbg_field_info[] = {
-	{"C2H_INT_RSVD_1",
-		C2H_INT_RSVD_1_MASK},
-	{"C2H_INT_INT_COAL_SM",
-		C2H_INT_INT_COAL_SM_MASK},
-	{"C2H_INT_INT_SM",
-		C2H_INT_INT_SM_MASK},
-};
-
-
-static struct regfield_info
-	c2h_stat_imm_accepted_field_info[] = {
-	{"C2H_STAT_IMM_ACCEPTED_RSVD_1",
-		C2H_STAT_IMM_ACCEPTED_RSVD_1_MASK},
-	{"C2H_STAT_IMM_ACCEPTED_CNT",
-		C2H_STAT_IMM_ACCEPTED_CNT_MASK},
-};
-
-
-static struct regfield_info
-	c2h_stat_marker_accepted_field_info[] = {
-	{"C2H_STAT_MARKER_ACCEPTED_RSVD_1",
-		C2H_STAT_MARKER_ACCEPTED_RSVD_1_MASK},
-	{"C2H_STAT_MARKER_ACCEPTED_CNT",
-		C2H_STAT_MARKER_ACCEPTED_CNT_MASK},
-};
-
-
-static struct regfield_info
-	c2h_stat_disable_cmp_accepted_field_info[] = {
-	{"C2H_STAT_DISABLE_CMP_ACCEPTED_RSVD_1",
-		C2H_STAT_DISABLE_CMP_ACCEPTED_RSVD_1_MASK},
-	{"C2H_STAT_DISABLE_CMP_ACCEPTED_CNT",
-		C2H_STAT_DISABLE_CMP_ACCEPTED_CNT_MASK},
-};
-
-
-static struct regfield_info
-	c2h_pld_fifo_crdt_cnt_field_info[] = {
-	{"C2H_PLD_FIFO_CRDT_CNT_RSVD_1",
-		C2H_PLD_FIFO_CRDT_CNT_RSVD_1_MASK},
-	{"C2H_PLD_FIFO_CRDT_CNT_CNT",
-		C2H_PLD_FIFO_CRDT_CNT_CNT_MASK},
-};
-
-
-static struct regfield_info
-	h2c_err_stat_field_info[] = {
-	{"H2C_ERR_STAT_RSVD_1",
-		H2C_ERR_STAT_RSVD_1_MASK},
-	{"H2C_ERR_STAT_SBE",
-		H2C_ERR_STAT_SBE_MASK},
-	{"H2C_ERR_STAT_DBE",
-		H2C_ERR_STAT_DBE_MASK},
-	{"H2C_ERR_STAT_NO_DMA_DS",
-		H2C_ERR_STAT_NO_DMA_DS_MASK},
-	{"H2C_ERR_STAT_SDI_MRKR_REQ_MOP_ERR",
-		H2C_ERR_STAT_SDI_MRKR_REQ_MOP_ERR_MASK},
-	{"H2C_ERR_STAT_ZERO_LEN_DS",
-		H2C_ERR_STAT_ZERO_LEN_DS_MASK},
-};
-
-
-static struct regfield_info
-	h2c_err_mask_field_info[] = {
-	{"H2C_ERR_EN",
-		H2C_ERR_EN_MASK},
-};
-
-
-static struct regfield_info
-	h2c_first_err_qid_field_info[] = {
-	{"H2C_FIRST_ERR_QID_RSVD_1",
-		H2C_FIRST_ERR_QID_RSVD_1_MASK},
-	{"H2C_FIRST_ERR_QID_ERR_TYPE",
-		H2C_FIRST_ERR_QID_ERR_TYPE_MASK},
-	{"H2C_FIRST_ERR_QID_RSVD_2",
-		H2C_FIRST_ERR_QID_RSVD_2_MASK},
-	{"H2C_FIRST_ERR_QID_QID",
-		H2C_FIRST_ERR_QID_QID_MASK},
-};
-
-
-static struct regfield_info
-	h2c_dbg_reg0_field_info[] = {
-	{"H2C_REG0_NUM_DSC_RCVD",
-		H2C_REG0_NUM_DSC_RCVD_MASK},
-	{"H2C_REG0_NUM_WRB_SENT",
-		H2C_REG0_NUM_WRB_SENT_MASK},
-};
-
-
-static struct regfield_info
-	h2c_dbg_reg1_field_info[] = {
-	{"H2C_REG1_NUM_REQ_SENT",
-		H2C_REG1_NUM_REQ_SENT_MASK},
-	{"H2C_REG1_NUM_CMP_SENT",
-		H2C_REG1_NUM_CMP_SENT_MASK},
-};
-
-
-static struct regfield_info
-	h2c_dbg_reg2_field_info[] = {
-	{"H2C_REG2_RSVD_1",
-		H2C_REG2_RSVD_1_MASK},
-	{"H2C_REG2_NUM_ERR_DSC_RCVD",
-		H2C_REG2_NUM_ERR_DSC_RCVD_MASK},
-};
-
-
-static struct regfield_info
-	h2c_dbg_reg3_field_info[] = {
-	{"H2C_REG3",
-		H2C_REG3_MASK},
-	{"H2C_REG3_DSCO_FIFO_EMPTY",
-		H2C_REG3_DSCO_FIFO_EMPTY_MASK},
-	{"H2C_REG3_DSCO_FIFO_FULL",
-		H2C_REG3_DSCO_FIFO_FULL_MASK},
-	{"H2C_REG3_CUR_RC_STATE",
-		H2C_REG3_CUR_RC_STATE_MASK},
-	{"H2C_REG3_RDREQ_LINES",
-		H2C_REG3_RDREQ_LINES_MASK},
-	{"H2C_REG3_RDATA_LINES_AVAIL",
-		H2C_REG3_RDATA_LINES_AVAIL_MASK},
-	{"H2C_REG3_PEND_FIFO_EMPTY",
-		H2C_REG3_PEND_FIFO_EMPTY_MASK},
-	{"H2C_REG3_PEND_FIFO_FULL",
-		H2C_REG3_PEND_FIFO_FULL_MASK},
-	{"H2C_REG3_CUR_RQ_STATE",
-		H2C_REG3_CUR_RQ_STATE_MASK},
-	{"H2C_REG3_DSCI_FIFO_FULL",
-		H2C_REG3_DSCI_FIFO_FULL_MASK},
-	{"H2C_REG3_DSCI_FIFO_EMPTY",
-		H2C_REG3_DSCI_FIFO_EMPTY_MASK},
-};
-
-
-static struct regfield_info
-	h2c_dbg_reg4_field_info[] = {
-	{"H2C_REG4_RDREQ_ADDR",
-		H2C_REG4_RDREQ_ADDR_MASK},
-};
-
-
-static struct regfield_info
-	h2c_fatal_err_en_field_info[] = {
-	{"H2C_FATAL_ERR_EN_RSVD_1",
-		H2C_FATAL_ERR_EN_RSVD_1_MASK},
-	{"H2C_FATAL_ERR_EN_H2C",
-		H2C_FATAL_ERR_EN_H2C_MASK},
-};
-
-
-static struct regfield_info
-	c2h_channel_ctl_field_info[] = {
-	{"C2H_CHANNEL_CTL_RSVD_1",
-		C2H_CHANNEL_CTL_RSVD_1_MASK},
-	{"C2H_CHANNEL_CTL_RUN",
-		C2H_CHANNEL_CTL_RUN_MASK},
-};
-
-
-static struct regfield_info
-	c2h_channel_ctl_1_field_info[] = {
-	{"C2H_CHANNEL_CTL_1_RUN",
-		C2H_CHANNEL_CTL_1_RUN_MASK},
-	{"C2H_CHANNEL_CTL_1_RUN_1",
-		C2H_CHANNEL_CTL_1_RUN_1_MASK},
-};
-
-
-static struct regfield_info
-	c2h_mm_status_field_info[] = {
-	{"C2H_MM_STATUS_RSVD_1",
-		C2H_MM_STATUS_RSVD_1_MASK},
-	{"C2H_MM_STATUS_RUN",
-		C2H_MM_STATUS_RUN_MASK},
-};
-
-
-static struct regfield_info
-	c2h_channel_cmpl_desc_cnt_field_info[] = {
-	{"C2H_CHANNEL_CMPL_DESC_CNT_C2H_CO",
-		C2H_CHANNEL_CMPL_DESC_CNT_C2H_CO_MASK},
-};
-
-
-static struct regfield_info
-	c2h_mm_err_code_enable_mask_field_info[] = {
-	{"C2H_MM_ERR_CODE_ENABLE_RSVD_1",
-		C2H_MM_ERR_CODE_ENABLE_RSVD_1_MASK},
-	{"C2H_MM_ERR_CODE_ENABLE_WR_UC_RAM",
-		C2H_MM_ERR_CODE_ENABLE_WR_UC_RAM_MASK},
-	{"C2H_MM_ERR_CODE_ENABLE_WR_UR",
-		C2H_MM_ERR_CODE_ENABLE_WR_UR_MASK},
-	{"C2H_MM_ERR_CODE_ENABLE_WR_FLR",
-		C2H_MM_ERR_CODE_ENABLE_WR_FLR_MASK},
-	{"C2H_MM_ERR_CODE_ENABLE_RSVD_2",
-		C2H_MM_ERR_CODE_ENABLE_RSVD_2_MASK},
-	{"C2H_MM_ERR_CODE_ENABLE_RD_SLV_ERR",
-		C2H_MM_ERR_CODE_ENABLE_RD_SLV_ERR_MASK},
-	{"C2H_MM_ERR_CODE_ENABLE_WR_SLV_ERR",
-		C2H_MM_ERR_CODE_ENABLE_WR_SLV_ERR_MASK},
-};
-
-
-static struct regfield_info
-	c2h_mm_err_code_field_info[] = {
-	{"C2H_MM_ERR_CODE_RSVD_1",
-		C2H_MM_ERR_CODE_RSVD_1_MASK},
-	{"C2H_MM_ERR_CODE_VALID",
-		C2H_MM_ERR_CODE_VALID_MASK},
-	{"C2H_MM_ERR_CODE_RDWR",
-		C2H_MM_ERR_CODE_RDWR_MASK},
-	{"C2H_MM_ERR_CODE",
-		C2H_MM_ERR_CODE_MASK},
-};
-
-
-static struct regfield_info
-	c2h_mm_err_info_field_info[] = {
-	{"C2H_MM_ERR_INFO_RSVD_1",
-		C2H_MM_ERR_INFO_RSVD_1_MASK},
-	{"C2H_MM_ERR_INFO_QID",
-		C2H_MM_ERR_INFO_QID_MASK},
-	{"C2H_MM_ERR_INFO_DIR",
-		C2H_MM_ERR_INFO_DIR_MASK},
-	{"C2H_MM_ERR_INFO_CIDX",
-		C2H_MM_ERR_INFO_CIDX_MASK},
-};
-
-
-static struct regfield_info
-	c2h_mm_perf_mon_ctl_field_info[] = {
-	{"C2H_MM_PERF_MON_CTL_RSVD_1",
-		C2H_MM_PERF_MON_CTL_RSVD_1_MASK},
-	{"C2H_MM_PERF_MON_CTL_IMM_START",
-		C2H_MM_PERF_MON_CTL_IMM_START_MASK},
-	{"C2H_MM_PERF_MON_CTL_RUN_START",
-		C2H_MM_PERF_MON_CTL_RUN_START_MASK},
-	{"C2H_MM_PERF_MON_CTL_IMM_CLEAR",
-		C2H_MM_PERF_MON_CTL_IMM_CLEAR_MASK},
-	{"C2H_MM_PERF_MON_CTL_RUN_CLEAR",
-		C2H_MM_PERF_MON_CTL_RUN_CLEAR_MASK},
-};
-
-
-static struct regfield_info
-	c2h_mm_perf_mon_cycle_cnt0_field_info[] = {
-	{"C2H_MM_PERF_MON_CYCLE_CNT0_CYC_CNT",
-		C2H_MM_PERF_MON_CYCLE_CNT0_CYC_CNT_MASK},
-};
-
-
-static struct regfield_info
-	c2h_mm_perf_mon_cycle_cnt1_field_info[] = {
-	{"C2H_MM_PERF_MON_CYCLE_CNT1_RSVD_1",
-		C2H_MM_PERF_MON_CYCLE_CNT1_RSVD_1_MASK},
-	{"C2H_MM_PERF_MON_CYCLE_CNT1_CYC_CNT",
-		C2H_MM_PERF_MON_CYCLE_CNT1_CYC_CNT_MASK},
-};
-
-
-static struct regfield_info
-	c2h_mm_perf_mon_data_cnt0_field_info[] = {
-	{"C2H_MM_PERF_MON_DATA_CNT0_DCNT",
-		C2H_MM_PERF_MON_DATA_CNT0_DCNT_MASK},
-};
-
-
-static struct regfield_info
-	c2h_mm_perf_mon_data_cnt1_field_info[] = {
-	{"C2H_MM_PERF_MON_DATA_CNT1_RSVD_1",
-		C2H_MM_PERF_MON_DATA_CNT1_RSVD_1_MASK},
-	{"C2H_MM_PERF_MON_DATA_CNT1_DCNT",
-		C2H_MM_PERF_MON_DATA_CNT1_DCNT_MASK},
-};
-
-
-static struct regfield_info
-	c2h_mm_dbg_field_info[] = {
-	{"C2H_MM_RSVD_1",
-		C2H_MM_RSVD_1_MASK},
-	{"C2H_MM_RRQ_ENTRIES",
-		C2H_MM_RRQ_ENTRIES_MASK},
-	{"C2H_MM_DAT_FIFO_SPC",
-		C2H_MM_DAT_FIFO_SPC_MASK},
-	{"C2H_MM_RD_STALL",
-		C2H_MM_RD_STALL_MASK},
-	{"C2H_MM_RRQ_FIFO_FI",
-		C2H_MM_RRQ_FIFO_FI_MASK},
-	{"C2H_MM_WR_STALL",
-		C2H_MM_WR_STALL_MASK},
-	{"C2H_MM_WRQ_FIFO_FI",
-		C2H_MM_WRQ_FIFO_FI_MASK},
-	{"C2H_MM_WBK_STALL",
-		C2H_MM_WBK_STALL_MASK},
-	{"C2H_MM_DSC_FIFO_EP",
-		C2H_MM_DSC_FIFO_EP_MASK},
-	{"C2H_MM_DSC_FIFO_FL",
-		C2H_MM_DSC_FIFO_FL_MASK},
-};
-
-
-static struct regfield_info
-	h2c_channel_ctl_field_info[] = {
-	{"H2C_CHANNEL_CTL_RSVD_1",
-		H2C_CHANNEL_CTL_RSVD_1_MASK},
-	{"H2C_CHANNEL_CTL_RUN",
-		H2C_CHANNEL_CTL_RUN_MASK},
-};
-
-
-static struct regfield_info
-	h2c_channel_ctl_1_field_info[] = {
-	{"H2C_CHANNEL_CTL_1_RUN",
-		H2C_CHANNEL_CTL_1_RUN_MASK},
-};
-
-
-static struct regfield_info
-	h2c_channel_ctl_2_field_info[] = {
-	{"H2C_CHANNEL_CTL_2_RUN",
-		H2C_CHANNEL_CTL_2_RUN_MASK},
-};
-
-
-static struct regfield_info
-	h2c_mm_status_field_info[] = {
-	{"H2C_MM_STATUS_RSVD_1",
-		H2C_MM_STATUS_RSVD_1_MASK},
-	{"H2C_MM_STATUS_RUN",
-		H2C_MM_STATUS_RUN_MASK},
-};
-
-
-static struct regfield_info
-	h2c_channel_cmpl_desc_cnt_field_info[] = {
-	{"H2C_CHANNEL_CMPL_DESC_CNT_H2C_CO",
-		H2C_CHANNEL_CMPL_DESC_CNT_H2C_CO_MASK},
-};
-
-
-static struct regfield_info
-	h2c_mm_err_code_enable_mask_field_info[] = {
-	{"H2C_MM_ERR_CODE_ENABLE_RSVD_1",
-		H2C_MM_ERR_CODE_ENABLE_RSVD_1_MASK},
-	{"H2C_MM_ERR_CODE_ENABLE_WR_SLV_ERR",
-		H2C_MM_ERR_CODE_ENABLE_WR_SLV_ERR_MASK},
-	{"H2C_MM_ERR_CODE_ENABLE_WR_DEC_ERR",
-		H2C_MM_ERR_CODE_ENABLE_WR_DEC_ERR_MASK},
-	{"H2C_MM_ERR_CODE_ENABLE_RSVD_2",
-		H2C_MM_ERR_CODE_ENABLE_RSVD_2_MASK},
-	{"H2C_MM_ERR_CODE_ENABLE_RD_RQ_DIS_ERR",
-		H2C_MM_ERR_CODE_ENABLE_RD_RQ_DIS_ERR_MASK},
-	{"H2C_MM_ERR_CODE_ENABLE_RSVD_3",
-		H2C_MM_ERR_CODE_ENABLE_RSVD_3_MASK},
-	{"H2C_MM_ERR_CODE_ENABLE_RD_DAT_POISON_ERR",
-		H2C_MM_ERR_CODE_ENABLE_RD_DAT_POISON_ERR_MASK},
-	{"H2C_MM_ERR_CODE_ENABLE_RSVD_4",
-		H2C_MM_ERR_CODE_ENABLE_RSVD_4_MASK},
-	{"H2C_MM_ERR_CODE_ENABLE_RD_FLR_ERR",
-		H2C_MM_ERR_CODE_ENABLE_RD_FLR_ERR_MASK},
-	{"H2C_MM_ERR_CODE_ENABLE_RSVD_5",
-		H2C_MM_ERR_CODE_ENABLE_RSVD_5_MASK},
-	{"H2C_MM_ERR_CODE_ENABLE_RD_HDR_ADR_ERR",
-		H2C_MM_ERR_CODE_ENABLE_RD_HDR_ADR_ERR_MASK},
-	{"H2C_MM_ERR_CODE_ENABLE_RD_HDR_PARA",
-		H2C_MM_ERR_CODE_ENABLE_RD_HDR_PARA_MASK},
-	{"H2C_MM_ERR_CODE_ENABLE_RD_HDR_BYTE_ERR",
-		H2C_MM_ERR_CODE_ENABLE_RD_HDR_BYTE_ERR_MASK},
-	{"H2C_MM_ERR_CODE_ENABLE_RD_UR_CA",
-		H2C_MM_ERR_CODE_ENABLE_RD_UR_CA_MASK},
-	{"H2C_MM_ERR_CODE_ENABLE_RD_HRD_POISON_ERR",
-		H2C_MM_ERR_CODE_ENABLE_RD_HRD_POISON_ERR_MASK},
-	{"H2C_MM_ERR_CODE_ENABLE_RSVD_6",
-		H2C_MM_ERR_CODE_ENABLE_RSVD_6_MASK},
-};
-
-
-static struct regfield_info
-	h2c_mm_err_code_field_info[] = {
-	{"H2C_MM_ERR_CODE_RSVD_1",
-		H2C_MM_ERR_CODE_RSVD_1_MASK},
-	{"H2C_MM_ERR_CODE_VALID",
-		H2C_MM_ERR_CODE_VALID_MASK},
-	{"H2C_MM_ERR_CODE_RDWR",
-		H2C_MM_ERR_CODE_RDWR_MASK},
-	{"H2C_MM_ERR_CODE",
-		H2C_MM_ERR_CODE_MASK},
-};
-
-
-static struct regfield_info
-	h2c_mm_err_info_field_info[] = {
-	{"H2C_MM_ERR_INFO_RSVD_1",
-		H2C_MM_ERR_INFO_RSVD_1_MASK},
-	{"H2C_MM_ERR_INFO_QID",
-		H2C_MM_ERR_INFO_QID_MASK},
-	{"H2C_MM_ERR_INFO_DIR",
-		H2C_MM_ERR_INFO_DIR_MASK},
-	{"H2C_MM_ERR_INFO_CIDX",
-		H2C_MM_ERR_INFO_CIDX_MASK},
-};
-
-
-static struct regfield_info
-	h2c_mm_perf_mon_ctl_field_info[] = {
-	{"H2C_MM_PERF_MON_CTL_RSVD_1",
-		H2C_MM_PERF_MON_CTL_RSVD_1_MASK},
-	{"H2C_MM_PERF_MON_CTL_IMM_START",
-		H2C_MM_PERF_MON_CTL_IMM_START_MASK},
-	{"H2C_MM_PERF_MON_CTL_RUN_START",
-		H2C_MM_PERF_MON_CTL_RUN_START_MASK},
-	{"H2C_MM_PERF_MON_CTL_IMM_CLEAR",
-		H2C_MM_PERF_MON_CTL_IMM_CLEAR_MASK},
-	{"H2C_MM_PERF_MON_CTL_RUN_CLEAR",
-		H2C_MM_PERF_MON_CTL_RUN_CLEAR_MASK},
-};
-
-
-static struct regfield_info
-	h2c_mm_perf_mon_cycle_cnt0_field_info[] = {
-	{"H2C_MM_PERF_MON_CYCLE_CNT0_CYC_CNT",
-		H2C_MM_PERF_MON_CYCLE_CNT0_CYC_CNT_MASK},
-};
-
-
-static struct regfield_info
-	h2c_mm_perf_mon_cycle_cnt1_field_info[] = {
-	{"H2C_MM_PERF_MON_CYCLE_CNT1_RSVD_1",
-		H2C_MM_PERF_MON_CYCLE_CNT1_RSVD_1_MASK},
-	{"H2C_MM_PERF_MON_CYCLE_CNT1_CYC_CNT",
-		H2C_MM_PERF_MON_CYCLE_CNT1_CYC_CNT_MASK},
-};
-
-
-static struct regfield_info
-	h2c_mm_perf_mon_data_cnt0_field_info[] = {
-	{"H2C_MM_PERF_MON_DATA_CNT0_DCNT",
-		H2C_MM_PERF_MON_DATA_CNT0_DCNT_MASK},
-};
-
-
-static struct regfield_info
-	h2c_mm_perf_mon_data_cnt1_field_info[] = {
-	{"H2C_MM_PERF_MON_DATA_CNT1_RSVD_1",
-		H2C_MM_PERF_MON_DATA_CNT1_RSVD_1_MASK},
-	{"H2C_MM_PERF_MON_DATA_CNT1_DCNT",
-		H2C_MM_PERF_MON_DATA_CNT1_DCNT_MASK},
-};
-
-
-static struct regfield_info
-	h2c_mm_dbg_field_info[] = {
-	{"H2C_MM_RSVD_1",
-		H2C_MM_RSVD_1_MASK},
-	{"H2C_MM_RRQ_ENTRIES",
-		H2C_MM_RRQ_ENTRIES_MASK},
-	{"H2C_MM_DAT_FIFO_SPC",
-		H2C_MM_DAT_FIFO_SPC_MASK},
-	{"H2C_MM_RD_STALL",
-		H2C_MM_RD_STALL_MASK},
-	{"H2C_MM_RRQ_FIFO_FI",
-		H2C_MM_RRQ_FIFO_FI_MASK},
-	{"H2C_MM_WR_STALL",
-		H2C_MM_WR_STALL_MASK},
-	{"H2C_MM_WRQ_FIFO_FI",
-		H2C_MM_WRQ_FIFO_FI_MASK},
-	{"H2C_MM_WBK_STALL",
-		H2C_MM_WBK_STALL_MASK},
-	{"H2C_MM_DSC_FIFO_EP",
-		H2C_MM_DSC_FIFO_EP_MASK},
-	{"H2C_MM_DSC_FIFO_FL",
-		H2C_MM_DSC_FIFO_FL_MASK},
-};
-
-
-static struct regfield_info
-	func_status_reg_field_info[] = {
-	{"FUNC_STATUS_REG_RSVD_1",
-		FUNC_STATUS_REG_RSVD_1_MASK},
-	{"FUNC_STATUS_REG_CUR_SRC_FN",
-		FUNC_STATUS_REG_CUR_SRC_FN_MASK},
-	{"FUNC_STATUS_REG_ACK",
-		FUNC_STATUS_REG_ACK_MASK},
-	{"FUNC_STATUS_REG_O_MSG",
-		FUNC_STATUS_REG_O_MSG_MASK},
-	{"FUNC_STATUS_REG_I_MSG",
-		FUNC_STATUS_REG_I_MSG_MASK},
-};
-
-
-static struct regfield_info
-	func_cmd_reg_field_info[] = {
-	{"FUNC_CMD_REG_RSVD_1",
-		FUNC_CMD_REG_RSVD_1_MASK},
-	{"FUNC_CMD_REG_RSVD_2",
-		FUNC_CMD_REG_RSVD_2_MASK},
-	{"FUNC_CMD_REG_MSG_RCV",
-		FUNC_CMD_REG_MSG_RCV_MASK},
-	{"FUNC_CMD_REG_MSG_SENT",
-		FUNC_CMD_REG_MSG_SENT_MASK},
-};
-
-
-static struct regfield_info
-	func_interrupt_vector_reg_field_info[] = {
-	{"FUNC_INTERRUPT_VECTOR_REG_RSVD_1",
-		FUNC_INTERRUPT_VECTOR_REG_RSVD_1_MASK},
-	{"FUNC_INTERRUPT_VECTOR_REG_IN",
-		FUNC_INTERRUPT_VECTOR_REG_IN_MASK},
-};
-
-
-static struct regfield_info
-	target_func_reg_field_info[] = {
-	{"TARGET_FUNC_REG_RSVD_1",
-		TARGET_FUNC_REG_RSVD_1_MASK},
-	{"TARGET_FUNC_REG_N_ID",
-		TARGET_FUNC_REG_N_ID_MASK},
-};
-
-
-static struct regfield_info
-	func_interrupt_ctl_reg_field_info[] = {
-	{"FUNC_INTERRUPT_CTL_REG_RSVD_1",
-		FUNC_INTERRUPT_CTL_REG_RSVD_1_MASK},
-	{"FUNC_INTERRUPT_CTL_REG_INT_EN",
-		FUNC_INTERRUPT_CTL_REG_INT_EN_MASK},
-};
-
-static struct xreg_info qdma_s80_hard_config_regs[] = {
-{"CFG_BLK_IDENTIFIER", 0x00,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(cfg_blk_identifier_field_info),
-	cfg_blk_identifier_field_info
-},
-{"CFG_BLK_BUSDEV", 0x04,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(cfg_blk_busdev_field_info),
-	cfg_blk_busdev_field_info
-},
-{"CFG_BLK_PCIE_MAX_PLD_SIZE", 0x08,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(cfg_blk_pcie_max_pld_size_field_info),
-	cfg_blk_pcie_max_pld_size_field_info
-},
-{"CFG_BLK_PCIE_MAX_READ_REQ_SIZE", 0x0c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(cfg_blk_pcie_max_read_req_size_field_info),
-	cfg_blk_pcie_max_read_req_size_field_info
-},
-{"CFG_BLK_SYSTEM_ID", 0x10,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(cfg_blk_system_id_field_info),
-	cfg_blk_system_id_field_info
-},
-{"CFG_BLK_MSI_ENABLE", 0x014,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(cfg_blk_msi_enable_field_info),
-	cfg_blk_msi_enable_field_info
-},
-{"CFG_PCIE_DATA_WIDTH", 0x18,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(cfg_pcie_data_width_field_info),
-	cfg_pcie_data_width_field_info
-},
-{"CFG_PCIE_CTL", 0x1c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(cfg_pcie_ctl_field_info),
-	cfg_pcie_ctl_field_info
-},
-{"CFG_AXI_USER_MAX_PLD_SIZE", 0x40,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(cfg_axi_user_max_pld_size_field_info),
-	cfg_axi_user_max_pld_size_field_info
-},
-{"CFG_AXI_USER_MAX_READ_REQ_SIZE", 0x44,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(cfg_axi_user_max_read_req_size_field_info),
-	cfg_axi_user_max_read_req_size_field_info
-},
-{"CFG_BLK_MISC_CTL", 0x4c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(cfg_blk_misc_ctl_field_info),
-	cfg_blk_misc_ctl_field_info
-},
-{"CFG_BLK_SCRATCH_0", 0x80,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(cfg_blk_scratch_0_field_info),
-	cfg_blk_scratch_0_field_info
-},
-{"CFG_BLK_SCRATCH_1", 0x84,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(cfg_blk_scratch_1_field_info),
-	cfg_blk_scratch_1_field_info
-},
-{"CFG_BLK_SCRATCH_2", 0x88,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(cfg_blk_scratch_2_field_info),
-	cfg_blk_scratch_2_field_info
-},
-{"CFG_BLK_SCRATCH_3", 0x8c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(cfg_blk_scratch_3_field_info),
-	cfg_blk_scratch_3_field_info
-},
-{"CFG_BLK_SCRATCH_4", 0x90,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(cfg_blk_scratch_4_field_info),
-	cfg_blk_scratch_4_field_info
-},
-{"CFG_BLK_SCRATCH_5", 0x94,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(cfg_blk_scratch_5_field_info),
-	cfg_blk_scratch_5_field_info
-},
-{"CFG_BLK_SCRATCH_6", 0x98,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(cfg_blk_scratch_6_field_info),
-	cfg_blk_scratch_6_field_info
-},
-{"CFG_BLK_SCRATCH_7", 0x9c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(cfg_blk_scratch_7_field_info),
-	cfg_blk_scratch_7_field_info
-},
-{"RAM_SBE_MSK_A", 0xf0,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(ram_sbe_msk_a_field_info),
-	ram_sbe_msk_a_field_info
-},
-{"RAM_SBE_STS_A", 0xf4,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(ram_sbe_sts_a_field_info),
-	ram_sbe_sts_a_field_info
-},
-{"RAM_DBE_MSK_A", 0xf8,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(ram_dbe_msk_a_field_info),
-	ram_dbe_msk_a_field_info
-},
-{"RAM_DBE_STS_A", 0xfc,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(ram_dbe_sts_a_field_info),
-	ram_dbe_sts_a_field_info
-},
-{"GLBL2_IDENTIFIER", 0x100,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(glbl2_identifier_field_info),
-	glbl2_identifier_field_info
-},
-{"GLBL2_PF_BARLITE_INT", 0x104,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(glbl2_pf_barlite_int_field_info),
-	glbl2_pf_barlite_int_field_info
-},
-{"GLBL2_PF_VF_BARLITE_INT", 0x108,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(glbl2_pf_vf_barlite_int_field_info),
-	glbl2_pf_vf_barlite_int_field_info
-},
-{"GLBL2_PF_BARLITE_EXT", 0x10c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(glbl2_pf_barlite_ext_field_info),
-	glbl2_pf_barlite_ext_field_info
-},
-{"GLBL2_PF_VF_BARLITE_EXT", 0x110,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(glbl2_pf_vf_barlite_ext_field_info),
-	glbl2_pf_vf_barlite_ext_field_info
-},
-{"GLBL2_CHANNEL_INST", 0x114,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(glbl2_channel_inst_field_info),
-	glbl2_channel_inst_field_info
-},
-{"GLBL2_CHANNEL_MDMA", 0x118,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(glbl2_channel_mdma_field_info),
-	glbl2_channel_mdma_field_info
-},
-{"GLBL2_CHANNEL_STRM", 0x11c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(glbl2_channel_strm_field_info),
-	glbl2_channel_strm_field_info
-},
-{"GLBL2_CHANNEL_CAP", 0x120,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(glbl2_channel_cap_field_info),
-	glbl2_channel_cap_field_info
-},
-{"GLBL2_CHANNEL_PASID_CAP", 0x128,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(glbl2_channel_pasid_cap_field_info),
-	glbl2_channel_pasid_cap_field_info
-},
-{"GLBL2_CHANNEL_FUNC_RET", 0x12c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(glbl2_channel_func_ret_field_info),
-	glbl2_channel_func_ret_field_info
-},
-{"GLBL2_SYSTEM_ID", 0x130,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(glbl2_system_id_field_info),
-	glbl2_system_id_field_info
-},
-{"GLBL2_MISC_CAP", 0x134,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(glbl2_misc_cap_field_info),
-	glbl2_misc_cap_field_info
-},
-{"GLBL2_DBG_PCIE_RQ0", 0x1b8,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(glbl2_dbg_pcie_rq0_field_info),
-	glbl2_dbg_pcie_rq0_field_info
-},
-{"GLBL2_DBG_PCIE_RQ1", 0x1bc,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(glbl2_dbg_pcie_rq1_field_info),
-	glbl2_dbg_pcie_rq1_field_info
-},
-{"GLBL2_DBG_AXIMM_WR0", 0x1c0,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(glbl2_dbg_aximm_wr0_field_info),
-	glbl2_dbg_aximm_wr0_field_info
-},
-{"GLBL2_DBG_AXIMM_WR1", 0x1c4,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(glbl2_dbg_aximm_wr1_field_info),
-	glbl2_dbg_aximm_wr1_field_info
-},
-{"GLBL2_DBG_AXIMM_RD0", 0x1c8,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(glbl2_dbg_aximm_rd0_field_info),
-	glbl2_dbg_aximm_rd0_field_info
-},
-{"GLBL2_DBG_AXIMM_RD1", 0x1cc,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(glbl2_dbg_aximm_rd1_field_info),
-	glbl2_dbg_aximm_rd1_field_info
-},
-{"GLBL_RNG_SZ_1", 0x204,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_rng_sz_1_field_info),
-	glbl_rng_sz_1_field_info
-},
-{"GLBL_RNG_SZ_2", 0x208,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_rng_sz_2_field_info),
-	glbl_rng_sz_2_field_info
-},
-{"GLBL_RNG_SZ_3", 0x20c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_rng_sz_3_field_info),
-	glbl_rng_sz_3_field_info
-},
-{"GLBL_RNG_SZ_4", 0x210,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_rng_sz_4_field_info),
-	glbl_rng_sz_4_field_info
-},
-{"GLBL_RNG_SZ_5", 0x214,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_rng_sz_5_field_info),
-	glbl_rng_sz_5_field_info
-},
-{"GLBL_RNG_SZ_6", 0x218,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_rng_sz_6_field_info),
-	glbl_rng_sz_6_field_info
-},
-{"GLBL_RNG_SZ_7", 0x21c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_rng_sz_7_field_info),
-	glbl_rng_sz_7_field_info
-},
-{"GLBL_RNG_SZ_8", 0x220,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_rng_sz_8_field_info),
-	glbl_rng_sz_8_field_info
-},
-{"GLBL_RNG_SZ_9", 0x224,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_rng_sz_9_field_info),
-	glbl_rng_sz_9_field_info
-},
-{"GLBL_RNG_SZ_A", 0x228,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_rng_sz_a_field_info),
-	glbl_rng_sz_a_field_info
-},
-{"GLBL_RNG_SZ_B", 0x22c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_rng_sz_b_field_info),
-	glbl_rng_sz_b_field_info
-},
-{"GLBL_RNG_SZ_C", 0x230,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_rng_sz_c_field_info),
-	glbl_rng_sz_c_field_info
-},
-{"GLBL_RNG_SZ_D", 0x234,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_rng_sz_d_field_info),
-	glbl_rng_sz_d_field_info
-},
-{"GLBL_RNG_SZ_E", 0x238,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_rng_sz_e_field_info),
-	glbl_rng_sz_e_field_info
-},
-{"GLBL_RNG_SZ_F", 0x23c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_rng_sz_f_field_info),
-	glbl_rng_sz_f_field_info
-},
-{"GLBL_RNG_SZ_10", 0x240,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_rng_sz_10_field_info),
-	glbl_rng_sz_10_field_info
-},
-{"GLBL_ERR_STAT", 0x248,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_err_stat_field_info),
-	glbl_err_stat_field_info
-},
-{"GLBL_ERR_MASK", 0x24c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_err_mask_field_info),
-	glbl_err_mask_field_info
-},
-{"GLBL_DSC_CFG", 0x250,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_dsc_cfg_field_info),
-	glbl_dsc_cfg_field_info
-},
-{"GLBL_DSC_ERR_STS", 0x254,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_dsc_err_sts_field_info),
-	glbl_dsc_err_sts_field_info
-},
-{"GLBL_DSC_ERR_MSK", 0x258,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_dsc_err_msk_field_info),
-	glbl_dsc_err_msk_field_info
-},
-{"GLBL_DSC_ERR_LOG0", 0x25c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_dsc_err_log0_field_info),
-	glbl_dsc_err_log0_field_info
-},
-{"GLBL_DSC_ERR_LOG1", 0x260,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_dsc_err_log1_field_info),
-	glbl_dsc_err_log1_field_info
-},
-{"GLBL_TRQ_ERR_STS", 0x264,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_trq_err_sts_field_info),
-	glbl_trq_err_sts_field_info
-},
-{"GLBL_TRQ_ERR_MSK", 0x268,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_trq_err_msk_field_info),
-	glbl_trq_err_msk_field_info
-},
-{"GLBL_TRQ_ERR_LOG", 0x26c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_trq_err_log_field_info),
-	glbl_trq_err_log_field_info
-},
-{"GLBL_DSC_DBG_DAT0", 0x270,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_dsc_dbg_dat0_field_info),
-	glbl_dsc_dbg_dat0_field_info
-},
-{"GLBL_DSC_DBG_DAT1", 0x274,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_dsc_dbg_dat1_field_info),
-	glbl_dsc_dbg_dat1_field_info
-},
-{"TRQ_SEL_FMAP_0", 0x400,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_0_field_info),
-	trq_sel_fmap_0_field_info
-},
-{"TRQ_SEL_FMAP_1", 0x404,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_1_field_info),
-	trq_sel_fmap_1_field_info
-},
-{"TRQ_SEL_FMAP_2", 0x408,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_2_field_info),
-	trq_sel_fmap_2_field_info
-},
-{"TRQ_SEL_FMAP_3", 0x40c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_3_field_info),
-	trq_sel_fmap_3_field_info
-},
-{"TRQ_SEL_FMAP_4", 0x410,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_4_field_info),
-	trq_sel_fmap_4_field_info
-},
-{"TRQ_SEL_FMAP_5", 0x414,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_5_field_info),
-	trq_sel_fmap_5_field_info
-},
-{"TRQ_SEL_FMAP_6", 0x418,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_6_field_info),
-	trq_sel_fmap_6_field_info
-},
-{"TRQ_SEL_FMAP_7", 0x41c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_7_field_info),
-	trq_sel_fmap_7_field_info
-},
-{"TRQ_SEL_FMAP_8", 0x420,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_8_field_info),
-	trq_sel_fmap_8_field_info
-},
-{"TRQ_SEL_FMAP_9", 0x424,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_9_field_info),
-	trq_sel_fmap_9_field_info
-},
-{"TRQ_SEL_FMAP_A", 0x428,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_a_field_info),
-	trq_sel_fmap_a_field_info
-},
-{"TRQ_SEL_FMAP_B", 0x42c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_b_field_info),
-	trq_sel_fmap_b_field_info
-},
-{"TRQ_SEL_FMAP_D", 0x430,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_d_field_info),
-	trq_sel_fmap_d_field_info
-},
-{"TRQ_SEL_FMAP_E", 0x434,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_e_field_info),
-	trq_sel_fmap_e_field_info
-},
-{"TRQ_SEL_FMAP_F", 0x438,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_f_field_info),
-	trq_sel_fmap_f_field_info
-},
-{"TRQ_SEL_FMAP_10", 0x43c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_10_field_info),
-	trq_sel_fmap_10_field_info
-},
-{"TRQ_SEL_FMAP_11", 0x440,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_11_field_info),
-	trq_sel_fmap_11_field_info
-},
-{"TRQ_SEL_FMAP_12", 0x444,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_12_field_info),
-	trq_sel_fmap_12_field_info
-},
-{"TRQ_SEL_FMAP_13", 0x448,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_13_field_info),
-	trq_sel_fmap_13_field_info
-},
-{"TRQ_SEL_FMAP_14", 0x44c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_14_field_info),
-	trq_sel_fmap_14_field_info
-},
-{"TRQ_SEL_FMAP_15", 0x450,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_15_field_info),
-	trq_sel_fmap_15_field_info
-},
-{"TRQ_SEL_FMAP_16", 0x454,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_16_field_info),
-	trq_sel_fmap_16_field_info
-},
-{"TRQ_SEL_FMAP_17", 0x458,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_17_field_info),
-	trq_sel_fmap_17_field_info
-},
-{"TRQ_SEL_FMAP_18", 0x45c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_18_field_info),
-	trq_sel_fmap_18_field_info
-},
-{"TRQ_SEL_FMAP_19", 0x460,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_19_field_info),
-	trq_sel_fmap_19_field_info
-},
-{"TRQ_SEL_FMAP_1A", 0x464,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_1a_field_info),
-	trq_sel_fmap_1a_field_info
-},
-{"TRQ_SEL_FMAP_1B", 0x468,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_1b_field_info),
-	trq_sel_fmap_1b_field_info
-},
-{"TRQ_SEL_FMAP_1C", 0x46c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_1c_field_info),
-	trq_sel_fmap_1c_field_info
-},
-{"TRQ_SEL_FMAP_1D", 0x470,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_1d_field_info),
-	trq_sel_fmap_1d_field_info
-},
-{"TRQ_SEL_FMAP_1E", 0x474,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_1e_field_info),
-	trq_sel_fmap_1e_field_info
-},
-{"TRQ_SEL_FMAP_1F", 0x478,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_1f_field_info),
-	trq_sel_fmap_1f_field_info
-},
-{"TRQ_SEL_FMAP_20", 0x47c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_20_field_info),
-	trq_sel_fmap_20_field_info
-},
-{"TRQ_SEL_FMAP_21", 0x480,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_21_field_info),
-	trq_sel_fmap_21_field_info
-},
-{"TRQ_SEL_FMAP_22", 0x484,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_22_field_info),
-	trq_sel_fmap_22_field_info
-},
-{"TRQ_SEL_FMAP_23", 0x488,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_23_field_info),
-	trq_sel_fmap_23_field_info
-},
-{"TRQ_SEL_FMAP_24", 0x48c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_24_field_info),
-	trq_sel_fmap_24_field_info
-},
-{"TRQ_SEL_FMAP_25", 0x490,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_25_field_info),
-	trq_sel_fmap_25_field_info
-},
-{"TRQ_SEL_FMAP_26", 0x494,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_26_field_info),
-	trq_sel_fmap_26_field_info
-},
-{"TRQ_SEL_FMAP_27", 0x498,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_27_field_info),
-	trq_sel_fmap_27_field_info
-},
-{"TRQ_SEL_FMAP_28", 0x49c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_28_field_info),
-	trq_sel_fmap_28_field_info
-},
-{"TRQ_SEL_FMAP_29", 0x4a0,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_29_field_info),
-	trq_sel_fmap_29_field_info
-},
-{"TRQ_SEL_FMAP_2A", 0x4a4,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_2a_field_info),
-	trq_sel_fmap_2a_field_info
-},
-{"TRQ_SEL_FMAP_2B", 0x4a8,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_2b_field_info),
-	trq_sel_fmap_2b_field_info
-},
-{"TRQ_SEL_FMAP_2C", 0x4ac,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_2c_field_info),
-	trq_sel_fmap_2c_field_info
-},
-{"TRQ_SEL_FMAP_2D", 0x4b0,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_2d_field_info),
-	trq_sel_fmap_2d_field_info
-},
-{"TRQ_SEL_FMAP_2E", 0x4b4,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_2e_field_info),
-	trq_sel_fmap_2e_field_info
-},
-{"TRQ_SEL_FMAP_2F", 0x4b8,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_2f_field_info),
-	trq_sel_fmap_2f_field_info
-},
-{"TRQ_SEL_FMAP_30", 0x4bc,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_30_field_info),
-	trq_sel_fmap_30_field_info
-},
-{"TRQ_SEL_FMAP_31", 0x4d0,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_31_field_info),
-	trq_sel_fmap_31_field_info
-},
-{"TRQ_SEL_FMAP_32", 0x4d4,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_32_field_info),
-	trq_sel_fmap_32_field_info
-},
-{"TRQ_SEL_FMAP_33", 0x4d8,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_33_field_info),
-	trq_sel_fmap_33_field_info
-},
-{"TRQ_SEL_FMAP_34", 0x4dc,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_34_field_info),
-	trq_sel_fmap_34_field_info
-},
-{"TRQ_SEL_FMAP_35", 0x4e0,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_35_field_info),
-	trq_sel_fmap_35_field_info
-},
-{"TRQ_SEL_FMAP_36", 0x4e4,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_36_field_info),
-	trq_sel_fmap_36_field_info
-},
-{"TRQ_SEL_FMAP_37", 0x4e8,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_37_field_info),
-	trq_sel_fmap_37_field_info
-},
-{"TRQ_SEL_FMAP_38", 0x4ec,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_38_field_info),
-	trq_sel_fmap_38_field_info
-},
-{"TRQ_SEL_FMAP_39", 0x4f0,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_39_field_info),
-	trq_sel_fmap_39_field_info
-},
-{"TRQ_SEL_FMAP_3A", 0x4f4,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_3a_field_info),
-	trq_sel_fmap_3a_field_info
-},
-{"TRQ_SEL_FMAP_3B", 0x4f8,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_3b_field_info),
-	trq_sel_fmap_3b_field_info
-},
-{"TRQ_SEL_FMAP_3C", 0x4fc,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_3c_field_info),
-	trq_sel_fmap_3c_field_info
-},
-{"TRQ_SEL_FMAP_3D", 0x500,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_3d_field_info),
-	trq_sel_fmap_3d_field_info
-},
-{"TRQ_SEL_FMAP_3E", 0x504,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_3e_field_info),
-	trq_sel_fmap_3e_field_info
-},
-{"TRQ_SEL_FMAP_3F", 0x508,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_3f_field_info),
-	trq_sel_fmap_3f_field_info
-},
-{"TRQ_SEL_FMAP_40", 0x50c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_40_field_info),
-	trq_sel_fmap_40_field_info
-},
-{"TRQ_SEL_FMAP_41", 0x510,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_41_field_info),
-	trq_sel_fmap_41_field_info
-},
-{"TRQ_SEL_FMAP_42", 0x514,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_42_field_info),
-	trq_sel_fmap_42_field_info
-},
-{"TRQ_SEL_FMAP_43", 0x518,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_43_field_info),
-	trq_sel_fmap_43_field_info
-},
-{"TRQ_SEL_FMAP_44", 0x51c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_44_field_info),
-	trq_sel_fmap_44_field_info
-},
-{"TRQ_SEL_FMAP_45", 0x520,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_45_field_info),
-	trq_sel_fmap_45_field_info
-},
-{"TRQ_SEL_FMAP_46", 0x524,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_46_field_info),
-	trq_sel_fmap_46_field_info
-},
-{"TRQ_SEL_FMAP_47", 0x528,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_47_field_info),
-	trq_sel_fmap_47_field_info
-},
-{"TRQ_SEL_FMAP_48", 0x52c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_48_field_info),
-	trq_sel_fmap_48_field_info
-},
-{"TRQ_SEL_FMAP_49", 0x530,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_49_field_info),
-	trq_sel_fmap_49_field_info
-},
-{"TRQ_SEL_FMAP_4A", 0x534,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_4a_field_info),
-	trq_sel_fmap_4a_field_info
-},
-{"TRQ_SEL_FMAP_4B", 0x538,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_4b_field_info),
-	trq_sel_fmap_4b_field_info
-},
-{"TRQ_SEL_FMAP_4C", 0x53c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_4c_field_info),
-	trq_sel_fmap_4c_field_info
-},
-{"TRQ_SEL_FMAP_4D", 0x540,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_4d_field_info),
-	trq_sel_fmap_4d_field_info
-},
-{"TRQ_SEL_FMAP_4E", 0x544,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_4e_field_info),
-	trq_sel_fmap_4e_field_info
-},
-{"TRQ_SEL_FMAP_4F", 0x548,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_4f_field_info),
-	trq_sel_fmap_4f_field_info
-},
-{"TRQ_SEL_FMAP_50", 0x54c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_50_field_info),
-	trq_sel_fmap_50_field_info
-},
-{"TRQ_SEL_FMAP_51", 0x550,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_51_field_info),
-	trq_sel_fmap_51_field_info
-},
-{"TRQ_SEL_FMAP_52", 0x554,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_52_field_info),
-	trq_sel_fmap_52_field_info
-},
-{"TRQ_SEL_FMAP_53", 0x558,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_53_field_info),
-	trq_sel_fmap_53_field_info
-},
-{"TRQ_SEL_FMAP_54", 0x55c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_54_field_info),
-	trq_sel_fmap_54_field_info
-},
-{"TRQ_SEL_FMAP_55", 0x560,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_55_field_info),
-	trq_sel_fmap_55_field_info
-},
-{"TRQ_SEL_FMAP_56", 0x564,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_56_field_info),
-	trq_sel_fmap_56_field_info
-},
-{"TRQ_SEL_FMAP_57", 0x568,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_57_field_info),
-	trq_sel_fmap_57_field_info
-},
-{"TRQ_SEL_FMAP_58", 0x56c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_58_field_info),
-	trq_sel_fmap_58_field_info
-},
-{"TRQ_SEL_FMAP_59", 0x570,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_59_field_info),
-	trq_sel_fmap_59_field_info
-},
-{"TRQ_SEL_FMAP_5A", 0x574,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_5a_field_info),
-	trq_sel_fmap_5a_field_info
-},
-{"TRQ_SEL_FMAP_5B", 0x578,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_5b_field_info),
-	trq_sel_fmap_5b_field_info
-},
-{"TRQ_SEL_FMAP_5C", 0x57c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_5c_field_info),
-	trq_sel_fmap_5c_field_info
-},
-{"TRQ_SEL_FMAP_5D", 0x580,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_5d_field_info),
-	trq_sel_fmap_5d_field_info
-},
-{"TRQ_SEL_FMAP_5E", 0x584,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_5e_field_info),
-	trq_sel_fmap_5e_field_info
-},
-{"TRQ_SEL_FMAP_5F", 0x588,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_5f_field_info),
-	trq_sel_fmap_5f_field_info
-},
-{"TRQ_SEL_FMAP_60", 0x58c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_60_field_info),
-	trq_sel_fmap_60_field_info
-},
-{"TRQ_SEL_FMAP_61", 0x590,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_61_field_info),
-	trq_sel_fmap_61_field_info
-},
-{"TRQ_SEL_FMAP_62", 0x594,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_62_field_info),
-	trq_sel_fmap_62_field_info
-},
-{"TRQ_SEL_FMAP_63", 0x598,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_63_field_info),
-	trq_sel_fmap_63_field_info
-},
-{"TRQ_SEL_FMAP_64", 0x59c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_64_field_info),
-	trq_sel_fmap_64_field_info
-},
-{"TRQ_SEL_FMAP_65", 0x5a0,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_65_field_info),
-	trq_sel_fmap_65_field_info
-},
-{"TRQ_SEL_FMAP_66", 0x5a4,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_66_field_info),
-	trq_sel_fmap_66_field_info
-},
-{"TRQ_SEL_FMAP_67", 0x5a8,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_67_field_info),
-	trq_sel_fmap_67_field_info
-},
-{"TRQ_SEL_FMAP_68", 0x5ac,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_68_field_info),
-	trq_sel_fmap_68_field_info
-},
-{"TRQ_SEL_FMAP_69", 0x5b0,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_69_field_info),
-	trq_sel_fmap_69_field_info
-},
-{"TRQ_SEL_FMAP_6A", 0x5b4,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_6a_field_info),
-	trq_sel_fmap_6a_field_info
-},
-{"TRQ_SEL_FMAP_6B", 0x5b8,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_6b_field_info),
-	trq_sel_fmap_6b_field_info
-},
-{"TRQ_SEL_FMAP_6C", 0x5bc,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_6c_field_info),
-	trq_sel_fmap_6c_field_info
-},
-{"TRQ_SEL_FMAP_6D", 0x5c0,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_6d_field_info),
-	trq_sel_fmap_6d_field_info
-},
-{"TRQ_SEL_FMAP_6E", 0x5c4,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_6e_field_info),
-	trq_sel_fmap_6e_field_info
-},
-{"TRQ_SEL_FMAP_6F", 0x5c8,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_6f_field_info),
-	trq_sel_fmap_6f_field_info
-},
-{"TRQ_SEL_FMAP_70", 0x5cc,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_70_field_info),
-	trq_sel_fmap_70_field_info
-},
-{"TRQ_SEL_FMAP_71", 0x5d0,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_71_field_info),
-	trq_sel_fmap_71_field_info
-},
-{"TRQ_SEL_FMAP_72", 0x5d4,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_72_field_info),
-	trq_sel_fmap_72_field_info
-},
-{"TRQ_SEL_FMAP_73", 0x5d8,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_73_field_info),
-	trq_sel_fmap_73_field_info
-},
-{"TRQ_SEL_FMAP_74", 0x5dc,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_74_field_info),
-	trq_sel_fmap_74_field_info
-},
-{"TRQ_SEL_FMAP_75", 0x5e0,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_75_field_info),
-	trq_sel_fmap_75_field_info
-},
-{"TRQ_SEL_FMAP_76", 0x5e4,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_76_field_info),
-	trq_sel_fmap_76_field_info
-},
-{"TRQ_SEL_FMAP_77", 0x5e8,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_77_field_info),
-	trq_sel_fmap_77_field_info
-},
-{"TRQ_SEL_FMAP_78", 0x5ec,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_78_field_info),
-	trq_sel_fmap_78_field_info
-},
-{"TRQ_SEL_FMAP_79", 0x5f0,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_79_field_info),
-	trq_sel_fmap_79_field_info
-},
-{"TRQ_SEL_FMAP_7A", 0x5f4,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_7a_field_info),
-	trq_sel_fmap_7a_field_info
-},
-{"TRQ_SEL_FMAP_7B", 0x5f8,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_7b_field_info),
-	trq_sel_fmap_7b_field_info
-},
-{"TRQ_SEL_FMAP_7C", 0x5fc,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_7c_field_info),
-	trq_sel_fmap_7c_field_info
-},
-{"TRQ_SEL_FMAP_7D", 0x600,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_7d_field_info),
-	trq_sel_fmap_7d_field_info
-},
-{"TRQ_SEL_FMAP_7E", 0x604,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_7e_field_info),
-	trq_sel_fmap_7e_field_info
-},
-{"TRQ_SEL_FMAP_7F", 0x608,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_7f_field_info),
-	trq_sel_fmap_7f_field_info
-},
-{"TRQ_SEL_FMAP_80", 0x60c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_80_field_info),
-	trq_sel_fmap_80_field_info
-},
-{"TRQ_SEL_FMAP_81", 0x610,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_81_field_info),
-	trq_sel_fmap_81_field_info
-},
-{"TRQ_SEL_FMAP_82", 0x614,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_82_field_info),
-	trq_sel_fmap_82_field_info
-},
-{"TRQ_SEL_FMAP_83", 0x618,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_83_field_info),
-	trq_sel_fmap_83_field_info
-},
-{"TRQ_SEL_FMAP_84", 0x61c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_84_field_info),
-	trq_sel_fmap_84_field_info
-},
-{"TRQ_SEL_FMAP_85", 0x620,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_85_field_info),
-	trq_sel_fmap_85_field_info
-},
-{"TRQ_SEL_FMAP_86", 0x624,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_86_field_info),
-	trq_sel_fmap_86_field_info
-},
-{"TRQ_SEL_FMAP_87", 0x628,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_87_field_info),
-	trq_sel_fmap_87_field_info
-},
-{"TRQ_SEL_FMAP_88", 0x62c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_88_field_info),
-	trq_sel_fmap_88_field_info
-},
-{"TRQ_SEL_FMAP_89", 0x630,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_89_field_info),
-	trq_sel_fmap_89_field_info
-},
-{"TRQ_SEL_FMAP_8A", 0x634,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_8a_field_info),
-	trq_sel_fmap_8a_field_info
-},
-{"TRQ_SEL_FMAP_8B", 0x638,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_8b_field_info),
-	trq_sel_fmap_8b_field_info
-},
-{"TRQ_SEL_FMAP_8C", 0x63c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_8c_field_info),
-	trq_sel_fmap_8c_field_info
-},
-{"TRQ_SEL_FMAP_8D", 0x640,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_8d_field_info),
-	trq_sel_fmap_8d_field_info
-},
-{"TRQ_SEL_FMAP_8E", 0x644,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_8e_field_info),
-	trq_sel_fmap_8e_field_info
-},
-{"TRQ_SEL_FMAP_8F", 0x648,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_8f_field_info),
-	trq_sel_fmap_8f_field_info
-},
-{"TRQ_SEL_FMAP_90", 0x64c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_90_field_info),
-	trq_sel_fmap_90_field_info
-},
-{"TRQ_SEL_FMAP_91", 0x650,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_91_field_info),
-	trq_sel_fmap_91_field_info
-},
-{"TRQ_SEL_FMAP_92", 0x654,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_92_field_info),
-	trq_sel_fmap_92_field_info
-},
-{"TRQ_SEL_FMAP_93", 0x658,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_93_field_info),
-	trq_sel_fmap_93_field_info
-},
-{"TRQ_SEL_FMAP_94", 0x65c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_94_field_info),
-	trq_sel_fmap_94_field_info
-},
-{"TRQ_SEL_FMAP_95", 0x660,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_95_field_info),
-	trq_sel_fmap_95_field_info
-},
-{"TRQ_SEL_FMAP_96", 0x664,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_96_field_info),
-	trq_sel_fmap_96_field_info
-},
-{"TRQ_SEL_FMAP_97", 0x668,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_97_field_info),
-	trq_sel_fmap_97_field_info
-},
-{"TRQ_SEL_FMAP_98", 0x66c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_98_field_info),
-	trq_sel_fmap_98_field_info
-},
-{"TRQ_SEL_FMAP_99", 0x670,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_99_field_info),
-	trq_sel_fmap_99_field_info
-},
-{"TRQ_SEL_FMAP_9A", 0x674,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_9a_field_info),
-	trq_sel_fmap_9a_field_info
-},
-{"TRQ_SEL_FMAP_9B", 0x678,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_9b_field_info),
-	trq_sel_fmap_9b_field_info
-},
-{"TRQ_SEL_FMAP_9C", 0x67c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_9c_field_info),
-	trq_sel_fmap_9c_field_info
-},
-{"TRQ_SEL_FMAP_9D", 0x680,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_9d_field_info),
-	trq_sel_fmap_9d_field_info
-},
-{"TRQ_SEL_FMAP_9E", 0x684,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_9e_field_info),
-	trq_sel_fmap_9e_field_info
-},
-{"TRQ_SEL_FMAP_9F", 0x688,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_9f_field_info),
-	trq_sel_fmap_9f_field_info
-},
-{"TRQ_SEL_FMAP_A0", 0x68c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_a0_field_info),
-	trq_sel_fmap_a0_field_info
-},
-{"TRQ_SEL_FMAP_A1", 0x690,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_a1_field_info),
-	trq_sel_fmap_a1_field_info
-},
-{"TRQ_SEL_FMAP_A2", 0x694,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_a2_field_info),
-	trq_sel_fmap_a2_field_info
-},
-{"TRQ_SEL_FMAP_A3", 0x698,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_a3_field_info),
-	trq_sel_fmap_a3_field_info
-},
-{"TRQ_SEL_FMAP_A4", 0x69c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_a4_field_info),
-	trq_sel_fmap_a4_field_info
-},
-{"TRQ_SEL_FMAP_A5", 0x6a0,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_a5_field_info),
-	trq_sel_fmap_a5_field_info
-},
-{"TRQ_SEL_FMAP_A6", 0x6a4,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_a6_field_info),
-	trq_sel_fmap_a6_field_info
-},
-{"TRQ_SEL_FMAP_A7", 0x6a8,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_a7_field_info),
-	trq_sel_fmap_a7_field_info
-},
-{"TRQ_SEL_FMAP_A8", 0x6ac,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_a8_field_info),
-	trq_sel_fmap_a8_field_info
-},
-{"TRQ_SEL_FMAP_A9", 0x6b0,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_a9_field_info),
-	trq_sel_fmap_a9_field_info
-},
-{"TRQ_SEL_FMAP_AA", 0x6b4,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_aa_field_info),
-	trq_sel_fmap_aa_field_info
-},
-{"TRQ_SEL_FMAP_AB", 0x6b8,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_ab_field_info),
-	trq_sel_fmap_ab_field_info
-},
-{"TRQ_SEL_FMAP_AC", 0x6bc,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_ac_field_info),
-	trq_sel_fmap_ac_field_info
-},
-{"TRQ_SEL_FMAP_AD", 0x6d0,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_ad_field_info),
-	trq_sel_fmap_ad_field_info
-},
-{"TRQ_SEL_FMAP_AE", 0x6d4,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_ae_field_info),
-	trq_sel_fmap_ae_field_info
-},
-{"TRQ_SEL_FMAP_AF", 0x6d8,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_af_field_info),
-	trq_sel_fmap_af_field_info
-},
-{"TRQ_SEL_FMAP_B0", 0x6dc,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_b0_field_info),
-	trq_sel_fmap_b0_field_info
-},
-{"TRQ_SEL_FMAP_B1", 0x6e0,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_b1_field_info),
-	trq_sel_fmap_b1_field_info
-},
-{"TRQ_SEL_FMAP_B2", 0x6e4,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_b2_field_info),
-	trq_sel_fmap_b2_field_info
-},
-{"TRQ_SEL_FMAP_B3", 0x6e8,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_b3_field_info),
-	trq_sel_fmap_b3_field_info
-},
-{"TRQ_SEL_FMAP_B4", 0x6ec,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_b4_field_info),
-	trq_sel_fmap_b4_field_info
-},
-{"TRQ_SEL_FMAP_B5", 0x6f0,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_b5_field_info),
-	trq_sel_fmap_b5_field_info
-},
-{"TRQ_SEL_FMAP_B6", 0x6f4,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_b6_field_info),
-	trq_sel_fmap_b6_field_info
-},
-{"TRQ_SEL_FMAP_B7", 0x6f8,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_b7_field_info),
-	trq_sel_fmap_b7_field_info
-},
-{"TRQ_SEL_FMAP_B8", 0x6fc,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_b8_field_info),
-	trq_sel_fmap_b8_field_info
-},
-{"TRQ_SEL_FMAP_B9", 0x700,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_b9_field_info),
-	trq_sel_fmap_b9_field_info
-},
-{"TRQ_SEL_FMAP_BA", 0x704,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_ba_field_info),
-	trq_sel_fmap_ba_field_info
-},
-{"TRQ_SEL_FMAP_BB", 0x708,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_bb_field_info),
-	trq_sel_fmap_bb_field_info
-},
-{"TRQ_SEL_FMAP_BC", 0x70c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_bc_field_info),
-	trq_sel_fmap_bc_field_info
-},
-{"TRQ_SEL_FMAP_BD", 0x710,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_bd_field_info),
-	trq_sel_fmap_bd_field_info
-},
-{"TRQ_SEL_FMAP_BE", 0x714,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_be_field_info),
-	trq_sel_fmap_be_field_info
-},
-{"TRQ_SEL_FMAP_BF", 0x718,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_bf_field_info),
-	trq_sel_fmap_bf_field_info
-},
-{"TRQ_SEL_FMAP_C0", 0x71c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_c0_field_info),
-	trq_sel_fmap_c0_field_info
-},
-{"TRQ_SEL_FMAP_C1", 0x720,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_c1_field_info),
-	trq_sel_fmap_c1_field_info
-},
-{"TRQ_SEL_FMAP_C2", 0x734,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_c2_field_info),
-	trq_sel_fmap_c2_field_info
-},
-{"TRQ_SEL_FMAP_C3", 0x748,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_c3_field_info),
-	trq_sel_fmap_c3_field_info
-},
-{"TRQ_SEL_FMAP_C4", 0x74c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_c4_field_info),
-	trq_sel_fmap_c4_field_info
-},
-{"TRQ_SEL_FMAP_C5", 0x750,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_c5_field_info),
-	trq_sel_fmap_c5_field_info
-},
-{"TRQ_SEL_FMAP_C6", 0x754,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_c6_field_info),
-	trq_sel_fmap_c6_field_info
-},
-{"TRQ_SEL_FMAP_C7", 0x758,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_c7_field_info),
-	trq_sel_fmap_c7_field_info
-},
-{"TRQ_SEL_FMAP_C8", 0x75c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_c8_field_info),
-	trq_sel_fmap_c8_field_info
-},
-{"TRQ_SEL_FMAP_C9", 0x760,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_c9_field_info),
-	trq_sel_fmap_c9_field_info
-},
-{"TRQ_SEL_FMAP_CA", 0x764,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_ca_field_info),
-	trq_sel_fmap_ca_field_info
-},
-{"TRQ_SEL_FMAP_CB", 0x768,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_cb_field_info),
-	trq_sel_fmap_cb_field_info
-},
-{"TRQ_SEL_FMAP_CC", 0x76c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_cc_field_info),
-	trq_sel_fmap_cc_field_info
-},
-{"TRQ_SEL_FMAP_CD", 0x770,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_cd_field_info),
-	trq_sel_fmap_cd_field_info
-},
-{"TRQ_SEL_FMAP_CE", 0x774,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_ce_field_info),
-	trq_sel_fmap_ce_field_info
-},
-{"TRQ_SEL_FMAP_CF", 0x778,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_cf_field_info),
-	trq_sel_fmap_cf_field_info
-},
-{"TRQ_SEL_FMAP_D0", 0x77c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_d0_field_info),
-	trq_sel_fmap_d0_field_info
-},
-{"TRQ_SEL_FMAP_D1", 0x780,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_d1_field_info),
-	trq_sel_fmap_d1_field_info
-},
-{"TRQ_SEL_FMAP_D2", 0x784,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_d2_field_info),
-	trq_sel_fmap_d2_field_info
-},
-{"TRQ_SEL_FMAP_D3", 0x788,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_d3_field_info),
-	trq_sel_fmap_d3_field_info
-},
-{"TRQ_SEL_FMAP_D4", 0x78c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_d4_field_info),
-	trq_sel_fmap_d4_field_info
-},
-{"TRQ_SEL_FMAP_D5", 0x790,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_d5_field_info),
-	trq_sel_fmap_d5_field_info
-},
-{"TRQ_SEL_FMAP_D6", 0x794,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_d6_field_info),
-	trq_sel_fmap_d6_field_info
-},
-{"TRQ_SEL_FMAP_D7", 0x798,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_d7_field_info),
-	trq_sel_fmap_d7_field_info
-},
-{"TRQ_SEL_FMAP_D8", 0x79c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_d8_field_info),
-	trq_sel_fmap_d8_field_info
-},
-{"TRQ_SEL_FMAP_D9", 0x7a0,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_d9_field_info),
-	trq_sel_fmap_d9_field_info
-},
-{"TRQ_SEL_FMAP_DA", 0x7a4,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_da_field_info),
-	trq_sel_fmap_da_field_info
-},
-{"TRQ_SEL_FMAP_DB", 0x7a8,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_db_field_info),
-	trq_sel_fmap_db_field_info
-},
-{"TRQ_SEL_FMAP_DC", 0x7ac,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_dc_field_info),
-	trq_sel_fmap_dc_field_info
-},
-{"TRQ_SEL_FMAP_DD", 0x7b0,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_dd_field_info),
-	trq_sel_fmap_dd_field_info
-},
-{"TRQ_SEL_FMAP_DE", 0x7b4,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_de_field_info),
-	trq_sel_fmap_de_field_info
-},
-{"TRQ_SEL_FMAP_DF", 0x7b8,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_df_field_info),
-	trq_sel_fmap_df_field_info
-},
-{"TRQ_SEL_FMAP_E0", 0x7bc,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_e0_field_info),
-	trq_sel_fmap_e0_field_info
-},
-{"TRQ_SEL_FMAP_E1", 0x7c0,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_e1_field_info),
-	trq_sel_fmap_e1_field_info
-},
-{"TRQ_SEL_FMAP_E2", 0x7c4,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_e2_field_info),
-	trq_sel_fmap_e2_field_info
-},
-{"TRQ_SEL_FMAP_E3", 0x7c8,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_e3_field_info),
-	trq_sel_fmap_e3_field_info
-},
-{"TRQ_SEL_FMAP_E4", 0x7cc,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_e4_field_info),
-	trq_sel_fmap_e4_field_info
-},
-{"TRQ_SEL_FMAP_E5", 0x7d0,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_e5_field_info),
-	trq_sel_fmap_e5_field_info
-},
-{"TRQ_SEL_FMAP_E6", 0x7d4,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_e6_field_info),
-	trq_sel_fmap_e6_field_info
-},
-{"TRQ_SEL_FMAP_E7", 0x7d8,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_e7_field_info),
-	trq_sel_fmap_e7_field_info
-},
-{"TRQ_SEL_FMAP_E8", 0x7dc,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_e8_field_info),
-	trq_sel_fmap_e8_field_info
-},
-{"TRQ_SEL_FMAP_E9", 0x7e0,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_e9_field_info),
-	trq_sel_fmap_e9_field_info
-},
-{"TRQ_SEL_FMAP_EA", 0x7e4,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_ea_field_info),
-	trq_sel_fmap_ea_field_info
-},
-{"TRQ_SEL_FMAP_EB", 0x7e8,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_eb_field_info),
-	trq_sel_fmap_eb_field_info
-},
-{"TRQ_SEL_FMAP_EC", 0x7ec,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_ec_field_info),
-	trq_sel_fmap_ec_field_info
-},
-{"TRQ_SEL_FMAP_ED", 0x7f0,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_ed_field_info),
-	trq_sel_fmap_ed_field_info
-},
-{"TRQ_SEL_FMAP_EE", 0x7f4,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_ee_field_info),
-	trq_sel_fmap_ee_field_info
-},
-{"TRQ_SEL_FMAP_EF", 0x7f8,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_ef_field_info),
-	trq_sel_fmap_ef_field_info
-},
-{"TRQ_SEL_FMAP_F0", 0x7fc,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(trq_sel_fmap_f0_field_info),
-	trq_sel_fmap_f0_field_info
-},
-{"IND_CTXT_DATA_3", 0x804,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(ind_ctxt_data_3_field_info),
-	ind_ctxt_data_3_field_info
-},
-{"IND_CTXT_DATA_2", 0x808,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(ind_ctxt_data_2_field_info),
-	ind_ctxt_data_2_field_info
-},
-{"IND_CTXT_DATA_1", 0x80c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(ind_ctxt_data_1_field_info),
-	ind_ctxt_data_1_field_info
-},
-{"IND_CTXT_DATA_0", 0x810,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(ind_ctxt_data_0_field_info),
-	ind_ctxt_data_0_field_info
-},
-{"IND_CTXT3", 0x814,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(ind_ctxt3_field_info),
-	ind_ctxt3_field_info
-},
-{"IND_CTXT2", 0x818,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(ind_ctxt2_field_info),
-	ind_ctxt2_field_info
-},
-{"IND_CTXT1", 0x81c,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(ind_ctxt1_field_info),
-	ind_ctxt1_field_info
-},
-{"IND_CTXT0", 0x820,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(ind_ctxt0_field_info),
-	ind_ctxt0_field_info
-},
-{"IND_CTXT_CMD", 0x824,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(ind_ctxt_cmd_field_info),
-	ind_ctxt_cmd_field_info
-},
-{"C2H_TIMER_CNT_1", 0xa00,
-	1, 0, 0, 0,
-	0, QDMA_COMPLETION_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_timer_cnt_1_field_info),
-	c2h_timer_cnt_1_field_info
-},
-{"C2H_TIMER_CNT_2", 0xa04,
-	1, 0, 0, 0,
-	0, QDMA_COMPLETION_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_timer_cnt_2_field_info),
-	c2h_timer_cnt_2_field_info
-},
-{"C2H_TIMER_CNT_3", 0xa08,
-	1, 0, 0, 0,
-	0, QDMA_COMPLETION_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_timer_cnt_3_field_info),
-	c2h_timer_cnt_3_field_info
-},
-{"C2H_TIMER_CNT_4", 0xa0c,
-	1, 0, 0, 0,
-	0, QDMA_COMPLETION_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_timer_cnt_4_field_info),
-	c2h_timer_cnt_4_field_info
-},
-{"C2H_TIMER_CNT_5", 0xa10,
-	1, 0, 0, 0,
-	0, QDMA_COMPLETION_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_timer_cnt_5_field_info),
-	c2h_timer_cnt_5_field_info
-},
-{"C2H_TIMER_CNT_6", 0xa14,
-	1, 0, 0, 0,
-	0, QDMA_COMPLETION_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_timer_cnt_6_field_info),
-	c2h_timer_cnt_6_field_info
-},
-{"C2H_TIMER_CNT_7", 0xa18,
-	1, 0, 0, 0,
-	0, QDMA_COMPLETION_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_timer_cnt_7_field_info),
-	c2h_timer_cnt_7_field_info
-},
-{"C2H_TIMER_CNT_8", 0xa1c,
-	1, 0, 0, 0,
-	0, QDMA_COMPLETION_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_timer_cnt_8_field_info),
-	c2h_timer_cnt_8_field_info
-},
-{"C2H_TIMER_CNT_9", 0xa20,
-	1, 0, 0, 0,
-	0, QDMA_COMPLETION_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_timer_cnt_9_field_info),
-	c2h_timer_cnt_9_field_info
-},
-{"C2H_TIMER_CNT_A", 0xa24,
-	1, 0, 0, 0,
-	0, QDMA_COMPLETION_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_timer_cnt_a_field_info),
-	c2h_timer_cnt_a_field_info
-},
-{"C2H_TIMER_CNT_B", 0xa28,
-	1, 0, 0, 0,
-	0, QDMA_COMPLETION_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_timer_cnt_b_field_info),
-	c2h_timer_cnt_b_field_info
-},
-{"C2H_TIMER_CNT_C", 0xa2c,
-	1, 0, 0, 0,
-	0, QDMA_COMPLETION_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_timer_cnt_c_field_info),
-	c2h_timer_cnt_c_field_info
-},
-{"C2H_TIMER_CNT_D", 0xa30,
-	1, 0, 0, 0,
-	0, QDMA_COMPLETION_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_timer_cnt_d_field_info),
-	c2h_timer_cnt_d_field_info
-},
-{"C2H_TIMER_CNT_E", 0xa34,
-	1, 0, 0, 0,
-	0, QDMA_COMPLETION_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_timer_cnt_e_field_info),
-	c2h_timer_cnt_e_field_info
-},
-{"C2H_TIMER_CNT_F", 0xa38,
-	1, 0, 0, 0,
-	0, QDMA_COMPLETION_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_timer_cnt_f_field_info),
-	c2h_timer_cnt_f_field_info
-},
-{"C2H_TIMER_CNT_10", 0xa3c,
-	1, 0, 0, 0,
-	0, QDMA_COMPLETION_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_timer_cnt_10_field_info),
-	c2h_timer_cnt_10_field_info
-},
-{"C2H_CNT_TH_1", 0xa40,
-	1, 0, 0, 0,
-	0, QDMA_COMPLETION_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_cnt_th_1_field_info),
-	c2h_cnt_th_1_field_info
-},
-{"C2H_CNT_TH_2", 0xa44,
-	1, 0, 0, 0,
-	0, QDMA_COMPLETION_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_cnt_th_2_field_info),
-	c2h_cnt_th_2_field_info
-},
-{"C2H_CNT_TH_3", 0xa48,
-	1, 0, 0, 0,
-	0, QDMA_COMPLETION_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_cnt_th_3_field_info),
-	c2h_cnt_th_3_field_info
-},
-{"C2H_CNT_TH_4", 0xa4c,
-	1, 0, 0, 0,
-	0, QDMA_COMPLETION_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_cnt_th_4_field_info),
-	c2h_cnt_th_4_field_info
-},
-{"C2H_CNT_TH_5", 0xa50,
-	1, 0, 0, 0,
-	0, QDMA_COMPLETION_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_cnt_th_5_field_info),
-	c2h_cnt_th_5_field_info
-},
-{"C2H_CNT_TH_6", 0xa54,
-	1, 0, 0, 0,
-	0, QDMA_COMPLETION_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_cnt_th_6_field_info),
-	c2h_cnt_th_6_field_info
-},
-{"C2H_CNT_TH_7", 0xa58,
-	1, 0, 0, 0,
-	0, QDMA_COMPLETION_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_cnt_th_7_field_info),
-	c2h_cnt_th_7_field_info
-},
-{"C2H_CNT_TH_8", 0xa5c,
-	1, 0, 0, 0,
-	0, QDMA_COMPLETION_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_cnt_th_8_field_info),
-	c2h_cnt_th_8_field_info
-},
-{"C2H_CNT_TH_9", 0xa60,
-	1, 0, 0, 0,
-	0, QDMA_COMPLETION_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_cnt_th_9_field_info),
-	c2h_cnt_th_9_field_info
-},
-{"C2H_CNT_TH_A", 0xa64,
-	1, 0, 0, 0,
-	0, QDMA_COMPLETION_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_cnt_th_a_field_info),
-	c2h_cnt_th_a_field_info
-},
-{"C2H_CNT_TH_B", 0xa68,
-	1, 0, 0, 0,
-	0, QDMA_COMPLETION_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_cnt_th_b_field_info),
-	c2h_cnt_th_b_field_info
-},
-{"C2H_CNT_TH_C", 0xa6c,
-	1, 0, 0, 0,
-	0, QDMA_COMPLETION_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_cnt_th_c_field_info),
-	c2h_cnt_th_c_field_info
-},
-{"C2H_CNT_TH_D", 0xa70,
-	1, 0, 0, 0,
-	0, QDMA_COMPLETION_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_cnt_th_d_field_info),
-	c2h_cnt_th_d_field_info
-},
-{"C2H_CNT_TH_E", 0xa74,
-	1, 0, 0, 0,
-	0, QDMA_COMPLETION_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_cnt_th_e_field_info),
-	c2h_cnt_th_e_field_info
-},
-{"C2H_CNT_TH_F", 0xa78,
-	1, 0, 0, 0,
-	0, QDMA_COMPLETION_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_cnt_th_f_field_info),
-	c2h_cnt_th_f_field_info
-},
-{"C2H_CNT_TH_10", 0xa7c,
-	1, 0, 0, 0,
-	0, QDMA_COMPLETION_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_cnt_th_10_field_info),
-	c2h_cnt_th_10_field_info
-},
-{"C2H_QID2VEC_MAP_QID", 0xa80,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_qid2vec_map_qid_field_info),
-	c2h_qid2vec_map_qid_field_info
-},
-{"C2H_QID2VEC_MAP", 0xa84,
-	1, 0, 0, 0,
-	0, QDMA_MM_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_qid2vec_map_field_info),
-	c2h_qid2vec_map_field_info
-},
-{"C2H_STAT_S_AXIS_C2H_ACCEPTED", 0xa88,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(c2h_stat_s_axis_c2h_accepted_field_info),
-	c2h_stat_s_axis_c2h_accepted_field_info
-},
-{"C2H_STAT_S_AXIS_WRB_ACCEPTED", 0xa8c,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(c2h_stat_s_axis_wrb_accepted_field_info),
-	c2h_stat_s_axis_wrb_accepted_field_info
-},
-{"C2H_STAT_DESC_RSP_PKT_ACCEPTED", 0xa90,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(c2h_stat_desc_rsp_pkt_accepted_field_info),
-	c2h_stat_desc_rsp_pkt_accepted_field_info
-},
-{"C2H_STAT_AXIS_PKG_CMP", 0xa94,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(c2h_stat_axis_pkg_cmp_field_info),
-	c2h_stat_axis_pkg_cmp_field_info
-},
-{"C2H_STAT_DESC_RSP_ACCEPTED", 0xa98,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_stat_desc_rsp_accepted_field_info),
-	c2h_stat_desc_rsp_accepted_field_info
-},
-{"C2H_STAT_DESC_RSP_CMP", 0xa9c,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_stat_desc_rsp_cmp_field_info),
-	c2h_stat_desc_rsp_cmp_field_info
-},
-{"C2H_STAT_WRQ_OUT", 0xaa0,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_stat_wrq_out_field_info),
-	c2h_stat_wrq_out_field_info
-},
-{"C2H_STAT_WPL_REN_ACCEPTED", 0xaa4,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_stat_wpl_ren_accepted_field_info),
-	c2h_stat_wpl_ren_accepted_field_info
-},
-{"C2H_STAT_TOTAL_WRQ_LEN", 0xaa8,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_stat_total_wrq_len_field_info),
-	c2h_stat_total_wrq_len_field_info
-},
-{"C2H_STAT_TOTAL_WPL_LEN", 0xaac,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_stat_total_wpl_len_field_info),
-	c2h_stat_total_wpl_len_field_info
-},
-{"C2H_BUF_SZ_0", 0xab0,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_buf_sz_0_field_info),
-	c2h_buf_sz_0_field_info
-},
-{"C2H_BUF_SZ_1", 0xab4,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_buf_sz_1_field_info),
-	c2h_buf_sz_1_field_info
-},
-{"C2H_BUF_SZ_2", 0xab8,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_buf_sz_2_field_info),
-	c2h_buf_sz_2_field_info
-},
-{"C2H_BUF_SZ_3", 0xabc,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_buf_sz_3_field_info),
-	c2h_buf_sz_3_field_info
-},
-{"C2H_BUF_SZ_4", 0xac0,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_buf_sz_4_field_info),
-	c2h_buf_sz_4_field_info
-},
-{"C2H_BUF_SZ_5", 0xac4,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_buf_sz_5_field_info),
-	c2h_buf_sz_5_field_info
-},
-{"C2H_BUF_SZ_7", 0xac8,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_buf_sz_7_field_info),
-	c2h_buf_sz_7_field_info
-},
-{"C2H_BUF_SZ_8", 0xacc,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_buf_sz_8_field_info),
-	c2h_buf_sz_8_field_info
-},
-{"C2H_BUF_SZ_9", 0xad0,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_buf_sz_9_field_info),
-	c2h_buf_sz_9_field_info
-},
-{"C2H_BUF_SZ_10", 0xad4,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_buf_sz_10_field_info),
-	c2h_buf_sz_10_field_info
-},
-{"C2H_BUF_SZ_11", 0xad8,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_buf_sz_11_field_info),
-	c2h_buf_sz_11_field_info
-},
-{"C2H_BUF_SZ_12", 0xae0,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_buf_sz_12_field_info),
-	c2h_buf_sz_12_field_info
-},
-{"C2H_BUF_SZ_13", 0xae4,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_buf_sz_13_field_info),
-	c2h_buf_sz_13_field_info
-},
-{"C2H_BUF_SZ_14", 0xae8,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_buf_sz_14_field_info),
-	c2h_buf_sz_14_field_info
-},
-{"C2H_BUF_SZ_15", 0xaec,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_buf_sz_15_field_info),
-	c2h_buf_sz_15_field_info
-},
-{"C2H_ERR_STAT", 0xaf0,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(c2h_err_stat_field_info),
-	c2h_err_stat_field_info
-},
-{"C2H_ERR_MASK", 0xaf4,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(c2h_err_mask_field_info),
-	c2h_err_mask_field_info
-},
-{"C2H_FATAL_ERR_STAT", 0xaf8,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(c2h_fatal_err_stat_field_info),
-	c2h_fatal_err_stat_field_info
-},
-{"C2H_FATAL_ERR_MASK", 0xafc,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(c2h_fatal_err_mask_field_info),
-	c2h_fatal_err_mask_field_info
-},
-{"C2H_FATAL_ERR_ENABLE", 0xb00,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(c2h_fatal_err_enable_field_info),
-	c2h_fatal_err_enable_field_info
-},
-{"GLBL_ERR_INT", 0xb04,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(glbl_err_int_field_info),
-	glbl_err_int_field_info
-},
-{"C2H_PFCH_CFG", 0xb08,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_pfch_cfg_field_info),
-	c2h_pfch_cfg_field_info
-},
-{"C2H_INT_TIMER_TICK", 0xb0c,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_int_timer_tick_field_info),
-	c2h_int_timer_tick_field_info
-},
-{"C2H_STAT_DESC_RSP_DROP_ACCEPTED", 0xb10,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(c2h_stat_desc_rsp_drop_accepted_field_info),
-	c2h_stat_desc_rsp_drop_accepted_field_info
-},
-{"C2H_STAT_DESC_RSP_ERR_ACCEPTED", 0xb14,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(c2h_stat_desc_rsp_err_accepted_field_info),
-	c2h_stat_desc_rsp_err_accepted_field_info
-},
-{"C2H_STAT_DESC_REQ", 0xb18,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_stat_desc_req_field_info),
-	c2h_stat_desc_req_field_info
-},
-{"C2H_STAT_DBG_DMA_ENG_0", 0xb1c,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_stat_dbg_dma_eng_0_field_info),
-	c2h_stat_dbg_dma_eng_0_field_info
-},
-{"C2H_STAT_DBG_DMA_ENG_1", 0xb20,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_stat_dbg_dma_eng_1_field_info),
-	c2h_stat_dbg_dma_eng_1_field_info
-},
-{"C2H_STAT_DBG_DMA_ENG_2", 0xb24,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_stat_dbg_dma_eng_2_field_info),
-	c2h_stat_dbg_dma_eng_2_field_info
-},
-{"C2H_STAT_DBG_DMA_ENG_3", 0xb28,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_stat_dbg_dma_eng_3_field_info),
-	c2h_stat_dbg_dma_eng_3_field_info
-},
-{"C2H_DBG_PFCH_ERR_CTXT", 0xb2c,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_dbg_pfch_err_ctxt_field_info),
-	c2h_dbg_pfch_err_ctxt_field_info
-},
-{"C2H_FIRST_ERR_QID", 0xb30,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(c2h_first_err_qid_field_info),
-	c2h_first_err_qid_field_info
-},
-{"STAT_NUM_WRB_IN", 0xb34,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(stat_num_wrb_in_field_info),
-	stat_num_wrb_in_field_info
-},
-{"STAT_NUM_WRB_OUT", 0xb38,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(stat_num_wrb_out_field_info),
-	stat_num_wrb_out_field_info
-},
-{"STAT_NUM_WRB_DRP", 0xb3c,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(stat_num_wrb_drp_field_info),
-	stat_num_wrb_drp_field_info
-},
-{"STAT_NUM_STAT_DESC_OUT", 0xb40,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(stat_num_stat_desc_out_field_info),
-	stat_num_stat_desc_out_field_info
-},
-{"STAT_NUM_DSC_CRDT_SENT", 0xb44,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(stat_num_dsc_crdt_sent_field_info),
-	stat_num_dsc_crdt_sent_field_info
-},
-{"STAT_NUM_FCH_DSC_RCVD", 0xb48,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(stat_num_fch_dsc_rcvd_field_info),
-	stat_num_fch_dsc_rcvd_field_info
-},
-{"STAT_NUM_BYP_DSC_RCVD", 0xb4c,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(stat_num_byp_dsc_rcvd_field_info),
-	stat_num_byp_dsc_rcvd_field_info
-},
-{"C2H_WRB_COAL_CFG", 0xb50,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_wrb_coal_cfg_field_info),
-	c2h_wrb_coal_cfg_field_info
-},
-{"C2H_INTR_H2C_REQ", 0xb54,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(c2h_intr_h2c_req_field_info),
-	c2h_intr_h2c_req_field_info
-},
-{"C2H_INTR_C2H_MM_REQ", 0xb58,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(c2h_intr_c2h_mm_req_field_info),
-	c2h_intr_c2h_mm_req_field_info
-},
-{"C2H_INTR_ERR_INT_REQ", 0xb5c,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(c2h_intr_err_int_req_field_info),
-	c2h_intr_err_int_req_field_info
-},
-{"C2H_INTR_C2H_ST_REQ", 0xb60,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(c2h_intr_c2h_st_req_field_info),
-	c2h_intr_c2h_st_req_field_info
-},
-{"C2H_INTR_H2C_ERR_C2H_MM_MSIX_ACK", 0xb64,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_intr_h2c_err_c2h_mm_msix_ack_field_info),
-	c2h_intr_h2c_err_c2h_mm_msix_ack_field_info
-},
-{"C2H_INTR_H2C_ERR_C2H_MM_MSIX_FAIL", 0xb68,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_intr_h2c_err_c2h_mm_msix_fail_field_info),
-	c2h_intr_h2c_err_c2h_mm_msix_fail_field_info
-},
-{"C2H_INTR_H2C_ERR_C2H_MM_MSIX_NO_MSIX", 0xb6c,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_intr_h2c_err_c2h_mm_msix_no_msix_field_info),
-	c2h_intr_h2c_err_c2h_mm_msix_no_msix_field_info
-},
-{"C2H_INTR_H2C_ERR_C2H_MM_CTXT_INVAL", 0xb70,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_intr_h2c_err_c2h_mm_ctxt_inval_field_info),
-	c2h_intr_h2c_err_c2h_mm_ctxt_inval_field_info
-},
-{"C2H_INTR_C2H_ST_MSIX_ACK", 0xb74,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(c2h_intr_c2h_st_msix_ack_field_info),
-	c2h_intr_c2h_st_msix_ack_field_info
-},
-{"C2H_INTR_C2H_ST_MSIX_FAIL", 0xb78,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(c2h_intr_c2h_st_msix_fail_field_info),
-	c2h_intr_c2h_st_msix_fail_field_info
-},
-{"C2H_INTR_C2H_ST_NO_MSIX", 0xb7c,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_intr_c2h_st_no_msix_field_info),
-	c2h_intr_c2h_st_no_msix_field_info
-},
-{"C2H_INTR_C2H_ST_CTXT_INVAL", 0xb80,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_intr_c2h_st_ctxt_inval_field_info),
-	c2h_intr_c2h_st_ctxt_inval_field_info
-},
-{"C2H_STAT_WR_CMP", 0xb84,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_stat_wr_cmp_field_info),
-	c2h_stat_wr_cmp_field_info
-},
-{"C2H_STAT_DBG_DMA_ENG_4", 0xb88,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_stat_dbg_dma_eng_4_field_info),
-	c2h_stat_dbg_dma_eng_4_field_info
-},
-{"C2H_STAT_DBG_DMA_ENG_5", 0xb8c,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_stat_dbg_dma_eng_5_field_info),
-	c2h_stat_dbg_dma_eng_5_field_info
-},
-{"C2H_DBG_PFCH_QID", 0xb90,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_dbg_pfch_qid_field_info),
-	c2h_dbg_pfch_qid_field_info
-},
-{"C2H_DBG_PFCH", 0xb94,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_dbg_pfch_field_info),
-	c2h_dbg_pfch_field_info
-},
-{"C2H_INT_DBG", 0xb98,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_int_dbg_field_info),
-	c2h_int_dbg_field_info
-},
-{"C2H_STAT_IMM_ACCEPTED", 0xb9c,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_stat_imm_accepted_field_info),
-	c2h_stat_imm_accepted_field_info
-},
-{"C2H_STAT_MARKER_ACCEPTED", 0xba0,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_stat_marker_accepted_field_info),
-	c2h_stat_marker_accepted_field_info
-},
-{"C2H_STAT_DISABLE_CMP_ACCEPTED", 0xba4,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_stat_disable_cmp_accepted_field_info),
-	c2h_stat_disable_cmp_accepted_field_info
-},
-{"C2H_PLD_FIFO_CRDT_CNT", 0xba8,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_pld_fifo_crdt_cnt_field_info),
-	c2h_pld_fifo_crdt_cnt_field_info
-},
-{"H2C_ERR_STAT", 0xe00,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(h2c_err_stat_field_info),
-	h2c_err_stat_field_info
-},
-{"H2C_ERR_MASK", 0xe04,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(h2c_err_mask_field_info),
-	h2c_err_mask_field_info
-},
-{"H2C_FIRST_ERR_QID", 0xe08,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(h2c_first_err_qid_field_info),
-	h2c_first_err_qid_field_info
-},
-{"H2C_DBG_REG0", 0xe0c,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(h2c_dbg_reg0_field_info),
-	h2c_dbg_reg0_field_info
-},
-{"H2C_DBG_REG1", 0xe10,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(h2c_dbg_reg1_field_info),
-	h2c_dbg_reg1_field_info
-},
-{"H2C_DBG_REG2", 0xe14,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(h2c_dbg_reg2_field_info),
-	h2c_dbg_reg2_field_info
-},
-{"H2C_DBG_REG3", 0xe18,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(h2c_dbg_reg3_field_info),
-	h2c_dbg_reg3_field_info
-},
-{"H2C_DBG_REG4", 0xe1c,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(h2c_dbg_reg4_field_info),
-	h2c_dbg_reg4_field_info
-},
-{"H2C_FATAL_ERR_EN", 0xe20,
-	1, 0, 0, 0,
-	0, QDMA_ST_MODE, QDMA_REG_READ_PF_VF,
-	ARRAY_SIZE(h2c_fatal_err_en_field_info),
-	h2c_fatal_err_en_field_info
-},
-{"C2H_CHANNEL_CTL", 0x1004,
-	1, 0, 0, 0,
-	0, QDMA_MM_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_channel_ctl_field_info),
-	c2h_channel_ctl_field_info
-},
-{"C2H_CHANNEL_CTL_1", 0x1008,
-	1, 0, 0, 0,
-	0, QDMA_MM_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_channel_ctl_1_field_info),
-	c2h_channel_ctl_1_field_info
-},
-{"C2H_MM_STATUS", 0x1040,
-	1, 0, 0, 0,
-	0, QDMA_MM_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_mm_status_field_info),
-	c2h_mm_status_field_info
-},
-{"C2H_CHANNEL_CMPL_DESC_CNT", 0x1048,
-	1, 0, 0, 0,
-	0, QDMA_MM_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_channel_cmpl_desc_cnt_field_info),
-	c2h_channel_cmpl_desc_cnt_field_info
-},
-{"C2H_MM_ERR_CODE_ENABLE_MASK", 0x1054,
-	1, 0, 0, 0,
-	0, QDMA_MM_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_mm_err_code_enable_mask_field_info),
-	c2h_mm_err_code_enable_mask_field_info
-},
-{"C2H_MM_ERR_CODE", 0x1058,
-	1, 0, 0, 0,
-	0, QDMA_MM_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_mm_err_code_field_info),
-	c2h_mm_err_code_field_info
-},
-{"C2H_MM_ERR_INFO", 0x105c,
-	1, 0, 0, 0,
-	0, QDMA_MM_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_mm_err_info_field_info),
-	c2h_mm_err_info_field_info
-},
-{"C2H_MM_PERF_MON_CTL", 0x10c0,
-	1, 0, 0, 0,
-	0, QDMA_MM_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_mm_perf_mon_ctl_field_info),
-	c2h_mm_perf_mon_ctl_field_info
-},
-{"C2H_MM_PERF_MON_CYCLE_CNT0", 0x10c4,
-	1, 0, 0, 0,
-	0, QDMA_MM_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_mm_perf_mon_cycle_cnt0_field_info),
-	c2h_mm_perf_mon_cycle_cnt0_field_info
-},
-{"C2H_MM_PERF_MON_CYCLE_CNT1", 0x10c8,
-	1, 0, 0, 0,
-	0, QDMA_MM_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_mm_perf_mon_cycle_cnt1_field_info),
-	c2h_mm_perf_mon_cycle_cnt1_field_info
-},
-{"C2H_MM_PERF_MON_DATA_CNT0", 0x10cc,
-	1, 0, 0, 0,
-	0, QDMA_MM_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_mm_perf_mon_data_cnt0_field_info),
-	c2h_mm_perf_mon_data_cnt0_field_info
-},
-{"C2H_MM_PERF_MON_DATA_CNT1", 0x10d0,
-	1, 0, 0, 0,
-	0, QDMA_MM_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_mm_perf_mon_data_cnt1_field_info),
-	c2h_mm_perf_mon_data_cnt1_field_info
-},
-{"C2H_MM_DBG", 0x10e8,
-	1, 0, 0, 0,
-	0, QDMA_MM_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(c2h_mm_dbg_field_info),
-	c2h_mm_dbg_field_info
-},
-{"H2C_CHANNEL_CTL", 0x1204,
-	1, 0, 0, 0,
-	0, QDMA_MM_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(h2c_channel_ctl_field_info),
-	h2c_channel_ctl_field_info
-},
-{"H2C_CHANNEL_CTL_1", 0x1208,
-	1, 0, 0, 0,
-	0, QDMA_MM_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(h2c_channel_ctl_1_field_info),
-	h2c_channel_ctl_1_field_info
-},
-{"H2C_CHANNEL_CTL_2", 0x120c,
-	1, 0, 0, 0,
-	0, QDMA_MM_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(h2c_channel_ctl_2_field_info),
-	h2c_channel_ctl_2_field_info
-},
-{"H2C_MM_STATUS", 0x1240,
-	1, 0, 0, 0,
-	0, QDMA_MM_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(h2c_mm_status_field_info),
-	h2c_mm_status_field_info
-},
-{"H2C_CHANNEL_CMPL_DESC_CNT", 0x1248,
-	1, 0, 0, 0,
-	0, QDMA_MM_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(h2c_channel_cmpl_desc_cnt_field_info),
-	h2c_channel_cmpl_desc_cnt_field_info
-},
-{"H2C_MM_ERR_CODE_ENABLE_MASK", 0x1254,
-	1, 0, 0, 0,
-	0, QDMA_MM_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(h2c_mm_err_code_enable_mask_field_info),
-	h2c_mm_err_code_enable_mask_field_info
-},
-{"H2C_MM_ERR_CODE", 0x1258,
-	1, 0, 0, 0,
-	0, QDMA_MM_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(h2c_mm_err_code_field_info),
-	h2c_mm_err_code_field_info
-},
-{"H2C_MM_ERR_INFO", 0x125c,
-	1, 0, 0, 0,
-	0, QDMA_MM_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(h2c_mm_err_info_field_info),
-	h2c_mm_err_info_field_info
-},
-{"H2C_MM_PERF_MON_CTL", 0x12c0,
-	1, 0, 0, 0,
-	0, QDMA_MM_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(h2c_mm_perf_mon_ctl_field_info),
-	h2c_mm_perf_mon_ctl_field_info
-},
-{"H2C_MM_PERF_MON_CYCLE_CNT0", 0x12c4,
-	1, 0, 0, 0,
-	0, QDMA_MM_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(h2c_mm_perf_mon_cycle_cnt0_field_info),
-	h2c_mm_perf_mon_cycle_cnt0_field_info
-},
-{"H2C_MM_PERF_MON_CYCLE_CNT1", 0x12c8,
-	1, 0, 0, 0,
-	0, QDMA_MM_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(h2c_mm_perf_mon_cycle_cnt1_field_info),
-	h2c_mm_perf_mon_cycle_cnt1_field_info
-},
-{"H2C_MM_PERF_MON_DATA_CNT0", 0x12cc,
-	1, 0, 0, 0,
-	0, QDMA_MM_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(h2c_mm_perf_mon_data_cnt0_field_info),
-	h2c_mm_perf_mon_data_cnt0_field_info
-},
-{"H2C_MM_PERF_MON_DATA_CNT1", 0x12d0,
-	1, 0, 0, 0,
-	0, QDMA_MM_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(h2c_mm_perf_mon_data_cnt1_field_info),
-	h2c_mm_perf_mon_data_cnt1_field_info
-},
-{"H2C_MM_DBG", 0x12e8,
-	1, 0, 0, 0,
-	0, QDMA_MM_MODE, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(h2c_mm_dbg_field_info),
-	h2c_mm_dbg_field_info
-},
-{"FUNC_STATUS_REG", 0x2400,
-	1, 0, 0, 0,
-	0, QDMA_MAILBOX, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(func_status_reg_field_info),
-	func_status_reg_field_info
-},
-{"FUNC_CMD_REG", 0x2404,
-	1, 0, 0, 0,
-	0, QDMA_MAILBOX, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(func_cmd_reg_field_info),
-	func_cmd_reg_field_info
-},
-{"FUNC_INTERRUPT_VECTOR_REG", 0x2408,
-	1, 0, 0, 0,
-	0, QDMA_MAILBOX, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(func_interrupt_vector_reg_field_info),
-	func_interrupt_vector_reg_field_info
-},
-{"TARGET_FUNC_REG", 0x240c,
-	1, 0, 0, 0,
-	0, QDMA_MAILBOX, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(target_func_reg_field_info),
-	target_func_reg_field_info
-},
-{"FUNC_INTERRUPT_CTL_REG", 0x2410,
-	1, 0, 0, 0,
-	0, QDMA_MAILBOX, QDMA_REG_READ_PF_ONLY,
-	ARRAY_SIZE(func_interrupt_ctl_reg_field_info),
-	func_interrupt_ctl_reg_field_info
-},
-
-};
-
-uint32_t qdma_s80_hard_config_num_regs_get(void)
-{
-	return (sizeof(qdma_s80_hard_config_regs)/
-		sizeof(qdma_s80_hard_config_regs[0]));
-}
-
-struct xreg_info *qdma_s80_hard_config_regs_get(void)
-{
-	return qdma_s80_hard_config_regs;
-}
-
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_soft_access/qdma_soft_access.c b/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_soft_access/qdma_soft_access.c
old mode 100644
new mode 100755
index 00c288bb9bd698e493209b11f97afa5c993430d1..26d10b27e4ef8ab9c27ddf3c8bdb2380f9adbccd
--- a/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_soft_access/qdma_soft_access.c
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_soft_access/qdma_soft_access.c
@@ -1,5 +1,6 @@
 /*
- * Copyright(c) 2019-2022 Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2019-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
@@ -2462,7 +2463,7 @@ int qdma_get_version(void *dev_hndl, uint8_t is_vf,
 
 	reg_val = qdma_reg_read(dev_hndl, reg_addr);
 
-	qdma_fetch_version_details(is_vf, reg_val, version_info);
+	qdma_fetch_version_details(dev_hndl, is_vf, reg_val, version_info);
 
 	return QDMA_SUCCESS;
 }
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_soft_access/qdma_soft_access.h b/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_soft_access/qdma_soft_access.h
old mode 100644
new mode 100755
index 0dc74e229080dea6e12aca2d0209305ea8ed38d5..9cb5247f281cc4546a71790c2f80fb529f8520ee
--- a/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_soft_access/qdma_soft_access.h
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_soft_access/qdma_soft_access.h
@@ -1,5 +1,6 @@
 /*
- * Copyright(c) 2019-2022 Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2019-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_soft_access/qdma_soft_reg.h b/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_soft_access/qdma_soft_reg.h
old mode 100644
new mode 100755
index dae0e87533fdc71629e86726bc4fc51bbcfefaab..d3876c0c1c475bfad5c1aba446fdd72a61b0853c
--- a/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_soft_access/qdma_soft_reg.h
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_access/qdma_soft_access/qdma_soft_reg.h
@@ -1,5 +1,6 @@
 /*
- * Copyright(c) 2019-2022 Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2019-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_compat.h b/QDMA/linux-kernel/driver/libqdma/qdma_compat.h
old mode 100644
new mode 100755
index a25ccc1da73e46647da7f92fb7a7d7530998427f..ded71b588f1ebddce63c5dec5d3d793bc093efc4
--- a/QDMA/linux-kernel/driver/libqdma/qdma_compat.h
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_compat.h
@@ -1,8 +1,8 @@
 /*
  * This file is part of the Xilinx DMA IP Core driver for Linux
  *
- * Copyright (c) 2017-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_context.c b/QDMA/linux-kernel/driver/libqdma/qdma_context.c
old mode 100644
new mode 100755
index 5c16fe0a57cd0b78443eb9e808438f3f34da7718..246280b32b05bd18471ff2dc3903ec2a5d066bed
--- a/QDMA/linux-kernel/driver/libqdma/qdma_context.c
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_context.c
@@ -1,8 +1,8 @@
 /*
  * This file is part of the Xilinx DMA IP Core driver for Linux
  *
- * Copyright (c) 2017-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
@@ -90,9 +90,11 @@ static int make_sw_context(struct qdma_descq *descq,
 			(descq->conf.sw_desc_sz == DESC_SZ_64B)) {
 		sw_ctxt->desc_sz = descq->conf.sw_desc_sz;
 	} else {
+		sw_ctxt->fetch_max = FETCH_MAX_NUM;
 		if (!descq->conf.st) { /* mm h2c/c2h */
 			sw_ctxt->desc_sz = DESC_SZ_32B;
 			sw_ctxt->mm_chn = descq->channel;
+			sw_ctxt->host_id = descq->channel;
 		} else if (descq->conf.q_type == Q_C2H) {  /* st c2h */
 			sw_ctxt->frcd_en = descq->conf.fetch_credit;
 			sw_ctxt->desc_sz = DESC_SZ_8B;
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_context.h b/QDMA/linux-kernel/driver/libqdma/qdma_context.h
old mode 100644
new mode 100755
index ad8cf33977c7492b7c16caf8a20d21a4921fd22c..9d21d4843992ff8279c875132267a82ec8e4b953
--- a/QDMA/linux-kernel/driver/libqdma/qdma_context.h
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_context.h
@@ -1,8 +1,8 @@
 /*
  * This file is part of the Xilinx DMA IP Core driver for Linux
  *
- * Copyright (c) 2017-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
@@ -27,6 +27,14 @@
 #include "xdev.h"
 #include "qdma_mbox.h"
 
+/*
+ * fetch_max [40:37]
+ * Description: Maximum number of descriptor fetches outstanding for this queue.
+ * The max outstanding is fetch_max + 1 .
+ * Higher value can increase the single queue performance.
+ */
+#define FETCH_MAX_NUM 7
+
 /*****************************************************************************/
 /**
  * qdma_intr_context_setup() - handler to set the qdma interrupt context
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_debugfs.c b/QDMA/linux-kernel/driver/libqdma/qdma_debugfs.c
old mode 100644
new mode 100755
index b82d36c00fc4656a41e36174ba6f71e25e1a2206..0c61bad941df610ecd72fb2087270146d468ff52
--- a/QDMA/linux-kernel/driver/libqdma/qdma_debugfs.c
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_debugfs.c
@@ -1,8 +1,8 @@
 /*
  * This file is part of the Xilinx DMA IP Core driver for Linux
  *
- * Copyright (c) 2017-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_debugfs.h b/QDMA/linux-kernel/driver/libqdma/qdma_debugfs.h
old mode 100644
new mode 100755
index 5eb16aa11471ffeb227eee23003ffeb599ec971e..2b3600a3bbe38f14fb4d5221aa61a907c9ff5a95
--- a/QDMA/linux-kernel/driver/libqdma/qdma_debugfs.h
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_debugfs.h
@@ -1,8 +1,8 @@
 /*
  * This file is part of the Xilinx DMA IP Core driver for Linux
  *
- * Copyright (c) 2017-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_debugfs_dev.c b/QDMA/linux-kernel/driver/libqdma/qdma_debugfs_dev.c
old mode 100644
new mode 100755
index 68c69a47b18272b04477f0958e727c4fc23a306d..3daa36ac0a5df076549a858da2f23bb7a687ba70
--- a/QDMA/linux-kernel/driver/libqdma/qdma_debugfs_dev.c
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_debugfs_dev.c
@@ -1,8 +1,8 @@
 /*
  * This file is part of the Xilinx DMA IP Core driver for Linux
  *
- * Copyright (c) 2017-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_debugfs_dev.h b/QDMA/linux-kernel/driver/libqdma/qdma_debugfs_dev.h
old mode 100644
new mode 100755
index 93fd985c73b1be8e2ebbf0f73a147e5f0264f640..5a74c7919972bc9fd31b955edeb7747645a81e2c
--- a/QDMA/linux-kernel/driver/libqdma/qdma_debugfs_dev.h
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_debugfs_dev.h
@@ -1,8 +1,8 @@
 /*
  * This file is part of the Xilinx DMA IP Core driver for Linux
  *
- * Copyright (c) 2017-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_debugfs_queue.c b/QDMA/linux-kernel/driver/libqdma/qdma_debugfs_queue.c
old mode 100644
new mode 100755
index 4ac7682256e868db2a57e230074f54be94ff9556..c323c4756f36964c39694a43b80d964eb79d4b0b
--- a/QDMA/linux-kernel/driver/libqdma/qdma_debugfs_queue.c
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_debugfs_queue.c
@@ -1,8 +1,8 @@
 /*
  * This file is part of the Xilinx DMA IP Core driver for Linux
  *
- * Copyright (c) 2017-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_debugfs_queue.h b/QDMA/linux-kernel/driver/libqdma/qdma_debugfs_queue.h
old mode 100644
new mode 100755
index 28c9d6ee26c17ab8874f7d3ff0239a89b75e3449..37d62e7d01b3a6e12b49960b07ef99e9b60d773c
--- a/QDMA/linux-kernel/driver/libqdma/qdma_debugfs_queue.h
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_debugfs_queue.h
@@ -1,8 +1,8 @@
 /*
  * This file is part of the Xilinx DMA IP Core driver for Linux
  *
- * Copyright (c) 2017-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_descq.c b/QDMA/linux-kernel/driver/libqdma/qdma_descq.c
old mode 100644
new mode 100755
index 18c52aab2f44357f8fd72303897ce1be11443599..f62a9275aa1527e6419ba37a7aa27a6bf3eeda94
--- a/QDMA/linux-kernel/driver/libqdma/qdma_descq.c
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_descq.c
@@ -1,8 +1,8 @@
 /*
  * This file is part of the Xilinx DMA IP Core driver for Linux
  *
- * Copyright (c) 2017-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_descq.h b/QDMA/linux-kernel/driver/libqdma/qdma_descq.h
old mode 100644
new mode 100755
index f8e90e502d9ccbb30d16a5dfd443969b30016f26..bb1ba36112a2fd324753ae8a9399577b549ffd87
--- a/QDMA/linux-kernel/driver/libqdma/qdma_descq.h
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_descq.h
@@ -1,8 +1,8 @@
 /*
  * This file is part of the Xilinx DMA IP Core driver for Linux
  *
- * Copyright (c) 2017-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_device.c b/QDMA/linux-kernel/driver/libqdma/qdma_device.c
old mode 100644
new mode 100755
index e0e6b2a60ed51993116eaa4794deded2cab59630..a0ea5fcd532fff064334d6d5d1b2ccbc0a1a21d3
--- a/QDMA/linux-kernel/driver/libqdma/qdma_device.c
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_device.c
@@ -1,8 +1,8 @@
 /*
  * This file is part of the Xilinx DMA IP Core driver for Linux
  *
- * Copyright (c) 2017-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
@@ -232,8 +232,8 @@ int qdma_device_init(struct xlnx_dma_dev *xdev)
 
 	memset(&fmap, 0, sizeof(struct qdma_fmap_cfg));
 
-	qdev = kzalloc(sizeof(struct qdma_dev) +
-			sizeof(struct qdma_descq) * qmax * 3, GFP_KERNEL);
+	qdev = kzalloc(sizeof(struct qdma_dev), GFP_KERNEL);
+
 	if (!qdev) {
 		pr_err("dev %s qmax %d OOM.\n",
 			dev_name(&xdev->conf.pdev->dev), qmax);
@@ -254,9 +254,10 @@ int qdma_device_init(struct xlnx_dma_dev *xdev)
 #endif
 
 	descq = (struct qdma_descq *)(qdev + 1);
-	qdev->h2c_descq = descq;
-	qdev->c2h_descq = descq + qmax;
-	qdev->cmpt_descq = descq + (2 * qmax);
+	qdev->h2c_descq = kmalloc(sizeof(struct qdma_descq) * qmax, GFP_KERNEL);
+	qdev->c2h_descq = kmalloc(sizeof(struct qdma_descq) * qmax, GFP_KERNEL);
+	qdev->cmpt_descq = kmalloc(sizeof(struct qdma_descq) * qmax,
+					GFP_KERNEL);
 
 	qdev->qmax = qmax;
 	qdev->init_qrange = 0;
@@ -316,6 +317,10 @@ void qdma_device_cleanup(struct xlnx_dma_dev *xdev)
 			qdma_queue_remove((unsigned long int)xdev,
 					  i + qdev->qmax, buf, QDMA_BUF_LEN);
 	}
+
+	kfree(qdev->h2c_descq);
+	kfree(qdev->c2h_descq);
+	kfree(qdev->cmpt_descq);
 	xdev->dev_priv = NULL;
 	kfree(qdev);
 }
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_device.h b/QDMA/linux-kernel/driver/libqdma/qdma_device.h
old mode 100644
new mode 100755
index e88193e5b15281c6a85fce210d1d6e31e56042e6..c860467454baa049491afa8511d190b42b2c811d
--- a/QDMA/linux-kernel/driver/libqdma/qdma_device.h
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_device.h
@@ -1,8 +1,8 @@
 /*
  * This file is part of the Xilinx DMA IP Core driver for Linux
  *
- * Copyright (c) 2017-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_intr.c b/QDMA/linux-kernel/driver/libqdma/qdma_intr.c
old mode 100644
new mode 100755
index 8de030dbd4618ab505b7f3b7abdb0fa4e93c1996..14e88ca4e7930a637ee109847bf2f49ed7dd8428
--- a/QDMA/linux-kernel/driver/libqdma/qdma_intr.c
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_intr.c
@@ -1,8 +1,8 @@
 /*
  * This file is part of the Xilinx DMA IP Core driver for Linux
  *
- * Copyright (c) 2017-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
@@ -260,10 +260,10 @@ static void data_intr_aggregate(struct xlnx_dma_dev *xdev, int vidx, int irq,
 		queue_intr_cidx_update(descq->xdev,
 			descq->conf.qidx, &coal_entry->intr_cidx_info);
 	} else if (num_entries_processed == 0) {
-		pr_warn("No entries processed\n");
+		pr_debug("No entries processed\n");
 		descq = xdev->prev_descq;
 		if (descq) {
-			pr_warn("Doing stale update\n");
+			pr_debug("Doing stale update\n");
 			queue_intr_cidx_update(descq->xdev,
 				descq->conf.qidx, &coal_entry->intr_cidx_info);
 		}
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_intr.h b/QDMA/linux-kernel/driver/libqdma/qdma_intr.h
old mode 100644
new mode 100755
index 7d428ec512aff612a76590be14edff7558205074..c26174e5ab55171a1c7018db0d9e3e27b312521f
--- a/QDMA/linux-kernel/driver/libqdma/qdma_intr.h
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_intr.h
@@ -1,8 +1,8 @@
 /*
  * This file is part of the Xilinx DMA IP Core driver for Linux
  *
- * Copyright (c) 2017-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_license.h b/QDMA/linux-kernel/driver/libqdma/qdma_license.h
old mode 100644
new mode 100755
index b2173d535ee863ab4d6e07694e37565570647a6a..31750730de7fb2cebf10dae7ed2b0051c76b36fb
--- a/QDMA/linux-kernel/driver/libqdma/qdma_license.h
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_license.h
@@ -3,8 +3,8 @@
 /*
  * This file is part of the Xilinx DMA IP Core driver for Linux
  *
- * Copyright (c) 2017-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_mbox.c b/QDMA/linux-kernel/driver/libqdma/qdma_mbox.c
old mode 100644
new mode 100755
index 57f8c8ee3d67c0c7bd45a7ae1cd0f114333ff94b..0161d04d506afaa69b359c96e42817cbb3273518
--- a/QDMA/linux-kernel/driver/libqdma/qdma_mbox.c
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_mbox.c
@@ -1,8 +1,8 @@
 /*
  * This file is part of the Xilinx DMA IP Core driver for Linux
  *
- * Copyright (c) 2017-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_mbox.h b/QDMA/linux-kernel/driver/libqdma/qdma_mbox.h
old mode 100644
new mode 100755
index 269cd87617f6a763af0874c123f32b071696f0d1..e027edaa07335b866cca35415c538222d2910966
--- a/QDMA/linux-kernel/driver/libqdma/qdma_mbox.h
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_mbox.h
@@ -1,8 +1,8 @@
 /*
  * This file is part of the Xilinx DMA IP Core driver for Linux
  *
- * Copyright (c) 2017-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_platform.c b/QDMA/linux-kernel/driver/libqdma/qdma_platform.c
old mode 100644
new mode 100755
index ed7c54a2b8f12f3c14394b9d1df8a697fb9900d3..2f1470f67d52b66022cd6de8af21311955e35352
--- a/QDMA/linux-kernel/driver/libqdma/qdma_platform.c
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_platform.c
@@ -1,8 +1,8 @@
 /*
  * This file is part of the Xilinx DMA IP Core driver for Linux
  *
- * Copyright (c) 2017-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_platform_env.h b/QDMA/linux-kernel/driver/libqdma/qdma_platform_env.h
old mode 100644
new mode 100755
index 45f329529b090bafa0edeccc0c42e8936bb1d2e7..6649bfc76f2d5491ce5411245977fac57f6962a3
--- a/QDMA/linux-kernel/driver/libqdma/qdma_platform_env.h
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_platform_env.h
@@ -1,8 +1,8 @@
 /*
  * This file is part of the Xilinx DMA IP Core driver for Linux
  *
- * Copyright (c) 2017-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_regs.c b/QDMA/linux-kernel/driver/libqdma/qdma_regs.c
old mode 100644
new mode 100755
index 743f8e1b10784ba70d2d2aec62dbc44193a78dca..ba45e1c242492d4f277cae3d5eed0e0452ece627
--- a/QDMA/linux-kernel/driver/libqdma/qdma_regs.c
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_regs.c
@@ -1,8 +1,8 @@
 /*
  * This file is part of the Xilinx DMA IP Core driver for Linux
  *
- * Copyright (c) 2017-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_regs.h b/QDMA/linux-kernel/driver/libqdma/qdma_regs.h
old mode 100644
new mode 100755
index 6bc43a2c8e19033bbf0c7c54bde1699f09283fd7..4e1d1bb107493525bc6b4e22c7fb98c633ca082b
--- a/QDMA/linux-kernel/driver/libqdma/qdma_regs.h
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_regs.h
@@ -1,8 +1,8 @@
 /*
  * This file is part of the Xilinx DMA IP Core driver for Linux
  *
- * Copyright (c) 2017-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_sriov.c b/QDMA/linux-kernel/driver/libqdma/qdma_sriov.c
old mode 100644
new mode 100755
index d5fda8d08896c7a4f19e2dab0b5680dab676f9b3..4911bf8116e130912677164bf0314bd8b6074655
--- a/QDMA/linux-kernel/driver/libqdma/qdma_sriov.c
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_sriov.c
@@ -1,8 +1,8 @@
 /*
  * This file is part of the Xilinx DMA IP Core driver for Linux
  *
- * Copyright (c) 2017-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_st_c2h.c b/QDMA/linux-kernel/driver/libqdma/qdma_st_c2h.c
old mode 100644
new mode 100755
index e1da45b092ebf5397a0bd9827bd0fc48e33c884f..fe3355ed13e32f24df9d857be5dea4857d01d9af
--- a/QDMA/linux-kernel/driver/libqdma/qdma_st_c2h.c
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_st_c2h.c
@@ -1,8 +1,8 @@
 /*
  * This file is part of the Xilinx DMA IP Core driver for Linux
  *
- * Copyright (c) 2017-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_st_c2h.h b/QDMA/linux-kernel/driver/libqdma/qdma_st_c2h.h
old mode 100644
new mode 100755
index 2233b3a28494c613cd4044662f2fcce68a6c0dc4..1d6971f02554009d6910a7a1f42ad24b96c99e6d
--- a/QDMA/linux-kernel/driver/libqdma/qdma_st_c2h.h
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_st_c2h.h
@@ -1,8 +1,8 @@
 /*
  * This file is part of the Xilinx DMA IP Core driver for Linux
  *
- * Copyright (c) 2017-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_thread.c b/QDMA/linux-kernel/driver/libqdma/qdma_thread.c
old mode 100644
new mode 100755
index 930b3e00f88c1fb23a1411e2f21f3153a838b3cb..cf96fd208d889300202f15b0a33d1f0ec75a95fc
--- a/QDMA/linux-kernel/driver/libqdma/qdma_thread.c
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_thread.c
@@ -1,8 +1,8 @@
 /*
  * This file is part of the Xilinx DMA IP Core driver for Linux
  *
- * Copyright (c) 2017-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_thread.h b/QDMA/linux-kernel/driver/libqdma/qdma_thread.h
old mode 100644
new mode 100755
index a2161cac7daf6a4a9c2db9a14be65e51ce88f68a..48b268041ad0e792200a4278275cd01a880efd4b
--- a/QDMA/linux-kernel/driver/libqdma/qdma_thread.h
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_thread.h
@@ -1,8 +1,8 @@
 /*
  * This file is part of the Xilinx DMA IP Core driver for Linux
  *
- * Copyright (c) 2017-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/libqdma/qdma_ul_ext.h b/QDMA/linux-kernel/driver/libqdma/qdma_ul_ext.h
old mode 100644
new mode 100755
index fa84a0f1058b62a27aa0fc42a5bdfc000e439e68..ae699386143f1e61da3695fab93f1ebc6cb1859c
--- a/QDMA/linux-kernel/driver/libqdma/qdma_ul_ext.h
+++ b/QDMA/linux-kernel/driver/libqdma/qdma_ul_ext.h
@@ -3,8 +3,8 @@
 /*
  * This file is part of the Xilinx DMA IP Core driver for Linux
  *
- * Copyright (c) 2017-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/libqdma/thread.c b/QDMA/linux-kernel/driver/libqdma/thread.c
old mode 100644
new mode 100755
index 6598f4c5b3a4a13ff90c81c552db13a208b95460..d0c09091c2ac2a6c9399a9b1caa3748ba7401fe9
--- a/QDMA/linux-kernel/driver/libqdma/thread.c
+++ b/QDMA/linux-kernel/driver/libqdma/thread.c
@@ -1,8 +1,8 @@
 /*
  * This file is part of the Xilinx DMA IP Core driver for Linux
  *
- * Copyright (c) 2017-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/libqdma/thread.h b/QDMA/linux-kernel/driver/libqdma/thread.h
old mode 100644
new mode 100755
index ccbfc33678395fc63a27640ab165943d64b5d82e..56346ce609bb4d181a2705f1190585a3535abe24
--- a/QDMA/linux-kernel/driver/libqdma/thread.h
+++ b/QDMA/linux-kernel/driver/libqdma/thread.h
@@ -1,8 +1,8 @@
 /*
  * This file is part of the Xilinx DMA IP Core driver for Linux
  *
- * Copyright (c) 2017-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/libqdma/version.h b/QDMA/linux-kernel/driver/libqdma/version.h
old mode 100644
new mode 100755
index 90bdbed5438300fd97f14cbcad18a69dd6643a18..5d9a25ac6c0553e2226776caf5ba77e051e32d48
--- a/QDMA/linux-kernel/driver/libqdma/version.h
+++ b/QDMA/linux-kernel/driver/libqdma/version.h
@@ -1,8 +1,8 @@
 /*
  * This file is part of the Xilinx DMA IP Core driver for Linux
  *
- * Copyright (c) 2017-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
@@ -25,7 +25,7 @@
 
 #define LIBQDMA_VERSION_MAJOR	2022
 #define LIBQDMA_VERSION_MINOR	1
-#define LIBQDMA_VERSION_PATCH	4
+#define LIBQDMA_VERSION_PATCH	5
 
 #define LIBQDMA_VERSION_STR	\
 	__stringify(LIBQDMA_VERSION_MAJOR) "." \
diff --git a/QDMA/linux-kernel/driver/libqdma/xdev.c b/QDMA/linux-kernel/driver/libqdma/xdev.c
old mode 100644
new mode 100755
index 18cf9eec013bbdfe90d40e0f1cf02d95d1f3cd96..3ef679e5351420b9032afcba4a719684aa75755f
--- a/QDMA/linux-kernel/driver/libqdma/xdev.c
+++ b/QDMA/linux-kernel/driver/libqdma/xdev.c
@@ -1,8 +1,8 @@
 /*
  * This file is part of the Xilinx DMA IP Core driver for Linux
  *
- * Copyright (c) 2017-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
@@ -53,6 +53,11 @@
 #define QDMA_QBASE 0
 #endif
 #ifndef QDMA_TOTAL_Q
+/**
+ * CPM5 supports 4095 Qs & all other designs supports 2048 Qs.
+ * Though the number here is given as 2K Qs,
+ * actual qmax is extracted from dev cap.
+ */
 #define QDMA_TOTAL_Q 2048
 #endif
 #endif
diff --git a/QDMA/linux-kernel/driver/libqdma/xdev.h b/QDMA/linux-kernel/driver/libqdma/xdev.h
old mode 100644
new mode 100755
index a2ba48dca47bcd9919b175b51e9a2aba95ce643d..47c26b43ca66916471b5809182170481c6c1984d
--- a/QDMA/linux-kernel/driver/libqdma/xdev.h
+++ b/QDMA/linux-kernel/driver/libqdma/xdev.h
@@ -1,8 +1,8 @@
 /*
  * This file is part of the Xilinx DMA IP Core driver for Linux
  *
- * Copyright (c) 2017-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/make_rules/common_flags.mk b/QDMA/linux-kernel/driver/make_rules/common_flags.mk
old mode 100644
new mode 100755
index f824747cce846e1df82a5ffbe792c68826e8dc7f..5929b0c2a19603f0906a28b9acad1a888f8a9ea2
--- a/QDMA/linux-kernel/driver/make_rules/common_flags.mk
+++ b/QDMA/linux-kernel/driver/make_rules/common_flags.mk
@@ -1,8 +1,8 @@
 #/*
 # * This file is part of the Xilinx DMA IP Core driver for Linux
 # *
-# * Copyright (c) 2017-2022,  Xilinx, Inc.
-# * All rights reserved.
+# * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+# * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
 # *
 # * This source code is free software; you can redistribute it and/or modify it
 # * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/make_rules/distro_check.mk b/QDMA/linux-kernel/driver/make_rules/distro_check.mk
old mode 100644
new mode 100755
index 726c1a51852db2ba85d620b610bbfb74c49f646e..104c2885460572d3fd8cef0c346b21a81086f7d7
--- a/QDMA/linux-kernel/driver/make_rules/distro_check.mk
+++ b/QDMA/linux-kernel/driver/make_rules/distro_check.mk
@@ -1,8 +1,8 @@
 #/*
 # * This file is part of the Xilinx DMA IP Core driver for Linux
 # *
-# * Copyright (c) 2017-2022,  Xilinx, Inc.
-# * All rights reserved.
+# * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+# * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
 # *
 # * This source code is free software; you can redistribute it and/or modify it
 # * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/make_rules/kernel_check.mk b/QDMA/linux-kernel/driver/make_rules/kernel_check.mk
old mode 100644
new mode 100755
index 54afd233e098ab48739a205a67b878b130bbcd06..c9a1f0bf4fafee7f5b4e0f4760ca0f9e5c4121aa
--- a/QDMA/linux-kernel/driver/make_rules/kernel_check.mk
+++ b/QDMA/linux-kernel/driver/make_rules/kernel_check.mk
@@ -1,8 +1,8 @@
 #/*
 # * This file is part of the Xilinx DMA IP Core driver for Linux
 # *
-# * Copyright (c) 2017-2022,  Xilinx, Inc.
-# * All rights reserved.
+# * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+# * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
 # *
 # * This source code is free software; you can redistribute it and/or modify it
 # * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/src/Makefile b/QDMA/linux-kernel/driver/src/Makefile
old mode 100644
new mode 100755
index 1d775644eac70a6ba25bcbf63370b6bf36468546..fcbe5772137ad2649342fb689e863fb02baf1ba1
--- a/QDMA/linux-kernel/driver/src/Makefile
+++ b/QDMA/linux-kernel/driver/src/Makefile
@@ -1,8 +1,8 @@
 #/*
 # * This file is part of the Xilinx DMA IP Core driver for Linux
 # *
-# * Copyright (c) 2017-2022,  Xilinx, Inc.
-# * All rights reserved.
+# * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+# * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
 # *
 # * This source code is free software; you can redistribute it and/or modify it
 # * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/src/cdev.c b/QDMA/linux-kernel/driver/src/cdev.c
old mode 100644
new mode 100755
index 83188978b99614296d03eca35c082b12f0801549..2a7de5bc95760e9828ee2aa5fe171fb3edf320d2
--- a/QDMA/linux-kernel/driver/src/cdev.c
+++ b/QDMA/linux-kernel/driver/src/cdev.c
@@ -1,8 +1,8 @@
 /*
  * This file is part of the Xilinx DMA IP Core driver for Linux
  *
- * Copyright (c) 2017-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/src/cdev.h b/QDMA/linux-kernel/driver/src/cdev.h
old mode 100644
new mode 100755
index ef046b0394147f50dcb174f11780bd4739a0a9b8..616aec89f76141e9e25e95caf422ac8eda35281b
--- a/QDMA/linux-kernel/driver/src/cdev.h
+++ b/QDMA/linux-kernel/driver/src/cdev.h
@@ -1,8 +1,8 @@
 /*
  * This file is part of the Xilinx DMA IP Core driver for Linux
  *
- * Copyright (c) 2017-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/src/nl.c b/QDMA/linux-kernel/driver/src/nl.c
old mode 100644
new mode 100755
index 741cd75868254d8cb3fe08a17801278c580251c5..55812f10aab7339836e5a04b96b301ec2e963f2a
--- a/QDMA/linux-kernel/driver/src/nl.c
+++ b/QDMA/linux-kernel/driver/src/nl.c
@@ -1,8 +1,8 @@
 /*
  * This file is part of the Xilinx DMA IP Core driver for Linux
  *
- * Copyright (c) 2017-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/src/nl.h b/QDMA/linux-kernel/driver/src/nl.h
old mode 100644
new mode 100755
index 3b3ff0758a024b5d65fbf1c32852bb99fd6d65ce..40d91f212fe0dbce828600ed89f31245283692d6
--- a/QDMA/linux-kernel/driver/src/nl.h
+++ b/QDMA/linux-kernel/driver/src/nl.h
@@ -1,8 +1,8 @@
 /*
  * This file is part of the Xilinx DMA IP Core driver for Linux
  *
- * Copyright (c) 2017-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/src/pci_ids.h b/QDMA/linux-kernel/driver/src/pci_ids.h
old mode 100644
new mode 100755
index a059419e8a478999bf9a24cd5d209c63c47872a5..141104565f237522887e24eb9a519905dbb1ffb8
--- a/QDMA/linux-kernel/driver/src/pci_ids.h
+++ b/QDMA/linux-kernel/driver/src/pci_ids.h
@@ -1,8 +1,8 @@
 /*
  * This file is part of the Xilinx DMA IP Core driver for Linux
  *
- * Copyright (c) 2017-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
@@ -244,6 +244,13 @@ static const struct pci_device_id pci_ids[] = {
 	{ PCI_DEVICE(0x10ee, 0xc148), },	/** VF on PF 1 */
 	{ PCI_DEVICE(0x10ee, 0xc248), },	/** VF on PF 2 */
 	{ PCI_DEVICE(0x10ee, 0xc348), },	/** VF on PF 3 */
+
+	/** Gen 5 VF */
+	/** PCIe lane width x8 */
+	{ PCI_DEVICE(0x10ee, 0xc058), },	/** VF on PF 0 */
+	{ PCI_DEVICE(0x10ee, 0xc158), },	/** VF on PF 1 */
+	{ PCI_DEVICE(0x10ee, 0xc258), },	/** VF on PF 2 */
+	{ PCI_DEVICE(0x10ee, 0xc358), },	/** VF on PF 3 */
 #else
 	/** Gen 1 PF */
 	/** PCIe lane width x1 */
@@ -452,6 +459,13 @@ static const struct pci_device_id pci_ids[] = {
 	{ PCI_DEVICE(0x10ee, 0xb148), },	/** PF 1 */
 	{ PCI_DEVICE(0x10ee, 0xb248), },	/** PF 2 */
 	{ PCI_DEVICE(0x10ee, 0xb348), },	/** PF 3 */
+
+	/** Gen 5 PF */
+	/** PCIe lane width x8 */
+	{ PCI_DEVICE(0x10ee, 0xb058), },	/** PF 0 */
+	{ PCI_DEVICE(0x10ee, 0xb158), },	/** PF 1 */
+	{ PCI_DEVICE(0x10ee, 0xb258), },	/** PF 2 */
+	{ PCI_DEVICE(0x10ee, 0xb358), },	/** PF 3 */
 #endif
 
 	{0,}
diff --git a/QDMA/linux-kernel/driver/src/qdma_mod.c b/QDMA/linux-kernel/driver/src/qdma_mod.c
old mode 100644
new mode 100755
index 3b637850984f8a0a8a1d96b6cc494b216518e99b..ae2a9237aa0bc1ff98684c9c7b8cdd76d1bb5dda
--- a/QDMA/linux-kernel/driver/src/qdma_mod.c
+++ b/QDMA/linux-kernel/driver/src/qdma_mod.c
@@ -1,8 +1,8 @@
 /*
  * This file is part of the Xilinx DMA IP Core driver for Linux
  *
- * Copyright (c) 2017-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/src/qdma_mod.h b/QDMA/linux-kernel/driver/src/qdma_mod.h
old mode 100644
new mode 100755
index 2a74c0363cc0808e30030ed14b414e3b6a836a08..079d95a9e0bc43605204d62989a634e88e479808
--- a/QDMA/linux-kernel/driver/src/qdma_mod.h
+++ b/QDMA/linux-kernel/driver/src/qdma_mod.h
@@ -1,8 +1,8 @@
 /*
  * This file is part of the Xilinx DMA IP Core driver for Linux
  *
- * Copyright (c) 2017-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/driver/src/version.h b/QDMA/linux-kernel/driver/src/version.h
old mode 100644
new mode 100755
index e32d03a56e57e2643f5855e60305d60e1bbb99de..5906c95997f3d43c899a2f314ecdf1ebf2514811
--- a/QDMA/linux-kernel/driver/src/version.h
+++ b/QDMA/linux-kernel/driver/src/version.h
@@ -1,8 +1,8 @@
 /*
  * This file is part of the Xilinx DMA IP Core driver for Linux
  *
- * Copyright (c) 2017-2022,  Xilinx, Inc.
- * All rights reserved.
+ * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+ * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
  *
  * This source code is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
@@ -33,7 +33,7 @@
 
 #define DRV_MOD_MAJOR		2022
 #define DRV_MOD_MINOR		1
-#define DRV_MOD_PATCHLEVEL	4
+#define DRV_MOD_PATCHLEVEL	5
 
 #define DRV_MODULE_VERSION      \
 	__stringify(DRV_MOD_MAJOR) "." \
diff --git a/QDMA/linux-kernel/license.txt b/QDMA/linux-kernel/license.txt
old mode 100644
new mode 100755
diff --git a/QDMA/linux-kernel/scripts/license-for-datafile_16bit_pattern.txt b/QDMA/linux-kernel/scripts/license-for-datafile_16bit_pattern.txt
old mode 100644
new mode 100755
index c419203819df22974f45139ea5d956a2eec962a1..15469adbfe6479db2813607ca2d3333ca5d88db5
--- a/QDMA/linux-kernel/scripts/license-for-datafile_16bit_pattern.txt
+++ b/QDMA/linux-kernel/scripts/license-for-datafile_16bit_pattern.txt
@@ -1,19 +1,19 @@
-/*
- * THIS BINARY FILE IS GENERATED FROM XILINX TOOLS AND IS AVAILABLE EXCLUSIVELY IN BINARY FORMAT.
- *
- * Copyright © 2022 Xilinx, Inc.
- *
- * Redistribution and use in binary form only, without modification, is permitted provided that the following conditions are met:
- *
- * Redistributions must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
- * The name of Xilinx, Inc. may not be used to endorse or promote products redistributed with this software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED BY XILINX, INC. "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
- * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL XILINX, INC. BE LIABLE FOR ANY
- * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
- * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
+/*
+ * THIS BINARY FILE IS GENERATED FROM XILINX TOOLS AND IS AVAILABLE EXCLUSIVELY IN BINARY FORMAT.
+ *
+ * Copyright © 2022 Xilinx, Inc.
+ *
+ * Redistribution and use in binary form only, without modification, is permitted provided that the following conditions are met:
+ *
+ * Redistributions must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
+ * The name of Xilinx, Inc. may not be used to endorse or promote products redistributed with this software without specific prior written permission.
+ * THIS SOFTWARE IS PROVIDED BY XILINX, INC. "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
+ * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL XILINX, INC. BE LIABLE FOR ANY
+ * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+ * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
  */
\ No newline at end of file
diff --git a/QDMA/linux-kernel/scripts/qdma_generate_conf_file.sh b/QDMA/linux-kernel/scripts/qdma_generate_conf_file.sh
old mode 100644
new mode 100755
index c31100cfa3ab14ab20755dceb68f382cb079e217..07d5b3ac4cfa2424a2aa2bbe4eca60c81c782389
--- a/QDMA/linux-kernel/scripts/qdma_generate_conf_file.sh
+++ b/QDMA/linux-kernel/scripts/qdma_generate_conf_file.sh
@@ -1,8 +1,8 @@
 #/*
 # * This file is part of the Xilinx DMA IP Core driver for Linux
 # *
-# * Copyright (c) 2017-2022,  Xilinx, Inc.
-# * All rights reserved.
+# * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+# * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
 # *
 # * This source code is free software; you can redistribute it and/or modify it
 # * under the terms and conditions of the GNU General Public License,
@@ -118,4 +118,4 @@ generate_conf()
 	rm -rf conf_file
 }
 
-generate_conf
\ No newline at end of file
+generate_conf
diff --git a/QDMA/linux-kernel/scripts/qdma_run_test_mm_vf.sh b/QDMA/linux-kernel/scripts/qdma_run_test_mm_vf.sh
index f0d7145e298f9b4fce6e722d889ac5d417b2c91b..de584fe5e1443e938429dfc29f4ad7ac05227a75 100755
--- a/QDMA/linux-kernel/scripts/qdma_run_test_mm_vf.sh
+++ b/QDMA/linux-kernel/scripts/qdma_run_test_mm_vf.sh
@@ -1,8 +1,8 @@
 #/*
 # * This file is part of the Xilinx DMA IP Core driver for Linux
 # *
-# * Copyright (c) 2017-2022,  Xilinx, Inc.
-# * All rights reserved.
+# * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+# * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
 # *
 # * This source code is free software; you can redistribute it and/or modify it
 # * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/scripts/qdma_run_test_pf.sh b/QDMA/linux-kernel/scripts/qdma_run_test_pf.sh
index ae106aaba28e2b6bd077f2d82ad123571686b8ab..d328ec93e7e3a9b8557c4569f179fe3edc022a89 100755
--- a/QDMA/linux-kernel/scripts/qdma_run_test_pf.sh
+++ b/QDMA/linux-kernel/scripts/qdma_run_test_pf.sh
@@ -1,8 +1,8 @@
 #/*
 # * This file is part of the Xilinx DMA IP Core driver for Linux
 # *
-# * Copyright (c) 2017-2022,  Xilinx, Inc.
-# * All rights reserved.
+# * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+# * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
 # *
 # * This source code is free software; you can redistribute it and/or modify it
 # * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/scripts/qdma_run_test_st_vf.sh b/QDMA/linux-kernel/scripts/qdma_run_test_st_vf.sh
index 45d2c20279726cb3b82a217ed512ca0fa2dc86cf..a9b620d32c6f0eb74c9ff3a35fa732b69bfe5820 100755
--- a/QDMA/linux-kernel/scripts/qdma_run_test_st_vf.sh
+++ b/QDMA/linux-kernel/scripts/qdma_run_test_st_vf.sh
@@ -1,8 +1,8 @@
 #/*
 # * This file is part of the Xilinx DMA IP Core driver for Linux
 # *
-# * Copyright (c) 2017-2022,  Xilinx, Inc.
-# * All rights reserved.
+# * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+# * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
 # *
 # * This source code is free software; you can redistribute it and/or modify it
 # * under the terms and conditions of the GNU General Public License,
diff --git a/QDMA/linux-kernel/scripts/qdma_vf_auto_tst.sh b/QDMA/linux-kernel/scripts/qdma_vf_auto_tst.sh
old mode 100644
new mode 100755
index a0d25850fe23b28479b8bda4d616cd7d1c5b3a5a..bcb84d71e61916de60f44ddbe97e9c28810fcd10
--- a/QDMA/linux-kernel/scripts/qdma_vf_auto_tst.sh
+++ b/QDMA/linux-kernel/scripts/qdma_vf_auto_tst.sh
@@ -1,8 +1,8 @@
 #/*
 # * This file is part of the Xilinx DMA IP Core driver for Linux
 # *
-# * Copyright (c) 2017-2022,  Xilinx, Inc.
-# * All rights reserved.
+# * Copyright (c) 2017-2022, Xilinx, Inc. All rights reserved.
+# * Copyright (c) 2022, Advanced Micro Devices, Inc. All rights reserved.
 # *
 # * This source code is free software; you can redistribute it and/or modify it
 # * under the terms and conditions of the GNU General Public License,