Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 138002
b: refs/heads/master
c: e0f14c2
h: refs/heads/master
v: v3
  • Loading branch information
Uri Shkolnik authored and Mauro Carvalho Chehab committed Mar 30, 2009
1 parent 8eebc47 commit 6fb6a9b
Show file tree
Hide file tree
Showing 6 changed files with 63 additions and 30 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 841a3f0de9a55682d33aa8bf770ff4f7cbb7e5da
refs/heads/master: e0f14c2574ded46b9ec8a1518922d07bc4001c18
4 changes: 3 additions & 1 deletion trunk/drivers/media/dvb/siano/Makefile
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
sms1xxx-objs := smscoreapi.o smsusb.o smsdvb.o sms-cards.o
sms1xxx-objs := smscoreapi.o sms-cards.o

obj-$(CONFIG_DVB_SIANO_SMS1XXX) += sms1xxx.o
obj-$(CONFIG_DVB_SIANO_SMS1XXX) += smsusb.o
obj-$(CONFIG_DVB_SIANO_SMS1XXX) += smsdvb.o

EXTRA_CFLAGS += -Idrivers/media/dvb/dvb-core

Expand Down
46 changes: 33 additions & 13 deletions trunk/drivers/media/dvb/siano/smscoreapi.c
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
*
* This file contains implementation for the interface to sms core component
*
* author: Anatoly Greenblat
* author: Uri Shkolnik
*
* Copyright (c), 2005-2008 Siano Mobile Silicon, Inc.
*
Expand Down Expand Up @@ -732,7 +732,7 @@ static char *smscore_fw_lkup[][SMS_NUM_OF_DEVICE_TYPES] = {
/*DVBH*/
{"none", "dvb_nova_12mhz.inp", "dvb_nova_12mhz_b0.inp", "none"},
/*TDMB*/
{"none", "tdmb_nova_12mhz.inp", "none", "none"},
{"none", "tdmb_nova_12mhz.inp", "tdmb_nova_12mhz_b0.inp", "none"},
/*DABIP*/
{"none", "none", "none", "none"},
/*BDA*/
Expand Down Expand Up @@ -1276,12 +1276,12 @@ static int __init smscore_module_init(void)
INIT_LIST_HEAD(&g_smscore_registry);
kmutex_init(&g_smscore_registrylock);

/* USB Register */
rc = smsusb_register();

/* DVB Register */
rc = smsdvb_register();




return rc;
sms_debug("rc %d", rc);

return rc;
Expand All @@ -1290,6 +1290,10 @@ static int __init smscore_module_init(void)
static void __exit smscore_module_exit(void)
{





kmutex_lock(&g_smscore_deviceslock);
while (!list_empty(&g_smscore_notifyees)) {
struct smscore_device_notifyee_t *notifyee =
Expand All @@ -1312,18 +1316,34 @@ static void __exit smscore_module_exit(void)
}
kmutex_unlock(&g_smscore_registrylock);

/* DVB UnRegister */
smsdvb_unregister();

/* Unregister USB */
smsusb_unregister();
//#ifdef DVB_CORE
// smsdvb_unregister();
//#endif

sms_debug("");
}

EXPORT_SYMBOL(smscore_onresponse);
EXPORT_SYMBOL(sms_get_board);
EXPORT_SYMBOL(sms_debug);
EXPORT_SYMBOL(smscore_putbuffer);
EXPORT_SYMBOL(smscore_registry_getmode);
EXPORT_SYMBOL(smscore_register_device);
EXPORT_SYMBOL(smscore_set_board_id);
EXPORT_SYMBOL(smscore_start_device);
EXPORT_SYMBOL(smscore_unregister_device);
EXPORT_SYMBOL(smscore_getbuffer);
EXPORT_SYMBOL(smscore_get_device_mode);
EXPORT_SYMBOL(smscore_register_client);
EXPORT_SYMBOL(smscore_unregister_hotplug);
EXPORT_SYMBOL(smsclient_sendrequest);
EXPORT_SYMBOL(smscore_unregister_client);
EXPORT_SYMBOL(smscore_get_board_id);
EXPORT_SYMBOL(smscore_register_hotplug);

module_init(smscore_module_init);
module_exit(smscore_module_exit);

MODULE_DESCRIPTION("Driver for the Siano SMS1XXX USB dongle");
MODULE_AUTHOR("Siano Mobile Silicon,,, (doronc@siano-ms.com)");
MODULE_DESCRIPTION("Siano MDTV Core module");
MODULE_AUTHOR("Siano Mobile Silicon, Inc. (uris@siano-ms.com)");
MODULE_LICENSE("GPL");
14 changes: 6 additions & 8 deletions trunk/drivers/media/dvb/siano/smscoreapi.h
Original file line number Diff line number Diff line change
Expand Up @@ -29,13 +29,13 @@
#include <linux/scatterlist.h>
#include <linux/types.h>
#include <asm/page.h>
#include <linux/mutex.h>

#include "dmxdev.h"
#include "dvbdev.h"
#include "dvb_demux.h"
#include "dvb_frontend.h"

#include <linux/mutex.h>

#define kmutex_init(_p_) mutex_init(_p_)
#define kmutex_lock(_p_) mutex_lock(_p_)
Expand Down Expand Up @@ -397,6 +397,11 @@ extern int smsclient_sendrequest(struct smscore_client_t *client,
extern void smscore_onresponse(struct smscore_device_t *coredev,
struct smscore_buffer_t *cb);

extern int smscore_get_common_buffer_size(struct smscore_device_t *coredev);
extern int smscore_map_common_buffer(struct smscore_device_t *coredev,
struct vm_area_struct *vma);
extern int smscore_get_fw_filename(struct smscore_device_t *coredev, int mode, char* filename);
extern int smscore_send_fw_file(struct smscore_device_t *coredev, u8* ufwbuf,int size);

extern
struct smscore_buffer_t *smscore_getbuffer(struct smscore_device_t *coredev);
Expand All @@ -412,13 +417,6 @@ int smscore_get_board_id(struct smscore_device_t *core);

int smscore_led_state(struct smscore_device_t *core, int led);

/* smsdvb.c */
int smsdvb_register(void);
void smsdvb_unregister(void);

/* smsusb.c */
int smsusb_register(void);
void smsusb_unregister(void);

/* ------------------------------------------------------------------------ */

Expand Down
17 changes: 12 additions & 5 deletions trunk/drivers/media/dvb/siano/smsdvb.c
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
/*
* Driver for the Siano SMS1xxx USB dongle
*
* author: Anatoly Greenblat
* Author: Uri Shkolni
*
* Copyright (c), 2005-2008 Siano Mobile Silicon, Inc.
*
Expand Down Expand Up @@ -368,7 +368,7 @@ static void smsdvb_release(struct dvb_frontend *fe)

static struct dvb_frontend_ops smsdvb_fe_ops = {
.info = {
.name = "Siano Mobile Digital SMS1xxx",
.name = "Siano Mobile Digital MDTV Receiver",
.type = FE_OFDM,
.frequency_min = 44250000,
.frequency_max = 867250000,
Expand Down Expand Up @@ -410,7 +410,7 @@ static int smsdvb_hotplug(struct smscore_device_t *coredev,
if (!arrival)
return 0;

if (smscore_get_device_mode(coredev) != 4) {
if (smscore_get_device_mode(coredev) != DEVICE_MODE_DVBT_BDA) {
sms_err("SMS Device mode is not set for "
"DVB operation.");
return 0;
Expand Down Expand Up @@ -512,7 +512,7 @@ static int smsdvb_hotplug(struct smscore_device_t *coredev,
return rc;
}

int smsdvb_register(void)
int smsdvb_module_init(void)
{
int rc;

Expand All @@ -526,7 +526,7 @@ int smsdvb_register(void)
return rc;
}

void smsdvb_unregister(void)
void smsdvb_module_exit(void)
{
smscore_unregister_hotplug(smsdvb_hotplug);

Expand All @@ -538,3 +538,10 @@ void smsdvb_unregister(void)

kmutex_unlock(&g_smsdvb_clientslock);
}

module_init(smsdvb_module_init);
module_exit(smsdvb_module_exit);

MODULE_DESCRIPTION("SMS DVB subsystem adaptation module");
MODULE_AUTHOR("Siano Mobile Silicon, INC. (uris@siano-ms.com)");
MODULE_LICENSE("GPL");
10 changes: 8 additions & 2 deletions trunk/drivers/media/dvb/siano/smsusb.c
Original file line number Diff line number Diff line change
Expand Up @@ -531,7 +531,7 @@ static struct usb_driver smsusb_driver = {
.resume = smsusb_resume,
};

int smsusb_register(void)
int smsusb_module_init(void)
{
int rc = usb_register(&smsusb_driver);
if (rc)
Expand All @@ -542,10 +542,16 @@ int smsusb_register(void)
return rc;
}

void smsusb_unregister(void)
void smsusb_module_exit(void)
{
sms_debug("");
/* Regular USB Cleanup */
usb_deregister(&smsusb_driver);
}

module_init(smsusb_module_init);
module_exit(smsusb_module_exit);

MODULE_DESCRIPTION("Driver for the Siano SMS1XXX USB dongle");
MODULE_AUTHOR("Siano Mobile Silicon, INC. (uris@siano-ms.com)");
MODULE_LICENSE("GPL");

0 comments on commit 6fb6a9b

Please sign in to comment.