[U-Boot] [PATCH V2] tegra: Compulab TrimSlice board support

Stephen Warren swarren at wwwdotorg.org
Wed May 30 18:22:39 CEST 2012


On 05/30/2012 09:35 AM, Konstantin Sinyuk wrote:
> Hi Stephen,
> 
> Thanks for doing this!
> We highly appreciate your help.
> We (Igor and me) have several comments below...
> 
> 
> On 05/17/2012 07:03 PM, Stephen Warren wrote:

>> diff --git a/board/compulab/dts/tegra2-trimslice.dts

>> +    usb at c5004000 {
>> +        status = "disabled";
>> +    };
>> +
>> +    usb at c5004000 {
>> +        status = "disabled";
>> +    };
> 
> This looks like a typo?

Yes indeed. I'll send a patch to fix that up.

>> diff --git a/board/compulab/trimslice/Makefile

>> +#  You should have received a copy of the GNU General Public License
>> +#  along with this program; if not, write to the Free Software
>> +#  Foundation, Inc., 59 Temple Place, Suite 330, Boston,
>> +#  MA 02111-1307 USA
> 
> Can we, please not have the postal address here and all other files?

Hmm. Well, all the existing code I'm basing these patches on has that
license header. I don't feel strongly enough to change it now this patch
is checked in. Feel free to submit a patch to clean this up, but if you
do, I'd prefer if you made everything Tegra-related consistent.

>> +include $(TOPDIR)/config.mk
>> +
>> +ifneq ($(OBJTREE),$(SRCTREE))
>> +$(shell mkdir -p $(obj)../../nvidia/common)
>> +endif
>> +
>> +LIB    = $(obj)lib$(BOARD).o
>> +
>> +COBJS    := $(BOARD).o
>> +COBJS    += ../../nvidia/common/board.o
>> +
> 
> I feel that the common board.c file should be in the common SoC location,
> like arch/arm/cpu/armv7/tegra2/ ?
> In fact there is already a board.c file there, so how about we move the
> common stuff there?

Yes, the Tegra board support is evolving and may not be optimally
structured right now. The logic above is what's needed given the current
state. Perhaps this will move to a better location in the future. I
don't plan on making that change right now though; I don't want to
conflict with other changes I know people are making such as moving a
bunch of code around to support a separate SPL.

>> diff --git a/include/configs/trimslice.h b/include/configs/trimslice.h

>> +/* High-level configuration options */
>> +#define V_PROMPT        "Tegra2 (TrimSlice) # "
> 
> Can this, please be "TrimSlice #"

That wouldn't be consistent with any of the other Tegra boards though.
Is there a specific need for the prompt to be different?

>> +#define CONFIG_TEGRA2_BOARD_STRING    "NVIDIA Trimslice"
> 
> Can this, please be "CompuLab TrimSlice"

Sure, that's just something I forgot to update when copying from another
board's config file.

>> +/* Board-specific serial config */
>> +#define CONFIG_SERIAL_MULTI
>> +#define CONFIG_TEGRA2_ENABLE_UARTA
>> +#define CONFIG_TEGRA2_UARTA_GPU
>> +#define CONFIG_SYS_NS16550_COM1        NV_PA_APB_UARTA_BASE
>> +
>> +#define CONFIG_MACH_TYPE        MACH_TYPE_TRIMSLICE
>> +#define CONFIG_SYS_BOARD_ODMDATA    0x300c0011 /* lp?, 1GB, UARTA */
> 
> In our downstream U-Boot, ODMDATA is 0x300d8011 /* lp1, 1GB, UARTA*/
> Are you certain that your value is the correct one?

Yes, 300d8011 is wrong, and you're just getting lucky that it's working
for you since nothing actually uses the ODMDATA fields that are wrong.

The "d8" in the ODMDATA means to use UART D as the debug UART. However,
TrimSlice uses UART A, and hence needs "c0" here.

Without this change, the mainline kernel config option
CONFIG_TEGRA_DEBUG_UART_AUTO_ODMDATA (which affects where
DEBUG_LL/earlyprintk output is routed) will not work correctly.

>> +/* USB networking support */
>> +#define CONFIG_USB_HOST_ETHER
>> +#define CONFIG_USB_ETHER_SMSC95XX
>> +#define CONFIG_USB_ETHER_ASIX
> 
> TrimSlice does not have any on-board Ethernet over USB devices.
> Do you connect them through the USB port? Or is it just a copy/paste
> from another board?

A later change has removed the SMSC95XX support since as you say, that
chip is not present on the board. However, I actively use an ASIX USB
Ethernet dongle with TrimSlice, so do need that config option enabled.
Perhaps it can be removed if/when Tegra PCIe support is added to
mainline U-Boot, so the built-in Ethernet adapter can be used instead.


More information about the U-Boot mailing list