[U-Boot] [PATCH] ARM DaVinci: Adding new Header file

Jean-Christophe PLAGNIOL-VILLARD plagnioj at jcrosoft.com
Wed Jun 3 01:16:03 CEST 2009


> diff --git a/include/asm-arm/arch-davinci/devices.h b/include/asm-arm/arch-davinci/devices.h
> new file mode 100644
> index 0000000..fd7f6d0
> --- /dev/null
> +++ b/include/asm-arm/arch-davinci/devices.h
> @@ -0,0 +1,45 @@
> +/*
> + *
> + *  Copyright (C) 2009 Texas Instruments.
> + *
> + *  This program is free software; you can redistribute  it and/or modify it
> + *  under  the terms of  the GNU General  Public License as published by the
> + *  Free Software Foundation;  either version 2 of the  License, or (at your
> + *  option) any later version.
> + *
> + *  THIS  SOFTWARE  IS PROVIDED   ``AS  IS'' AND   ANY  EXPRESS OR IMPLIED
> + *  WARRANTIES,   INCLUDING, BUT NOT  LIMITED  TO, THE IMPLIED WARRANTIES OF
> + *  MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN
> + *  NO  EVENT  SHALL   THE AUTHOR  BE    LIABLE FOR ANY   DIRECT, INDIRECT,
> + *  INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
> + *  NOT LIMITED   TO, PROCUREMENT OF  SUBSTITUTE GOODS  OR SERVICES; LOSS OF
> + *  USE, DATA,  OR PROFITS; OR  BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
> + *  ANY THEORY OF LIABILITY, WHETHER IN  CONTRACT, STRICT LIABILITY, OR TORT
> + *  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
> + *  THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
> + *
> + *  You should have received a copy of the  GNU General Public License along
> + *  with this program; if not, write  to the Free Software Foundation, Inc.,
> + *  675 Mass Ave, Cambridge, MA 02139, USA.
> + *
> + */
> +#ifndef __ASM_ARCH_DEVICES_H
> +#define __ASM_ARCH_DEVICES_H
> +
> +#include <asm/sizes.h>
> +
> +#define	REG(addr)	(*(volatile unsigned int *)(addr))
> +#define REG_P(addr)	((volatile unsigned int *)(addr))
> +
> +typedef volatile unsigned int	dv_reg;
> +typedef volatile unsigned int 	*dv_reg_p;
> +
> +void lpsc_on(unsigned int id);
> +void dsp_on(void);
> +
> +void davinci_enable_uart0(void);
> +void davinci_enable_emac(void);
> +void davinci_enable_i2c(void);
> +void davinci_errata_workarounds(void);
> +
> +#endif /* __ASM_ARCH_DEVICES_H */
> diff --git a/include/asm-arm/arch-davinci/emac_defs.h b/include/asm-arm/arch-davinci/emac_defs.h
> index c11161f..4a5e79d 100644
<snip>
> diff --git a/include/asm-arm/arch-davinci/emif_defs.h b/include/asm-arm/arch-davinci/emif_defs.h
> index 646fc77..53e84f6 100644
> --- a/include/asm-arm/arch-davinci/emif_defs.h
> +++ b/include/asm-arm/arch-davinci/emif_defs.h
> @@ -23,6 +23,7 @@
>  #define _EMIF_DEFS_H_
>  
>  #include <asm/arch/hardware.h>
> +#include <asm/arch/devices.h>
>  
>  typedef struct {
>  	dv_reg		ERCSR;
> diff --git a/include/asm-arm/arch-davinci/hardware.h b/include/asm-arm/arch-davinci/hardware.h
> index 313b3f3..0a685a7 100644
> --- a/include/asm-arm/arch-davinci/hardware.h
> +++ b/include/asm-arm/arch-davinci/hardware.h
> @@ -36,12 +36,6 @@
>  #include <config.h>
>  #include <asm/sizes.h>
>  
> -#define	REG(addr)	(*(volatile unsigned int *)(addr))
> -#define REG_P(addr)	((volatile unsigned int *)(addr))
> -
> -typedef volatile unsigned int	dv_reg;
> -typedef volatile unsigned int *	dv_reg_p;
we need to drop this REG and REG_P stuff and use instead generic accessor

and for this patch move them will not help. The idea behind the devices.h is
to have a header where will have all device init prototypes

Best Regards,
J.


More information about the U-Boot mailing list