07 Oct, 2014

1 commit


06 Oct, 2014

2 commits

  • Make the SoCFPGA MMC stub pick clock via the clock manager
    frequency accessors instead of hard-coding the frequency.

    Also fix calloc() misuse.

    Signed-off-by: Pavel Machek
    Signed-off-by: Marek Vasut
    Cc: Chin Liang See
    Cc: Dinh Nguyen
    Cc: Albert Aribaud
    Cc: Tom Rini
    Cc: Wolfgang Denk
    Cc: Pavel Machek
    Acked-by: Dinh Nguyen

    Pavel Machek
     
  • The dw_mmc driver was responding to errors with debug(). Change that
    to prinf()/puts() respectively so that any errors are immediately
    obvious. Also adjust english in comments.

    Signed-off-by: Pavel Machek
    Signed-off-by: Marek Vasut
    Cc: Chin Liang See
    Cc: Dinh Nguyen
    Cc: Albert Aribaud
    Cc: Tom Rini
    Cc: Wolfgang Denk
    Cc: Pavel Machek
    Cc: Pantelis Antoniou
    Acked-by: Chin Liang See

    Pavel Machek
     

03 Oct, 2014

6 commits

  • dw_mmc driver was responding to errors with debug(). Change that to
    prinf so that any errors are immediately obvious. Also adjust english
    in comments.

    Signed-off-by: Pavel Machek
    Acked-by: Pantelis Antoniou

    Pavel Machek
     
  • After setting the bus width, the extended CSD register is read. Some selected
    fields are compared with previously read extended CSD register fields. In this
    comparison the EXT_CSD_ERASE_GROUP_DEF field is compared. But this field is
    previously written under certain circumstances. And then the comparison fails.

    Only compare read-only fields. Therefore compare field EXT_CSD_HC_WP_GRP_SIZE
    instead of field EXT_CSD_ERASE_GROUP_DEF.

    Signed-off-by: Mario Schuknecht
    Acked-by: Pantelis Antoniou

    Mario Schuknecht
     
  • In function mvebu_mmc_write notice command timeout. It is possible that a
    command is done, but a timeout occurred.

    Enable timeout in set bus function.

    Set window registers. Without that I could not use the driver on a Kirkwood
    88F6282 SoC.

    Set high capacity and 52MHz driver feature.

    Signed-off-by: Mario Schuknecht
    Reviewed-by: Stefan Roese
    Acked-by: Pantelis Antoniou

    Mario Schuknecht
     
  • The capacity and lba for an MMC device with part_num 0 reflects the
    whole device. When mmc_switch_part() successfully switches to a
    partition, the capacity is changed to that partition. As partition 0
    does not physically exist, attempts to switch back to the whole device
    will indicate an error, but the capacity setting for the whole device
    must still be restored to match the partition.

    Signed-off-by: Peter A. Bigot
    Tested-by: Tom Rini
    Acked-by: Pantelis Antoniou

    Peter Bigot
     
  • if we set manually this bit on the eMMC card using mmc_switch(...),
    we also have to set it within our (before read) internal structure
    'ext_csd'.

    Otherwise following checks on this will fail.

    Acked-by: Pantelis Antoniou
    Signed-off-by: Hannes Petermaier

    Hannes Petermaier
     
  • Wait data transfer till the data end bit other than the data block end
    bit is set.

    Acked-by: Pantelis Antoniou
    Signed-off-by: Sonic Zhang

    Sonic Zhang
     

25 Sep, 2014

2 commits


09 Sep, 2014

1 commit

  • For LS1, esdhc is big-endian IP. Accessing the registers
    should be in big-endian mode. So we use esdhc_read32()
    to read Host controller capabilities register for LS1.

    For LS1, when using CMD12, cmdtype need to be set to
    ABORT, otherwise, next read command will hang.

    Signed-off-by: Alison Wang

    Wang Huan
     

30 Aug, 2014

2 commits


02 Aug, 2014

4 commits


01 Aug, 2014

