public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: Nikita Kiryanov <nikita@compulab.co.il>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH 04/11] MX6: add common SPL configuration
Date: Thu, 10 Apr 2014 17:37:56 +0300	[thread overview]
Message-ID: <5346ACC4.4080702@compulab.co.il> (raw)
In-Reply-To: <CAJ+vNU2vOzdu40Vo_CMQ_O2Q759_U1jYK66N6JFhMx+vUNMoFg@mail.gmail.com>

On 04/09/2014 06:32 PM, Tim Harvey wrote:
> On Wed, Apr 9, 2014 at 7:55 AM, Nikita Kiryanov <nikita@compulab.co.il> wrote:
>> Hi Tim,
>>
>> On 04/03/2014 09:01 AM, Tim Harvey wrote:> Add a common header which can
>> hopefully be shared among imx6 SPL users
>>
>>>
>>> Signed-off-by: Tim Harvey <tharvey@gateworks.com>
>>> ---
>>>    include/configs/imx6_spl.h | 64
>>
>> ++++++++++++++++++++++++++++++++++++++++++++++
>>>
>>>    1 file changed, 64 insertions(+)
>>>    create mode 100644 include/configs/imx6_spl.h
>>>
>>> diff --git a/include/configs/imx6_spl.h b/include/configs/imx6_spl.h
>>> new file mode 100644
>>> index 0000000..f9bdf55
>>> --- /dev/null
>>> +++ b/include/configs/imx6_spl.h
>>> @@ -0,0 +1,64 @@
>>> +/*
>>> + * Author: Tim Harvey <tharvey@gateworks.com>
>>> + *
>>> + * SPDX-License-Identifier:     GPL-2.0+
>>> + */
>>> +#ifndef __IMX6_SPL_CONFIG_H
>>> +#define __IMX6_SPL_CONFIG_H
>>> +
>>> +#ifdef CONFIG_SPL
>>> +
>>> +#define CONFIG_SPL_FRAMEWORK
>>> +
>>> +/*
>>> + * IMX6 OCRAM (IRAM) is from 0x00907000 to 0x0093FFFF
>>
>>
>> That's not true for all IMX6 SoCs. On i.MX6 Solo and DualLite it's
>> 0x00907000 to 0x0091FFFF.
>>
>>
>>> + *  - we start at 0x00908000 so as to leave some room for IVT/DCD
>>> + *  - recommended stack (from IMX6DQRM Figure 8-3) is at 0x0093FFB8
>>> + *  - this leaves about 224K for SPL image and stack
>>> + */
>>> +#define CONFIG_SPL_LDSCRIPT
>>> "arch/arm/cpu/armv7/mx6/u-boot-spl.lds"
>>> +#define CONFIG_SPL_TEXT_BASE           0x00908000
>>> +#define CONFIG_SPL_MAX_SIZE            (128 * 1024)
>>
>>
>> This should be a smaller value if we want this config to apply for
>> i.MX6 Solo and DualLite, which have a 68KB OCRAM free area.
>
> Hi Nikita,
>
> Agreed - I just discovered this yesterday. I had tested on an
> IMX6DL/SOLO via boot from OTG, but I had not tested those combinations
> when booting from flash and indeed they failed.
>
> The 68KB OCRAM free area also assumes that you start at 0x00907000 and
> as we start at 0x00908000 to leave room for the IVT+DCD this becomes
> 65KB
>
>>
>>
>>> +#define CONFIG_SPL_START_S_PATH                "arch/arm/cpu/armv7"
>>> +#define CONFIG_SPL_STACK               0x0093FFB8
>>
>>
>> For i.MX6 Solo and DualLite this address should be lower (recommended
>> address is 0x0091FFB8).
>
> Agreed
>
>>
>>
>>> +#define CONFIG_SPL_LIBCOMMON_SUPPORT
>>> +#define CONFIG_SPL_LIBGENERIC_SUPPORT
>>> +#define CONFIG_SPL_SERIAL_SUPPORT
>>> +#define CONFIG_SPL_I2C_SUPPORT
>>> +#define CONFIG_SPL_GPIO_SUPPORT
>>> +
>>> +/* NAND support */
>>> +#if defined(CONFIG_SPL_NAND_SUPPORT)
>>> +#define CONFIG_SPL_NAND_MXS
>>> +#define CONFIG_SPL_NAND_BASE
>>> +#define CONFIG_SPL_DMA_SUPPORT
>>> +#endif
>>
>>
>>
>> --
>> Regards,
>> Nikita.
>
> This presents another challenge for SPL NAND as currently my SPL is
> ~70K. There is a lot of unnecessary code in the mtd nand layer that
> I'm including because that layer includes support for both read and
> write (I don't need write for SPL) as well as various NAND types (and
> I only need BCH).
>
> I'm not sure yet what the best approach is to resolve that. I can either:
>   a) add a lot of ifdef's around functions in
> drivers/mtd/nand/{nand_base.c,nand_bbt.c} to remove NAND write and non
> BCH support for CONFIG_SPL_BUILD
>   b) re-write the necessary functionality (code duplication) into
> drivers/mtd/nand/mxs_nand_spl.c
>
> Thanks for the review!

