[U-Boot] [PATCH v1 5/9] block: ahci: Don't enable port interrupts

Simon Glass sjg at chromium.org
Mon Jun 29 18:03:32 CEST 2015


On 29 June 2015 at 06:58, Stefan Roese <sr at denx.de> wrote:
> This patch changes the initialization of the AHCI controller to not
> enable the default interrupts (DEF_PORT_IRQ). As interrupts are
> not used in U-Boot in general, this should not break the common AHCI
> driver operation.
>
> This change is needed to support the Marvell Armada 38x AHCI
> controller. With interrupts enabled, this results in timeouts in
> ahci_device_data_io(). Not enabling these interrupts fixes this
> problem and the common AHCI driver works fine.
>
> Signed-off-by: Stefan Roese <sr at denx.de>
> Cc: Tom Rini <trini at konsulko.com>
> Cc: Hans de Goede <hdegoede at redhat.com>
> Cc: Simon Glass <sjg at chromium.org>
> Cc: Luka Perkov <luka.perkov at sartura.hr>
> ---
>
>  drivers/block/ahci.c | 3 ---
>  1 file changed, 3 deletions(-)

Reviewed-by: Simon Glass <sjg at chromium.org>

>
> diff --git a/drivers/block/ahci.c b/drivers/block/ahci.c
> index 4fb846a..9bab0fc 100644
> --- a/drivers/block/ahci.c
> +++ b/drivers/block/ahci.c
> @@ -299,9 +299,6 @@ static int ahci_host_init(struct ahci_probe_ent *probe_ent)
>
>                 writel(1 << i, mmio + HOST_IRQ_STAT);
>
> -               /* set irq mask (enables interrupts) */
> -               writel(DEF_PORT_IRQ, port_mmio + PORT_IRQ_MASK);
> -
>                 /* register linkup ports */
>                 tmp = readl(port_mmio + PORT_SCR_STAT);
>                 debug("SATA port %d status: 0x%x\n", i, tmp);
> --
> 2.4.5
>


More information about the U-Boot mailing list