grub-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] Export functions to allow any module to perform primitive op


From: Vladimir 'φ-coder/phcoder' Serbinenko
Subject: Re: [PATCH] Export functions to allow any module to perform primitive operations on serial port devices
Date: Thu, 10 Nov 2011 09:42:11 +0100
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.23) Gecko/20111010 Iceowl/1.0b2 Icedove/3.1.15

On 07.11.2011 22:13, Shea Levy wrote:
> Hello,
>
> On Thu, Oct 27, 2011 at 2:31 PM, Shea Levy <address@hidden> wrote:
>> Hello all,
>>
>> These two commits make it straightforward for any module to interact
>> with serial devices. The essential change is making grub_serial_find
>> non-static and declaring it in serial.h, but I also added some inline
>> convenience functions so you can call grub_serial_port_whatever(port,
>> other-args) instead of port -> driver -> whatever(port, other-args).
>>
>> Cheers,
>> Shea Levy
>>
> I've updated the patch to include a ChangeLog and to fix problems with tabs.
ChangeLog entry wasn't following convention and indentation was all
wrong. I've fix it this time but I won't do it next one.
> Cheers,
> Shea Levy
>
>
> # Bazaar merge directive format 2 (Bazaar 0.90)
> # revision_id: address@hidden
> # target_branch: http://bzr.savannah.gnu.org/r/grub/trunk/grub/
> # testament_sha1: 4ed3bc7da4813bab2e805390b044ff612e9fc869
> # timestamp: 2011-11-07 16:09:33 -0500
> # base_revision_id: address@hidden
> #
> # Begin patch
> === modified file 'ChangeLog'
> --- ChangeLog 2011-10-27 01:04:27 +0000
> +++ ChangeLog 2011-11-07 21:02:52 +0000
> @@ -1,3 +1,12 @@
> +2011-11-07  Shea Levy  <address@hidden>
> +
> + Allow all modules to perform serial IO
> +
> + * grub-core/term-serial.c (grub_serial_find): Remove static qualifier
> + * include/grub/serial.h: Add grub_serial_find() prototype
> + Add inlined grub_serial_port_* functions corresponding to each of the
> + functions in struct grub_serial_driver
> +
>  2011-10-26  Vladimir Serbinenko  <address@hidden>
>
>   Support NTFS reparse points.
> === modified file 'grub-core/term/serial.c'
> --- grub-core/term/serial.c 2011-10-14 17:16:37 +0000
> +++ grub-core/term/serial.c 2011-10-27 17:14:47 +0000
> @@ -125,7 +125,7 @@
>
>
>
> -static struct grub_serial_port *
> +struct grub_serial_port *
>  grub_serial_find (char *name)
>  {
>    struct grub_serial_port *port;
> === modified file 'include/grub/serial.h'
> --- include/grub/serial.h 2011-02-19 12:18:05 +0000
> +++ include/grub/serial.h 2011-11-07 20:55:49 +0000
> @@ -96,6 +96,29 @@
>
>  void EXPORT_FUNC(grub_serial_unregister) (struct grub_serial_port *port);
>
> +  /* Convenience functions to perform primitive operations on a port.  */
> +static inline grub_err_t grub_serial_port_configure
> + (struct grub_serial_port *port, struct grub_serial_config *config)
> +{
> +  return port->driver->configure (port, config);
> +}
> +
> +static inline int grub_serial_port_fetch (struct grub_serial_port *port)
> +{
> +  return port->driver->fetch (port);
> +}
> +
> +static inline void grub_serial_port_put (struct grub_serial_port *port,
> + const int c)
> +{
> +  port->driver->put (port, c);
> +}
> +
> +static inline void grub_serial_port_fini (struct grub_serial_port *port)
> +{
> +  port->driver->fini (port);
> +}
> +
>    /* Set default settings.  */
>  static inline grub_err_t
>  grub_serial_config_defaults (struct grub_serial_port *port)
> @@ -117,6 +140,7 @@
>
>  void grub_ns8250_init (void);
>  char *grub_serial_ns8250_add_port (grub_port_t port);
> +struct grub_serial_port *grub_serial_find (char *name);
>  extern struct grub_serial_driver grub_ns8250_driver;
>  void EXPORT_FUNC(grub_serial_unregister_driver) (struct
> grub_serial_driver *driver);
>
> # Begin bundle
> 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
>
> _______________________________________________
> Grub-devel mailing list
> address@hidden
> https://lists.gnu.org/mailman/listinfo/grub-devel
>


-- 
Regards
Vladimir 'φ-coder/phcoder' Serbinenko


Attachment: signature.asc
Description: OpenPGP digital signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]