memcpy(&recv_mic[0], (priv->rxp) + ((priv->rx_size) - 8), 8);
                priv->rx_size = priv->rx_size - 8;
                if (auth_type > 0 && auth_type < 4) {   /* auth_type check */
-                       michael_mic_function(&michael_mic,
-                                            (uint8_t *)key->rx_mic_key,
-                                            (uint8_t *)priv->rxp,
-                                            (int)priv->rx_size,
-                                            (uint8_t)0,        /* priority */
-                                            (uint8_t *)michael_mic.result);
+                       michael_mic_function(&michael_mic, key->rx_mic_key,
+                                            priv->rxp, priv->rx_size,
+                                            0, michael_mic.result);
                }
                if (memcmp(michael_mic.result, recv_mic, 8) != 0) {
                        now = jiffies;
                } else {
                        if (priv->wpa.pairwise_suite == IW_AUTH_CIPHER_TKIP) {
                                michael_mic_function(&michael_mic,
-                                                    (uint8_t *)priv->wpa.key[0].tx_mic_key,
-                                                    (uint8_t *)&pp->data[0],
-                                                    (int)skb_len,
-                                                    (uint8_t)0,        /* priority */
-                                                    (uint8_t *)michael_mic.result);
+                                                    priv->wpa.key[0].tx_mic_key,
+                                                    &pp->data[0], skb_len,
+                                                    0, michael_mic.result);
                                memcpy(p, michael_mic.result, 8);
                                length += 8;
                                skb_len += 8;
 
 }
 
 void michael_mic_function(struct michael_mic *mic, u8 *key,
-                         u8 *data, int len, u8 priority, u8 *result)
+                         u8 *data, unsigned int len, u8 priority, u8 *result)
 {
        u8 pad_data[4] = { priority, 0, 0, 0 };
        // Compute the MIC value
 
 };
 
 void michael_mic_function(struct michael_mic *mic, u8 *key,
-                         u8 *data, int len, u8 priority, u8 *result);
+                         u8 *data, unsigned int len, u8 priority, u8 *result);