Re: [PATCH] videodev_init() -> initcall

2001-05-18 Thread Randy.Dunlap

Al's patch gives me:

videodev.c:550: warning: static declaration for `videodev_init' follows
non-static
videodev.c: In function `videodev_exit':
videodev.c:579: warning: implicit declaration of function
`videodev_proc_destroy'

Patch to use after Al's patch is attached.

~Randy


Alexander Viro wrote:
> 
> Alan, drivers/media/videodev.c is your code. See if you are OK
> with the patch below - it switches the thing to use of module_init()
> and removes the call of videodev_init() from chr_dev_init(). I.e. the
> only ordering change is that videodev_init() is postponed until immediately
> before the media/video/* drivers.
> Linus, if you are OK with that and Alan will ACK the thing - please,
> consider applying it.
> Al
> 
> diff -urN S5-pre3/drivers/char/mem.c S5-pre3-videodev/drivers/char/mem.c
> --- S5-pre3/drivers/char/mem.c  Wed May 16 16:26:36 2001
> +++ S5-pre3-videodev/drivers/char/mem.c Fri May 18 16:46:37 2001
> @@ -29,9 +29,6 @@
>  #ifdef CONFIG_I2C
>  extern int i2c_init_all(void);
>  #endif
> -#ifdef CONFIG_VIDEO_DEV
> -extern int videodev_init(void);
> -#endif
>  #ifdef CONFIG_FB
>  extern void fbmem_init(void);
>  #endif
> @@ -647,9 +644,6 @@
>  #endif
>  #if defined(CONFIG_ADB)
> adbdev_init();
> -#endif
> -#ifdef CONFIG_VIDEO_DEV
> -   videodev_init();
>  #endif
> return 0;
>  }
> diff -urN S5-pre3/drivers/media/video/videodev.c 
>S5-pre3-videodev/drivers/media/video/videodev.c
> --- S5-pre3/drivers/media/video/videodev.c  Sun Apr  1 23:56:57 2001
> +++ S5-pre3-videodev/drivers/media/video/videodev.c Fri May 18 16:48:34 2001
> @@ -546,7 +546,7 @@
>   * Initialise video for linux
>   */
> 
> -int __init videodev_init(void)
> +static int __init videodev_init(void)
>  {
> struct video_init *vfli = video_init_list;
> 
> @@ -573,13 +573,7 @@
> return 0;
>  }
> 
> -#ifdef MODULE
> -int init_module(void)
> -{
> -   return videodev_init();
> -}
> -
> -void cleanup_module(void)
> +static void __exit videodev_exit(void)
>  {
>  #if defined(CONFIG_PROC_FS) && defined(CONFIG_VIDEO_PROC_FS)
> videodev_proc_destroy ();
> @@ -588,7 +582,8 @@
> devfs_unregister_chrdev(VIDEO_MAJOR, "video_capture");
>  }
> 
> -#endif
> +module_init(videodev_init)
> +module_exit(videodev_exit)
> 
>  EXPORT_SYMBOL(video_register_device);
>  EXPORT_SYMBOL(video_unregister_device);
> 
> -

--- linux/include/linux/videodev.h.org  Fri May 18 15:56:32 2001
+++ linux/include/linux/videodev.h  Fri May 18 16:45:03 2001
@@ -33,7 +33,6 @@
devfs_handle_t devfs_handle;
 };
 
-extern int videodev_init(void);
 #define VIDEO_MAJOR81
 extern int video_register_device(struct video_device *, int type);
 
--- linux/drivers/media/video/videodev.c.orgFri May 18 16:18:45 2001
+++ linux/drivers/media/video/videodev.cFri May 18 16:37:44 2001
@@ -575,8 +575,10 @@
 
 static void __exit videodev_exit(void)
 {
+#ifdef MODULE  
 #if defined(CONFIG_PROC_FS) && defined(CONFIG_VIDEO_PROC_FS)
videodev_proc_destroy ();
+#endif
 #endif

devfs_unregister_chrdev(VIDEO_MAJOR, "video_capture");



[PATCH] videodev_init() -> initcall

2001-05-18 Thread Alexander Viro

Alan, drivers/media/videodev.c is your code. See if you are OK
with the patch below - it switches the thing to use of module_init()
and removes the call of videodev_init() from chr_dev_init(). I.e. the
only ordering change is that videodev_init() is postponed until immediately
before the media/video/* drivers.
Linus, if you are OK with that and Alan will ACK the thing - please,
consider applying it.
Al


diff -urN S5-pre3/drivers/char/mem.c S5-pre3-videodev/drivers/char/mem.c
--- S5-pre3/drivers/char/mem.c  Wed May 16 16:26:36 2001
+++ S5-pre3-videodev/drivers/char/mem.c Fri May 18 16:46:37 2001
@@ -29,9 +29,6 @@
 #ifdef CONFIG_I2C
 extern int i2c_init_all(void);
 #endif
-#ifdef CONFIG_VIDEO_DEV
-extern int videodev_init(void);
-#endif
 #ifdef CONFIG_FB
 extern void fbmem_init(void);
 #endif
@@ -647,9 +644,6 @@
 #endif
 #if defined(CONFIG_ADB)
adbdev_init();
-#endif
-#ifdef CONFIG_VIDEO_DEV
-   videodev_init();
 #endif
return 0;
 }
diff -urN S5-pre3/drivers/media/video/videodev.c 
S5-pre3-videodev/drivers/media/video/videodev.c
--- S5-pre3/drivers/media/video/videodev.c  Sun Apr  1 23:56:57 2001
+++ S5-pre3-videodev/drivers/media/video/videodev.c Fri May 18 16:48:34 2001
@@ -546,7 +546,7 @@
  * Initialise video for linux
  */
  
-int __init videodev_init(void)
+static int __init videodev_init(void)
 {
struct video_init *vfli = video_init_list;

@@ -573,13 +573,7 @@
return 0;
 }
 
-#ifdef MODULE  
-int init_module(void)
-{
-   return videodev_init();
-}
-
-void cleanup_module(void)
+static void __exit videodev_exit(void)
 {
 #if defined(CONFIG_PROC_FS) && defined(CONFIG_VIDEO_PROC_FS)
videodev_proc_destroy ();
@@ -588,7 +582,8 @@
devfs_unregister_chrdev(VIDEO_MAJOR, "video_capture");
 }
 
-#endif
+module_init(videodev_init)
+module_exit(videodev_exit)
 
 EXPORT_SYMBOL(video_register_device);
 EXPORT_SYMBOL(video_unregister_device);

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/



[PATCH] videodev_init() - initcall

2001-05-18 Thread Alexander Viro

Alan, drivers/media/videodev.c is your code. See if you are OK
with the patch below - it switches the thing to use of module_init()
and removes the call of videodev_init() from chr_dev_init(). I.e. the
only ordering change is that videodev_init() is postponed until immediately
before the media/video/* drivers.
Linus, if you are OK with that and Alan will ACK the thing - please,
consider applying it.
Al


diff -urN S5-pre3/drivers/char/mem.c S5-pre3-videodev/drivers/char/mem.c
--- S5-pre3/drivers/char/mem.c  Wed May 16 16:26:36 2001
+++ S5-pre3-videodev/drivers/char/mem.c Fri May 18 16:46:37 2001
@@ -29,9 +29,6 @@
 #ifdef CONFIG_I2C
 extern int i2c_init_all(void);
 #endif
-#ifdef CONFIG_VIDEO_DEV
-extern int videodev_init(void);
-#endif
 #ifdef CONFIG_FB
 extern void fbmem_init(void);
 #endif
@@ -647,9 +644,6 @@
 #endif
 #if defined(CONFIG_ADB)
adbdev_init();
-#endif
-#ifdef CONFIG_VIDEO_DEV
-   videodev_init();
 #endif
return 0;
 }
diff -urN S5-pre3/drivers/media/video/videodev.c 
S5-pre3-videodev/drivers/media/video/videodev.c
--- S5-pre3/drivers/media/video/videodev.c  Sun Apr  1 23:56:57 2001
+++ S5-pre3-videodev/drivers/media/video/videodev.c Fri May 18 16:48:34 2001
@@ -546,7 +546,7 @@
  * Initialise video for linux
  */
  
-int __init videodev_init(void)
+static int __init videodev_init(void)
 {
struct video_init *vfli = video_init_list;

@@ -573,13 +573,7 @@
return 0;
 }
 
-#ifdef MODULE  
-int init_module(void)
-{
-   return videodev_init();
-}
-
-void cleanup_module(void)
+static void __exit videodev_exit(void)
 {
 #if defined(CONFIG_PROC_FS)  defined(CONFIG_VIDEO_PROC_FS)
videodev_proc_destroy ();
@@ -588,7 +582,8 @@
devfs_unregister_chrdev(VIDEO_MAJOR, video_capture);
 }
 
-#endif
+module_init(videodev_init)
+module_exit(videodev_exit)
 
 EXPORT_SYMBOL(video_register_device);
 EXPORT_SYMBOL(video_unregister_device);

-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/



Re: [PATCH] videodev_init() - initcall

2001-05-18 Thread Randy.Dunlap

Al's patch gives me:

videodev.c:550: warning: static declaration for `videodev_init' follows
non-static
videodev.c: In function `videodev_exit':
videodev.c:579: warning: implicit declaration of function
`videodev_proc_destroy'