You're welcome. Let's see if the NAND maintainer can offer some
suggestions.

Cc-ing Scott Wood

>
> Tim
>


-- 
Regards,
Nikita.

  reply	other threads:[~2014-04-10 14:37 UTC|newest]

Thread overview: 60+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-04-03  6:01 [U-Boot] [PATCH 00/11] MX6: SPL NAND support Tim Harvey
2014-04-03  6:01 ` [U-Boot] [PATCH 01/11] SPL: NAND: remove CONFIG_SYS_NAND_PAGE_SIZE Tim Harvey
2014-04-04  2:33   ` Masahiro Yamada
2014-04-09 14:55   ` Nikita Kiryanov
2014-04-14 11:38   ` Stefano Babic
2014-04-17 14:18     ` Tim Harvey
2014-04-18 22:23       ` Scott Wood
2014-04-03  6:01 ` [U-Boot] [PATCH 02/11] SPL: NAND: add support for mxs nand Tim Harvey
2014-04-14 11:38   ` Stefano Babic
2014-04-03  6:01 ` [U-Boot] [PATCH 03/11] MX6: provide linker script for SPL Tim Harvey
2014-04-09 14:55   ` Nikita Kiryanov
2014-04-14 12:02   ` Stefano Babic
2014-04-17  6:27     ` Tim Harvey
2014-04-18 21:10       ` Otavio Salvador
2014-04-03  6:01 ` [U-Boot] [PATCH 04/11] MX6: add common SPL configuration Tim Harvey
2014-04-09 14:55   ` Nikita Kiryanov
2014-04-09 15:32     ` Tim Harvey
2014-04-10 14:37       ` Nikita Kiryanov [this message]
2014-04-10 21:04         ` Scott Wood
2014-04-03  6:01 ` [U-Boot] [PATCH 05/11] MX6: add boot device support SPL Tim Harvey
2014-04-14 12:27   ` Stefano Babic
2014-04-17  6:16     ` Tim Harvey
2014-04-17  8:59       ` Stefano Babic
2014-04-03  6:01 ` [U-Boot] [PATCH 06/11] MX6: add struct for sharing data between SPL and uboot Tim Harvey
2014-04-09 14:55   ` Nikita Kiryanov
2014-04-14 12:35   ` Stefano Babic
2014-04-17  6:07     ` Tim Harvey
2014-04-17  9:30       ` Stefano Babic
2014-04-17 11:22         ` Igor Grinberg
2014-04-17 11:44           ` Stefano Babic
2014-04-18  6:35             ` Tim Harvey
2014-04-20  7:52               ` Igor Grinberg
2014-04-21 18:28                 ` Tim Harvey
2014-04-22  7:44                   ` Igor Grinberg
2014-04-03  6:01 ` [U-Boot] [PATCH 07/11] MX6: use macro building for MX6Q/MX6DL iomux regs Tim Harvey
2014-04-09 14:57   ` Nikita Kiryanov
2014-04-09 15:46     ` Tim Harvey
2014-04-10 14:08       ` Nikita Kiryanov
2014-04-10 14:51         ` Nikita Kiryanov
2014-04-11  5:23           ` Tim Harvey
2014-04-23 17:07         ` Stefano Babic
2014-04-23 19:00           ` Eric Nelson
2014-04-24  7:07             ` Igor Grinberg
2014-04-24  5:21           ` Tim Harvey
2014-04-23 15:30       ` Stefano Babic
2014-04-03  6:01 ` [U-Boot] [PATCH 08/11] MX6: add mmdc configuration for MX6Q/MX6DL Tim Harvey
2014-04-03  6:01 ` [U-Boot] [PATCH 09/11] IMX: add additional function for pinmux using an array Tim Harvey
2014-04-09 14:56   ` Nikita Kiryanov
2014-04-09 15:40     ` Tim Harvey
2014-04-10 14:41       ` Nikita Kiryanov
2014-04-23  5:03         ` Tim Harvey
2014-04-03  6:01 ` [U-Boot] [PATCH 10/11] ventana: auto-configure for IMX6Q vs IMX6DL Tim Harvey
2014-04-23 17:31   ` Stefano Babic
2014-04-24  5:04     ` Tim Harvey
2014-04-03  6:01 ` [U-Boot] [PATCH 11/11] ventana: switch to SPL Tim Harvey
2014-04-03 18:52   ` Tim Harvey
2014-04-23 18:03   ` Stefano Babic
2014-04-24  8:06     ` Tim Harvey
2014-04-24  8:18       ` Stefano Babic
2014-04-24  8:22       ` Stefan Roese

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=5346ACC4.4080702@compulab.co.il \
    --to=nikita@compulab.co.il \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox