瀏覽代碼

[media] siano: use generic function to create MC device

Currently, it is initializing the driver name using the wrong
name ("usb"). Use the generic function, as its logic works
best, and avoids repeating the very same code everywhere.

Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
Mauro Carvalho Chehab 9 年之前
父節點
當前提交
3d0ccad0db
共有 1 個文件被更改,包括 2 次插入11 次删除
  1. 2 11
      drivers/media/usb/siano/smsusb.c

+ 2 - 11
drivers/media/usb/siano/smsusb.c

@@ -27,6 +27,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 #include <linux/firmware.h>
 #include <linux/firmware.h>
 #include <linux/slab.h>
 #include <linux/slab.h>
 #include <linux/module.h>
 #include <linux/module.h>
+#include <media/v4l2-mc.h>
 
 
 #include "sms-cards.h"
 #include "sms-cards.h"
 #include "smsendian.h"
 #include "smsendian.h"
@@ -366,20 +367,10 @@ static void *siano_media_device_register(struct smsusb_device_t *dev,
 	struct sms_board *board = sms_get_board(board_id);
 	struct sms_board *board = sms_get_board(board_id);
 	int ret;
 	int ret;
 
 
-	mdev = kzalloc(sizeof(*mdev), GFP_KERNEL);
+	mdev = v4l2_mc_usb_media_device_init(udev, board->name);
 	if (!mdev)
 	if (!mdev)
 		return NULL;
 		return NULL;
 
 
-	mdev->dev = &udev->dev;
-	strlcpy(mdev->model, board->name, sizeof(mdev->model));
-	if (udev->serial)
-		strlcpy(mdev->serial, udev->serial, sizeof(mdev->serial));
-	strcpy(mdev->bus_info, udev->devpath);
-	mdev->hw_revision = le16_to_cpu(udev->descriptor.bcdDevice);
-	mdev->driver_version = LINUX_VERSION_CODE;
-
-	media_device_init(mdev);
-
 	ret = media_device_register(mdev);
 	ret = media_device_register(mdev);
 	if (ret) {
 	if (ret) {
 		media_device_cleanup(mdev);
 		media_device_cleanup(mdev);