Re: help: BeagleBoard xM RevC ethernet port

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

 



On Wed, Feb 29, 2012 at 11:36 PM, Brian Austin <brian.austin@xxxxxxxxxx> wrote:
> Applying this patch gives this on my beagleboard xM revC
>
> Linux debian 3.3.0-rc4
>
> Unable to set up timer: unexpected error
> Failed to bring up eth0.

Works for me on 3.3-rc4 + sent patch on beagle xm revc

here this the log [1]

Ensure you have selected following for ehci
and usb Ethernet adapter support.

CONFIG_USB_EHCI_HCD
CONFIG_USB_EHCI_HCD_OMAP
CONFIG_USB_NET_SMSC95XX

(attaching my .config for reference)

You can also try my binaries available here [2].

--
Thanks,
Govindraj.R

[1]: http://pastebin.pandaboard.org/index.php/view/62160291

[2]: http://www.filedropper.com/beaglebins

>
>
>
>
>
> On Tue, 28 Feb 2012, Robert Nelson wrote:
>
>> On Tue, Feb 28, 2012 at 8:04 AM, Govindraj <govindraj.ti@xxxxxxxxx> wrote:
>>>
>>> Hi Peter,
>>>
>>> On Mon, Feb 27, 2012 at 8:02 PM, Peter Ujfalusi <peter.ujfalusi@xxxxxx>
>>> wrote:
>>>>
>>>> Hi,
>>>>
>>>> On 02/23/2012 12:23 PM, Richard Watts wrote:
>>>>>
>>>>> On 22/02/12 22:00, Kevin Hilman wrote:
>>>>>>
>>>>>> The first thing I try when I see these regulator failures is to add
>>>>>> CONFIG_REGULATOR_DUMMY=y to the .config to see if that helps.  If so,
>>>>>> then the board file needs some help configuring the right regulators.
>>>>
>>>>
>>>> Thanks for the hint Kevin
>>>>
>>>>>  Apologies for the malformed patch, but I don't have time to clean it
>>>>> up
>>>>> this morning (or test it in its cleaned state); however, the following
>>>>> fixes the problem for me.
>>>>>
>>>>>  It used to be masked because u-boot turns the regulator on to activate
>>>>> ethernet on Beagle xM and no-one ever turns it off again, but some
>>>>> versions
>>>>> of u-boot don't identify xM rev C correctly, so never turn it on ..
>>>>>
>>>>>  Anyway, it's neater for the kernel to know what it's doing. And
>>>>> removes
>>>>> a whole two lines of kernel startup output :-)
>>>>
>>>>
>>>> I have did similar thing as well, but it did not helped. The two line
>>>> complaining about the regulator was gone, but still neither the ethernet
>>>> nor the USB ports were working.
>>>> The LED between the USB ports are lit, shich indicates that the LAN9514
>>>> should have the needed power.
>>>> With the REGULATOR_DUMMY enabled I have this in the kernel log:
>>>>
>>>> beagle-gentoo ~ # dmesg | grep ehci-omap
>>>> [    1.443420] _regulator_get: ehci-omap.0 supply hsusb0 not found,
>>>> using dummy regulator
>>>> [    1.452026] _regulator_get: ehci-omap.0 supply hsusb1 not found,
>>>> using dummy regulator
>>>> [    2.465637] ehci-omap ehci-omap.0: phy reset operation timed out
>>>> [    3.473449] ehci-omap ehci-omap.0: phy reset operation timed out
>>>> [    3.479766] ehci-omap ehci-omap.0: reset hcs_params 0x1313 dbg=0 cc=1
>>>> pcc=3 ordered ports=3
>>>> [    3.488586] ehci-omap ehci-omap.0: reset hcc_params 0016 thresh 1
>>>> uframes 256/512/1024 park
>>>> [    3.497436] ehci-omap ehci-omap.0: reset command 0080b02  park=3
>>>> ithresh=8 period=1024 Reset HALT
>>>> [    3.506774] ehci-omap ehci-omap.0: OMAP-EHCI Host Controller
>>>> [    3.524871] ehci-omap ehci-omap.0: new USB bus registered, assigned
>>>> bus number 1
>>>> [    3.532806] ehci-omap ehci-omap.0: park 0
>>>> [    3.537139] ehci-omap ehci-omap.0: irq 77, io mem 0x48064800
>>>> [    3.543121] ehci-omap ehci-omap.0: init command 0010005 (park)=0
>>>> ithresh=1 period=512 RUN
>>>> [    3.567260] ehci-omap ehci-omap.0: USB 2.0 started, EHCI 1.00
>>>> [    3.609771] usb usb1: SerialNumber: ehci-omap.0
>>>> [    3.690460] ehci-omap ehci-omap.0: ...powerup ports...
>>>>
>>>> I have a faint recollection that the ethernet port along with the USB
>>>> ports were working in some ancient kernel (2.6.3x) - I think it was the
>>>> distro which come with board...
>>>>
>>>> It might be that I have everything built into the kernel?
>>>> Will debug this further when time allows...
>>>
>>>
>>> The issue seems to a mux conflict issue, uart2_rx mux is been taken
>>> by uart init and gpio_147 needed for usb phy init is not in mux mode4
>>> as set by bootloader.
>>>
>>> On beagle I see no other uarts being used other than uart3 as
>>> console_uart.
>>> So I think it should be okay to init only uart3 from beagle board data.
>>> Here is the patch [1] to do the same. (Tested on Beagle Xm Rev.C)
>>>
>>> (Any other approach is welcome)
>>
>>
>> Thanks,  this patch fixed it on my xM B on v3.3-rc5
>>
>> Tested-by: Robert Nelson <robertcnelson@xxxxxxxxx>
>>
>> Regards,
>>>
>>>
>>> [1]:
>>>
>>>
>>> From f1b43f983a2926c637e6bc6ab5d1e5044339ffd3 Mon Sep 17 00:00:00 2001
>>> From: "Govindraj.R" <govindraj.raja@xxxxxx>
>>> Date: Tue, 28 Feb 2012 19:16:33 +0530
>>> Subject: [PATCH] omap3_beagle: Init only uart3 used for console
>>>
>>> On beagle some of uart mux lines are used for other
>>> purpose so init only uart3.
>>>
>>> Uart2 rx line clashes with gpio_147 used for usb ehci
>>> phy reset.
>>>
>>> Signed-off-by: Govindraj.R <govindraj.raja@xxxxxx>
>>> ---
>>>  arch/arm/mach-omap2/board-omap3beagle.c |   50
>>> ++++++++++++++++++++++++++++++-
>>>  1 files changed, 49 insertions(+), 1 deletions(-)
>>>
>>> diff --git a/arch/arm/mach-omap2/board-omap3beagle.c
>>> b/arch/arm/mach-omap2/board-omap3beagle.c
>>> index 817be06..a2e0052 100644
>>> --- a/arch/arm/mach-omap2/board-omap3beagle.c
>>> +++ b/arch/arm/mach-omap2/board-omap3beagle.c
>>> @@ -493,6 +493,54 @@ static const struct usbhs_omap_board_data
>>> usbhs_bdata __initconst = {
>>>  static struct omap_board_mux board_mux[] __initdata = {
>>>        { .reg_offset = OMAP_MUX_TERMINATOR },
>>>  };
>>> +
>>> +static struct omap_device_pad uart3_pads[] __initdata = {
>>> +       {
>>> +               .name   = "uart3_cts_rctx.uart3_cts_rctx",
>>> +               .enable = OMAP_PIN_INPUT_PULLUP | OMAP_MUX_MODE0,
>>> +       },
>>> +       {
>>> +               .name   = "uart3_rts_sd.uart3_rts_sd",
>>> +               .enable = OMAP_PIN_OUTPUT | OMAP_MUX_MODE0,
>>> +       },
>>> +       {
>>> +               .name   = "uart3_tx_irtx.uart3_tx_irtx",
>>> +               .enable = OMAP_PIN_OUTPUT | OMAP_MUX_MODE0,
>>> +       },
>>> +       {
>>> +               .name   = "uart3_rx_irrx.uart3_rx_irrx",
>>> +               .flags  = OMAP_DEVICE_PAD_REMUX | OMAP_DEVICE_PAD_WAKEUP,
>>> +               .enable = OMAP_PIN_INPUT | OMAP_MUX_MODE0,
>>> +               .idle   = OMAP_PIN_INPUT | OMAP_MUX_MODE0,
>>> +       },
>>> +};
>>> +
>>> +static inline void board_serial_init(void)
>>> +{
>>> +       struct omap_board_data uart3_bdata;
>>> +       uart3_bdata.flags     = 0;
>>> +       uart3_bdata.pads      = uart3_pads;
>>> +       uart3_bdata.pads_cnt  = ARRAY_SIZE(uart3_pads);
>>> +       uart3_bdata.id        = 2;
>>> +
>>> +       /*
>>> +        * Init only uart3 used as console
>>> +        * don't init other uarts as uart mux lines
>>> +        * might be used for other purpose on beagle board
>>> +        * ex: uart2_rx used by gpio_147 for usb_ehci phy reset.
>>> +        */
>>> +       omap_serial_init_port(&uart3_bdata, NULL);
>>> +}
>>> +#else
>>> +
>>> +/*
>>> + * If mux is disabled from kernel probably we
>>> + * are relying on boot-loaders so we init all uarts
>>> + */
>>> +static inline void board_serial_init(void)
>>> +{
>>> +       omap_serial_init();
>>> +}
>>>  #endif
>>>
>>>  static void __init beagle_opp_init(void)
>>> @@ -549,7 +597,7 @@ static void __init omap3_beagle_init(void)
>>>        platform_add_devices(omap3_beagle_devices,
>>>                        ARRAY_SIZE(omap3_beagle_devices));
>>>        omap_display_init(&beagle_dss_data);
>>> -       omap_serial_init();
>>> +       board_serial_init();
>>>        omap_sdrc_init(mt46h32m32lf6_sdrc_params,
>>>                                  mt46h32m32lf6_sdrc_params);
>>>
>>> --
>>> 1.7.5.4
>>
>>
>>
>>
>> --
>> Robert Nelson
>> http://www.rcn-ee.com/
>> --
>> 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
>>
>

Attachment: beagle_eth.config
Description: Binary data


[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