Re: [Patch v2 4/4] tty: serial: msm: Remove direct access to GSBI

2014-05-29 Thread Kumar Gala

On May 29, 2014, at 10:14 AM, Kumar Gala  wrote:

> 
> On Apr 24, 2014, at 11:31 AM, Andy Gross  wrote:
> 
>> This patch removes direct access of the GSBI registers.  GSBI configuration
>> should be done through the GSBI driver directly.
>> 
>> Signed-off-by: Andy Gross 
>> ---
>> drivers/tty/serial/msm_serial.c |   48 
>> ++-
>> drivers/tty/serial/msm_serial.h |5 
>> 2 files changed, 2 insertions(+), 51 deletions(-)
> 
> Greg,
> 
> Any update on pulling this is for next?
> 
> - k

I’ll send it via arm-soc as the related patches are going via that path.

- k

-- 
Employee of Qualcomm Innovation Center, Inc.
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, hosted by 
The Linux Foundation

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


Re: [Patch v2 4/4] tty: serial: msm: Remove direct access to GSBI

2014-05-29 Thread Greg Kroah-Hartman
On Thu, May 29, 2014 at 10:14:35AM -0500, Kumar Gala wrote:
> 
> On Apr 24, 2014, at 11:31 AM, Andy Gross  wrote:
> 
> > This patch removes direct access of the GSBI registers.  GSBI configuration
> > should be done through the GSBI driver directly.
> > 
> > Signed-off-by: Andy Gross 
> > ---
> > drivers/tty/serial/msm_serial.c |   48 
> > ++-
> > drivers/tty/serial/msm_serial.h |5 
> > 2 files changed, 2 insertions(+), 51 deletions(-)
> 
> Greg,
> 
> Any update on pulling this is for next?

I thought this was going through someone else's tree, sorry.  And, there
seemd to be a second set of patches for this, which I don't have
anywhere :(

If you want me to take all of these, or just this one, Andy, can you
please resend?

thanks,

greg k-h
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [Patch v2 4/4] tty: serial: msm: Remove direct access to GSBI

2014-05-29 Thread Kumar Gala

On Apr 24, 2014, at 11:31 AM, Andy Gross  wrote:

> This patch removes direct access of the GSBI registers.  GSBI configuration
> should be done through the GSBI driver directly.
> 
> Signed-off-by: Andy Gross 
> ---
> drivers/tty/serial/msm_serial.c |   48 ++-
> drivers/tty/serial/msm_serial.h |5 
> 2 files changed, 2 insertions(+), 51 deletions(-)

Greg,

Any update on pulling this is for next?

- k

> 
> diff --git a/drivers/tty/serial/msm_serial.c b/drivers/tty/serial/msm_serial.c
> index b5d779c..8901114 100644
> --- a/drivers/tty/serial/msm_serial.c
> +++ b/drivers/tty/serial/msm_serial.c
> @@ -45,7 +45,6 @@ struct msm_port {
>   struct clk  *clk;
>   struct clk  *pclk;
>   unsigned intimr;
> - void __iomem*gsbi_base;
>   int is_uartdm;
>   unsigned intold_snap_state;
> };
> @@ -586,9 +585,7 @@ static const char *msm_type(struct uart_port *port)
> static void msm_release_port(struct uart_port *port)
> {
>   struct platform_device *pdev = to_platform_device(port->dev);
> - struct msm_port *msm_port = UART_TO_MSM(port);
>   struct resource *uart_resource;
> - struct resource *gsbi_resource;
>   resource_size_t size;
> 
>   uart_resource = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> @@ -599,28 +596,12 @@ static void msm_release_port(struct uart_port *port)
>   release_mem_region(port->mapbase, size);
>   iounmap(port->membase);
>   port->membase = NULL;
> -
> - if (msm_port->gsbi_base) {
> - writel_relaxed(GSBI_PROTOCOL_IDLE,
> - msm_port->gsbi_base + GSBI_CONTROL);
> -
> - gsbi_resource = platform_get_resource(pdev, IORESOURCE_MEM, 1);
> - if (unlikely(!gsbi_resource))
> - return;
> -
> - size = resource_size(gsbi_resource);
> - release_mem_region(gsbi_resource->start, size);
> - iounmap(msm_port->gsbi_base);
> - msm_port->gsbi_base = NULL;
> - }
> }
> 
> static int msm_request_port(struct uart_port *port)
> {
> - struct msm_port *msm_port = UART_TO_MSM(port);
>   struct platform_device *pdev = to_platform_device(port->dev);
>   struct resource *uart_resource;
> - struct resource *gsbi_resource;
>   resource_size_t size;
>   int ret;
> 
> @@ -639,30 +620,8 @@ static int msm_request_port(struct uart_port *port)
>   goto fail_release_port;
>   }
> 
> - gsbi_resource = platform_get_resource(pdev, IORESOURCE_MEM, 1);
> - /* Is this a GSBI-based port? */
> - if (gsbi_resource) {
> - size = resource_size(gsbi_resource);
> -
> - if (!request_mem_region(gsbi_resource->start, size,
> -  "msm_serial")) {
> - ret = -EBUSY;
> - goto fail_release_port_membase;
> - }
> -
> - msm_port->gsbi_base = ioremap(gsbi_resource->start, size);
> - if (!msm_port->gsbi_base) {
> - ret = -EBUSY;
> - goto fail_release_gsbi;
> - }
> - }
> -
>   return 0;
> 
> -fail_release_gsbi:
> - release_mem_region(gsbi_resource->start, size);
> -fail_release_port_membase:
> - iounmap(port->membase);
> fail_release_port:
>   release_mem_region(port->mapbase, size);
>   return ret;
> @@ -670,7 +629,6 @@ fail_release_port:
> 
> static void msm_config_port(struct uart_port *port, int flags)
> {
> - struct msm_port *msm_port = UART_TO_MSM(port);
>   int ret;
>   if (flags & UART_CONFIG_TYPE) {
>   port->type = PORT_MSM;
> @@ -678,9 +636,6 @@ static void msm_config_port(struct uart_port *port, int 
> flags)
>   if (ret)
>   return;
>   }
> - if (msm_port->gsbi_base)
> - writel_relaxed(GSBI_PROTOCOL_UART,
> - msm_port->gsbi_base + GSBI_CONTROL);
> }
> 
> static int msm_verify_port(struct uart_port *port, struct serial_struct *ser)
> @@ -976,6 +931,7 @@ static struct of_device_id msm_match_table[] = {
> 
> static struct platform_driver msm_platform_driver = {
>   .remove = msm_serial_remove,
> + .probe = msm_serial_probe,
>   .driver = {
>   .name = "msm_serial",
>   .owner = THIS_MODULE,
> @@ -991,7 +947,7 @@ static int __init msm_serial_init(void)
>   if (unlikely(ret))
>   return ret;
> 
> - ret = platform_driver_probe(&msm_platform_driver, msm_serial_probe);
> + ret = platform_driver_register(&msm_platform_driver);
>   if (unlikely(ret))
>   uart_unregister_driver(&msm_uart_driver);
> 
> diff --git a/drivers/tty/serial/msm_serial.h b/drivers/tty/serial/msm_serial.h
> index 469fda5..a77cc76 100644
> --- a/drivers/tty/serial/msm_serial.h
> +++ b/drivers/tty/serial/msm_serial.h
> @@