From mboxrd@z Thu Jan 1 00:00:00 1970 From: Minkyu Kang Date: Wed, 29 Oct 2014 23:09:08 +0900 Subject: [U-Boot] [PATCH 1/2] exynos5250/arndale: Enable SATA/AHCI support. In-Reply-To: <1414578880.29975.11.camel@hellion.org.uk> References: <1412690172.4972.31.camel@hellion.org.uk> <1412690200-6630-1-git-send-email-ijc@hellion.org.uk> <1414578880.29975.11.camel@hellion.org.uk> Message-ID: <5450F504.7060301@samsung.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de 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 wrote: >> From: Ian Campbell >> >> 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 >> >> 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 >> >> 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 >> >> 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.