diff --git a/drivers/media/dvb/siano/smscoreapi.c b/drivers/media/dvb/siano/smscoreapi.c
index 76fa0f5..41c63e5 100644
--- a/drivers/media/dvb/siano/smscoreapi.c
+++ b/drivers/media/dvb/siano/smscoreapi.c
@@ -347,7 +347,7 @@
 	}
 
 	cb->p = buffer;
-	cb->offset_in_common = buffer - (u8*) common_buffer;
+	cb->offset_in_common = buffer - (u8 *) common_buffer;
 	cb->phys = common_buffer_phys + cb->offset_in_common;
 
 	return cb;
@@ -620,7 +620,7 @@
 	return rc;
 }
 
-int smscore_load_firmware_from_buffer(smscore_device_t *coredev, u8* buffer, int size, int new_mode)
+int smscore_load_firmware_from_buffer(smscore_device_t *coredev, u8 *buffer, int size, int new_mode)
 {
 	PERROR("Feature not implemented yet\n");
 	return -EFAULT;
@@ -888,7 +888,7 @@
  */
 void smscore_onresponse(smscore_device_t *coredev, smscore_buffer_t *cb)
 {
-	SmsMsgHdr_ST *phdr = (SmsMsgHdr_ST *)((u8*) cb->p + cb->offset);
+	SmsMsgHdr_ST *phdr = (SmsMsgHdr_ST *)((u8 *) cb->p + cb->offset);
 	smscore_client_t *client = smscore_find_client(coredev, phdr->msgType, phdr->msgDstId);
 	int rc = -EBUSY;
 
@@ -1120,7 +1120,7 @@
 int smsclient_sendrequest(smscore_client_t *client, void *buffer, size_t size)
 {
 	smscore_device_t *coredev;
-	SmsMsgHdr_ST* phdr = (SmsMsgHdr_ST*) buffer;
+	SmsMsgHdr_ST *phdr = (SmsMsgHdr_ST *) buffer;
 	int rc;
 
 	if ( client == NULL )
diff --git a/drivers/media/dvb/siano/smscoreapi.h b/drivers/media/dvb/siano/smscoreapi.h
index c0a3be2..601bdb8 100644
--- a/drivers/media/dvb/siano/smscoreapi.h
+++ b/drivers/media/dvb/siano/smscoreapi.h
@@ -515,7 +515,7 @@
 extern int smscore_load_firmware(smscore_device_t *coredev, char *filename,
 				  loadfirmware_t loadfirmware_handler);
 
-extern int smscore_load_firmware_from_buffer(smscore_device_t *coredev, u8* buffer, int size, int new_mode);
+extern int smscore_load_firmware_from_buffer(smscore_device_t *coredev, u8 *buffer, int size, int new_mode);
 
 extern int smscore_set_device_mode(smscore_device_t *coredev, int mode);
 extern int smscore_get_device_mode(smscore_device_t *coredev);
diff --git a/drivers/media/dvb/siano/smsusb.c b/drivers/media/dvb/siano/smsusb.c
index f719b72..02528f1 100644
--- a/drivers/media/dvb/siano/smsusb.c
+++ b/drivers/media/dvb/siano/smsusb.c
@@ -313,13 +313,13 @@
 	default:
 		if (dev->udev->descriptor.idProduct == 0x200) {
 			params.device_type = SMS_NOVA_A0;
-			printk(KERN_INFO "%s nova A0 found\n", __FUNCTION__ );
+			printk(KERN_INFO "%s nova A0 found\n", __func__ );
 		} else if (dev->udev->descriptor.idProduct == 0x201) {
 			params.device_type = SMS_NOVA_B0;
-			printk(KERN_INFO "%s nova B0 found\n", __FUNCTION__);
+			printk(KERN_INFO "%s nova B0 found\n", __func__);
 		} else {
 			params.device_type = SMS_VEGA;
-			printk(KERN_INFO "%s Vega found\n", __FUNCTION__);
+			printk(KERN_INFO "%s Vega found\n", __func__);
 		}
 
 		dev->buffer_size = USB2_BUFFER_SIZE;
@@ -411,7 +411,7 @@
 	}
 
 	rc = smsusb_init_device(intf);
-	printk(KERN_INFO  "%s  rc %d\n", __FUNCTION__, rc);
+	printk(KERN_INFO  "%s  rc %d\n", __func__, rc);
 	return rc;
 }
 