2 commits


28 Jul, 2014

1 commit


19 Jul, 2014

2 commits


07 Jul, 2014

1 commit

  • The DMA code in sunxi_mmc.c is broken. mmc_trans_data_by_dma() allocates the
    dma descriptors on the stack, and then exits while the dma transfer is in
    progress, so the dma engine is reading stack memory which at that point may
    be re-used. So far we've gotten away with this by luck, but recent u-boot
    changes have shifted the stack start address by 16 bytes, which combined
    with dma alignment now exposes this problem.

    Since we end up just busy waiting for the dma engine anyway, this commit
    fixes things by simply removing the dma code, resulting in smaller bug-free
    code.

    Signed-off-by: Hans de Goede
    Acked-by: Ian Campbell

    Hans de Goede
     

19 Jun, 2014

1 commit

  • commit 18b06652cd "tools: include u-boot version of sha256.h"
    unconditionally forced the sha256.h from u-boot to be used
    for tools instead of the host version. This is fragile though
    as it will also include the host version. Therefore move it
    to include/u-boot to join u-boot/md5.h etc which were renamed
    for the same reason.

    cc: Simon Glass
    Signed-off-by: Jeroen Hofstee

    Jeroen Hofstee
     

12 Jun, 2014

2 commits


02 Jun, 2014

1 commit


27 May, 2014

1 commit


25 May, 2014

1 commit

  • On Mon, 2014-05-05 at 14:18 +0200, Stefan Roese wrote:
    > > + case 1:
    > > +#if CONFIG_MMC1_PG

    > Are you sure that this is correct and shouldn't be:
    >
    > +#ifdef CONFIG_MMC1_PG
    >
    > ?

    It's "correct" in so far as it works (the boards.cfg config stuff
    #defines things to 1), but I think you are right that it isn't the
    preferred style. But...

    > A quick scan through this patch series shows that this define
    > is not set at all. Perhaps its outdated? Or is it used to support
    > some other sunxi SoC? Not sure, perhaps it should be removed for
    > now.

    ...I had thought that it was to support some other board which wasn't
    being upstreamed right now, so eventually useful and harmless for now,
    but I've just checked and it isn't actually used by any of the boards in
    u-boot-sunxi.git. So rather than fix it to use #ifdef lets drop it.
    Rather than resend the entire series, here is v5.1 of this patch.

    > Other than this please add my:
    >
    > Reviewed-by: Stefan Roese

    Thanks!

    8From 20704e35a41664de5f516ed0e02981ac06085102 Mon Sep 17 00:00:00 2001
    From: Ian Campbell
    Date: Fri, 7 Mar 2014 04:29:39 +0000
    Subject: [PATCH v5.1 7/8] sunxi: mmc support

    This adds support for the MMC controller on the Allwinner A20 (sun7i)
    processor.

    Signed-off-by: Henrik Nordstrom
    Signed-off-by: Luke Leighton
    Signed-off-by: Oliver Schinagl
    Signed-off-by: Wills Wang
    Signed-off-by: Ian Campbell
    Reviewed-by: Marek Vasut
    Reviewed-by: Stefan Roese
    Cc: Tom Cubie
    Cc: Aaron Maoye
    Cc: Pantelis Antoniou
    Reviewed-by: Tom Rini

    Ian Campbell
     

23 May, 2014

6 commits


22 May, 2014

1 commit

  • When configure the fsl_esdhc driver to PIO mode by defining
    "CONFIG_SYS_FSL_ESDHC_USE_PIO", the SD/MMC read and write will fail.

    Two bugs in the driver to cause the issue:
    1. The read buffer was invalidated after reading from DATAPORT register,
    which should be only applied to DMA mode. The valid data in cache was
    overwritten by physical memory.
    2. The watermarks are not set in PIO mode, will cause according state not
    be set.

    Acked-by: Pantelis Antoniou
    Signed-off-by: Ye.Li

    Ye.Li
     

20 May, 2014

1 commit


16 May, 2014

2 commits