[U-Boot] [PATCH 1/2] exynos5250/arndale: Enable SATA/AHCI support.

Minkyu Kang mk7.kang at samsung.com
Wed Oct 29 15:09:08 CET 2014


Dear Ian Campbell,

On 29/10/14 19:34, Ian Campbell wrote:
> On Sun, 2014-10-26 at 16:27 +0900, Minkyu Kang wrote:
>> Dear Ian Campbell,
>>
>> On 7 October 2014 22:56, Ian Campbell <ijc at hellion.org.uk> wrote:
>>         From: Ian Campbell <ian.campbell at citrix.com>
>>         
>>         This is based on some old patches from the chromeos-v2011.12
>>         branch of
>>         http://git.chromium.org/chromiumos/third_party/u-boot.git by
>>         Taylor Hutt.
>>         Specifically:
>>         
>>         http://git.chromium.org/gitweb/?p=chromiumos/third_party/u-boot.git;a=commit;h=26f6c570b5deb37c52306920ae049203c68f014a
>>             exynos: sata: on-board controller initialization
>>             Signed-off-by: Taylor Hutt <thutt at chromium.org>
>>         
>>         http://git.chromium.org/gitweb/?p=chromiumos/third_party/u-boot.git;a=commit;h=d8cac5cf0b63df00d2d6ac7df814613e4b60b9d1
>>             exynos: sata: Add sata_initialize() interface
>>             Signed-off-by: Taylor Hutt <thutt at chromium.org>
>>         
>>         http://git.chromium.org/gitweb/?p=chromiumos/third_party/u-boot.git;a=commit;h=dd32462453d6328bc5770859d1b56501f7920d7d
>>             exynos: sata: SATA self-configuration for when SATA device
>>         is enabled
>>             Signed-off-by: Taylor Hutt <thutt at chromium.org>
>>         
>>         As well as rebasing there have been some significant changes.
>>         
>>          - Drop support for smdk5250, which I don't own.
>>          - Implement support for arndale, which I do.
>>          - Since arndale has no need to frob a GPIO on SATA init drop
>>         the associated
>>            code.
>>          - Initialise via the existing scsi_init hook rather than
>>         introducing
>>            sata_initialize, associated build system and
>>         include/configs/*.h changes.
>>          - Use set/clrbits in a bunch of places
>>          - Add some #defines for some magic numbers.
>>         
>>         This relies on "ahci: Don't start command DMA engine before
>>         buffers are set"
>>         
>>         NOTE: For some reason when running u-boot with this patch
>>         Linux is unable to
>>         correct probe devices. See the next patch for an attempt at a
>>         hack/workaround.
>>         Any ideas would be appreciated.
>>
>>
>> So, is it RFC? or not?
> 
> This patch is, so far as I know, OK wrt the functionality it tries to
> enable (i.e. sata access from u-boot), but there is a caveat wrt
> launching Linux afterwards, which I obviously expect means it cannot be
> applied as is. I have requested any help/ideas you may have. So, do you
> have advice/ideas on the issue I raised?

Then it's a RFC patch.

> 
>> Why you tied up this RFC patch? ([U-Boot,2/2] HACK: arndale: deinit
>> scsi before launching Linux)
> 
> I'm afraid I don't understand this question.
> 
>>         +void * const phy_ctrl = (void *)SATA_PHCTRL_APB;
>>         +void * const phy_i2c_base = (void *)SATA_PHY_I2C_ABP;
>>
>>
>> we don't allow direct access to the register.
>> please refer to other driver.
> 
> There seem to be plenty of drivers in u-boot which use this pattern.
> Perhaps you could be more specific about what you would like to be done
> here?

first, we get the base address by accessor function (samsung_get_base_xxx)
second, when read the register, we use structures instead of offsets.
You can refer other drivers.

Thanks,
Minkyu Kang.


More information about the U-Boot mailing list