Fix Mic Broken count as Mic Degrade bug

Test: Local Test
Bug: 305632089
Change-Id: I519d076cca0e108ec4bda44e96fa7d7b8a6313ea
Signed-off-by: poomarin <poomarin@google.com>
diff --git a/audiometrics/audiometrics.c b/audiometrics/audiometrics.c
index 8c8a833..7de98f8 100644
--- a/audiometrics/audiometrics.c
+++ b/audiometrics/audiometrics.c
@@ -122,13 +122,11 @@
 
 static void amcs_report_mic_uevent(uint32_t mic_state, struct audiometrics_priv_type *priv)
 {
-	char event[25] = "";
+	char event[25];
 	char *env[] = { event, NULL };
 
-	uint8_t mic_break =
-		mic_state & MIC_BREAK_STAT_MIC_BREAK_MASK;
-	uint8_t mic_degrade =
-		mic_state & MIC_BREAK_STAT_MIC_DEGRADE_MASK >> MIC_DEGRADE_SHIFT_BITS;
+	const uint8_t mic_break = FIELD_GET(MIC_BREAK_STAT_MIC_BREAK_MASK, mic_state);
+	const uint8_t mic_degrade = FIELD_GET(MIC_BREAK_STAT_MIC_DEGRADE_MASK, mic_state);
 
 	if (IS_ERR_OR_NULL(priv))
 		return;
@@ -137,13 +135,13 @@
 		return;
 
 	if (mic_break) {
-		snprintf(event, sizeof(event), "MIC_BREAK_STATUS=%d",
+		snprintf(event, sizeof(event), "MIC_BREAK_STATUS=%hhu",
 			 mic_break);
 		kobject_uevent_env(&priv->device->kobj, KOBJ_CHANGE, env);
 	}
 
 	if (mic_degrade) {
-		snprintf(event, sizeof(event), "MIC_DEGRADE_STATUS=%d",
+		snprintf(event, sizeof(event), "MIC_DEGRADE_STATUS=%hhu",
 			 mic_degrade);
 		kobject_uevent_env(&priv->device->kobj, KOBJ_CHANGE, env);
 	}