* [RFC][PATCH 00/14] mips64 support and sh4 support
@ 2012-05-21 3:35 Khem Raj
2012-05-21 3:35 ` [PATCH 01/14] insane.bbclass: Add mips64{el} to known machines Khem Raj
` (15 more replies)
0 siblings, 16 replies; 19+ messages in thread
From: Khem Raj @ 2012-05-21 3:35 UTC (permalink / raw)
To: openembedded-core
This patchset adds required bits into metadata for having
mips64/n64 support. I have tested the core-image-sato and core-image-minimal
builds and boots on qemumips64 and runs gcc regression testsuite.
It needs linux-yocto-dev kernel for now which can be obtained from
poky-extra repo. Additionally systemd-image on angstrom-next builds and boots
fine on qemumips64 as well.
Additionally it also adds bits to have SH4 root file systems to be
able to built and again core-image-sato builds for sh4 however qemu
machine support is not yet done but root file sytem boots fine on
real hardware.
The images are tested on both eglibc and uclibc.
Any help in providing feedback or testing these patches is welcome.
I have tested them enough for over a month now.
The following changes since commit 326563d5a897ae2dba7cfd8d73579d3d979d72c8:
sstate.bbclass: Make sure we don't have an empty fixmepath file (2012-05-18 15:24:45 +0100)
are available in the git repository at:
git://git.openembedded.org/openembedded-core-contrib kraj/mips64
http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=kraj/mips64
Khem Raj (14):
insane.bbclass: Add mips64{el} to known machines
site: Add mips64 eglibc and uclibc site files
gcc-4.6, gcc-4.7: Add support for building mips64 cross compiler
binutils: Default to n64 when configured for mips64
kernel-arch.bbclass: Map mips64{el} to mips KARCH
eglibc-2.15: Support mips64
libc-package: Add sh4 and mips64 to arch options
runqemu: Add qemush4 and qemumips64 knowledge
netbase: Add interface files for qemumips64 and qemush4
site/sh-common: Add missing caches variables to build glib-2.32
xserver-xorg: Fix build for mips64
tune-mips64.inc: Add new tune file for mips64 big-endian
qemumips64.conf: Add machine configuration for mips64(eb)
qemush4.conf: Add machine configuration for qemush4
meta/classes/insane.bbclass | 4 +
meta/classes/kernel-arch.bbclass | 2 +-
meta/classes/libc-package.bbclass | 3 +
meta/conf/machine/include/tune-mips64.inc | 3 +
meta/conf/machine/qemumips64.conf | 13 +++
meta/conf/machine/qemush4.conf | 13 +++
meta/recipes-core/eglibc/eglibc-locale.inc | 2 +-
meta/recipes-core/eglibc/eglibc_2.15.bb | 2 +-
.../netbase/netbase-4.47/qemumips64/interfaces | 8 ++
.../netbase/netbase-4.47/qemush4/interfaces | 8 ++
meta/recipes-core/netbase/netbase_4.47.bb | 4 +-
.../binutils/mips64-default-ld-emulation.patch | 49 +++++++++
meta/recipes-devtools/binutils/binutils_2.22.bb | 3 +-
meta/recipes-devtools/gcc/gcc-4.6.inc | 1 +
.../gcc/gcc-4.6/mips64-default-n64.patch | 32 ++++++
meta/recipes-devtools/gcc/gcc-4.7.inc | 1 +
.../gcc/gcc-4.7/mips64-default-n64.patch | 19 ++++
meta/recipes-devtools/gcc/gcc-configure-common.inc | 4 +
.../xorg-xserver/xserver-xorg-1.11.2.inc | 1 +
.../xserver-xorg-1.11.2/mips64-compiler.patch | 29 +++++
meta/site/mips64-linux | 82 +++++++++++++++
meta/site/mips64-linux-uclibc | 83 +++++++++++++++
meta/site/mips64el-linux | 82 +++++++++++++++
meta/site/mips64el-linux-uclibc | 108 ++++++++++++++++++++
meta/site/sh-common | 4 +
scripts/runqemu | 10 ++-
scripts/runqemu-internal | 35 ++++++-
27 files changed, 594 insertions(+), 11 deletions(-)
create mode 100644 meta/conf/machine/include/tune-mips64.inc
create mode 100644 meta/conf/machine/qemumips64.conf
create mode 100644 meta/conf/machine/qemush4.conf
create mode 100644 meta/recipes-core/netbase/netbase-4.47/qemumips64/interfaces
create mode 100644 meta/recipes-core/netbase/netbase-4.47/qemush4/interfaces
create mode 100644 meta/recipes-devtools/binutils/binutils/mips64-default-ld-emulation.patch
create mode 100644 meta/recipes-devtools/gcc/gcc-4.6/mips64-default-n64.patch
create mode 100644 meta/recipes-devtools/gcc/gcc-4.7/mips64-default-n64.patch
create mode 100644 meta/recipes-graphics/xorg-xserver/xserver-xorg-1.11.2/mips64-compiler.patch
create mode 100644 meta/site/mips64-linux
create mode 100644 meta/site/mips64-linux-uclibc
create mode 100644 meta/site/mips64el-linux
create mode 100644 meta/site/mips64el-linux-uclibc
--
1.7.5.4
^ permalink raw reply [flat|nested] 19+ messages in thread
* [PATCH 01/14] insane.bbclass: Add mips64{el} to known machines
2012-05-21 3:35 [RFC][PATCH 00/14] mips64 support and sh4 support Khem Raj
@ 2012-05-21 3:35 ` Khem Raj
2012-05-21 3:35 ` [PATCH 02/14] site: Add mips64 eglibc and uclibc site files Khem Raj
` (14 subsequent siblings)
15 siblings, 0 replies; 19+ messages in thread
From: Khem Raj @ 2012-05-21 3:35 UTC (permalink / raw)
To: openembedded-core
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
meta/classes/insane.bbclass | 4 ++++
1 files changed, 4 insertions(+), 0 deletions(-)
diff --git a/meta/classes/insane.bbclass b/meta/classes/insane.bbclass
index 8c4a83a..49e904a 100644
--- a/meta/classes/insane.bbclass
+++ b/meta/classes/insane.bbclass
@@ -59,6 +59,8 @@ def package_qa_get_machine_dict():
"m68k": ( 4, 0, 0, False, 32),
"mips": ( 8, 0, 0, False, 32),
"mipsel": ( 8, 0, 0, True, 32),
+ "mips64": ( 8, 0, 0, False, 64),
+ "mips64el": ( 8, 0, 0, True, 64),
"s390": (22, 0, 0, False, 32),
"sh4": (42, 0, 0, True, 32),
"sparc": ( 2, 0, 0, False, 32),
@@ -74,6 +76,8 @@ def package_qa_get_machine_dict():
"x86_64": ( 62, 0, 0, True, 64),
"mips": ( 8, 0, 0, False, 32),
"mipsel": ( 8, 0, 0, True, 32),
+ "mips64": ( 8, 0, 0, False, 64),
+ "mips64el": ( 8, 0, 0, True, 64),
"avr32": (6317, 0, 0, False, 32),
"sh4": (42, 0, 0, True, 32),
--
1.7.5.4
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [PATCH 02/14] site: Add mips64 eglibc and uclibc site files
2012-05-21 3:35 [RFC][PATCH 00/14] mips64 support and sh4 support Khem Raj
2012-05-21 3:35 ` [PATCH 01/14] insane.bbclass: Add mips64{el} to known machines Khem Raj
@ 2012-05-21 3:35 ` Khem Raj
2012-05-21 3:35 ` [PATCH 03/14] gcc-4.6, gcc-4.7: Add support for building mips64 cross compiler Khem Raj
` (13 subsequent siblings)
15 siblings, 0 replies; 19+ messages in thread
From: Khem Raj @ 2012-05-21 3:35 UTC (permalink / raw)
To: openembedded-core
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
meta/site/mips64-linux | 82 +++++++++++++++++++++++++++++
meta/site/mips64-linux-uclibc | 83 ++++++++++++++++++++++++++++++
meta/site/mips64el-linux | 82 +++++++++++++++++++++++++++++
meta/site/mips64el-linux-uclibc | 108 +++++++++++++++++++++++++++++++++++++++
4 files changed, 355 insertions(+), 0 deletions(-)
create mode 100644 meta/site/mips64-linux
create mode 100644 meta/site/mips64-linux-uclibc
create mode 100644 meta/site/mips64el-linux
create mode 100644 meta/site/mips64el-linux-uclibc
diff --git a/meta/site/mips64-linux b/meta/site/mips64-linux
new file mode 100644
index 0000000..4449c96
--- /dev/null
+++ b/meta/site/mips64-linux
@@ -0,0 +1,82 @@
+# general
+ac_cv_func_setvbuf_reversed=${ac_cv_func_setvbuf_reversed=no}
+
+# bash
+ac_cv_c_long_double=${ac_cv_c_long_double=no}
+bash_cv_func_sigsetjmp=${bash_cv_func_sigsetjmp=present}
+
+# openssh
+ac_cv_have_accrights_in_msghdr=${ac_cv_have_accrights_in_msghdr=no}
+ac_cv_have_broken_snprintf=${ac_cv_have_broken_snprintf=no}
+ac_cv_have_control_in_msghdr=${ac_cv_have_control_in_msghdr=yes}
+ac_cv_have_openpty_ctty_bug=${ac_cv_have_openpty_ctty_bug=no}
+ac_cv_have_space_d_name_in_struct_dirent=${ac_cv_have_space_d_name_in_struct_dirent=yes}
+
+# fget
+compat_cv_func_snprintf_works=${compat_cv_func_snprintf_works=yes}
+
+# glib
+glib_cv___va_copy=${glib_cv___va_copy=yes}
+glib_cv_has__inline=${glib_cv_has__inline=yes}
+glib_cv_has__inline__=${glib_cv_has__inline__=yes}
+glib_cv_hasinline=${glib_cv_hasinline=yes}
+glib_cv_long_long_format=${glib_cv_long_long_format=ll}
+glib_cv_rtldglobal_broken=${glib_cv_rtldglobal_broken=no}
+glib_cv_sane_realloc=${glib_cv_sane_realloc=yes}
+glib_cv_sizeof_gmutex=${glib_cv_sizeof_gmutex=24}
+glib_cv_sizeof_system_thread=${glib_cv_sizeof_system_thread=4}
+glib_cv_stack_grows=${glib_cv_stack_grows=no}
+glib_cv_uscore=${glib_cv_uscore=no}
+
+# glib-2.0
+glib_cv_stack_grows=${glib_cv_stack_grows=no}
+utils_cv_sys_open_max=${utils_cv_sys_open_max=1015}
+glib_cv_use_pid_surrogate=${glib_cv_use_pid_surrogate=yes}
+ac_cv_alignof_guint32=4
+ac_cv_alignof_guint64=8
+ac_cv_alignof_unsigned_long=8
+
+# libpcap
+ac_cv_linux_vers=${ac_cv_linux_vers=2}
+
+# startup-notification
+lf_cv_sane_realloc=${lf_cv_sane_realloc=yes}
+
+# libidl
+libIDL_cv_long_long_format=${libIDL_cv_long_long_format=ll}
+
+# ncftp
+wi_cv_struct_timeval_tv_sec=${wi_cv_struct_timeval_tv_sec=long}
+wi_cv_struct_timeval_tv_usec=${wi_cv_struct_timeval_tv_usec=long}
+
+# db
+db_cv_align_t=${db_cv_align_t='unsigned long long'}
+db_cv_alignp_t=${db_cv_alignp_t='unsigned long'}
+db_cv_fcntl_f_setfd=${db_cv_fcntl_f_setfd=yes}
+db_cv_sprintf_count=${db_cv_sprintf_count=yes}
+
+# rrdtool
+rd_cv_ieee_works=${rd_cv_ieee_works=yes}
+# ac_cv_path_PERL=${ac_cv_path_PERL=no}
+
+# gettext
+am_cv_func_working_getline=${am_cv_func_working_getline=yes}
+
+# samba
+samba_cv_HAVE_GETTIMEOFDAY_TZ=${samba_cv_HAVE_GETTIMEOFDAY_TZ=yes}
+
+# vim
+ac_cv_sizeof_int=${ac_cv_sizeof_int=4}
+
+# intercom
+ac_cv_func_fnmatch_works=${ac_cv_func_fnmatch_works=yes}
+
+# lmbench
+ac_cv_uint=${ac_cv_unit=yes}
+
+# D-BUS
+ac_cv_func_posix_getpwnam_r=${ac_cv_func_posix_getpwnam_r=yes}
+
+# eds-dbus
+ac_cv_libiconv_utf8=${ac_cv_libiconv_utf8=yes}
+
diff --git a/meta/site/mips64-linux-uclibc b/meta/site/mips64-linux-uclibc
new file mode 100644
index 0000000..cbba552
--- /dev/null
+++ b/meta/site/mips64-linux-uclibc
@@ -0,0 +1,83 @@
+# general
+ac_cv_func_setvbuf_reversed=${ac_cv_func_setvbuf_reversed=no}
+
+# bash
+ac_cv_c_long_double=${ac_cv_c_long_double=no}
+bash_cv_func_sigsetjmp=${bash_cv_func_sigsetjmp=present}
+
+# openssh
+ac_cv_have_accrights_in_msghdr=${ac_cv_have_accrights_in_msghdr=no}
+ac_cv_have_broken_snprintf=${ac_cv_have_broken_snprintf=no}
+ac_cv_have_control_in_msghdr=${ac_cv_have_control_in_msghdr=yes}
+ac_cv_have_openpty_ctty_bug=${ac_cv_have_openpty_ctty_bug=no}
+ac_cv_have_space_d_name_in_struct_dirent=${ac_cv_have_space_d_name_in_struct_dirent=yes}
+
+# fget
+compat_cv_func_snprintf_works=${compat_cv_func_snprintf_works=yes}
+
+# glib
+glib_cv___va_copy=${glib_cv___va_copy=yes}
+glib_cv_has__inline=${glib_cv_has__inline=yes}
+glib_cv_has__inline__=${glib_cv_has__inline__=yes}
+glib_cv_hasinline=${glib_cv_hasinline=yes}
+glib_cv_long_long_format=${glib_cv_long_long_format=ll}
+glib_cv_rtldglobal_broken=${glib_cv_rtldglobal_broken=no}
+glib_cv_sane_realloc=${glib_cv_sane_realloc=yes}
+glib_cv_sizeof_gmutex=${glib_cv_sizeof_gmutex=24}
+glib_cv_sizeof_system_thread=${glib_cv_sizeof_system_thread=4}
+glib_cv_stack_grows=${glib_cv_stack_grows=no}
+glib_cv_uscore=${glib_cv_uscore=no}
+
+# glib-2.0
+glib_cv_stack_grows=${glib_cv_stack_grows=no}
+utils_cv_sys_open_max=${utils_cv_sys_open_max=1015}
+glib_cv_use_pid_surrogate=${glib_cv_use_pid_surrogate=yes}
+ac_cv_alignof_guint32=4
+ac_cv_alignof_guint64=8
+ac_cv_alignof_unsigned_long=8
+
+# libpcap
+ac_cv_linux_vers=${ac_cv_linux_vers=2}
+
+# startup-notification
+lf_cv_sane_realloc=${lf_cv_sane_realloc=yes}
+
+# libidl
+libIDL_cv_long_long_format=${libIDL_cv_long_long_format=ll}
+
+# ncftp
+wi_cv_struct_timeval_tv_sec=${wi_cv_struct_timeval_tv_sec=long}
+wi_cv_struct_timeval_tv_usec=${wi_cv_struct_timeval_tv_usec=long}
+wi_cv_unix_domain_sockets=${wi_cv_unix_domain_sockets=yes}
+
+# db
+db_cv_align_t=${db_cv_align_t='unsigned long long'}
+db_cv_alignp_t=${db_cv_alignp_t='unsigned long'}
+db_cv_fcntl_f_setfd=${db_cv_fcntl_f_setfd=yes}
+db_cv_sprintf_count=${db_cv_sprintf_count=yes}
+
+# rrdtool
+rd_cv_ieee_works=${rd_cv_ieee_works=yes}
+# ac_cv_path_PERL=${ac_cv_path_PERL=no}
+
+# gettext
+am_cv_func_working_getline=${am_cv_func_working_getline=yes}
+
+# samba
+samba_cv_HAVE_GETTIMEOFDAY_TZ=${samba_cv_HAVE_GETTIMEOFDAY_TZ=yes}
+
+# vim
+ac_cv_sizeof_int=${ac_cv_sizeof_int=4}
+
+# intercom
+ac_cv_func_fnmatch_works=${ac_cv_func_fnmatch_works=yes}
+
+# lmbench
+ac_cv_uint=${ac_cv_unit=yes}
+
+# D-BUS
+ac_cv_func_posix_getpwnam_r=${ac_cv_func_posix_getpwnam_r=yes}
+
+# eds-dbus
+ac_cv_libiconv_utf8=${ac_cv_libiconv_utf8=yes}
+
diff --git a/meta/site/mips64el-linux b/meta/site/mips64el-linux
new file mode 100644
index 0000000..8b61eb0
--- /dev/null
+++ b/meta/site/mips64el-linux
@@ -0,0 +1,82 @@
+# general
+ac_cv_func_setvbuf_reversed=${ac_cv_func_setvbuf_reversed=no}
+
+# bash
+ac_cv_c_long_double=${ac_cv_c_long_double=no}
+bash_cv_func_sigsetjmp=${bash_cv_func_sigsetjmp=present}
+
+# openssh
+ac_cv_have_accrights_in_msghdr=${ac_cv_have_accrights_in_msghdr=no}
+ac_cv_have_broken_snprintf=${ac_cv_have_broken_snprintf=no}
+ac_cv_have_control_in_msghdr=${ac_cv_have_control_in_msghdr=yes}
+ac_cv_have_openpty_ctty_bug=${ac_cv_have_openpty_ctty_bug=no}
+ac_cv_have_space_d_name_in_struct_dirent=${ac_cv_have_space_d_name_in_struct_dirent=yes}
+
+# fget
+compat_cv_func_snprintf_works=${compat_cv_func_snprintf_works=yes}
+
+# glib
+glib_cv___va_copy=${glib_cv___va_copy=yes}
+glib_cv_has__inline=${glib_cv_has__inline=yes}
+glib_cv_has__inline__=${glib_cv_has__inline__=yes}
+glib_cv_hasinline=${glib_cv_hasinline=yes}
+glib_cv_long_long_format=${glib_cv_long_long_format=ll}
+glib_cv_rtldglobal_broken=${glib_cv_rtldglobal_broken=no}
+glib_cv_sane_realloc=${glib_cv_sane_realloc=yes}
+glib_cv_sizeof_gmutex=${glib_cv_sizeof_gmutex=24}
+glib_cv_sizeof_system_thread=${glib_cv_sizeof_system_thread=4}
+glib_cv_stack_grows=${glib_cv_stack_grows=no}
+glib_cv_uscore=${glib_cv_uscore=no}
+
+# glib-2.0
+glib_cv_stack_grows=${glib_cv_stack_grows=no}
+utils_cv_sys_open_max=${utils_cv_sys_open_max=1015}
+glib_cv_use_pid_surrogate=${glib_cv_use_pid_surrogate=yes}
+ac_cv_alignof_guint32=4
+ac_cv_alignof_guint64=8
+ac_cv_alignof_unsigned_long=8
+
+# libpcap
+ac_cv_linux_vers=${ac_cv_linux_vers=2}
+
+# startup-notification
+lf_cv_sane_realloc=${lf_cv_sane_realloc=yes}
+
+# libidl
+libIDL_cv_long_long_format=${libIDL_cv_long_long_format=ll}
+
+# ncftp
+wi_cv_struct_timeval_tv_sec=${wi_cv_struct_timeval_tv_sec=long}
+wi_cv_struct_timeval_tv_usec=${wi_cv_struct_timeval_tv_usec=long}
+wi_cv_unix_domain_sockets=${wi_cv_unix_domain_sockets=yes}
+
+# db
+db_cv_align_t=${db_cv_align_t='unsigned long long'}
+db_cv_alignp_t=${db_cv_alignp_t='unsigned long'}
+db_cv_fcntl_f_setfd=${db_cv_fcntl_f_setfd=yes}
+db_cv_sprintf_count=${db_cv_sprintf_count=yes}
+
+# rrdtool
+rd_cv_ieee_works=${rd_cv_ieee_works=yes}
+# ac_cv_path_PERL=${ac_cv_path_PERL=no}
+
+# gettext
+am_cv_func_working_getline=${am_cv_func_working_getline=yes}
+
+# samba
+samba_cv_HAVE_GETTIMEOFDAY_TZ=${samba_cv_HAVE_GETTIMEOFDAY_TZ=yes}
+
+# vim
+ac_cv_sizeof_int=${ac_cv_sizeof_int=4}
+
+# intercom
+ac_cv_func_fnmatch_works=${ac_cv_func_fnmatch_works=yes}
+
+#lmbench
+ac_cv_uint=${ac_cv_unit=yes}
+
+# D-BUS
+ac_cv_func_posix_getpwnam_r=${ac_cv_func_posix_getpwnam_r=yes}
+
+# eds-dbus
+ac_cv_libiconv_utf8=${ac_cv_libiconv_utf8=yes}
diff --git a/meta/site/mips64el-linux-uclibc b/meta/site/mips64el-linux-uclibc
new file mode 100644
index 0000000..6a0499d
--- /dev/null
+++ b/meta/site/mips64el-linux-uclibc
@@ -0,0 +1,108 @@
+# general
+ac_cv_func_setvbuf_reversed=${ac_cv_func_setvbuf_reversed=no}
+
+# bash
+ac_cv_c_long_double=${ac_cv_c_long_double=no}
+bash_cv_func_sigsetjmp=${bash_cv_func_sigsetjmp=present}
+
+# openssh
+ac_cv_have_accrights_in_msghdr=${ac_cv_have_accrights_in_msghdr=no}
+ac_cv_have_broken_snprintf=${ac_cv_have_broken_snprintf=no}
+ac_cv_have_control_in_msghdr=${ac_cv_have_control_in_msghdr=yes}
+ac_cv_have_openpty_ctty_bug=${ac_cv_have_openpty_ctty_bug=no}
+ac_cv_have_space_d_name_in_struct_dirent=${ac_cv_have_space_d_name_in_struct_dirent=yes}
+
+# fget
+compat_cv_func_snprintf_works=${compat_cv_func_snprintf_works=yes}
+
+# glib
+glib_cv___va_copy=${glib_cv___va_copy=yes}
+glib_cv_has__inline=${glib_cv_has__inline=yes}
+glib_cv_has__inline__=${glib_cv_has__inline__=yes}
+glib_cv_hasinline=${glib_cv_hasinline=yes}
+glib_cv_long_long_format=${glib_cv_long_long_format=ll}
+glib_cv_rtldglobal_broken=${glib_cv_rtldglobal_broken=no}
+glib_cv_sane_realloc=${glib_cv_sane_realloc=yes}
+glib_cv_sizeof_gmutex=${glib_cv_sizeof_gmutex=24}
+glib_cv_sizeof_system_thread=${glib_cv_sizeof_system_thread=4}
+glib_cv_stack_grows=${glib_cv_stack_grows=no}
+glib_cv_uscore=${glib_cv_uscore=no}
+
+# glib-2.0
+glib_cv_stack_grows=${glib_cv_stack_grows=no}
+utils_cv_sys_open_max=${utils_cv_sys_open_max=1015}
+glib_cv_use_pid_surrogate=${glib_cv_use_pid_surrogate=yes}
+ac_cv_alignof_guint32=4
+ac_cv_alignof_guint64=8
+ac_cv_alignof_unsigned_long=8
+
+# libpcap
+ac_cv_linux_vers=${ac_cv_linux_vers=2}
+
+# startup-notification
+lf_cv_sane_realloc=${lf_cv_sane_realloc=yes}
+
+# libidl
+libIDL_cv_long_long_format=${libIDL_cv_long_long_format=ll}
+
+# ncftp
+wi_cv_struct_timeval_tv_sec=${wi_cv_struct_timeval_tv_sec=long}
+wi_cv_struct_timeval_tv_usec=${wi_cv_struct_timeval_tv_usec=long}
+wi_cv_unix_domain_sockets=${wi_cv_unix_domain_sockets=yes}
+
+# gettext
+am_cv_func_working_getline=${am_cv_func_working_getline=yes}
+
+# samba
+# from samba 3.0.14a on 5/29/2005
+ac_cv_func_memcmp_working=${ac_cv_func_memcmp_working=yes}
+ac_cv_have_asprintf_decl=${ac_cv_have_asprintf_decl=yes}
+ac_cv_have_setresgid_decl=${ac_cv_have_setresgid_decl=yes}
+ac_cv_have_setresuid_decl=${ac_cv_have_setresuid_decl=yes}
+ac_cv_have_vasprintf_decl=${ac_cv_have_vasprintf_decl=yes}
+fu_cv_sys_stat_statvfs64=${fu_cv_sys_stat_statvfs64=yes}
+samba_cv_FTRUNCATE_NEEDS_ROOT=${samba_cv_FTRUNCATE_NEEDS_ROOT=no}
+samba_cv_HAVE_BROKEN_FCNTL64_LOCKS=${samba_cv_HAVE_BROKEN_FCNTL64_LOCKS=no}
+samba_cv_HAVE_BROKEN_GETGROUPS=${samba_cv_HAVE_BROKEN_GETGROUPS=no}
+samba_cv_HAVE_BROKEN_READDIR=${samba_cv_HAVE_BROKEN_READDIR=no}
+samba_cv_HAVE_C99_VSNPRINTF=${samba_cv_HAVE_C99_VSNPRINTF=yes}
+samba_cv_HAVE_DEV64_T=${samba_cv_HAVE_DEV64_T=no}
+samba_cv_HAVE_DEVICE_MAJOR_FN=${samba_cv_HAVE_DEVICE_MAJOR_FN=yes}
+samba_cv_HAVE_DEVICE_MINOR_FN=${samba_cv_HAVE_DEVICE_MINOR_FN=yes}
+samba_cv_HAVE_EXPLICIT_LARGEFILE_SUPPORT=${samba_cv_HAVE_EXPLICIT_LARGEFILE_SUPPORT=yes}
+samba_cv_HAVE_FCNTL_LOCK=${samba_cv_HAVE_FCNTL_LOCK=yes}
+samba_cv_HAVE_FTRUNCATE_EXTEND=${samba_cv_HAVE_FTRUNCATE_EXTEND=yes}
+samba_cv_HAVE_GETTIMEOFDAY_TZ=${samba_cv_HAVE_GETTIMEOFDAY_TZ=yes}
+samba_cv_HAVE_INO64_T=${samba_cv_HAVE_INO64_T=no}
+samba_cv_HAVE_KERNEL_CHANGE_NOTIFY=${samba_cv_HAVE_KERNEL_CHANGE_NOTIFY=yes}
+samba_cv_HAVE_KERNEL_OPLOCKS_LINUX=${samba_cv_HAVE_KERNEL_OPLOCKS_LINUX=yes}
+samba_cv_HAVE_KERNEL_SHARE_MODES=${samba_cv_HAVE_KERNEL_SHARE_MODES=yes}
+samba_cv_HAVE_MAKEDEV=${samba_cv_HAVE_MAKEDEV=yes}
+samba_cv_HAVE_MMAP=${samba_cv_HAVE_MMAP=yes}
+samba_cv_HAVE_OFF64_T=${samba_cv_HAVE_OFF64_T=no}
+samba_cv_HAVE_QUOTACTL_4A=${samba_cv_HAVE_QUOTACTL_4A=yes}
+samba_cv_HAVE_ROOT=${samba_cv_HAVE_ROOT=no}
+samba_cv_HAVE_SECURE_MKSTEMP=${samba_cv_HAVE_SECURE_MKSTEMP=yes}
+samba_cv_HAVE_SENDFILE64=${samba_cv_HAVE_SENDFILE64=yes}
+samba_cv_HAVE_STRUCT_DIRENT64=${samba_cv_HAVE_STRUCT_DIRENT64=yes}
+samba_cv_HAVE_STRUCT_FLOCK64=${samba_cv_HAVE_STRUCT_FLOCK64=yes}
+samba_cv_HAVE_TRUNCATED_SALT=${samba_cv_HAVE_TRUNCATED_SALT=no}
+samba_cv_HAVE_UNSIGNED_CHAR=${samba_cv_HAVE_UNSIGNED_CHAR=no}
+samba_cv_HAVE_WORKING_AF_LOCAL=${samba_cv_HAVE_WORKING_AF_LOCAL=no}
+samba_cv_HAVE_Werror=${samba_cv_HAVE_Werror=yes}
+samba_cv_REALPATH_TAKES_NULL=${samba_cv_REALPATH_TAKES_NULL=no}
+samba_cv_REPLACE_INET_NTOA=${samba_cv_REPLACE_INET_NTOA=no}
+samba_cv_SIZEOF_INO_T=${samba_cv_SIZEOF_INO_T=yes}
+samba_cv_SIZEOF_OFF_T=${samba_cv_SIZEOF_OFF_T=yes}
+samba_cv_SYSCONF_SC_NGROUPS_MAX=${samba_cv_SYSCONF_SC_NGROUPS_MAX=yes}
+samba_cv_SYSCONF_SC_NPROC_ONLN=${samba_cv_SYSCONF_SC_NPROC_ONLN=no}
+samba_cv_SYSQUOTA_FOUND=${samba_cv_SYSQUOTA_FOUND=yes}
+samba_cv_SYSQUOTA_WORKS=${samba_cv_SYSQUOTA_WORKS=yes}
+samba_cv_USE_SETRESUID=${samba_cv_USE_SETRESUID=yes}
+samba_cv_have_longlong=${samba_cv_have_longlong=yes}
+samba_cv_have_setresgid=${samba_cv_have_setresgid=yes}
+samba_cv_have_setresuid=${samba_cv_have_setresuid=yes}
+samba_cv_sysquotas_file=${samba_cv_sysquotas_file=lib/sysquotas_4A.c}
+# This cached value needs a local patch to pick it up, upstream 3.0.14a
+# doesn't cache it.
+samba_cv_LINUX_LFS_SUPPORT=${samba_cv_LINUX_LFS_SUPPORT=yes}
--
1.7.5.4
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [PATCH 03/14] gcc-4.6, gcc-4.7: Add support for building mips64 cross compiler
2012-05-21 3:35 [RFC][PATCH 00/14] mips64 support and sh4 support Khem Raj
2012-05-21 3:35 ` [PATCH 01/14] insane.bbclass: Add mips64{el} to known machines Khem Raj
2012-05-21 3:35 ` [PATCH 02/14] site: Add mips64 eglibc and uclibc site files Khem Raj
@ 2012-05-21 3:35 ` Khem Raj
2012-05-21 3:35 ` [PATCH 04/14] binutils: Default to n64 when configured for mips64 Khem Raj
` (12 subsequent siblings)
15 siblings, 0 replies; 19+ messages in thread
From: Khem Raj @ 2012-05-21 3:35 UTC (permalink / raw)
To: openembedded-core
Defaults to n64 ABI
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
meta/recipes-devtools/gcc/gcc-4.6.inc | 1 +
.../gcc/gcc-4.6/mips64-default-n64.patch | 32 ++++++++++++++++++++
meta/recipes-devtools/gcc/gcc-4.7.inc | 1 +
.../gcc/gcc-4.7/mips64-default-n64.patch | 19 ++++++++++++
meta/recipes-devtools/gcc/gcc-configure-common.inc | 4 ++
5 files changed, 57 insertions(+), 0 deletions(-)
create mode 100644 meta/recipes-devtools/gcc/gcc-4.6/mips64-default-n64.patch
create mode 100644 meta/recipes-devtools/gcc/gcc-4.7/mips64-default-n64.patch
diff --git a/meta/recipes-devtools/gcc/gcc-4.6.inc b/meta/recipes-devtools/gcc/gcc-4.6.inc
index 65bc65d..7a70a38 100644
--- a/meta/recipes-devtools/gcc/gcc-4.6.inc
+++ b/meta/recipes-devtools/gcc/gcc-4.6.inc
@@ -74,6 +74,7 @@ SRC_URI = "svn://gcc.gnu.org/svn/gcc/branches;module=${BRANCH};proto=http \
file://GPLUSPLUS_INCLUDE_DIR_with_sysroot.patch \
file://fortran-cross-compile-hack.patch \
file://cpp-honour-sysroot.patch \
+ file://mips64-default-n64.patch \
"
SRC_URI_append_sh3 = " file://sh3-installfix-fixheaders.patch "
diff --git a/meta/recipes-devtools/gcc/gcc-4.6/mips64-default-n64.patch b/meta/recipes-devtools/gcc/gcc-4.6/mips64-default-n64.patch
new file mode 100644
index 0000000..bf930ec
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.6/mips64-default-n64.patch
@@ -0,0 +1,32 @@
+MIPS64 defaults to n32 ABI, this patch makes it
+so that it defaults to N64 ABI
+
+Upstream-Status: Inappropriate [OE config specific]
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Index: gcc-4_6-branch/gcc/config.gcc
+===================================================================
+--- gcc-4_6-branch.orig/gcc/config.gcc 2012-04-22 19:12:12.431061229 -0700
++++ gcc-4_6-branch/gcc/config.gcc 2012-04-22 19:13:36.307065289 -0700
+@@ -1882,7 +1882,7 @@
+ mips64*-*-linux* | mipsisa64*-*-linux*)
+ tm_file="dbxelf.h elfos.h gnu-user.h linux.h glibc-stdint.h ${tm_file} mips/linux.h mips/linux64.h"
+ tmake_file="${tmake_file} mips/t-linux64 mips/t-libgcc-mips16"
+- tm_defines="${tm_defines} MIPS_ABI_DEFAULT=ABI_N32"
++ tm_defines="${tm_defines} MIPS_ABI_DEFAULT=ABI_64"
+ case ${target} in
+ mips64el-st-linux-gnu)
+ tm_file="${tm_file} mips/st.h"
+Index: gcc-4_6-branch/gcc/config/mips/linux64.h
+===================================================================
+--- gcc-4_6-branch.orig/gcc/config/mips/linux64.h 2012-04-22 19:10:59.743057711 -0700
++++ gcc-4_6-branch/gcc/config/mips/linux64.h 2012-04-22 19:11:56.919060479 -0700
+@@ -26,7 +26,7 @@
+ BASE_DRIVER_SELF_SPECS, \
+ LINUX_DRIVER_SELF_SPECS \
+ " %{!EB:%{!EL:%(endian_spec)}}" \
+- " %{!mabi=*: -mabi=n32}"
++ " %{!mabi=*: -mabi=64}"
+
+ #undef LIB_SPEC
+ #define LIB_SPEC "\
diff --git a/meta/recipes-devtools/gcc/gcc-4.7.inc b/meta/recipes-devtools/gcc/gcc-4.7.inc
index 8adeb8d..efd166c 100644
--- a/meta/recipes-devtools/gcc/gcc-4.7.inc
+++ b/meta/recipes-devtools/gcc/gcc-4.7.inc
@@ -64,6 +64,7 @@ SRC_URI = "svn://gcc.gnu.org/svn/gcc/branches;module=${BRANCH};proto=http \
file://fortran-cross-compile-hack.patch \
file://libgcc-sjlj-check.patch \
file://cpp-honor-sysroot.patch \
+ file://mips64-default-n64.patch \
"
S = "${TMPDIR}/work-shared/gcc-${PV}-${PR}/${BRANCH}"
diff --git a/meta/recipes-devtools/gcc/gcc-4.7/mips64-default-n64.patch b/meta/recipes-devtools/gcc/gcc-4.7/mips64-default-n64.patch
new file mode 100644
index 0000000..a42569e
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.7/mips64-default-n64.patch
@@ -0,0 +1,19 @@
+MIPS64 defaults to n32 ABI, this patch makes it
+so that it defaults to N64 ABI
+
+Upstream-Status: Inappropriate [OE config specific]
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Index: gcc-4_7-branch/gcc/config.gcc
+===================================================================
+--- gcc-4_7-branch.orig/gcc/config.gcc 2012-04-22 19:30:21.000000000 -0700
++++ gcc-4_7-branch/gcc/config.gcc 2012-04-22 21:09:57.783403173 -0700
+@@ -1750,7 +1750,7 @@
+ mips64*-*-linux* | mipsisa64*-*-linux*)
+ tm_file="dbxelf.h elfos.h gnu-user.h linux.h glibc-stdint.h ${tm_file} mips/gnu-user.h mips/gnu-user64.h mips/linux64.h"
+ tmake_file="${tmake_file} mips/t-linux64"
+- tm_defines="${tm_defines} MIPS_ABI_DEFAULT=ABI_N32"
++ tm_defines="${tm_defines} MIPS_ABI_DEFAULT=ABI_64"
+ case ${target} in
+ mips64el-st-linux-gnu)
+ tm_file="${tm_file} mips/st.h"
diff --git a/meta/recipes-devtools/gcc/gcc-configure-common.inc b/meta/recipes-devtools/gcc/gcc-configure-common.inc
index a812b98..4d11ef4 100644
--- a/meta/recipes-devtools/gcc/gcc-configure-common.inc
+++ b/meta/recipes-devtools/gcc/gcc-configure-common.inc
@@ -49,6 +49,10 @@ EXTRA_OECONF = "${@['--enable-clocale=generic', ''][d.getVar('USE_NLS', True) !=
# Build uclibc compilers without cxa_atexit support
EXTRA_OECONF_append_linux = " --enable-__cxa_atexit"
EXTRA_OECONF_append_libc-uclibc = " --enable-__cxa_atexit"
+
+EXTRA_OECONF_append_mips64 = " --with-abi=64 --with-arch-64=mips64 --with-tune-64=mips64"
+EXTRA_OECONF_append_mips64el = " --with-abi=64 --with-arch-64=mips64 --with-tune-64=mips64"
+
EXTRA_OECONF_FPU = "${@get_gcc_fpu_setting(bb, d)}"
CPPFLAGS = ""
--
1.7.5.4
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [PATCH 04/14] binutils: Default to n64 when configured for mips64
2012-05-21 3:35 [RFC][PATCH 00/14] mips64 support and sh4 support Khem Raj
` (2 preceding siblings ...)
2012-05-21 3:35 ` [PATCH 03/14] gcc-4.6, gcc-4.7: Add support for building mips64 cross compiler Khem Raj
@ 2012-05-21 3:35 ` Khem Raj
2012-05-21 3:35 ` [PATCH 05/14] kernel-arch.bbclass: Map mips64{el} to mips KARCH Khem Raj
` (11 subsequent siblings)
15 siblings, 0 replies; 19+ messages in thread
From: Khem Raj @ 2012-05-21 3:35 UTC (permalink / raw)
To: openembedded-core
Default ABI for mips64 is n64 so make it default in binutils
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
.../binutils/mips64-default-ld-emulation.patch | 49 ++++++++++++++++++++
meta/recipes-devtools/binutils/binutils_2.22.bb | 3 +-
2 files changed, 51 insertions(+), 1 deletions(-)
create mode 100644 meta/recipes-devtools/binutils/binutils/mips64-default-ld-emulation.patch
diff --git a/meta/recipes-devtools/binutils/binutils/mips64-default-ld-emulation.patch b/meta/recipes-devtools/binutils/binutils/mips64-default-ld-emulation.patch
new file mode 100644
index 0000000..ab01859
--- /dev/null
+++ b/meta/recipes-devtools/binutils/binutils/mips64-default-ld-emulation.patch
@@ -0,0 +1,49 @@
+for mips64*-*-linux we change the default emulations to be
+N64 instead of N32
+
+Upstream-Status: Inappropriate [ OE configuration Specific]
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+Index: binutils-2.22/bfd/config.bfd
+===================================================================
+--- binutils-2.22.orig/bfd/config.bfd 2011-07-28 15:35:13.000000000 -0700
++++ binutils-2.22/bfd/config.bfd 2012-04-23 21:07:44.151578222 -0700
+@@ -970,13 +970,13 @@
+ ;;
+ #ifdef BFD64
+ mips64*el-*-linux*)
+- targ_defvec=bfd_elf32_ntradlittlemips_vec
+- targ_selvecs="bfd_elf32_ntradbigmips_vec bfd_elf32_tradlittlemips_vec bfd_elf32_tradbigmips_vec bfd_elf64_tradlittlemips_vec bfd_elf64_tradbigmips_vec"
++ targ_defvec=bfd_elf64_tradlittlemips_vec
++ targ_selvecs="bfd_elf32_ntradbigmips_vec bfd_elf32_ntradlittlemips_vec bfd_elf32_tradlittlemips_vec bfd_elf32_tradbigmips_vec bfd_elf64_tradbigmips_vec"
+ want64=true
+ ;;
+ mips64*-*-linux*)
+- targ_defvec=bfd_elf32_ntradbigmips_vec
+- targ_selvecs="bfd_elf32_ntradlittlemips_vec bfd_elf32_tradbigmips_vec bfd_elf32_tradlittlemips_vec bfd_elf64_tradbigmips_vec bfd_elf64_tradlittlemips_vec"
++ targ_defvec=bfd_elf64_tradbigmips_vec
++ targ_selvecs="bfd_elf32_ntradbigmips_vec bfd_elf32_ntradlittlemips_vec bfd_elf32_tradbigmips_vec bfd_elf32_tradlittlemips_vec bfd_elf64_tradlittlemips_vec"
+ want64=true
+ ;;
+ #endif
+Index: binutils-2.22/ld/configure.tgt
+===================================================================
+--- binutils-2.22.orig/ld/configure.tgt 2011-11-21 01:29:37.000000000 -0800
++++ binutils-2.22/ld/configure.tgt 2012-04-23 21:05:34.183571931 -0700
+@@ -395,11 +395,11 @@
+ mips*-*-vxworks*) targ_emul=elf32ebmipvxworks
+ targ_extra_emuls="elf32elmipvxworks" ;;
+ mips*-*-windiss) targ_emul=elf32mipswindiss ;;
+-mips64*el-*-linux-*) targ_emul=elf32ltsmipn32
+- targ_extra_emuls="elf32btsmipn32 elf32ltsmip elf32btsmip elf64ltsmip elf64btsmip"
++mips64*el-*-linux-*) targ_emul=elf64ltsmip
++ targ_extra_emuls="elf32btsmipn32 elf32ltsmipn32 elf32ltsmip elf32btsmip elf64btsmip"
+ targ_extra_libpath=$targ_extra_emuls ;;
+-mips64*-*-linux-*) targ_emul=elf32btsmipn32
+- targ_extra_emuls="elf32ltsmipn32 elf32btsmip elf32ltsmip elf64btsmip elf64ltsmip"
++mips64*-*-linux-*) targ_emul=elf64btsmip
++ targ_extra_emuls="elf32btsmipn32 elf32ltsmipn32 elf32btsmip elf32ltsmip elf64ltsmip"
+ targ_extra_libpath=$targ_extra_emuls ;;
+ mips*el-*-linux-*) targ_emul=elf32ltsmip
+ targ_extra_emuls="elf32btsmip elf32ltsmipn32 elf64ltsmip elf32btsmipn32 elf64btsmip"
diff --git a/meta/recipes-devtools/binutils/binutils_2.22.bb b/meta/recipes-devtools/binutils/binutils_2.22.bb
index d6d19a1..ae15e82 100644
--- a/meta/recipes-devtools/binutils/binutils_2.22.bb
+++ b/meta/recipes-devtools/binutils/binutils_2.22.bb
@@ -1,6 +1,6 @@
require binutils.inc
-PR = "r6"
+PR = "r7"
LIC_FILES_CHKSUM="\
file://src-release;endline=17;md5=4830a9ef968f3b18dd5e9f2c00db2d35\
@@ -31,6 +31,7 @@ SRC_URI = "\
file://clone-shadow.patch \
file://binutils-powerpc-e5500.patch \
file://binutils-armv5e.patch \
+ file://mips64-default-ld-emulation.patch \
"
SRC_URI[md5sum] = "ee0f10756c84979622b992a4a61ea3f5"
--
1.7.5.4
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [PATCH 05/14] kernel-arch.bbclass: Map mips64{el} to mips KARCH
2012-05-21 3:35 [RFC][PATCH 00/14] mips64 support and sh4 support Khem Raj
` (3 preceding siblings ...)
2012-05-21 3:35 ` [PATCH 04/14] binutils: Default to n64 when configured for mips64 Khem Raj
@ 2012-05-21 3:35 ` Khem Raj
2012-05-21 3:35 ` [PATCH 06/14] eglibc-2.15: Support mips64 Khem Raj
` (10 subsequent siblings)
15 siblings, 0 replies; 19+ messages in thread
From: Khem Raj @ 2012-05-21 3:35 UTC (permalink / raw)
To: openembedded-core
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
meta/classes/kernel-arch.bbclass | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/meta/classes/kernel-arch.bbclass b/meta/classes/kernel-arch.bbclass
index d37c1fb..e186422 100644
--- a/meta/classes/kernel-arch.bbclass
+++ b/meta/classes/kernel-arch.bbclass
@@ -23,7 +23,7 @@ def map_kernel_arch(a, d):
if re.match('(i.86|athlon|x86.64)$', a): return 'x86'
elif re.match('arm26$', a): return 'arm26'
elif re.match('armeb$', a): return 'arm'
- elif re.match('mipsel$', a): return 'mips'
+ elif re.match('mips(el|64|64el)$', a): return 'mips'
elif re.match('p(pc|owerpc)(|64)', a): return 'powerpc'
elif re.match('sh(3|4)$', a): return 'sh'
elif re.match('bfin', a): return 'blackfin'
--
1.7.5.4
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [PATCH 06/14] eglibc-2.15: Support mips64
2012-05-21 3:35 [RFC][PATCH 00/14] mips64 support and sh4 support Khem Raj
` (4 preceding siblings ...)
2012-05-21 3:35 ` [PATCH 05/14] kernel-arch.bbclass: Map mips64{el} to mips KARCH Khem Raj
@ 2012-05-21 3:35 ` Khem Raj
2012-05-21 3:35 ` [PATCH 07/14] libc-package: Add sh4 and mips64 to arch options Khem Raj
` (9 subsequent siblings)
15 siblings, 0 replies; 19+ messages in thread
From: Khem Raj @ 2012-05-21 3:35 UTC (permalink / raw)
To: openembedded-core
Add mips64 to binary locale arches
Enabling ports in addons causes wrong
machtype to be chosen for mips64 and
it always chose mips32 which is wrong
for mips64 so enable all the addons
we have and we were enabling them anyway
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
meta/recipes-core/eglibc/eglibc-locale.inc | 2 +-
meta/recipes-core/eglibc/eglibc_2.15.bb | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/meta/recipes-core/eglibc/eglibc-locale.inc b/meta/recipes-core/eglibc/eglibc-locale.inc
index 70c5cd1..6990569 100644
--- a/meta/recipes-core/eglibc/eglibc-locale.inc
+++ b/meta/recipes-core/eglibc/eglibc-locale.inc
@@ -20,7 +20,7 @@ ENABLE_BINARY_LOCALE_GENERATION_pn-eglibc-locale-nativesdk = "0"
#enable locale generation on these arches
# BINARY_LOCALE_ARCHES is a space separated list of regular expressions
-BINARY_LOCALE_ARCHES ?= "arm.* i[3-6]86 x86_64 powerpc mips"
+BINARY_LOCALE_ARCHES ?= "arm.* i[3-6]86 x86_64 powerpc mips mips64"
# set "1" to use cross-localedef for locale generation
# set "0" for qemu emulation of native localedef for locale generation
diff --git a/meta/recipes-core/eglibc/eglibc_2.15.bb b/meta/recipes-core/eglibc/eglibc_2.15.bb
index 340ec99..fa92670 100644
--- a/meta/recipes-core/eglibc/eglibc_2.15.bb
+++ b/meta/recipes-core/eglibc/eglibc_2.15.bb
@@ -68,7 +68,7 @@ export libc_cv_slibdir = "${base_libdir}"
EXTRA_OECONF = "--enable-kernel=${OLDEST_KERNEL} \
--without-cvs --disable-profile --disable-debug --without-gd \
--enable-clocale=gnu \
- --enable-add-ons=${GLIBC_ADDONS},ports \
+ --enable-add-ons \
--with-headers=${STAGING_INCDIR} \
--without-selinux \
${GLIBC_EXTRA_OECONF}"
--
1.7.5.4
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [PATCH 07/14] libc-package: Add sh4 and mips64 to arch options
2012-05-21 3:35 [RFC][PATCH 00/14] mips64 support and sh4 support Khem Raj
` (5 preceding siblings ...)
2012-05-21 3:35 ` [PATCH 06/14] eglibc-2.15: Support mips64 Khem Raj
@ 2012-05-21 3:35 ` Khem Raj
2012-05-21 3:35 ` [PATCH 08/14] runqemu: Add qemush4 and qemumips64 knowledge Khem Raj
` (8 subsequent siblings)
15 siblings, 0 replies; 19+ messages in thread
From: Khem Raj @ 2012-05-21 3:35 UTC (permalink / raw)
To: openembedded-core
needed for new architecture support
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
meta/classes/libc-package.bbclass | 3 +++
1 files changed, 3 insertions(+), 0 deletions(-)
diff --git a/meta/classes/libc-package.bbclass b/meta/classes/libc-package.bbclass
index 10f5f87..9df3c17 100644
--- a/meta/classes/libc-package.bbclass
+++ b/meta/classes/libc-package.bbclass
@@ -266,10 +266,13 @@ python package_do_split_gconvs () {
target_arch = d.getVar('TARGET_ARCH', True)
locale_arch_options = { \
"arm": " --uint32-align=4 --little-endian ", \
+ "sh4": " --uint32-align=4 --big-endian ", \
"powerpc": " --uint32-align=4 --big-endian ", \
"powerpc64": " --uint32-align=4 --big-endian ", \
"mips": " --uint32-align=4 --big-endian ", \
+ "mips64": " --uint32-align=4 --big-endian ", \
"mipsel": " --uint32-align=4 --little-endian ", \
+ "mips64el":" --uint32-align=4 --little-endian ", \
"i586": " --uint32-align=4 --little-endian ", \
"i686": " --uint32-align=4 --little-endian ", \
"x86_64": " --uint32-align=4 --little-endian " }
--
1.7.5.4
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [PATCH 08/14] runqemu: Add qemush4 and qemumips64 knowledge
2012-05-21 3:35 [RFC][PATCH 00/14] mips64 support and sh4 support Khem Raj
` (6 preceding siblings ...)
2012-05-21 3:35 ` [PATCH 07/14] libc-package: Add sh4 and mips64 to arch options Khem Raj
@ 2012-05-21 3:35 ` Khem Raj
2012-05-21 3:35 ` [PATCH 09/14] netbase: Add interface files for qemumips64 and qemush4 Khem Raj
` (7 subsequent siblings)
15 siblings, 0 replies; 19+ messages in thread
From: Khem Raj @ 2012-05-21 3:35 UTC (permalink / raw)
To: openembedded-core
New machines need to be added and they also
have different kernel commandlines
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
scripts/runqemu | 10 ++++++++--
scripts/runqemu-internal | 35 ++++++++++++++++++++++++++++++++---
2 files changed, 40 insertions(+), 5 deletions(-)
diff --git a/scripts/runqemu b/scripts/runqemu
index fc7363f..1e803ed 100755
--- a/scripts/runqemu
+++ b/scripts/runqemu
@@ -94,7 +94,7 @@ KVM_ENABLED="no"
while true; do
arg=${1}
case "$arg" in
- "qemux86" | "qemux86-64" | "qemuarm" | "qemumips" | "qemuppc")
+ "qemux86" | "qemux86-64" | "qemuarm" | "qemumips" | "qemumips64" | "qemush4" | "qemuppc")
[ -z "$MACHINE" ] && MACHINE=$arg || \
error "conflicting MACHINE types [$MACHINE] and [$arg]"
;;
@@ -223,7 +223,7 @@ if [ "$FSTYPE" = "nfs" -a -z "$ROOTFS" ]; then
fi
if [ -z "$MACHINE" ]; then
- MACHINE=`basename $KERNEL | sed 's/.*-\(qemux86-64\|qemux86\|qemuarm\|qemumips\|qemuppc\).*/\1/'`
+ MACHINE=`basename $KERNEL | sed 's/.*-\(qemux86-64\|qemux86\|qemuarm\|qemumips64\|qemumips\|qemuppc\|qemush4\).*/\1/'`
if [ -z "$MACHINE" ]; then
error "Unable to set MACHINE from kernel filename [$KERNEL]"
fi
@@ -245,6 +245,12 @@ QEMUARM_DEFAULT_FSTYPE=ext3
QEMUMIPS_DEFAULT_KERNEL=vmlinux-qemumips.bin
QEMUMIPS_DEFAULT_FSTYPE=ext3
+QEMUMIPS64_DEFAULT_KERNEL=vmlinux-qemumips64.bin
+QEMUMIPS64_DEFAULT_FSTYPE=ext3
+
+QEMUSH4_DEFAULT_KERNEL=vmlinux-qemumips.bin
+QEMUSH4_DEFAULT_FSTYPE=ext3
+
QEMUPPC_DEFAULT_KERNEL=vmlinux-qemuppc.bin
QEMUPPC_DEFAULT_FSTYPE=ext3
diff --git a/scripts/runqemu-internal b/scripts/runqemu-internal
index fe2974b..c8e3186 100755
--- a/scripts/runqemu-internal
+++ b/scripts/runqemu-internal
@@ -51,12 +51,15 @@ else
"qemuarm")
mem_size=128
;;
- "qemumips")
+ "qemumips"|"qemumips64")
mem_size=128
;;
"qemuppc")
mem_size=128
;;
+ "qemush4")
+ mem_size=1024
+ ;;
*)
mem_size=64
;;
@@ -233,6 +236,8 @@ fi
case "$MACHINE" in
"qemuarm") ;;
"qemumips") ;;
+ "qemumips64") ;;
+ "qemush4") ;;
"qemuppc") ;;
"qemuarmv6") ;;
"qemuarmv7") ;;
@@ -370,8 +375,12 @@ if [ "$MACHINE" = "spitz" ]; then
fi
fi
-if [ "$MACHINE" = "qemumips" ]; then
- QEMU=qemu-system-mips
+if [ "$MACHINE" = "qemumips" -o "$MACHINE" = "qemumips64" ]; then
+ if [ "$MACHINE" = "qemumips64" ]; then
+ QEMU=qemu-system-mips64
+ else
+ QEMU=qemu-system-mips
+ fi
MACHINE_SUBTYPE=malta
QEMU_UI_OPTIONS="-vga cirrus $QEMU_UI_OPTIONS"
if [ "$FSTYPE" = "ext3" -o "$FSTYPE" = "btrfs" ]; then
@@ -411,6 +420,26 @@ if [ "$MACHINE" = "qemuppc" ]; then
fi
fi
+if [ "$MACHINE" = "qemush4" ]; then
+ QEMU=qemu-system-sh4
+ MACHINE_SUBTYPE=r2d
+ QEMU_UI_OPTIONS="$QEMU_UI_OPTIONS"
+ if [ "$FSTYPE" = "ext3" -o "$FSTYPE" = "btrfs" ]; then
+ #KERNCMDLINE="root=/dev/hda console=ttyS0 console=tty0 $KERNEL_NETWORK_CMD mem=$QEMU_MEMORY"
+ KERNCMDLINE="root=/dev/hda rw console=ttySC1 noiotrap earlyprintk=sh-sci.1 console=tty $KERNEL_NETWORK_CMD mem=$QEMU_MEMORY"
+ QEMUOPTIONS="$QEMU_NETWORK_CMD -M $MACHINE_SUBTYPE -hda $ROOTFS -no-reboot $QEMU_UI_OPTIONS -monitor null -serial vc -serial stdio"
+ fi
+ if [ "$FSTYPE" = "nfs" ]; then
+ if [ "$NFS_SERVER" = "192.168.7.1" -a ! -d "$NFS_DIR" ]; then
+ echo "Error: NFS mount point $ROOTFS doesn't exist"
+ cleanup
+ return
+ fi
+ KERNCMDLINE="root=/dev/nfs console=ttySC1 noiotrap earlyprintk=sh-sci.1 console=tty nfsroot=$NFS_SERVER:$NFS_DIR,$UNFS_OPTS rw $KERNEL_NETWORK_CMD mem=$QEMU_MEMORY"
+ QEMUOPTIONS="$QEMU_NETWORK_CMD -M $MACHINE_SUBTYPE -no-reboot $QEMU_UI_OPTIONS -monitor null -serial vc -serial stdio"
+ fi
+fi
+
if [ "$MACHINE" = "akita" ]; then
QEMU=qemu-system-arm
if [ "$FSTYPE" = "jffs2" ]; then
--
1.7.5.4
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [PATCH 09/14] netbase: Add interface files for qemumips64 and qemush4
2012-05-21 3:35 [RFC][PATCH 00/14] mips64 support and sh4 support Khem Raj
` (7 preceding siblings ...)
2012-05-21 3:35 ` [PATCH 08/14] runqemu: Add qemush4 and qemumips64 knowledge Khem Raj
@ 2012-05-21 3:35 ` Khem Raj
2012-05-21 3:35 ` [PATCH 10/14] site/sh-common: Add missing caches variables to build glib-2.32 Khem Raj
` (6 subsequent siblings)
15 siblings, 0 replies; 19+ messages in thread
From: Khem Raj @ 2012-05-21 3:35 UTC (permalink / raw)
To: openembedded-core
These files are alike other qemu machines they
help in creating a working network interface when
using qemumips64 or qemush4
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
.../netbase/netbase-4.47/qemumips64/interfaces | 8 ++++++++
.../netbase/netbase-4.47/qemush4/interfaces | 8 ++++++++
meta/recipes-core/netbase/netbase_4.47.bb | 4 ++--
3 files changed, 18 insertions(+), 2 deletions(-)
create mode 100644 meta/recipes-core/netbase/netbase-4.47/qemumips64/interfaces
create mode 100644 meta/recipes-core/netbase/netbase-4.47/qemush4/interfaces
diff --git a/meta/recipes-core/netbase/netbase-4.47/qemumips64/interfaces b/meta/recipes-core/netbase/netbase-4.47/qemumips64/interfaces
new file mode 100644
index 0000000..f62b9a8
--- /dev/null
+++ b/meta/recipes-core/netbase/netbase-4.47/qemumips64/interfaces
@@ -0,0 +1,8 @@
+# /etc/network/interfaces -- configuration file for ifup(8), ifdown(8)
+
+# The loopback interface
+auto lo
+iface lo inet loopback
+
+
+
diff --git a/meta/recipes-core/netbase/netbase-4.47/qemush4/interfaces b/meta/recipes-core/netbase/netbase-4.47/qemush4/interfaces
new file mode 100644
index 0000000..f62b9a8
--- /dev/null
+++ b/meta/recipes-core/netbase/netbase-4.47/qemush4/interfaces
@@ -0,0 +1,8 @@
+# /etc/network/interfaces -- configuration file for ifup(8), ifdown(8)
+
+# The loopback interface
+auto lo
+iface lo inet loopback
+
+
+
diff --git a/meta/recipes-core/netbase/netbase_4.47.bb b/meta/recipes-core/netbase/netbase_4.47.bb
index a1462f8..1c85997 100644
--- a/meta/recipes-core/netbase/netbase_4.47.bb
+++ b/meta/recipes-core/netbase/netbase_4.47.bb
@@ -4,7 +4,7 @@ HOMEPAGE = "http://packages.debian.org/netbase"
SECTION = "base"
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://debian/copyright;md5=3dd6192d306f582dee7687da3d8748ab"
-PR = "r1"
+PR = "r2"
inherit update-rc.d
@@ -37,7 +37,7 @@ do_install () {
# Disable network manager on machines that commonly do NFS booting
case "${MACHINE}" in
- "qemuarm" | "qemux86" | "qemux86-64" | "qemumips" | "qemuppc" )
+ "qemuarm*" | "qemux86" | "qemux86-64" | "qemumips*" | "qemuppc" | "qemush*")
touch ${D}${sysconfdir}/network/nm-disabled-eth0
;;
*)
--
1.7.5.4
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [PATCH 10/14] site/sh-common: Add missing caches variables to build glib-2.32
2012-05-21 3:35 [RFC][PATCH 00/14] mips64 support and sh4 support Khem Raj
` (8 preceding siblings ...)
2012-05-21 3:35 ` [PATCH 09/14] netbase: Add interface files for qemumips64 and qemush4 Khem Raj
@ 2012-05-21 3:35 ` Khem Raj
2012-05-21 3:35 ` [PATCH 11/14] xserver-xorg: Fix build for mips64 Khem Raj
` (5 subsequent siblings)
15 siblings, 0 replies; 19+ messages in thread
From: Khem Raj @ 2012-05-21 3:35 UTC (permalink / raw)
To: openembedded-core
This is on the same tone as done for other architectures
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
meta/site/sh-common | 4 ++++
1 files changed, 4 insertions(+), 0 deletions(-)
diff --git a/meta/site/sh-common b/meta/site/sh-common
index c386266..bde416a 100644
--- a/meta/site/sh-common
+++ b/meta/site/sh-common
@@ -147,6 +147,10 @@ glib_cv_sizeof_system_thread=${glib_cv_sizeof_system_thread=4}
glib_cv_sys_use_pid_niceness_surrogate=${glib_cv_sys_use_pid_niceness_surrogate=yes}
glib_cv_strlcpy=${glib_cv_strlcpy=no}
+glib_cv_va_val_copy=${glib_cv_va_val_copy=yes}
+ac_cv_alignof_guint32=4
+ac_cv_alignof_guint64=8
+ac_cv_alignof_unsigned_long=4
# httppc
ac_cv_strerror_r_SUSv3=${ac_cv_strerror_r_SUSv3=no}
--
1.7.5.4
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [PATCH 11/14] xserver-xorg: Fix build for mips64
2012-05-21 3:35 [RFC][PATCH 00/14] mips64 support and sh4 support Khem Raj
` (9 preceding siblings ...)
2012-05-21 3:35 ` [PATCH 10/14] site/sh-common: Add missing caches variables to build glib-2.32 Khem Raj
@ 2012-05-21 3:35 ` Khem Raj
2012-05-21 3:35 ` [PATCH 12/14] tune-mips64.inc: Add new tune file for mips64 big-endian Khem Raj
` (4 subsequent siblings)
15 siblings, 0 replies; 19+ messages in thread
From: Khem Raj @ 2012-05-21 3:35 UTC (permalink / raw)
To: openembedded-core
mips64 N64 ABI has different size for int and pointer
which means the compiler will complain about conversions
which works fine for 32 bit since sizes are same.
amd64 is taken care of already so we take care of mips64
with this patch by understanding the difference in sizes
in compiler.h
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
.../xorg-xserver/xserver-xorg-1.11.2.inc | 1 +
.../xserver-xorg-1.11.2/mips64-compiler.patch | 29 ++++++++++++++++++++
2 files changed, 30 insertions(+), 0 deletions(-)
create mode 100644 meta/recipes-graphics/xorg-xserver/xserver-xorg-1.11.2/mips64-compiler.patch
diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xorg-1.11.2.inc b/meta/recipes-graphics/xorg-xserver/xserver-xorg-1.11.2.inc
index fc41568..595ab77 100644
--- a/meta/recipes-graphics/xorg-xserver/xserver-xorg-1.11.2.inc
+++ b/meta/recipes-graphics/xorg-xserver/xserver-xorg-1.11.2.inc
@@ -2,6 +2,7 @@
SRC_URI += "file://crosscompile.patch \
file://fix_open_max_preprocessor_error.patch \
file://gcc-47-warning.patch \
+ file://mips64-compiler.patch \
"
SRC_URI[md5sum] = "8796fff441e5435ee36a72579008af24"
diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xorg-1.11.2/mips64-compiler.patch b/meta/recipes-graphics/xorg-xserver/xserver-xorg-1.11.2/mips64-compiler.patch
new file mode 100644
index 0000000..e6bc95b
--- /dev/null
+++ b/meta/recipes-graphics/xorg-xserver/xserver-xorg-1.11.2/mips64-compiler.patch
@@ -0,0 +1,29 @@
+on mips64/n64 pointers are 64bit therefore the pointer conversions to int dont work well
+so we end up with incompatible conversion errors
+
+This patch choses the right values for mips64
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+Upstream-Status: Pending
+Index: xorg-server-1.11.2/hw/xfree86/common/compiler.h
+===================================================================
+--- xorg-server-1.11.2.orig/hw/xfree86/common/compiler.h 2012-05-10 12:19:59.485599046 -0700
++++ xorg-server-1.11.2/hw/xfree86/common/compiler.h 2012-05-10 12:20:53.109602488 -0700
+@@ -104,6 +104,7 @@
+
+ # if !defined(__arm__)
+ # if !defined(__sparc__) && !defined(__sparc) && !defined(__arm32__) && !defined(__nds32__) \
++ && !defined(__mips64) \
+ && !(defined(__alpha__) && defined(linux)) \
+ && !(defined(__ia64__) && defined(linux)) \
+
+@@ -708,7 +709,7 @@
+ }
+
+ # elif defined(__mips__) || (defined(__arm32__) && !defined(__linux__))
+-# ifdef __arm32__
++# if defined (__arm32__) || defined (__mips64)
+ # define PORT_SIZE long
+ # else
+ # define PORT_SIZE short
--
1.7.5.4
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [PATCH 12/14] tune-mips64.inc: Add new tune file for mips64 big-endian
2012-05-21 3:35 [RFC][PATCH 00/14] mips64 support and sh4 support Khem Raj
` (10 preceding siblings ...)
2012-05-21 3:35 ` [PATCH 11/14] xserver-xorg: Fix build for mips64 Khem Raj
@ 2012-05-21 3:35 ` Khem Raj
2012-05-21 3:35 ` [PATCH 13/14] qemumips64.conf: Add machine configuration for mips64(eb) Khem Raj
` (3 subsequent siblings)
15 siblings, 0 replies; 19+ messages in thread
From: Khem Raj @ 2012-05-21 3:35 UTC (permalink / raw)
To: openembedded-core
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
meta/conf/machine/include/tune-mips64.inc | 3 +++
1 files changed, 3 insertions(+), 0 deletions(-)
create mode 100644 meta/conf/machine/include/tune-mips64.inc
diff --git a/meta/conf/machine/include/tune-mips64.inc b/meta/conf/machine/include/tune-mips64.inc
new file mode 100644
index 0000000..ba79e2b
--- /dev/null
+++ b/meta/conf/machine/include/tune-mips64.inc
@@ -0,0 +1,3 @@
+DEFAULTTUNE ?= "mips64"
+
+require conf/machine/include/mips/arch-mips.inc
--
1.7.5.4
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [PATCH 13/14] qemumips64.conf: Add machine configuration for mips64(eb)
2012-05-21 3:35 [RFC][PATCH 00/14] mips64 support and sh4 support Khem Raj
` (11 preceding siblings ...)
2012-05-21 3:35 ` [PATCH 12/14] tune-mips64.inc: Add new tune file for mips64 big-endian Khem Raj
@ 2012-05-21 3:35 ` Khem Raj
2012-05-21 3:35 ` [PATCH 14/14] qemush4.conf: Add machine configuration for qemush4 Khem Raj
` (2 subsequent siblings)
15 siblings, 0 replies; 19+ messages in thread
From: Khem Raj @ 2012-05-21 3:35 UTC (permalink / raw)
To: openembedded-core
New machine description for qemu emulating malta64/mips64
big-endian system
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
meta/conf/machine/qemumips64.conf | 13 +++++++++++++
1 files changed, 13 insertions(+), 0 deletions(-)
create mode 100644 meta/conf/machine/qemumips64.conf
diff --git a/meta/conf/machine/qemumips64.conf b/meta/conf/machine/qemumips64.conf
new file mode 100644
index 0000000..8e9a488
--- /dev/null
+++ b/meta/conf/machine/qemumips64.conf
@@ -0,0 +1,13 @@
+#@TYPE: Machine
+#@NAME: mti_malta64 MIPS64
+#@DESCRIPTION: mti_malta64
+
+require conf/machine/include/qemu.inc
+require conf/machine/include/tune-mips64.inc
+
+KERNEL_IMAGETYPE = "vmlinux"
+KERNEL_ALT_IMAGETYPE = "vmlinux.bin"
+
+SERIAL_CONSOLE = "115200 ttyS0"
+
+MACHINE_EXTRA_RRECOMMENDS = " kernel-modules"
--
1.7.5.4
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [PATCH 14/14] qemush4.conf: Add machine configuration for qemush4
2012-05-21 3:35 [RFC][PATCH 00/14] mips64 support and sh4 support Khem Raj
` (12 preceding siblings ...)
2012-05-21 3:35 ` [PATCH 13/14] qemumips64.conf: Add machine configuration for mips64(eb) Khem Raj
@ 2012-05-21 3:35 ` Khem Raj
2012-05-21 8:21 ` [RFC][PATCH 00/14] mips64 support and sh4 support Richard Purdie
2012-05-21 12:43 ` Bruce Ashfield
15 siblings, 0 replies; 19+ messages in thread
From: Khem Raj @ 2012-05-21 3:35 UTC (permalink / raw)
To: openembedded-core
SH4 qemu emulation using rts7751r2dplus board
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
meta/conf/machine/qemush4.conf | 13 +++++++++++++
1 files changed, 13 insertions(+), 0 deletions(-)
create mode 100644 meta/conf/machine/qemush4.conf
diff --git a/meta/conf/machine/qemush4.conf b/meta/conf/machine/qemush4.conf
new file mode 100644
index 0000000..acf7faf
--- /dev/null
+++ b/meta/conf/machine/qemush4.conf
@@ -0,0 +1,13 @@
+#@TYPE: Machine
+#@NAME: base
+#@DESCRIPTION: rts7751r2dplus
+
+require conf/machine/include/qemu.inc
+require conf/machine/include/tune-sh4.inc
+
+KERNEL_IMAGETYPE = "zImage"
+
+SERIAL_CONSOLE = "115200 ttySC1 noiotrap earlyprintk=sh-sci.1"
+
+MACHINE_EXTRA_RRECOMMENDS = " kernel-modules"
+
--
1.7.5.4
^ permalink raw reply related [flat|nested] 19+ messages in thread
* Re: [RFC][PATCH 00/14] mips64 support and sh4 support
2012-05-21 3:35 [RFC][PATCH 00/14] mips64 support and sh4 support Khem Raj
` (13 preceding siblings ...)
2012-05-21 3:35 ` [PATCH 14/14] qemush4.conf: Add machine configuration for qemush4 Khem Raj
@ 2012-05-21 8:21 ` Richard Purdie
2012-05-21 14:36 ` Khem Raj
2012-05-21 15:51 ` Mark Hatle
2012-05-21 12:43 ` Bruce Ashfield
15 siblings, 2 replies; 19+ messages in thread
From: Richard Purdie @ 2012-05-21 8:21 UTC (permalink / raw)
To: Patches and discussions about the oe-core layer
On Sun, 2012-05-20 at 20:35 -0700, Khem Raj wrote:
> This patchset adds required bits into metadata for having
> mips64/n64 support. I have tested the core-image-sato and core-image-minimal
> builds and boots on qemumips64 and runs gcc regression testsuite.
> It needs linux-yocto-dev kernel for now which can be obtained from
> poky-extra repo. Additionally systemd-image on angstrom-next builds and boots
> fine on qemumips64 as well.
>
> Additionally it also adds bits to have SH4 root file systems to be
> able to built and again core-image-sato builds for sh4 however qemu
> machine support is not yet done but root file sytem boots fine on
> real hardware.
>
> The images are tested on both eglibc and uclibc.
>
> Any help in providing feedback or testing these patches is welcome.
>
> I have tested them enough for over a month now.
>
> The following changes since commit 326563d5a897ae2dba7cfd8d73579d3d979d72c8:
>
> sstate.bbclass: Make sure we don't have an empty fixmepath file (2012-05-18 15:24:45 +0100)
>
> are available in the git repository at:
> git://git.openembedded.org/openembedded-core-contrib kraj/mips64
> http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=kraj/mips64
>
> Khem Raj (14):
> insane.bbclass: Add mips64{el} to known machines
> site: Add mips64 eglibc and uclibc site files
> gcc-4.6, gcc-4.7: Add support for building mips64 cross compiler
> binutils: Default to n64 when configured for mips64
> kernel-arch.bbclass: Map mips64{el} to mips KARCH
> eglibc-2.15: Support mips64
> libc-package: Add sh4 and mips64 to arch options
> runqemu: Add qemush4 and qemumips64 knowledge
> netbase: Add interface files for qemumips64 and qemush4
> site/sh-common: Add missing caches variables to build glib-2.32
> xserver-xorg: Fix build for mips64
> tune-mips64.inc: Add new tune file for mips64 big-endian
> qemumips64.conf: Add machine configuration for mips64(eb)
> qemush4.conf: Add machine configuration for qemush4
We need to figure out what it means to add new qemu machines like this
to OE-Core. I'm not against it however I can't offer the Yocto Project's
resources to test them at this point as we're haven't budgeted for it.
The above patches make sense regardless so I've merged them except the
final two machine files. I'd like to hold off adding those until the
system builds and runs with our default kernel and qemu recipes.
Hopefully this lets you develop without having a huge queue of patches.
In the meantime we need to figure out the resource concern for testing.
Is there a commercial interest in these new machines from anyone who
could perhaps help with the resource issue?
Cheers,
Richard
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [RFC][PATCH 00/14] mips64 support and sh4 support
2012-05-21 3:35 [RFC][PATCH 00/14] mips64 support and sh4 support Khem Raj
` (14 preceding siblings ...)
2012-05-21 8:21 ` [RFC][PATCH 00/14] mips64 support and sh4 support Richard Purdie
@ 2012-05-21 12:43 ` Bruce Ashfield
15 siblings, 0 replies; 19+ messages in thread
From: Bruce Ashfield @ 2012-05-21 12:43 UTC (permalink / raw)
To: Patches and discussions about the oe-core layer
On Mon, May 21, 2012 at 12:35 AM, Khem Raj <raj.khem@gmail.com> wrote:
> This patchset adds required bits into metadata for having
> mips64/n64 support. I have tested the core-image-sato and core-image-minimal
> builds and boots on qemumips64 and runs gcc regression testsuite.
> It needs linux-yocto-dev kernel for now which can be obtained from
And as an extra point on this, I have a full _3.4 recipe prep'd, but
vacation reared
it's ugly head. I'll send the changes out when I return (or sooner if
I sneak away
to a decent computer and internet connection :).
The series looks good to me, thanks Khem!
Bruce
> poky-extra repo. Additionally systemd-image on angstrom-next builds and boots
> fine on qemumips64 as well.
>
> Additionally it also adds bits to have SH4 root file systems to be
> able to built and again core-image-sato builds for sh4 however qemu
> machine support is not yet done but root file sytem boots fine on
> real hardware.
>
> The images are tested on both eglibc and uclibc.
>
> Any help in providing feedback or testing these patches is welcome.
>
> I have tested them enough for over a month now.
>
> The following changes since commit 326563d5a897ae2dba7cfd8d73579d3d979d72c8:
>
> sstate.bbclass: Make sure we don't have an empty fixmepath file (2012-05-18 15:24:45 +0100)
>
> are available in the git repository at:
> git://git.openembedded.org/openembedded-core-contrib kraj/mips64
> http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=kraj/mips64
>
> Khem Raj (14):
> insane.bbclass: Add mips64{el} to known machines
> site: Add mips64 eglibc and uclibc site files
> gcc-4.6, gcc-4.7: Add support for building mips64 cross compiler
> binutils: Default to n64 when configured for mips64
> kernel-arch.bbclass: Map mips64{el} to mips KARCH
> eglibc-2.15: Support mips64
> libc-package: Add sh4 and mips64 to arch options
> runqemu: Add qemush4 and qemumips64 knowledge
> netbase: Add interface files for qemumips64 and qemush4
> site/sh-common: Add missing caches variables to build glib-2.32
> xserver-xorg: Fix build for mips64
> tune-mips64.inc: Add new tune file for mips64 big-endian
> qemumips64.conf: Add machine configuration for mips64(eb)
> qemush4.conf: Add machine configuration for qemush4
>
> meta/classes/insane.bbclass | 4 +
> meta/classes/kernel-arch.bbclass | 2 +-
> meta/classes/libc-package.bbclass | 3 +
> meta/conf/machine/include/tune-mips64.inc | 3 +
> meta/conf/machine/qemumips64.conf | 13 +++
> meta/conf/machine/qemush4.conf | 13 +++
> meta/recipes-core/eglibc/eglibc-locale.inc | 2 +-
> meta/recipes-core/eglibc/eglibc_2.15.bb | 2 +-
> .../netbase/netbase-4.47/qemumips64/interfaces | 8 ++
> .../netbase/netbase-4.47/qemush4/interfaces | 8 ++
> meta/recipes-core/netbase/netbase_4.47.bb | 4 +-
> .../binutils/mips64-default-ld-emulation.patch | 49 +++++++++
> meta/recipes-devtools/binutils/binutils_2.22.bb | 3 +-
> meta/recipes-devtools/gcc/gcc-4.6.inc | 1 +
> .../gcc/gcc-4.6/mips64-default-n64.patch | 32 ++++++
> meta/recipes-devtools/gcc/gcc-4.7.inc | 1 +
> .../gcc/gcc-4.7/mips64-default-n64.patch | 19 ++++
> meta/recipes-devtools/gcc/gcc-configure-common.inc | 4 +
> .../xorg-xserver/xserver-xorg-1.11.2.inc | 1 +
> .../xserver-xorg-1.11.2/mips64-compiler.patch | 29 +++++
> meta/site/mips64-linux | 82 +++++++++++++++
> meta/site/mips64-linux-uclibc | 83 +++++++++++++++
> meta/site/mips64el-linux | 82 +++++++++++++++
> meta/site/mips64el-linux-uclibc | 108 ++++++++++++++++++++
> meta/site/sh-common | 4 +
> scripts/runqemu | 10 ++-
> scripts/runqemu-internal | 35 ++++++-
> 27 files changed, 594 insertions(+), 11 deletions(-)
> create mode 100644 meta/conf/machine/include/tune-mips64.inc
> create mode 100644 meta/conf/machine/qemumips64.conf
> create mode 100644 meta/conf/machine/qemush4.conf
> create mode 100644 meta/recipes-core/netbase/netbase-4.47/qemumips64/interfaces
> create mode 100644 meta/recipes-core/netbase/netbase-4.47/qemush4/interfaces
> create mode 100644 meta/recipes-devtools/binutils/binutils/mips64-default-ld-emulation.patch
> create mode 100644 meta/recipes-devtools/gcc/gcc-4.6/mips64-default-n64.patch
> create mode 100644 meta/recipes-devtools/gcc/gcc-4.7/mips64-default-n64.patch
> create mode 100644 meta/recipes-graphics/xorg-xserver/xserver-xorg-1.11.2/mips64-compiler.patch
> create mode 100644 meta/site/mips64-linux
> create mode 100644 meta/site/mips64-linux-uclibc
> create mode 100644 meta/site/mips64el-linux
> create mode 100644 meta/site/mips64el-linux-uclibc
>
> --
> 1.7.5.4
>
>
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
--
"Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end"
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [RFC][PATCH 00/14] mips64 support and sh4 support
2012-05-21 8:21 ` [RFC][PATCH 00/14] mips64 support and sh4 support Richard Purdie
@ 2012-05-21 14:36 ` Khem Raj
2012-05-21 15:51 ` Mark Hatle
1 sibling, 0 replies; 19+ messages in thread
From: Khem Raj @ 2012-05-21 14:36 UTC (permalink / raw)
To: Patches and discussions about the oe-core layer
[-- Attachment #1: Type: text/plain, Size: 3327 bytes --]
On Monday, May 21, 2012, Richard Purdie wrote:
> On Sun, 2012-05-20 at 20:35 -0700, Khem Raj wrote:
> > This patchset adds required bits into metadata for having
> > mips64/n64 support. I have tested the core-image-sato and
> core-image-minimal
> > builds and boots on qemumips64 and runs gcc regression testsuite.
> > It needs linux-yocto-dev kernel for now which can be obtained from
> > poky-extra repo. Additionally systemd-image on angstrom-next builds and
> boots
> > fine on qemumips64 as well.
> >
> > Additionally it also adds bits to have SH4 root file systems to be
> > able to built and again core-image-sato builds for sh4 however qemu
> > machine support is not yet done but root file sytem boots fine on
> > real hardware.
> >
> > The images are tested on both eglibc and uclibc.
> >
> > Any help in providing feedback or testing these patches is welcome.
> >
> > I have tested them enough for over a month now.
> >
> > The following changes since commit
> 326563d5a897ae2dba7cfd8d73579d3d979d72c8:
> >
> > sstate.bbclass: Make sure we don't have an empty fixmepath file
> (2012-05-18 15:24:45 +0100)
> >
> > are available in the git repository at:
> > git://git.openembedded.org/openembedded-core-contrib kraj/mips64
> >
> http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=kraj/mips64
> >
> > Khem Raj (14):
> > insane.bbclass: Add mips64{el} to known machines
> > site: Add mips64 eglibc and uclibc site files
> > gcc-4.6, gcc-4.7: Add support for building mips64 cross compiler
> > binutils: Default to n64 when configured for mips64
> > kernel-arch.bbclass: Map mips64{el} to mips KARCH
> > eglibc-2.15: Support mips64
> > libc-package: Add sh4 and mips64 to arch options
> > runqemu: Add qemush4 and qemumips64 knowledge
> > netbase: Add interface files for qemumips64 and qemush4
> > site/sh-common: Add missing caches variables to build glib-2.32
> > xserver-xorg: Fix build for mips64
> > tune-mips64.inc: Add new tune file for mips64 big-endian
> > qemumips64.conf: Add machine configuration for mips64(eb)
> > qemush4.conf: Add machine configuration for qemush4
>
>
> We need to figure out what it means to add new qemu machines like this
> to OE-Core. I'm not against it however I can't offer the Yocto Project's
> resources to test them at this point as we're haven't budgeted for it.
Yes absolutely, in another version Actually I have these machines in a
separate later
Called meta-qemuextra may be such a layer would make sense ?
>
> The above patches make sense regardless so I've merged them except the
> final two machine files. I'd like to hold off adding those until the
> system builds and runs with our default kernel and qemu recipes.
> Hopefully this lets you develop without having a huge queue of patches.
>
> In the meantime we need to figure out the resource concern for testing.
> Is there a commercial interest in these new machines from anyone who
> could perhaps help with the resource issue?
>
> Cheers,
>
> Richard
>
>
>
>
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org <javascript:;>
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
>
[-- Attachment #2: Type: text/html, Size: 4315 bytes --]
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [RFC][PATCH 00/14] mips64 support and sh4 support
2012-05-21 8:21 ` [RFC][PATCH 00/14] mips64 support and sh4 support Richard Purdie
2012-05-21 14:36 ` Khem Raj
@ 2012-05-21 15:51 ` Mark Hatle
1 sibling, 0 replies; 19+ messages in thread
From: Mark Hatle @ 2012-05-21 15:51 UTC (permalink / raw)
To: openembedded-core
On 5/21/12 3:21 AM, Richard Purdie wrote:
> On Sun, 2012-05-20 at 20:35 -0700, Khem Raj wrote:
>> This patchset adds required bits into metadata for having
>> mips64/n64 support. I have tested the core-image-sato and core-image-minimal
>> builds and boots on qemumips64 and runs gcc regression testsuite.
>> It needs linux-yocto-dev kernel for now which can be obtained from
>> poky-extra repo. Additionally systemd-image on angstrom-next builds and boots
>> fine on qemumips64 as well.
> We need to figure out what it means to add new qemu machines like this
> to OE-Core. I'm not against it however I can't offer the Yocto Project's
> resources to test them at this point as we're haven't budgeted for it.
>
> The above patches make sense regardless so I've merged them except the
> final two machine files. I'd like to hold off adding those until the
> system builds and runs with our default kernel and qemu recipes.
> Hopefully this lets you develop without having a huge queue of patches.
>
> In the meantime we need to figure out the resource concern for testing.
> Is there a commercial interest in these new machines from anyone who
> could perhaps help with the resource issue?
From a commercial interest standpoint, I don't know if there is any with SH4.
For the company I work for, SH has been so minor that we likely wouldn't
consider it significant enough to spend effort on.
However, MIPS64 is completely different. There are numerous MIPS64 processors
and such, and I strongly advocate OE (and Yocto Project) support for MIPS64.
One thing to note, it should be possible to use the MIPS64 QEMU to replace the
"qemumips" configuration already in OE-core. Then the qemumips64 can be used to
validation, mips (o32), mips64 (n64) and eventually mips64 (n32) binaries once
they are available. This would also be a good target to validation complex
multilib sets on.
--Mark
> Cheers,
>
> Richard
>
>
>
>
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
^ permalink raw reply [flat|nested] 19+ messages in thread
end of thread, other threads:[~2012-05-21 16:01 UTC | newest]
Thread overview: 19+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-05-21 3:35 [RFC][PATCH 00/14] mips64 support and sh4 support Khem Raj
2012-05-21 3:35 ` [PATCH 01/14] insane.bbclass: Add mips64{el} to known machines Khem Raj
2012-05-21 3:35 ` [PATCH 02/14] site: Add mips64 eglibc and uclibc site files Khem Raj
2012-05-21 3:35 ` [PATCH 03/14] gcc-4.6, gcc-4.7: Add support for building mips64 cross compiler Khem Raj
2012-05-21 3:35 ` [PATCH 04/14] binutils: Default to n64 when configured for mips64 Khem Raj
2012-05-21 3:35 ` [PATCH 05/14] kernel-arch.bbclass: Map mips64{el} to mips KARCH Khem Raj
2012-05-21 3:35 ` [PATCH 06/14] eglibc-2.15: Support mips64 Khem Raj
2012-05-21 3:35 ` [PATCH 07/14] libc-package: Add sh4 and mips64 to arch options Khem Raj
2012-05-21 3:35 ` [PATCH 08/14] runqemu: Add qemush4 and qemumips64 knowledge Khem Raj
2012-05-21 3:35 ` [PATCH 09/14] netbase: Add interface files for qemumips64 and qemush4 Khem Raj
2012-05-21 3:35 ` [PATCH 10/14] site/sh-common: Add missing caches variables to build glib-2.32 Khem Raj
2012-05-21 3:35 ` [PATCH 11/14] xserver-xorg: Fix build for mips64 Khem Raj
2012-05-21 3:35 ` [PATCH 12/14] tune-mips64.inc: Add new tune file for mips64 big-endian Khem Raj
2012-05-21 3:35 ` [PATCH 13/14] qemumips64.conf: Add machine configuration for mips64(eb) Khem Raj
2012-05-21 3:35 ` [PATCH 14/14] qemush4.conf: Add machine configuration for qemush4 Khem Raj
2012-05-21 8:21 ` [RFC][PATCH 00/14] mips64 support and sh4 support Richard Purdie
2012-05-21 14:36 ` Khem Raj
2012-05-21 15:51 ` Mark Hatle
2012-05-21 12:43 ` Bruce Ashfield
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.