#
# NOTE! Don't add files that are generated in specific
# subdirectories here. Add them in the ".gitignore" file
# in that subdirectory instead.
#
# 	Normal rules
#
.gitignore
*.rej
*.orig
*.a
*.o
*.su
*~
*.swp
*.patch
*.bin
*.dis
*.elf
*.srec
*.elf


# Build tree
/build-*

#
# Top-level generic files
#

/MLO
/System.map
/u-boot
/u-boot.hex
/u-boot.imx
/u-boot.map
/u-boot.srec
/u-boot.ldr
/u-boot.ldr.hex
/u-boot.ldr.srec
/u-boot.img
/u-boot.kwb
/u-boot.sha1
/u-boot.dis
/u-boot.lds
/u-boot.ubl
/u-boot.ais
/u-boot.dtb
/u-boot.sb
/u-boot.geany
/include/u-boot.lst

#
# Generated files
#

*.depend*
/LOG
/errlog
/reloc_off

/include/generated/
asm-offsets.s

# stgit generated dirs
patches-*
.stgit-edit.txt

# quilt's files
patches
series

# gdb files
.gdb_history

# cscope files
cscope.*

# tags files
/tags
/ctags
/etags

# spl ais files
/spl/*.ais

# build output
/output
output.*.tar
