--- /dev/null
+--- a/src/drv_mei_cpe_linux.c
++++ b/src/drv_mei_cpe_linux.c
+@@ -2779,7 +2779,11 @@ static int MEI_InitModuleRegCharDev(cons
+ ("Using major number %d" MEI_DRV_CRLF, MAJOR(mei_devt)));
+ }
+
++#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 4, 0)
+ mei_class = class_create(THIS_MODULE, devName);
++#else
++ mei_class = class_create(devName);
++#endif
+ if (IS_ERR(mei_class))
+ {
+ PRN_DBG_USR_NL( MEI_DRV,MEI_DRV_PRN_LEVEL_HIGH,
+--- a/src/drv_mei_cpe_api_atm_ptm_intern.c
++++ b/src/drv_mei_cpe_api_atm_ptm_intern.c
+@@ -223,7 +223,7 @@ IFX_int32_t MEI_TcRequest(void *data)
+ pMeiDynCntrl->pDfeX = NULL;
+ pMeiDynCntrl->pMeiDev = pMeiDev;
+
+- argsTcRequest.request_type = request_type;
++ argsTcRequest.request_type = (MEI_TC_RequestType_t)request_type;
+ argsTcRequest.is_bonding = MEI_BND_EnableGet(pMeiDynCntrl);
+
+ if (MEI_DFEX_ENTITIES == 1 && argsTcRequest.is_bonding == IFX_TRUE)
+@@ -398,7 +398,8 @@ IFX_int32_t MEI_InternalLineTCModeSwitch
+ pMeiDynCntrl->pDfeX = NULL;
+ pMeiDynCntrl->pMeiDev = MEIX_Cntrl[nEntity]->MeiDevice[nInstance];
+
+- argsTcRequest.request_type = bPowerUp ? MEI_TC_REQUEST_PTM : MEI_TC_REQUEST_OFF;
++ argsTcRequest.request_type = bPowerUp ? (MEI_TC_RequestType_t)MEI_TC_REQUEST_PTM :
++ (MEI_TC_RequestType_t)MEI_TC_REQUEST_OFF;
+ argsTcRequest.is_bonding = pMeiDynCntrl->pMeiDev->bLastBondingStatus;
+
+ retVal = MEI_InternalTcRequest(pMeiDynCntrl, &argsTcRequest);