Patch to use after Al's patch is attached.

~Randy


Alexander Viro wrote:
 
 Alan, drivers/media/videodev.c is your code. See if you are OK
 with the patch below - it switches the thing to use of module_init()
 and removes the call of videodev_init() from chr_dev_init(). I.e. the
 only ordering change is that videodev_init() is postponed until immediately
 before the media/video/* drivers.
 Linus, if you are OK with that and Alan will ACK the thing - please,
 consider applying it.
 Al
 
 diff -urN S5-pre3/drivers/char/mem.c S5-pre3-videodev/drivers/char/mem.c
 --- S5-pre3/drivers/char/mem.c  Wed May 16 16:26:36 2001
 +++ S5-pre3-videodev/drivers/char/mem.c Fri May 18 16:46:37 2001
 @@ -29,9 +29,6 @@
  #ifdef CONFIG_I2C
  extern int i2c_init_all(void);
  #endif
 -#ifdef CONFIG_VIDEO_DEV
 -extern int videodev_init(void);
 -#endif
  #ifdef CONFIG_FB
  extern void fbmem_init(void);
  #endif
 @@ -647,9 +644,6 @@
  #endif
  #if defined(CONFIG_ADB)
 adbdev_init();
 -#endif
 -#ifdef CONFIG_VIDEO_DEV
 -   videodev_init();
  #endif
 return 0;
  }
 diff -urN S5-pre3/drivers/media/video/videodev.c 
S5-pre3-videodev/drivers/media/video/videodev.c
 --- S5-pre3/drivers/media/video/videodev.c  Sun Apr  1 23:56:57 2001
 +++ S5-pre3-videodev/drivers/media/video/videodev.c Fri May 18 16:48:34 2001
 @@ -546,7 +546,7 @@
   * Initialise video for linux
   */
 
 -int __init videodev_init(void)
 +static int __init videodev_init(void)
  {
 struct video_init *vfli = video_init_list;
 
 @@ -573,13 +573,7 @@
 return 0;
  }
 
 -#ifdef MODULE
 -int init_module(void)
 -{
 -   return videodev_init();
 -}
 -
 -void cleanup_module(void)
 +static void __exit videodev_exit(void)
  {
  #if defined(CONFIG_PROC_FS)  defined(CONFIG_VIDEO_PROC_FS)
 videodev_proc_destroy ();
 @@ -588,7 +582,8 @@
 devfs_unregister_chrdev(VIDEO_MAJOR, video_capture);
  }
 
 -#endif
 +module_init(videodev_init)
 +module_exit(videodev_exit)
 
  EXPORT_SYMBOL(video_register_device);
  EXPORT_SYMBOL(video_unregister_device);
 
 -

--- linux/include/linux/videodev.h.org  Fri May 18 15:56:32 2001
+++ linux/include/linux/videodev.h  Fri May 18 16:45:03 2001
@@ -33,7 +33,6 @@
devfs_handle_t devfs_handle;
 };
 
-extern int videodev_init(void);
 #define VIDEO_MAJOR81
 extern int video_register_device(struct video_device *, int type);
 
--- linux/drivers/media/video/videodev.c.orgFri May 18 16:18:45 2001
+++ linux/drivers/media/video/videodev.cFri May 18 16:37:44 2001
@@ -575,8 +575,10 @@
 
 static void __exit videodev_exit(void)
 {
+#ifdef MODULE  
 #if defined(CONFIG_PROC_FS)  defined(CONFIG_VIDEO_PROC_FS)
videodev_proc_destroy ();
+#endif
 #endif

devfs_unregister_chrdev(VIDEO_MAJOR, video_capture);