Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 138184
b: refs/heads/master
c: 9467fe1
h: refs/heads/master
v: v3
  • Loading branch information
Hans Verkuil authored and Mauro Carvalho Chehab committed Mar 30, 2009
1 parent 3a4d624 commit 81a09d7
Show file tree
Hide file tree
Showing 5 changed files with 24 additions and 6 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: 74fc7bd9cec0ccdbea23659208492ec7ffc58297
refs/heads/master: 9467fe126451c7fc7878d21f3cd1938421ef972e
8 changes: 8 additions & 0 deletions trunk/drivers/media/video/cx88/cx88-cards.c
Original file line number Diff line number Diff line change
Expand Up @@ -3138,7 +3138,15 @@ struct cx88_core *cx88_core_create(struct pci_dev *pci, int nr)

core->nr = nr;
sprintf(core->name, "cx88[%d]", core->nr);

strcpy(core->v4l2_dev.name, core->name);
if (v4l2_device_register(NULL, &core->v4l2_dev)) {
kfree(core);
return NULL;
}

if (0 != cx88_get_resources(core, pci)) {
v4l2_device_unregister(&core->v4l2_dev);
kfree(core);
return NULL;
}
Expand Down
4 changes: 3 additions & 1 deletion trunk/drivers/media/video/cx88/cx88-core.c
Original file line number Diff line number Diff line change
Expand Up @@ -1011,7 +1011,8 @@ struct video_device *cx88_vdev_init(struct cx88_core *core,
return NULL;
*vfd = *template;
vfd->minor = -1;
vfd->parent = &pci->dev;
vfd->v4l2_dev = &core->v4l2_dev;
vfd->parent = &pci->dev;
vfd->release = video_device_release;
snprintf(vfd->name, sizeof(vfd->name), "%s %s (%s)",
core->name, type, core->board.name);
Expand Down Expand Up @@ -1064,6 +1065,7 @@ void cx88_core_put(struct cx88_core *core, struct pci_dev *pci)
iounmap(core->lmmio);
cx88_devcount--;
mutex_unlock(&devlist);
v4l2_device_unregister(&core->v4l2_dev);
kfree(core);
}

Expand Down
8 changes: 5 additions & 3 deletions trunk/drivers/media/video/cx88/cx88-i2c.c
Original file line number Diff line number Diff line change
Expand Up @@ -99,7 +99,8 @@ static int cx8800_bit_getsda(void *data)

static int attach_inform(struct i2c_client *client)
{
struct cx88_core *core = i2c_get_adapdata(client->adapter);
struct v4l2_device *v4l2_dev = i2c_get_adapdata(client->adapter);
struct cx88_core *core = to_core(v4l2_dev);

dprintk(1, "%s i2c attach [addr=0x%x,client=%s]\n",
client->driver->driver.name, client->addr, client->name);
Expand All @@ -108,7 +109,8 @@ static int attach_inform(struct i2c_client *client)

static int detach_inform(struct i2c_client *client)
{
struct cx88_core *core = i2c_get_adapdata(client->adapter);
struct v4l2_device *v4l2_dev = i2c_get_adapdata(client->adapter);
struct cx88_core *core = to_core(v4l2_dev);

dprintk(1, "i2c detach [client=%s]\n", client->name);
return 0;
Expand Down Expand Up @@ -186,7 +188,7 @@ int cx88_i2c_init(struct cx88_core *core, struct pci_dev *pci)
core->i2c_adap.client_unregister = detach_inform;
core->i2c_algo.udelay = i2c_udelay;
core->i2c_algo.data = core;
i2c_set_adapdata(&core->i2c_adap,core);
i2c_set_adapdata(&core->i2c_adap, &core->v4l2_dev);
core->i2c_adap.algo_data = &core->i2c_algo;
core->i2c_client.adapter = &core->i2c_adap;
strlcpy(core->i2c_client.name, "cx88xx internal", I2C_NAME_SIZE);
Expand Down
8 changes: 7 additions & 1 deletion trunk/drivers/media/video/cx88/cx88.h
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@
#include <linux/videodev2.h>
#include <linux/kdev_t.h>

#include <media/v4l2-common.h>
#include <media/v4l2-device.h>
#include <media/tuner.h>
#include <media/tveeprom.h>
#include <media/videobuf-dma-sg.h>
Expand Down Expand Up @@ -327,6 +327,7 @@ struct cx88_core {
u32 i2c_state, i2c_rc;

/* config info -- analog */
struct v4l2_device v4l2_dev;
unsigned int boardnr;
struct cx88_board board;

Expand Down Expand Up @@ -365,6 +366,11 @@ struct cx88_core {
int active_fe_id;
};

static inline struct cx88_core *to_core(struct v4l2_device *v4l2_dev)
{
return container_of(v4l2_dev, struct cx88_core, v4l2_dev);
}

struct cx8800_dev;
struct cx8802_dev;

Expand Down

0 comments on commit 81a09d7

Please sign in to comment.