[U-Boot] [PATCH 04/10] change all versions of input_data() and output_data() to global weak aliases

Marek Vasut marex at denx.de
Sun Oct 7 20:14:23 CEST 2012


Dear Pavel Herrmann,

> This changes input_data() and friends from static function to global
> symbols under weak alias, to enable board specific overrides (and
> therefore get rid of board-specific code in cmd_ide.c)
> Also declare ide_bus_offset in the header file, so other files can use
> ATA_CURR_BASE as well.
> 
> Signed-off-by: Pavel Herrmann <morpheus.ibis at gmail.com>
> ---
[...]


> +void ide_input_swap_data(int dev, ulong *sect_buf, int words)
> +	__attribute__ ((weak, alias("__ide_input_swap_data")));

#include <linux/compiler.h>

__weak void ide_input_swap_data(int dev, ulong *sect_buf, int words)
{
   ... body ...
}

Works just fine ;-)

[...]

> +/*
> + * I/O function overrides
> + */
> +void ide_input_swap_data(int dev, ulong *sect_buf, int words);
> +void ide_input_data(int dev, ulong *sect_buf, int words);
> +void ide_output_data(int dev, const ulong *sect_buf, int words);
> +void ide_input_data_shorts(int dev, ushort *sect_buf, int words);
> +void ide_output_data_shorts(int dev, ushort *sect_buf, int words);

Shorts ... you mean like pants ? :-p

I'd say it's supposed to be "short", like u16 ;-)

> +
>  #endif /* _IDE_H */


More information about the U-Boot mailing list