aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/video/via/viafbdev.h
diff options
context:
space:
mode:
authorJonathan Corbet <corbet@lwn.net>2009-12-01 22:29:39 -0500
committerJonathan Corbet <corbet@lwn.net>2010-05-07 19:15:47 -0400
commitf045f77bc0bf238a871b10bea9e425329a8e4abc (patch)
tree085c6651bc6f4d47f4b4659fa4ef4134fe40733f /drivers/video/via/viafbdev.h
parent4da62e6c6e056d709e5dc04ac7c5e81692cf924f (diff)
viafb: Move core stuff into via-core.c
The first step toward turning viafb into a multifunction driver. This patch creates a new via-core.c file which serves as the main PCI driver; everything else comes below that. Some work has been done to rationalize the i2c drivers in this new scheme. Cc: ScottFang@viatech.com.cn Cc: JosephChan@via.com.tw Cc: Harald Welte <laforge@gnumonks.org> Acked-by: Florian Tobias Schandinat <FlorianSchandinat@gmx.de> Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Diffstat (limited to 'drivers/video/via/viafbdev.h')
-rw-r--r--drivers/video/via/viafbdev.h17
1 files changed, 14 insertions, 3 deletions
diff --git a/drivers/video/via/viafbdev.h b/drivers/video/via/viafbdev.h
index 4bc00ec8fb1c..5604f27eb74e 100644
--- a/drivers/video/via/viafbdev.h
+++ b/drivers/video/via/viafbdev.h
@@ -24,6 +24,7 @@
24 24
25#include <linux/proc_fs.h> 25#include <linux/proc_fs.h>
26#include <linux/fb.h> 26#include <linux/fb.h>
27#include <linux/spinlock.h>
27 28
28#include "ioctl.h" 29#include "ioctl.h"
29#include "share.h" 30#include "share.h"
@@ -42,9 +43,6 @@
42struct viafb_shared { 43struct viafb_shared {
43 struct proc_dir_entry *proc_entry; /*viafb proc entry */ 44 struct proc_dir_entry *proc_entry; /*viafb proc entry */
44 45
45 /* I2C stuff */
46 struct via_i2c_stuff i2c_stuff[VIAFB_NUM_I2C];
47
48 /* All the information will be needed to set engine */ 46 /* All the information will be needed to set engine */
49 struct tmds_setting_information tmds_setting_info; 47 struct tmds_setting_information tmds_setting_info;
50 struct crt_setting_information crt_setting_info; 48 struct crt_setting_information crt_setting_info;
@@ -74,6 +72,14 @@ struct viafb_par {
74 72
75 struct viafb_shared *shared; 73 struct viafb_shared *shared;
76 74
75 /*
76 * (jc) I believe one should use locking to protect against
77 * concurrent access to the device ports and registers. Thus,
78 * this lock. Use of it is *far* from universal, though...
79 * someday...
80 */
81 spinlock_t reg_lock;
82
77 /* All the information will be needed to set engine */ 83 /* All the information will be needed to set engine */
78 /* depreciated, use the ones in shared directly */ 84 /* depreciated, use the ones in shared directly */
79 struct tmds_setting_information *tmds_setting_info; 85 struct tmds_setting_information *tmds_setting_info;
@@ -101,4 +107,9 @@ u8 viafb_gpio_i2c_read_lvds(struct lvds_setting_information
101void viafb_gpio_i2c_write_mask_lvds(struct lvds_setting_information 107void viafb_gpio_i2c_write_mask_lvds(struct lvds_setting_information
102 *plvds_setting_info, struct lvds_chip_information 108 *plvds_setting_info, struct lvds_chip_information
103 *plvds_chip_info, struct IODATA io_data); 109 *plvds_chip_info, struct IODATA io_data);
110int via_fb_pci_probe(struct pci_dev *pdev, const struct pci_device_id *ent);
111void via_fb_pci_remove(struct pci_dev *pdev);
112/* Temporary */
113int viafb_init(void);
114void viafb_exit(void);
104#endif /* __VIAFBDEV_H__ */ 115#endif /* __VIAFBDEV_H__ */