[U-Boot] [PATCH V2 09/14] ARM: AM43xx: mux: Update mux data

Vaibhav Bedia vaibhav.bedia at gmail.com
Wed Nov 27 00:58:14 CET 2013


On Sun, Nov 24, 2013 at 11:59 PM, Lokesh Vutla <lokeshvutla at ti.com> wrote:
> On Friday 22 November 2013 02:04 AM, Vaibhav Bedia wrote:
>> On Thu, Nov 21, 2013 at 1:18 AM, Lokesh Vutla <lokeshvutla at ti.com> wrote:
>>> Updating the mux data for UART, adding data for i2c0 and mmc.
>>> And also updating pad_signals structure.
>>>
>>> Signed-off-by: Lokesh Vutla <lokeshvutla at ti.com>
>>> ---
>>>  arch/arm/include/asm/arch-am33xx/mux_am43xx.h |   45 +++++++++++++++++++++++++
>>>  board/ti/am43xx/mux.c                         |   22 ++++++++++--
>>>  2 files changed, 65 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/arch/arm/include/asm/arch-am33xx/mux_am43xx.h b/arch/arm/include/asm/arch-am33xx/mux_am43xx.h
>>> index 0206912..98fc2b5 100644
>>> --- a/arch/arm/include/asm/arch-am33xx/mux_am43xx.h
>>> +++ b/arch/arm/include/asm/arch-am33xx/mux_am43xx.h
>>> @@ -137,6 +137,51 @@ struct pad_signals {
>>>         int mcasp0_fsr;
>>>         int mcasp0_axr1;
>>>         int mcasp0_ahclkx;
>>> +       int xdma_event_intr0;
>>> +       int xdma_event_intr1;
>>> +       int nresetin_out;
>>> +       int porz;
>>> +       int nnmi;
>>> +       int osc0_in;
>>> +       int osc0_out;
>>> +       int rsvd1;
>>> +       int tms;
>>> +       int tdi;
>>> +       int tdo;
>>> +       int tck;
>>> +       int ntrst;
>>> +       int emu0;
>>> +       int emu1;
>>> +       int osc1_in;
>>> +       int osc1_out;
>>> +       int pmic_power_en;
>>> +       int rtc_porz;
>>> +       int rsvd2;
>>> +       int ext_wakeup;
>>> +       int enz_kaldo_1p8v;
>>> +       int usb0_dm;
>>> +       int usb0_dp;
>>> +       int usb0_ce;
>>> +       int usb0_id;
>>> +       int usb0_vbus;
>>> +       int usb0_drvvbus;
>>> +       int usb1_dm;
>>> +       int usb1_dp;
>>> +       int usb1_ce;
>>> +       int usb1_id;
>>> +       int usb1_vbus;
>>> +       int usb1_drvvbus;
>>> +       int ddr_resetn;
>>> +       int ddr_csn0;
>>> +       int ddr_cke;
>>> +       int ddr_ck;
>>> +       int ddr_nck;
>>> +       int ddr_casn;
>>> +       int ddr_rasn;
>>> +       int ddr_wen;
>>> +       int ddr_ba0;
>>> +       int ddr_ba1;
>>> +       int ddr_ba2;
>>>  };
>>
>> IIRC not all the pads over here have any IO control. Some are analog pins
>> and some like JTAG, PORz really shouldn't be meddled with if the h/w does
>> expose some configuration. Please revisit this change.
> Nothing to be revisited here. I have to use ddr_ba2 for VTT, so I have
> populated the structure till this point.
> I don't see any error to update a structure so that I can use the desired pins.
> I am not using the pins what ever you have mentioned. I purposefully populated those
> because I don't want make them as reserved.

I think i gave a good enough technical reason why that's not a good thing to do.
If you really don't see the shortcomings of that i have nothing more
to add here.

>>
>>>
>>>  #endif /* _MUX_AM43XX_H_ */
>>> diff --git a/board/ti/am43xx/mux.c b/board/ti/am43xx/mux.c
>>> index 700e9a7..46bad01 100644
>>> --- a/board/ti/am43xx/mux.c
>>> +++ b/board/ti/am43xx/mux.c
>>> @@ -12,8 +12,24 @@
>>>  #include "board.h"
>>>
>>>  static struct module_pin_mux uart0_pin_mux[] = {
>>> -       {OFFSET(uart0_rxd), (MODE(0) | RXACTIVE)},      /* UART0_RXD */
>>> -       {OFFSET(uart0_txd), (MODE(0))},                 /* UART0_TXD */
>>> +       {OFFSET(uart0_rxd), (MODE(0) | PULLUP_EN | RXACTIVE | SLEWCTRL)},
>>> +       {OFFSET(uart0_txd), (MODE(0) | PULLUDDIS | PULLUP_EN | SLEWCTRL)},
>>> +       {-1},
>>
>> SLEWCTRL is typically not changed. You might want to double check this portion
>> with the h/w folks.
> I have checked with h/w folks, they said nothing wrong here.
>
Fine with me.

Regards,
Vaibhav


More information about the U-Boot mailing list