diff --git a/oem/ibm/libpldm/file_io.c b/oem/ibm/libpldm/file_io.c
index 4363269..16b56e6 100644
--- a/oem/ibm/libpldm/file_io.c
+++ b/oem/ibm/libpldm/file_io.c
@@ -495,7 +495,7 @@
 
 int decode_new_file_req(const struct pldm_msg *msg, size_t payload_length,
 			uint16_t *file_type, uint32_t *file_handle,
-			uint32_t *length)
+			uint64_t *length)
 {
 	if (msg == NULL || file_type == NULL || file_handle == NULL ||
 	    length == NULL) {
@@ -510,7 +510,7 @@
 	    (struct pldm_new_file_req *)msg->payload;
 	*file_type = le16toh(request->file_type);
 	*file_handle = le32toh(request->file_handle);
-	*length = le32toh(request->length);
+	*length = le64toh(request->length);
 
 	return PLDM_SUCCESS;
 }
@@ -542,7 +542,7 @@
 }
 
 int encode_new_file_req(uint8_t instance_id, uint16_t file_type,
-			uint32_t file_handle, uint32_t length,
+			uint32_t file_handle, uint64_t length,
 			struct pldm_msg *msg)
 {
 	struct pldm_header_info header = {0};
@@ -565,7 +565,7 @@
 	    (struct pldm_new_file_req *)msg->payload;
 	req->file_type = htole16(file_type);
 	req->file_handle = htole32(file_handle);
-	req->length = htole32(length);
+	req->length = htole64(length);
 
 	return PLDM_SUCCESS;
 }
diff --git a/oem/ibm/libpldm/file_io.h b/oem/ibm/libpldm/file_io.h
index 3a92399..15a6818 100644
--- a/oem/ibm/libpldm/file_io.h
+++ b/oem/ibm/libpldm/file_io.h
@@ -63,7 +63,7 @@
 #define PLDM_WRITE_FILE_RESP_BYTES 5
 #define PLDM_RW_FILE_BY_TYPE_MEM_REQ_BYTES 22
 #define PLDM_RW_FILE_BY_TYPE_MEM_RESP_BYTES 5
-#define PLDM_NEW_FILE_REQ_BYTES 10
+#define PLDM_NEW_FILE_REQ_BYTES 14
 #define PLDM_NEW_FILE_RESP_BYTES 1
 #define PLDM_RW_FILE_BY_TYPE_REQ_BYTES 14
 #define PLDM_RW_FILE_BY_TYPE_RESP_BYTES 5
@@ -461,7 +461,7 @@
 struct pldm_new_file_req {
 	uint16_t file_type;   //!< Type of file
 	uint32_t file_handle; //!< Handle to file
-	uint32_t length;      //!< Number of bytes in new file
+	uint64_t length;      //!< Number of bytes in new file
 } __attribute__((packed));
 
 /** @struct pldm_new_file_resp
@@ -483,7 +483,7 @@
  */
 int decode_new_file_req(const struct pldm_msg *msg, size_t payload_length,
 			uint16_t *file_type, uint32_t *file_handle,
-			uint32_t *length);
+			uint64_t *length);
 
 /** @brief Create a PLDM response for NewFileAvailable
  *
@@ -506,7 +506,7 @@
  *  @return pldm_completion_codes
  */
 int encode_new_file_req(uint8_t instance_id, uint16_t file_type,
-			uint32_t file_handle, uint32_t length,
+			uint32_t file_handle, uint64_t length,
 			struct pldm_msg *msg);
 
 /** @brief Decode NewFileAvailable command response data
diff --git a/oem/ibm/test/libpldm_fileio_test.cpp b/oem/ibm/test/libpldm_fileio_test.cpp
index ae59fb2..ac6fde4 100644
--- a/oem/ibm/test/libpldm_fileio_test.cpp
+++ b/oem/ibm/test/libpldm_fileio_test.cpp
@@ -956,7 +956,7 @@
     // Random value for fileHandle and length
     uint16_t fileType = 0xFF;
     uint32_t fileHandle = 0x12345678;
-    uint32_t length = 0x13245768;
+    uint64_t length = 0x13245768;
 
     request->file_type = fileType;
     request->file_handle = fileHandle;
@@ -964,7 +964,7 @@
 
     uint16_t retFileType = 0xFF;
     uint32_t retFileHandle = 0;
-    uint32_t retLength = 0;
+    uint64_t retLength = 0;
 
     // Invoke decode the read file request
     auto rc = decode_new_file_req(requestPtr, payload_length, &retFileType,
@@ -1004,7 +1004,7 @@
 {
     uint16_t fileType = 0;
     uint32_t fileHandle = 0;
-    uint32_t length = 0;
+    uint64_t length = 0;
 
     // Request payload message is missing
     auto rc = decode_new_file_req(NULL, 0, &fileType, &fileHandle, &length);
