Re: [RESEND PATCH] ARM :OMAP2+: UART: Remove some of uart default pads

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

 



* Russ Dill <russ.dill@xxxxxxxxx> [120409 09:59]:
> > From: "Govindraj.R" <govindraj.raja@xxxxxx>
> > Date: Mon, 9 Apr 2012 15:16:52 +0530
> > Subject: [PATCH] ARM: OMAP2+: UART: Fix usage of default uart pads.

> > -static int __init
> > +int __init
> >  omap_mux_get_by_name(const char *muxname,
> >                        struct omap_mux_partition **found_partition,
> >                        struct omap_mux **found_mux)

This can now be one one line:

int __init omap_mux_get_by_name(const char *muxname,
...


> > +               u16 tx_mode, rx_mode;
> > +
> > +               tx_mode = omap_mux_read(tx_partition, tx_mux->reg_offset);
> > +               rx_mode = omap_mux_read(rx_partition, rx_mux->reg_offset);
> > +
> > +               if (!(rx_mode & 0x07) && !(tx_mode & 0x07)) {
> > +                       default_omap_uart_pads[0].name = rx_pad_name;
> > +                       default_omap_uart_pads[0].flags  =
> > +                               OMAP_DEVICE_PAD_REMUX | OMAP_DEVICE_PAD_WAKEUP;
> > +                       default_omap_uart_pads[0].enable = OMAP_PIN_INPUT |
> > +                                                               OMAP_MUX_MODE0;
> > +                       default_omap_uart_pads[0].idle = OMAP_PIN_INPUT |
> > +                                                               OMAP_MUX_MODE0;
> > +
> > +                       default_omap_uart_pads[1].name = tx_pad_name;
> > +                       default_omap_uart_pads[1].enable = OMAP_PIN_OUTPUT |
> > +                                                               OMAP_MUX_MODE0;
> > +                       bdata->pads = default_omap_uart_pads;
> 
> You are assigning this variable to a structure on the stack.
> 
> > +                       bdata->pads_cnt = ARRAY_SIZE(default_omap_uart_pads);

Also, maybe make that into a separate function with comments added that
we check that the default pins are muxed to uart rx and tx mode to start
with. Otherwise it's a bit hard to figure out what's going on here.

Then please split it into two patches: First one removes all the unsafe
muxing, then the second one enables wake-up events for the ports already
in uart rx/tx mode.

Regards,

Tony
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Arm (vger)]     [ARM Kernel]     [ARM MSM]     [Linux Tegra]     [Linux WPAN Networking]     [Linux Wireless Networking]     [Maemo Users]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux