summaryrefslogtreecommitdiff
path: root/linux/drivers/media/video/cx23885/cx23885.h
diff options
context:
space:
mode:
authorSteven Toth <stoth@hauppauge.com>2008-01-10 00:24:27 -0500
committerSteven Toth <stoth@hauppauge.com>2008-01-10 00:24:27 -0500
commit3c6586ecb750e29a8bac2fc6464205f381a8d5ab (patch)
tree0656fb403f71be036741431452a8f51c69699198 /linux/drivers/media/video/cx23885/cx23885.h
parent897d57da150927665f32c434570bf7310cdcff28 (diff)
downloadmediapointer-dvb-s2-3c6586ecb750e29a8bac2fc6464205f381a8d5ab.tar.gz
mediapointer-dvb-s2-3c6586ecb750e29a8bac2fc6464205f381a8d5ab.tar.bz2
cx23885: Track the board clock frequency and allow overrides.
From: Steven Toth <stoth@hauppauge.com> The cx23885/6/8 all have different clock rates, this patch allows the core to compensate, and developers to allow vendor specific overrides. This patches will be used by future analog video and encoder patches. Signed-off-by: Steven Toth <stoth@hauppauge.com>
Diffstat (limited to 'linux/drivers/media/video/cx23885/cx23885.h')
-rw-r--r--linux/drivers/media/video/cx23885/cx23885.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/linux/drivers/media/video/cx23885/cx23885.h b/linux/drivers/media/video/cx23885/cx23885.h
index 1b7993473..84b63c2c6 100644
--- a/linux/drivers/media/video/cx23885/cx23885.h
+++ b/linux/drivers/media/video/cx23885/cx23885.h
@@ -103,6 +103,17 @@ typedef enum {
struct cx23885_board {
char *name;
port_t portb, portc;
+
+ /* Vendors can and do run the PCIe bridge at different
+ * clock rates, driven physically by crystals on the PCBs.
+ * The core has to accomodate this. This allows the user
+ * to add new boards with new frequencys. The value is
+ * expressed in Hz.
+ *
+ * The core framework will default this value based on
+ * current designs, but it can vary.
+ */
+ u32 clk_freq;
struct cx23885_input input[MAX_CX23885_INPUT];
};
@@ -196,6 +207,10 @@ struct cx23885_dev {
int pci_irqmask;
int hwrevision;
+ /* This valud is board specific and is used to configure the
+ * AV core so we see nice clean and stable video and audio. */
+ u32 clk_freq;
+
/* I2C adapters: Master 1 & 2 (External) & Master 3 (Internal only) */
struct cx23885_i2c i2c_bus[3];