[oe-commits] org.oe.dev Blackfin support:

koen commit openembedded-commits at lists.openembedded.org
Mon Jun 11 12:57:11 UTC 2007


Blackfin support:
* siteinfo.bbclass, bfin-common: autofoo support
* kernel-arch.bbclass, linux-libc-headers_2.6.20.bb: bfin -> blackfin mapping for the kernel
* insane.bbclass: stubs for bfin arch, needs proper number, but that will get reported when it encounters the first binary
* uclibc: config for adsp-bf537-stamp machine
* adsp-bf537-stamp.conf: machine description for adsp-bf537-stamp board (http://www.analog.com/en/prod/0%2C2877%2CBF537%25252DSTAMP%2C00.html)

The build currently stops in binutils cross with the "ld not supported on this archicture" message

Author: koen at openembedded.org
Branch: org.openembedded.dev
Revision: 4d572f4cb45451e9b4304e770c4fe56e16f7f058
ViewMTN: http://monotone.openembedded.org/revision.psp?id=4d572f4cb45451e9b4304e770c4fe56e16f7f058
Files:
1
packages/uclibc/uclibc-0.9.29/adsp-bf537-stamp
conf/machine/adsp-bf537-stamp.conf
packages/uclibc/uclibc-0.9.29/adsp-bf537-stamp/uClibc.machine
site/bfin-common
classes/insane.bbclass
classes/kernel-arch.bbclass
classes/siteinfo.bbclass
packages/linux-libc-headers/linux-libc-headers_2.6.20.bb
Diffs:

#
# mt diff -rb7811bc1aec7b4308a59826a8d0e46fbb72c5211 -r4d572f4cb45451e9b4304e770c4fe56e16f7f058
#
# 
# 
# add_dir "packages/uclibc/uclibc-0.9.29/adsp-bf537-stamp"
# 
# add_file "conf/machine/adsp-bf537-stamp.conf"
#  content [0e4ae8573f75816c7fc87665b8cecc83062140c1]
# 
# add_file "packages/uclibc/uclibc-0.9.29/adsp-bf537-stamp/uClibc.machine"
#  content [a18dd232b0f1200643102b419818e48177f9684f]
# 
# add_file "site/bfin-common"
#  content [da39a3ee5e6b4b0d3255bfef95601890afd80709]
# 
# patch "classes/insane.bbclass"
#  from [02d91727c1f0f883c42d47be353bf1df801a8da6]
#    to [223147e5948a8b93f13686317e26af2367a0d8aa]
# 
# patch "classes/kernel-arch.bbclass"
#  from [7f6ba8b3f1e9f4798971a0955d8fc7232067af0d]
#    to [2c3267a2a81eb0cb438cf4a9c97de95535bedf94]
# 
# patch "classes/siteinfo.bbclass"
#  from [fb05a3c2f0d4bb84b7908c53a86128cc574ae103]
#    to [787b91227039fc66eb96c822213e0b02e852f93a]
# 
# patch "packages/linux-libc-headers/linux-libc-headers_2.6.20.bb"
#  from [791b173dfa13d9284c5609bd6c782c6f6c2d4d5d]
#    to [93b7bd106ed8f8f8a164923c1488cc41488437bb]
# 
============================================================
--- conf/machine/adsp-bf537-stamp.conf	0e4ae8573f75816c7fc87665b8cecc83062140c1
+++ conf/machine/adsp-bf537-stamp.conf	0e4ae8573f75816c7fc87665b8cecc83062140c1
@@ -0,0 +1,18 @@
+#@TYPE: Machine
+#@Name: Analog Devices blackfin platfrom
+#@DESCRIPTION: ADSP-BF537 STAMP Board
+
+
+TARGET_ARCH = "bfin"
+
+PREFERRED_PROVIDER_virtual/kernel = "linux"
+PREFERRED_PROVIDER_xserver = "xserver-kdrive"
+
+#don't try to access tty1
+USE_VT = "0"
+
+MACHINE_FEATURES = "kernel26 alsa ext2 usbhost usbgadget screen"
+
+# used by sysvinit_2
+SERIAL_CONSOLE = "115200"
+
============================================================
--- packages/uclibc/uclibc-0.9.29/adsp-bf537-stamp/uClibc.machine	a18dd232b0f1200643102b419818e48177f9684f
+++ packages/uclibc/uclibc-0.9.29/adsp-bf537-stamp/uClibc.machine	a18dd232b0f1200643102b419818e48177f9684f
@@ -0,0 +1,57 @@
+#
+# Automatically generated make config: don't edit
+# Mon Jun 11 14:03:30 2007
+#
+# TARGET_alpha is not set
+# TARGET_arm is not set
+TARGET_bfin=y
+# TARGET_cris is not set
+# TARGET_e1 is not set
+# TARGET_frv is not set
+# TARGET_h8300 is not set
+# TARGET_hppa is not set
+# TARGET_i386 is not set
+# TARGET_i960 is not set
+# TARGET_ia64 is not set
+# TARGET_m68k is not set
+# TARGET_microblaze is not set
+# TARGET_mips is not set
+# TARGET_nios is not set
+# TARGET_nios2 is not set
+# TARGET_powerpc is not set
+# TARGET_sh is not set
+# TARGET_sh64 is not set
+# TARGET_sparc is not set
+# TARGET_v850 is not set
+# TARGET_vax is not set
+# TARGET_x86_64 is not set
+
+#
+# Target Architecture Features and Options
+#
+TARGET_ARCH="bfin"
+FORCE_OPTIONS_FOR_ARCH=y
+TARGET_SUBARCH=""
+# UCLIBC_FORMAT_ELF is not set
+UCLIBC_FORMAT_FDPIC_ELF=y
+# UCLIBC_FORMAT_FLAT is not set
+# UCLIBC_FORMAT_FLAT_SEP_DATA is not set
+# UCLIBC_FORMAT_SHARED_FLAT is not set
+ARCH_LITTLE_ENDIAN=y
+
+#
+# Using Little Endian
+#
+ARCH_HAS_NO_MMU=y
+
+#
+# Target CPU lacks a memory management unit (MMU)
+#
+UCLIBC_HAS_FLOATS=y
+UCLIBC_HAS_FPU=y
+DO_C99_MATH=y
+KERNEL_HEADERS="/usr/include"
+UCLIBC_UCLINUX_BROKEN_MUNMAP=y
+EXCLUDE_BRK=y
+HAVE_DOT_CONFIG=y
+
============================================================
--- site/bfin-common	da39a3ee5e6b4b0d3255bfef95601890afd80709
+++ site/bfin-common	da39a3ee5e6b4b0d3255bfef95601890afd80709
============================================================
--- classes/insane.bbclass	02d91727c1f0f883c42d47be353bf1df801a8da6
+++ classes/insane.bbclass	223147e5948a8b93f13686317e26af2367a0d8aa
@@ -58,7 +58,8 @@ def package_qa_get_machine_dict():
                         "armeb":      (  40,    97,    0,          False,         True),
                         "powerpc":    (  20,     0,    0,          False,         True),
                         "mipsel":     (   8,     0,    0,          True,          True),
-			"avr32":      (6317,     0,    0,          False,         True), 
+			"avr32":      (6317,     0,    0,          False,         True),
+                        "bfin":       (   0,     0,    0,          True,         True), 
                       },
             "linux-gnueabi" : {
                         "arm" :       (40,     0,    0,          True,          True),
============================================================
--- classes/kernel-arch.bbclass	7f6ba8b3f1e9f4798971a0955d8fc7232067af0d
+++ classes/kernel-arch.bbclass	2c3267a2a81eb0cb438cf4a9c97de95535bedf94
@@ -12,7 +12,7 @@ valid_archs = "alpha cris ia64 \
                m32r mips \
 	       sh sh64 um h8300   \
 	       parisc s390  v850 \
-	       avr32"
+	       avr32 blackfin"
 
 def map_kernel_arch(a, d):
 	import bb, re
@@ -24,7 +24,8 @@ def map_kernel_arch(a, d):
 	elif re.match('armeb$', a):		return 'arm'
 	elif re.match('mipsel$', a):		return 'mips'
 	elif re.match('sh(3|4)$', a):		return 'sh'
-	elif a in valid_archs:			return a
+	elif re.match('bfin', a):               return 'blackfin'
+        elif a in valid_archs:			return a
 	else:
 		bb.error("cannot map '%s' to a linux kernel architecture" % a)
 
============================================================
--- classes/siteinfo.bbclass	fb05a3c2f0d4bb84b7908c53a86128cc574ae103
+++ classes/siteinfo.bbclass	787b91227039fc66eb96c822213e0b02e852f93a
@@ -29,8 +29,9 @@ def get_siteinfo_list(d):
                "arm-linux-gnueabi":       "endian-little bit-32 common-glibc arm-common arm-linux",\
                "arm-linux-uclibc":        "endian-little bit-32 common-uclibc arm-common",\
                "arm-linux-uclibcgnueabi": "endian-little bit-32 common-uclibc arm-common arm-linux-uclibc",\
-               "avr32-linux":             "endian-big bit-32 common-glibc",\ 
-               "avr32-linux-uclibc":      "endian-big bit-32 common-uclibc",\
+               "avr32-linux":             "endian-big bit-32 common-glibc avr32-common",\ 
+               "avr32-linux-uclibc":      "endian-big bit-32 common-uclibc avr32-common",\
+               "bfin-linux-uclibc":       "endian-little bit-32 common-uclibc bfin-common",\
                "i386-linux":              "endian-little bit-32 common-glibc ix86-common",\
                "i486-linux":              "endian-little bit-32 common-glibc ix86-common",\
                "i586-linux":              "endian-little bit-32 common-glibc ix86-common",\
============================================================
--- packages/linux-libc-headers/linux-libc-headers_2.6.20.bb	791b173dfa13d9284c5609bd6c782c6f6c2d4d5d
+++ packages/linux-libc-headers/linux-libc-headers_2.6.20.bb	93b7bd106ed8f8f8a164923c1488cc41488437bb
@@ -26,6 +26,7 @@ set_arch() {
 		sparc*)   ARCH=sparc ;;
 		x86_64*)  ARCH=x86_64 ;;
 	        avr32*)   ARCH=avr32 ;;
+                bfin*)    ARCH=blackfin ;;
 	esac
 }
 






More information about the Openembedded-commits mailing list