openSUSE Commits
Threads by month
- ----- 2025 -----
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2006 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
October 2011
- 1 participants
- 1929 discussions
Hello community,
here is the log from the commit of package scim-bridge for openSUSE:Factory checked in at 2011-10-29 08:01:04
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/scim-bridge (Old)
and /work/SRC/openSUSE:Factory/.scim-bridge.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "scim-bridge", Maintainer is "FJKong(a)suse.com"
Changes:
--------
--- /work/SRC/openSUSE:Factory/scim-bridge/scim-bridge.changes 2011-10-12 16:15:36.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.scim-bridge.new/scim-bridge.changes 2011-10-29 08:01:06.000000000 +0200
@@ -1,0 +2,5 @@
+Fri Oct 28 22:27:40 CEST 2011 - tiwai(a)suse.de
+
+- Add the fallback to xim for GTK3 (bnc#723382)
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ etc-x11-xim.d-scim-bridge ++++++
--- /var/tmp/diff_new_pack.y6Xi1s/_old 2011-10-29 08:01:07.000000000 +0200
+++ /var/tmp/diff_new_pack.y6Xi1s/_new 2011-10-29 08:01:07.000000000 +0200
@@ -7,7 +7,7 @@
fi
export XMODIFIERS=@im=SCIM
-export GTK_IM_MODULE=scim-bridge
+export GTK_IM_MODULE="scim-bridge:xim"
export QT_IM_SWITCHER=imsw-multi
export QT_IM_MODULE=scim-bridge
case "$WINDOWMANAGER" in
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package scim for openSUSE:12.1 checked in at 2011-10-29 08:00:58
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:12.1/scim (Old)
and /work/SRC/openSUSE:12.1/.scim.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "scim", Maintainer is "FJKong(a)suse.com"
Changes:
--------
--- /work/SRC/openSUSE:12.1/scim/scim.changes 2011-10-24 13:25:40.000000000 +0200
+++ /work/SRC/openSUSE:12.1/.scim.new/scim.changes 2011-10-29 08:00:59.000000000 +0200
@@ -1,0 +2,5 @@
+Fri Oct 28 22:26:43 CEST 2011 - tiwai(a)suse.de
+
+- Add the fallback to xim for GTK3 (bnc#723382)
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ etc-x11-xim.d-scim ++++++
--- /var/tmp/diff_new_pack.MgxnWh/_old 2011-10-29 08:00:59.000000000 +0200
+++ /var/tmp/diff_new_pack.MgxnWh/_new 2011-10-29 08:00:59.000000000 +0200
@@ -7,7 +7,7 @@
fi
export XMODIFIERS=@im=SCIM
-export GTK_IM_MODULE=scim
+export GTK_IM_MODULE="scim:xim"
export QT_IM_SWITCHER=imsw-multi
export QT_IM_MODULE=scim
case "$WINDOWMANAGER" in
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package scim for openSUSE:Factory checked in at 2011-10-29 08:00:55
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/scim (Old)
and /work/SRC/openSUSE:Factory/.scim.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "scim", Maintainer is "FJKong(a)suse.com"
Changes:
--------
--- /work/SRC/openSUSE:Factory/scim/scim.changes 2011-10-12 16:15:27.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.scim.new/scim.changes 2011-10-29 08:00:56.000000000 +0200
@@ -1,0 +2,5 @@
+Fri Oct 28 22:26:43 CEST 2011 - tiwai(a)suse.de
+
+- Add the fallback to xim for GTK3 (bnc#723382)
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ etc-x11-xim.d-scim ++++++
--- /var/tmp/diff_new_pack.yEs1I3/_old 2011-10-29 08:00:58.000000000 +0200
+++ /var/tmp/diff_new_pack.yEs1I3/_new 2011-10-29 08:00:58.000000000 +0200
@@ -7,7 +7,7 @@
fi
export XMODIFIERS=@im=SCIM
-export GTK_IM_MODULE=scim
+export GTK_IM_MODULE="scim:xim"
export QT_IM_SWITCHER=imsw-multi
export QT_IM_MODULE=scim
case "$WINDOWMANAGER" in
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package llvm for openSUSE:12.1 checked in at 2011-10-29 08:00:47
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:12.1/llvm (Old)
and /work/SRC/openSUSE:12.1/.llvm.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "llvm", Maintainer is "MHopf(a)novell.com"
Changes:
--------
--- /work/SRC/openSUSE:12.1/llvm/llvm.changes 2011-10-29 00:23:45.000000000 +0200
+++ /work/SRC/openSUSE:12.1/.llvm.new/llvm.changes 2011-10-29 08:00:56.000000000 +0200
@@ -1,0 +2,5 @@
+Fri Oct 28 20:54:16 UTC 2011 - idonmez(a)suse.com
+
+- Add llvm-pr9614-part{1,2}.patch to fix LLVM PR9614
+
+-------------------------------------------------------------------
New:
----
llvm-pr9614-part1.patch
llvm-pr9614-part2.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ llvm.spec ++++++
--- /var/tmp/diff_new_pack.IYAZpu/_old 2011-10-29 08:00:56.000000000 +0200
+++ /var/tmp/diff_new_pack.IYAZpu/_new 2011-10-29 08:00:56.000000000 +0200
@@ -40,6 +40,9 @@
Patch2: clang-cmake-lib.patch
# PATCH-FIX-OPENSUSE assume-opensuse.patch idoenmez(a)suse.de -- Always enable openSUSE/SUSE features
Patch3: assume-opensuse.patch
+# PATCH-FIX-UPSTREAM llvm-pr9614-part1.patch idoenmez(a)suse.de -- Fix LLVM PR9614
+Patch4: llvm-pr9614-part1.patch
+Patch5: llvm-pr9614-part2.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: autoconf
BuildRequires: automake
@@ -132,6 +135,11 @@
%patch2
%patch3
+pushd tools/clang
+%patch4 -p2
+%patch5 -p2
+popd
+
sed -i s,SVN_REVISION,\"%{_revision}\",g tools/clang/lib/Basic/Version.cpp
%build
++++++ llvm-pr9614-part1.patch ++++++
--- cfe/trunk/lib/CodeGen/CodeGenModule.cpp 2011/10/26 20:33:43 143048
+++ cfe/trunk/lib/CodeGen/CodeGenModule.cpp 2011/10/26 20:41:06 143049
@@ -29,6 +29,7 @@
#include "clang/AST/DeclTemplate.h"
#include "clang/AST/Mangle.h"
#include "clang/AST/RecordLayout.h"
+#include "clang/AST/RecursiveASTVisitor.h"
#include "clang/Basic/Diagnostic.h"
#include "clang/Basic/SourceManager.h"
#include "clang/Basic/TargetInfo.h"
@@ -858,6 +859,62 @@
}
}
+namespace {
+ struct FunctionIsDirectlyRecursive :
+ public RecursiveASTVisitor<FunctionIsDirectlyRecursive> {
+ const StringRef Name;
+ bool Result;
+ FunctionIsDirectlyRecursive(const FunctionDecl *F) :
+ Name(F->getName()), Result(false) {
+ }
+ typedef RecursiveASTVisitor<FunctionIsDirectlyRecursive> Base;
+
+ bool TraverseCallExpr(CallExpr *E) {
+ const Decl *D = E->getCalleeDecl();
+ if (!D)
+ return true;
+ AsmLabelAttr *Attr = D->getAttr<AsmLabelAttr>();
+ if (!Attr)
+ return true;
+ if (Name == Attr->getLabel()) {
+ Result = true;
+ return false;
+ }
+ return true;
+ }
+ };
+}
+
+// isTriviallyRecursiveViaAsm - Check if this function calls another
+// decl that, because of the asm attribute, ends up pointing to itself.
+bool
+CodeGenModule::isTriviallyRecursiveViaAsm(const FunctionDecl *F) {
+ if (getCXXABI().getMangleContext().shouldMangleDeclName(F))
+ return false;
+
+ FunctionIsDirectlyRecursive Walker(F);
+ Walker.TraverseFunctionDecl(const_cast<FunctionDecl*>(F));
+ return Walker.Result;
+}
+
+bool
+CodeGenModule::shouldEmitFunction(const FunctionDecl *F) {
+ if (getFunctionLinkage(F) != llvm::Function::AvailableExternallyLinkage)
+ return true;
+ if (F->hasAttr<AlwaysInlineAttr>())
+ return true;
+ if (CodeGenOpts.OptimizationLevel == 0)
+ return false;
+ // PR9614. Avoid cases where the source code is lying to us. An available
+ // externally function should have an equivalent function somewhere else,
+ // but a function that calls itself is clearly not equivalent to the real
+ // implementation.
+ // This happens in glibc's btowc and in some configure checks.
+ if (isTriviallyRecursiveViaAsm(F))
+ return false;
+ return true;
+}
+
void CodeGenModule::EmitGlobalDefinition(GlobalDecl GD) {
const ValueDecl *D = cast<ValueDecl>(GD.getDecl());
@@ -868,10 +925,7 @@
if (const FunctionDecl *Function = dyn_cast<FunctionDecl>(D)) {
// At -O0, don't generate IR for functions with available_externally
// linkage.
- if (CodeGenOpts.OptimizationLevel == 0 &&
- !Function->hasAttr<AlwaysInlineAttr>() &&
- getFunctionLinkage(Function)
- == llvm::Function::AvailableExternallyLinkage)
+ if (!shouldEmitFunction(Function))
return;
if (const CXXMethodDecl *Method = dyn_cast<CXXMethodDecl>(D)) {
--- cfe/trunk/lib/CodeGen/CodeGenModule.h 2011/10/26 20:33:43 143048
+++ cfe/trunk/lib/CodeGen/CodeGenModule.h 2011/10/26 20:41:06 143049
@@ -324,6 +324,8 @@
void createOpenCLRuntime();
void createCUDARuntime();
+ bool isTriviallyRecursiveViaAsm(const FunctionDecl *F);
+ bool shouldEmitFunction(const FunctionDecl *F);
llvm::LLVMContext &VMContext;
/// @name Cache for Blocks Runtime Globals
++++++ llvm-pr9614-part2.patch ++++++
--- cfe/trunk/lib/CodeGen/CodeGenModule.cpp 2011/10/28 20:43:47 143221
+++ cfe/trunk/lib/CodeGen/CodeGenModule.cpp 2011/10/28 20:43:56 143222
@@ -901,18 +901,15 @@
CodeGenModule::shouldEmitFunction(const FunctionDecl *F) {
if (getFunctionLinkage(F) != llvm::Function::AvailableExternallyLinkage)
return true;
- if (F->hasAttr<AlwaysInlineAttr>())
- return true;
- if (CodeGenOpts.OptimizationLevel == 0)
+ if (CodeGenOpts.OptimizationLevel == 0 &&
+ !F->hasAttr<AlwaysInlineAttr>())
return false;
// PR9614. Avoid cases where the source code is lying to us. An available
// externally function should have an equivalent function somewhere else,
// but a function that calls itself is clearly not equivalent to the real
// implementation.
// This happens in glibc's btowc and in some configure checks.
- if (isTriviallyRecursiveViaAsm(F))
- return false;
- return true;
+ return !isTriviallyRecursiveViaAsm(F);
}
void CodeGenModule::EmitGlobalDefinition(GlobalDecl GD) {
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package llvm for openSUSE:Factory checked in at 2011-10-29 08:00:43
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/llvm (Old)
and /work/SRC/openSUSE:Factory/.llvm.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "llvm", Maintainer is "MHopf(a)novell.com"
Changes:
--------
--- /work/SRC/openSUSE:Factory/llvm/llvm.changes 2011-10-28 19:57:56.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.llvm.new/llvm.changes 2011-10-29 08:00:44.000000000 +0200
@@ -1,0 +2,5 @@
+Fri Oct 28 20:54:16 UTC 2011 - idonmez(a)suse.com
+
+- Add llvm-pr9614-part{1,2}.patch to fix LLVM PR9614
+
+-------------------------------------------------------------------
New:
----
llvm-pr9614-part1.patch
llvm-pr9614-part2.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ llvm.spec ++++++
--- /var/tmp/diff_new_pack.Fq8Hd4/_old 2011-10-29 08:00:45.000000000 +0200
+++ /var/tmp/diff_new_pack.Fq8Hd4/_new 2011-10-29 08:00:45.000000000 +0200
@@ -40,6 +40,9 @@
Patch2: clang-cmake-lib.patch
# PATCH-FIX-OPENSUSE assume-opensuse.patch idoenmez(a)suse.de -- Always enable openSUSE/SUSE features
Patch3: assume-opensuse.patch
+# PATCH-FIX-UPSTREAM llvm-pr9614-part1.patch idoenmez(a)suse.de -- Fix LLVM PR9614
+Patch4: llvm-pr9614-part1.patch
+Patch5: llvm-pr9614-part2.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: autoconf
BuildRequires: automake
@@ -132,6 +135,11 @@
%patch2
%patch3
+pushd tools/clang
+%patch4 -p2
+%patch5 -p2
+popd
+
sed -i s,SVN_REVISION,\"%{_revision}\",g tools/clang/lib/Basic/Version.cpp
%build
++++++ llvm-pr9614-part1.patch ++++++
--- cfe/trunk/lib/CodeGen/CodeGenModule.cpp 2011/10/26 20:33:43 143048
+++ cfe/trunk/lib/CodeGen/CodeGenModule.cpp 2011/10/26 20:41:06 143049
@@ -29,6 +29,7 @@
#include "clang/AST/DeclTemplate.h"
#include "clang/AST/Mangle.h"
#include "clang/AST/RecordLayout.h"
+#include "clang/AST/RecursiveASTVisitor.h"
#include "clang/Basic/Diagnostic.h"
#include "clang/Basic/SourceManager.h"
#include "clang/Basic/TargetInfo.h"
@@ -858,6 +859,62 @@
}
}
+namespace {
+ struct FunctionIsDirectlyRecursive :
+ public RecursiveASTVisitor<FunctionIsDirectlyRecursive> {
+ const StringRef Name;
+ bool Result;
+ FunctionIsDirectlyRecursive(const FunctionDecl *F) :
+ Name(F->getName()), Result(false) {
+ }
+ typedef RecursiveASTVisitor<FunctionIsDirectlyRecursive> Base;
+
+ bool TraverseCallExpr(CallExpr *E) {
+ const Decl *D = E->getCalleeDecl();
+ if (!D)
+ return true;
+ AsmLabelAttr *Attr = D->getAttr<AsmLabelAttr>();
+ if (!Attr)
+ return true;
+ if (Name == Attr->getLabel()) {
+ Result = true;
+ return false;
+ }
+ return true;
+ }
+ };
+}
+
+// isTriviallyRecursiveViaAsm - Check if this function calls another
+// decl that, because of the asm attribute, ends up pointing to itself.
+bool
+CodeGenModule::isTriviallyRecursiveViaAsm(const FunctionDecl *F) {
+ if (getCXXABI().getMangleContext().shouldMangleDeclName(F))
+ return false;
+
+ FunctionIsDirectlyRecursive Walker(F);
+ Walker.TraverseFunctionDecl(const_cast<FunctionDecl*>(F));
+ return Walker.Result;
+}
+
+bool
+CodeGenModule::shouldEmitFunction(const FunctionDecl *F) {
+ if (getFunctionLinkage(F) != llvm::Function::AvailableExternallyLinkage)
+ return true;
+ if (F->hasAttr<AlwaysInlineAttr>())
+ return true;
+ if (CodeGenOpts.OptimizationLevel == 0)
+ return false;
+ // PR9614. Avoid cases where the source code is lying to us. An available
+ // externally function should have an equivalent function somewhere else,
+ // but a function that calls itself is clearly not equivalent to the real
+ // implementation.
+ // This happens in glibc's btowc and in some configure checks.
+ if (isTriviallyRecursiveViaAsm(F))
+ return false;
+ return true;
+}
+
void CodeGenModule::EmitGlobalDefinition(GlobalDecl GD) {
const ValueDecl *D = cast<ValueDecl>(GD.getDecl());
@@ -868,10 +925,7 @@
if (const FunctionDecl *Function = dyn_cast<FunctionDecl>(D)) {
// At -O0, don't generate IR for functions with available_externally
// linkage.
- if (CodeGenOpts.OptimizationLevel == 0 &&
- !Function->hasAttr<AlwaysInlineAttr>() &&
- getFunctionLinkage(Function)
- == llvm::Function::AvailableExternallyLinkage)
+ if (!shouldEmitFunction(Function))
return;
if (const CXXMethodDecl *Method = dyn_cast<CXXMethodDecl>(D)) {
--- cfe/trunk/lib/CodeGen/CodeGenModule.h 2011/10/26 20:33:43 143048
+++ cfe/trunk/lib/CodeGen/CodeGenModule.h 2011/10/26 20:41:06 143049
@@ -324,6 +324,8 @@
void createOpenCLRuntime();
void createCUDARuntime();
+ bool isTriviallyRecursiveViaAsm(const FunctionDecl *F);
+ bool shouldEmitFunction(const FunctionDecl *F);
llvm::LLVMContext &VMContext;
/// @name Cache for Blocks Runtime Globals
++++++ llvm-pr9614-part2.patch ++++++
--- cfe/trunk/lib/CodeGen/CodeGenModule.cpp 2011/10/28 20:43:47 143221
+++ cfe/trunk/lib/CodeGen/CodeGenModule.cpp 2011/10/28 20:43:56 143222
@@ -901,18 +901,15 @@
CodeGenModule::shouldEmitFunction(const FunctionDecl *F) {
if (getFunctionLinkage(F) != llvm::Function::AvailableExternallyLinkage)
return true;
- if (F->hasAttr<AlwaysInlineAttr>())
- return true;
- if (CodeGenOpts.OptimizationLevel == 0)
+ if (CodeGenOpts.OptimizationLevel == 0 &&
+ !F->hasAttr<AlwaysInlineAttr>())
return false;
// PR9614. Avoid cases where the source code is lying to us. An available
// externally function should have an equivalent function somewhere else,
// but a function that calls itself is clearly not equivalent to the real
// implementation.
// This happens in glibc's btowc and in some configure checks.
- if (isTriviallyRecursiveViaAsm(F))
- return false;
- return true;
+ return !isTriviallyRecursiveViaAsm(F);
}
void CodeGenModule::EmitGlobalDefinition(GlobalDecl GD) {
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package kvm for openSUSE:12.1 checked in at 2011-10-29 08:00:37
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:12.1/kvm (Old)
and /work/SRC/openSUSE:12.1/.kvm.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kvm", Maintainer is "BROGERS(a)suse.com"
Changes:
--------
--- /work/SRC/openSUSE:12.1/kvm/kvm.changes 2011-10-24 12:58:52.000000000 +0200
+++ /work/SRC/openSUSE:12.1/.kvm.new/kvm.changes 2011-10-29 08:00:39.000000000 +0200
@@ -1,0 +2,7 @@
+Wed Oct 26 20:02:43 UTC 2011 - brogers(a)suse.com
+
+- Update to qemu-kvm v0.15.1
+ - see http://wiki.qemu.org/ChangeLog/0.15 for details
+- update to most recent ipxe upstream development sources
+
+-------------------------------------------------------------------
Old:
----
ipxe-git-149b502.tar.bz2
kvm-qemu-preXX-Fix-termination-by-signal-with-no-shutdown.patch
qemu-kvm-0.15.0.tar.bz2
New:
----
ipxe-git-aaf7a35.tar.bz2
qemu-kvm-0.15.1.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kvm.spec ++++++
--- /var/tmp/diff_new_pack.0s7OTK/_old 2011-10-29 08:00:41.000000000 +0200
+++ /var/tmp/diff_new_pack.0s7OTK/_new 2011-10-29 08:00:41.000000000 +0200
@@ -20,10 +20,10 @@
%bcond_with spice
-%define package_true_version 0.15.0
-%define package_base_version 0.15.0
+%define package_true_version 0.15.1
+%define package_base_version 0.15.1
%define bios_id seabios-1.6.3
-%define pxe_rom_id ipxe-git-149b502
+%define pxe_rom_id ipxe-git-aaf7a35
%define vgabios_id vgabios-0.6c
# sgabios comes from: http://sgabios.googlecode.com/svn/trunk, Rev 8
%define sgabios_id sgabios
@@ -87,7 +87,7 @@
Summary: Kernel-based Virtual Machine
Url: http://www.linux-kvm.org
Version: %{package_true_version}
-Release: 2
+Release: 0
Source0: qemu-%{name}-%{package_true_version}.tar.bz2
Source1: 60-kvm.rules
Source2: qemu-ifup
@@ -126,10 +126,9 @@
Patch104: kvm-qemu-preXX-vns-tls-don-t-use-depricated-gnutls-functions.patch
Patch105: kvm-qemu-preXX-qemu_vmalloc-align-properly-for-transparent-hugepag.patch
Patch106: kvm-qemu-madvise-hugepages.patch
-Patch107: kvm-qemu-preXX-Fix-termination-by-signal-with-no-shutdown.patch
-Patch108: kvm-qemu-preXX-block-curl-Implement-a-flush-function-on-the-fd-han.patch
-Patch109: kvm-qemu-preXX-block-curl-Don-t-finish-AIOCBs-too-early.patch
-Patch110: kvm-qemu-preXX-e1000-Don-t-set-the-Capabilities-List-bit.patch
+Patch107: kvm-qemu-preXX-block-curl-Implement-a-flush-function-on-the-fd-han.patch
+Patch108: kvm-qemu-preXX-block-curl-Don-t-finish-AIOCBs-too-early.patch
+Patch109: kvm-qemu-preXX-e1000-Don-t-set-the-Capabilities-List-bit.patch
Patch150: qemu-kvm-common-code-fixes-for-s390-build.patch
@@ -229,7 +228,6 @@
%patch107 -p1
%patch108 -p1
%patch109 -p1
-%patch110 -p1
%patch150 -p1
++++++ ipxe-git-149b502.tar.bz2 -> ipxe-git-aaf7a35.tar.bz2 ++++++
++++ 81233 lines of diff (skipped)
++++++ qemu-kvm-0.15.0.tar.bz2 -> qemu-kvm-0.15.1.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qemu-kvm-0.15.0/VERSION new/qemu-kvm-0.15.1/VERSION
--- old/qemu-kvm-0.15.0/VERSION 2011-08-09 14:40:29.000000000 +0200
+++ new/qemu-kvm-0.15.1/VERSION 2011-10-19 15:54:48.000000000 +0200
@@ -1 +1 @@
-0.15.0
+0.15.1
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qemu-kvm-0.15.0/arm.ld new/qemu-kvm-0.15.1/arm.ld
--- old/qemu-kvm-0.15.0/arm.ld 2011-08-09 14:40:29.000000000 +0200
+++ new/qemu-kvm-0.15.1/arm.ld 2011-10-19 15:54:48.000000000 +0200
@@ -71,23 +71,23 @@
.data1 : { *(.data1) }
.preinit_array :
{
- PROVIDE_HIDDEN (__preinit_array_start = .);
+ PROVIDE (__preinit_array_start = .);
KEEP (*(.preinit_array))
- PROVIDE_HIDDEN (__preinit_array_end = .);
+ PROVIDE (__preinit_array_end = .);
}
.init_array :
{
- PROVIDE_HIDDEN (__init_array_start = .);
+ PROVIDE (__init_array_start = .);
KEEP (*(SORT(.init_array.*)))
KEEP (*(.init_array))
- PROVIDE_HIDDEN (__init_array_end = .);
+ PROVIDE (__init_array_end = .);
}
.fini_array :
{
- PROVIDE_HIDDEN (__fini_array_start = .);
+ PROVIDE (__fini_array_start = .);
KEEP (*(.fini_array))
KEEP (*(SORT(.fini_array.*)))
- PROVIDE_HIDDEN (__fini_array_end = .);
+ PROVIDE (__fini_array_end = .);
}
.ctors :
{
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qemu-kvm-0.15.0/block/qed-table.c new/qemu-kvm-0.15.1/block/qed-table.c
--- old/qemu-kvm-0.15.0/block/qed-table.c 2011-08-09 14:40:29.000000000 +0200
+++ new/qemu-kvm-0.15.1/block/qed-table.c 2011-10-19 15:54:48.000000000 +0200
@@ -230,21 +230,21 @@
QEDRequest *request = read_l2_table_cb->request;
BDRVQEDState *s = read_l2_table_cb->s;
CachedL2Table *l2_table = request->l2_table;
+ uint64_t l2_offset = read_l2_table_cb->l2_offset;
if (ret) {
/* can't trust loaded L2 table anymore */
qed_unref_l2_cache_entry(l2_table);
request->l2_table = NULL;
} else {
- l2_table->offset = read_l2_table_cb->l2_offset;
+ l2_table->offset = l2_offset;
qed_commit_l2_cache_entry(&s->l2_cache, l2_table);
/* This is guaranteed to succeed because we just committed the entry
* to the cache.
*/
- request->l2_table = qed_find_l2_cache_entry(&s->l2_cache,
- l2_table->offset);
+ request->l2_table = qed_find_l2_cache_entry(&s->l2_cache, l2_offset);
assert(request->l2_table != NULL);
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qemu-kvm-0.15.0/block/qed.c new/qemu-kvm-0.15.1/block/qed.c
--- old/qemu-kvm-0.15.0/block/qed.c 2011-08-09 14:40:29.000000000 +0200
+++ new/qemu-kvm-0.15.1/block/qed.c 2011-10-19 15:54:48.000000000 +0200
@@ -915,14 +915,14 @@
QEDAIOCB *acb = opaque;
BDRVQEDState *s = acb_to_s(acb);
CachedL2Table *l2_table = acb->request.l2_table;
+ uint64_t l2_offset = l2_table->offset;
qed_commit_l2_cache_entry(&s->l2_cache, l2_table);
/* This is guaranteed to succeed because we just committed the entry to the
* cache.
*/
- acb->request.l2_table = qed_find_l2_cache_entry(&s->l2_cache,
- l2_table->offset);
+ acb->request.l2_table = qed_find_l2_cache_entry(&s->l2_cache, l2_offset);
assert(acb->request.l2_table != NULL);
qed_aio_next_io(opaque, ret);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qemu-kvm-0.15.0/check-qjson.c new/qemu-kvm-0.15.1/check-qjson.c
--- old/qemu-kvm-0.15.0/check-qjson.c 2011-08-09 14:40:29.000000000 +0200
+++ new/qemu-kvm-0.15.1/check-qjson.c 2011-10-19 15:54:48.000000000 +0200
@@ -33,7 +33,8 @@
{ "\"\\n\"", "\n" },
{ "\"\\r\"", "\r" },
{ "\"\\t\"", "\t" },
- { "\"\\/\"", "\\/" },
+ { "\"/\"", "/" },
+ { "\"\\/\"", "/", .skip = 1 },
{ "\"\\\\\"", "\\" },
{ "\"\\\"\"", "\"" },
{ "\"hello world \\\"embedded string\\\"\"",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qemu-kvm-0.15.0/configure new/qemu-kvm-0.15.1/configure
--- old/qemu-kvm-0.15.0/configure 2011-08-09 14:40:29.000000000 +0200
+++ new/qemu-kvm-0.15.1/configure 2011-10-19 15:54:48.000000000 +0200
@@ -422,6 +422,7 @@
make="${MAKE-gmake}"
install="${INSTALL-ginstall}"
ld="gld"
+ smbd="${SMBD-/usr/sfw/sbin/smbd}"
needs_libsunmath="no"
solarisrev=`uname -r | cut -f2 -d.`
# have to select again, because `uname -m` returns i86pc
@@ -497,6 +498,7 @@
: ${make=${MAKE-make}}
: ${install=${INSTALL-install}}
: ${python=${PYTHON-python}}
+: ${smbd=${SMBD-/usr/sbin/smbd}}
if test "$mingw32" = "yes" ; then
EXESUF=".exe"
@@ -540,6 +542,8 @@
;;
--python=*) python="$optarg"
;;
+ --smbd=*) smbd="$optarg"
+ ;;
--extra-cflags=*)
;;
--extra-ldflags=*)
@@ -962,6 +966,7 @@
echo " --make=MAKE use specified make [$make]"
echo " --install=INSTALL use specified install [$install]"
echo " --python=PYTHON use specified python [$python]"
+echo " --smbd=SMBD use specified smbd [$smbd]"
echo " --static enable static build [$static]"
echo " --mandir=PATH install man pages in PATH"
echo " --datadir=PATH install firmware in PATH"
@@ -1548,11 +1553,17 @@
return 0;
}
EOF
+ if $pkg_config libpng --modversion >/dev/null 2>&1; then
+ vnc_png_cflags=`$pkg_config libpng --cflags 2> /dev/null`
+ vnc_png_libs=`$pkg_config libpng --libs 2> /dev/null`
+ else
vnc_png_cflags=""
vnc_png_libs="-lpng"
+ fi
if compile_prog "$vnc_png_cflags" "$vnc_png_libs" ; then
vnc_png=yes
libs_softmmu="$vnc_png_libs $libs_softmmu"
+ QEMU_CFLAGS="$QEMU_CFLAGS $vnc_png_cflags"
else
if test "$vnc_png" = "yes" ; then
feature_not_found "vnc-png"
@@ -1900,7 +1911,7 @@
##########################################
# pthread probe
-PTHREADLIBS_LIST="-lpthread -lpthreadGC2"
+PTHREADLIBS_LIST="-pthread -lpthread -lpthreadGC2"
pthread=no
cat > $TMPC << EOF
@@ -2694,6 +2705,9 @@
echo "make $make"
echo "install $install"
echo "python $python"
+if test "$slirp" = "yes" ; then
+ echo "smbd $smbd"
+fi
echo "host CPU $cpu"
echo "host big endian $bigendian"
echo "target list $target_list"
@@ -2855,6 +2869,7 @@
fi
if test "$slirp" = "yes" ; then
echo "CONFIG_SLIRP=y" >> $config_host_mak
+ echo "CONFIG_SMBD_COMMAND=\"$smbd\"" >> $config_host_mak
QEMU_INCLUDES="-I\$(SRC_PATH)/slirp $QEMU_INCLUDES"
fi
if test "$vde" = "yes" ; then
@@ -3112,9 +3127,9 @@
echo "ROMS=$roms" >> $config_host_mak
echo "MAKE=$make" >> $config_host_mak
echo "INSTALL=$install" >> $config_host_mak
-echo "INSTALL_DIR=$install -d -m0755 -p" >> $config_host_mak
-echo "INSTALL_DATA=$install -m0644 -p" >> $config_host_mak
-echo "INSTALL_PROG=$install -m0755 -p" >> $config_host_mak
+echo "INSTALL_DIR=$install -d -m 0755" >> $config_host_mak
+echo "INSTALL_DATA=$install -c -m 0644" >> $config_host_mak
+echo "INSTALL_PROG=$install -c -m 0755" >> $config_host_mak
echo "PYTHON=$python" >> $config_host_mak
echo "CC=$cc" >> $config_host_mak
echo "CC_I386=$cc_i386" >> $config_host_mak
@@ -3639,7 +3654,7 @@
DIRS="$DIRS fsdev ui"
DIRS="$DIRS qapi"
DIRS="$DIRS qga"
-FILES="Makefile tests/Makefile"
+FILES="Makefile tests/Makefile qdict-test-data.txt"
FILES="$FILES tests/cris/Makefile tests/cris/.gdbinit"
FILES="$FILES pc-bios/optionrom/Makefile pc-bios/keymaps"
FILES="$FILES pc-bios/spapr-rtas/Makefile"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qemu-kvm-0.15.0/hppa.ld new/qemu-kvm-0.15.1/hppa.ld
--- old/qemu-kvm-0.15.0/hppa.ld 2011-08-09 14:40:29.000000000 +0200
+++ new/qemu-kvm-0.15.1/hppa.ld 2011-10-19 15:54:48.000000000 +0200
@@ -75,36 +75,34 @@
.sbss2 : { *(.sbss2 .sbss2.* .gnu.linkonce.sb2.*) }
.PARISC.unwind : { *(.PARISC.unwind) }
.eh_frame_hdr : { *(.eh_frame_hdr) }
- .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) }
- .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) }
/* Adjust the address for the data segment. We want to adjust up to
the same address within the page on the next page up. */
. = ALIGN(0x10000) + (. & (0x10000 - 1));
/* Exception handling */
- .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) }
- .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) }
+ .eh_frame : { KEEP (*(.eh_frame)) }
+ .gcc_except_table : { *(.gcc_except_table .gcc_except_table.*) }
/* Thread Local Storage sections */
.tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) }
.tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) }
.preinit_array :
{
- PROVIDE_HIDDEN (__preinit_array_start = .);
+ PROVIDE (__preinit_array_start = .);
KEEP (*(.preinit_array))
- PROVIDE_HIDDEN (__preinit_array_end = .);
+ PROVIDE (__preinit_array_end = .);
}
.init_array :
{
- PROVIDE_HIDDEN (__init_array_start = .);
+ PROVIDE (__init_array_start = .);
KEEP (*(SORT(.init_array.*)))
KEEP (*(.init_array))
- PROVIDE_HIDDEN (__init_array_end = .);
+ PROVIDE (__init_array_end = .);
}
.fini_array :
{
- PROVIDE_HIDDEN (__fini_array_start = .);
+ PROVIDE (__fini_array_start = .);
KEEP (*(.fini_array))
KEEP (*(SORT(.fini_array.*)))
- PROVIDE_HIDDEN (__fini_array_end = .);
+ PROVIDE (__fini_array_end = .);
}
.ctors :
{
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qemu-kvm-0.15.0/i386.ld new/qemu-kvm-0.15.1/i386.ld
--- old/qemu-kvm-0.15.0/i386.ld 2011-08-09 14:40:29.000000000 +0200
+++ new/qemu-kvm-0.15.1/i386.ld 2011-10-19 15:54:48.000000000 +0200
@@ -42,16 +42,16 @@
.rel.plt :
{
*(.rel.plt)
- PROVIDE_HIDDEN (__rel_iplt_start = .);
+ PROVIDE (__rel_iplt_start = .);
*(.rel.iplt)
- PROVIDE_HIDDEN (__rel_iplt_end = .);
+ PROVIDE (__rel_iplt_end = .);
}
.rela.plt :
{
*(.rela.plt)
- PROVIDE_HIDDEN (__rela_iplt_start = .);
+ PROVIDE (__rela_iplt_start = .);
*(.rela.iplt)
- PROVIDE_HIDDEN (__rela_iplt_end = .);
+ PROVIDE (__rela_iplt_end = .);
}
.init : { *(.init) } =0x47ff041f
.text :
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qemu-kvm-0.15.0/mips.ld new/qemu-kvm-0.15.1/mips.ld
--- old/qemu-kvm-0.15.0/mips.ld 2011-08-09 14:40:29.000000000 +0200
+++ new/qemu-kvm-0.15.1/mips.ld 2011-10-19 15:54:48.000000000 +0200
@@ -79,36 +79,34 @@
}
.sbss2 : { *(.sbss2 .sbss2.* .gnu.linkonce.sb2.*) }
.eh_frame_hdr : { *(.eh_frame_hdr) }
- .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) }
- .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) }
/* Adjust the address for the data segment. We want to adjust up to
the same address within the page on the next page up. */
. = ALIGN (0x40000) - ((0x40000 - .) & (0x40000 - 1)); . = DATA_SEGMENT_ALIGN (0x40000, 0x1000);
/* Exception handling */
- .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) }
- .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) }
+ .eh_frame : { KEEP (*(.eh_frame)) }
+ .gcc_except_table : { *(.gcc_except_table .gcc_except_table.*) }
/* Thread Local Storage sections */
.tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) }
.tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) }
.preinit_array :
{
- PROVIDE_HIDDEN (__preinit_array_start = .);
+ PROVIDE (__preinit_array_start = .);
KEEP (*(.preinit_array))
- PROVIDE_HIDDEN (__preinit_array_end = .);
+ PROVIDE (__preinit_array_end = .);
}
.init_array :
{
- PROVIDE_HIDDEN (__init_array_start = .);
+ PROVIDE (__init_array_start = .);
KEEP (*(SORT(.init_array.*)))
KEEP (*(.init_array))
- PROVIDE_HIDDEN (__init_array_end = .);
+ PROVIDE (__init_array_end = .);
}
.fini_array :
{
- PROVIDE_HIDDEN (__fini_array_start = .);
+ PROVIDE (__fini_array_start = .);
KEEP (*(.fini_array))
KEEP (*(SORT(.fini_array.*)))
- PROVIDE_HIDDEN (__fini_array_end = .);
+ PROVIDE (__fini_array_end = .);
}
.ctors :
{
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qemu-kvm-0.15.0/monitor.c new/qemu-kvm-0.15.1/monitor.c
--- old/qemu-kvm-0.15.0/monitor.c 2011-08-09 14:40:29.000000000 +0200
+++ new/qemu-kvm-0.15.1/monitor.c 2011-10-19 15:54:48.000000000 +0200
@@ -1210,7 +1210,6 @@
{
const char *protocol = qdict_get_str(qdict, "protocol");
const char *fdname = qdict_get_str(qdict, "fdname");
- int skipauth = qdict_get_try_bool(qdict, "skipauth", 0);
CharDriverState *s;
if (strcmp(protocol, "spice") == 0) {
@@ -1221,10 +1220,13 @@
}
qerror_report(QERR_ADD_CLIENT_FAILED);
return -1;
+#ifdef CONFIG_VNC
} else if (strcmp(protocol, "vnc") == 0) {
int fd = monitor_get_fd(mon, fdname);
+ int skipauth = qdict_get_try_bool(qdict, "skipauth", 0);
vnc_display_add_client(NULL, fd, skipauth);
return 0;
+#endif
} else if ((s = qemu_chr_find(protocol)) != NULL) {
int fd = monitor_get_fd(mon, fdname);
if (qemu_chr_add_client(s, fd) < 0) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qemu-kvm-0.15.0/net/slirp.c new/qemu-kvm-0.15.1/net/slirp.c
--- old/qemu-kvm-0.15.0/net/slirp.c 2011-08-09 14:40:29.000000000 +0200
+++ new/qemu-kvm-0.15.1/net/slirp.c 2011-10-19 15:54:48.000000000 +0200
@@ -529,7 +529,7 @@
fclose(f);
snprintf(smb_cmdline, sizeof(smb_cmdline), "%s -s %s",
- SMBD_COMMAND, smb_conf);
+ CONFIG_SMBD_COMMAND, smb_conf);
if (slirp_add_exec(s->slirp, 0, smb_cmdline, &vserver_addr, 139) < 0) {
slirp_smb_cleanup(s);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qemu-kvm-0.15.0/net/socket.c new/qemu-kvm-0.15.1/net/socket.c
--- old/qemu-kvm-0.15.0/net/socket.c 2011-08-09 14:40:29.000000000 +0200
+++ new/qemu-kvm-0.15.1/net/socket.c 2011-10-19 15:54:48.000000000 +0200
@@ -154,6 +154,12 @@
struct ip_mreq imr;
int fd;
int val, ret;
+#ifdef __OpenBSD__
+ unsigned char loop;
+#else
+ int loop;
+#endif
+
if (!IN_MULTICAST(ntohl(mcastaddr->sin_addr.s_addr))) {
fprintf(stderr, "qemu: error: specified mcastaddr \"%s\" (0x%08x) does not contain a multicast address\n",
inet_ntoa(mcastaddr->sin_addr),
@@ -197,9 +203,9 @@
}
/* Force mcast msgs to loopback (eg. several QEMUs in same host */
- val = 1;
+ loop = 1;
ret=setsockopt(fd, IPPROTO_IP, IP_MULTICAST_LOOP,
- (const char *)&val, sizeof(val));
+ (const char *)&loop, sizeof(loop));
if (ret < 0) {
perror("setsockopt(SOL_IP, IP_MULTICAST_LOOP)");
goto fail;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qemu-kvm-0.15.0/net.h new/qemu-kvm-0.15.1/net.h
--- old/qemu-kvm-0.15.0/net.h 2011-08-09 14:40:29.000000000 +0200
+++ new/qemu-kvm-0.15.1/net.h 2011-10-19 15:54:48.000000000 +0200
@@ -174,11 +174,6 @@
#define DEFAULT_NETWORK_SCRIPT "/etc/qemu-ifup"
#define DEFAULT_NETWORK_DOWN_SCRIPT "/etc/qemu-ifdown"
-#ifdef __sun__
-#define SMBD_COMMAND "/usr/sfw/sbin/smbd"
-#else
-#define SMBD_COMMAND "/usr/sbin/smbd"
-#endif
void qdev_set_nic_properties(DeviceState *dev, NICInfo *nd);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qemu-kvm-0.15.0/ppc.ld new/qemu-kvm-0.15.1/ppc.ld
--- old/qemu-kvm-0.15.0/ppc.ld 2011-08-09 14:40:29.000000000 +0200
+++ new/qemu-kvm-0.15.1/ppc.ld 2011-10-19 15:54:48.000000000 +0200
@@ -79,36 +79,34 @@
}
.sbss2 : { *(.sbss2 .sbss2.* .gnu.linkonce.sb2.*) }
.eh_frame_hdr : { *(.eh_frame_hdr) }
- .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) }
- .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) }
/* Adjust the address for the data segment. We want to adjust up to
the same address within the page on the next page up. */
. = ALIGN (0x10000) - ((0x10000 - .) & (0x10000 - 1)); . = DATA_SEGMENT_ALIGN (0x10000, 0x1000);
/* Exception handling */
- .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) }
- .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) }
+ .eh_frame : { KEEP (*(.eh_frame)) }
+ .gcc_except_table : { *(.gcc_except_table .gcc_except_table.*) }
/* Thread Local Storage sections */
.tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) }
.tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) }
.preinit_array :
{
- PROVIDE_HIDDEN (__preinit_array_start = .);
+ PROVIDE (__preinit_array_start = .);
KEEP (*(.preinit_array))
- PROVIDE_HIDDEN (__preinit_array_end = .);
+ PROVIDE (__preinit_array_end = .);
}
.init_array :
{
- PROVIDE_HIDDEN (__init_array_start = .);
+ PROVIDE (__init_array_start = .);
KEEP (*(SORT(.init_array.*)))
KEEP (*(.init_array))
- PROVIDE_HIDDEN (__init_array_end = .);
+ PROVIDE (__init_array_end = .);
}
.fini_array :
{
- PROVIDE_HIDDEN (__fini_array_start = .);
+ PROVIDE (__fini_array_start = .);
KEEP (*(.fini_array))
KEEP (*(SORT(.fini_array.*)))
- PROVIDE_HIDDEN (__fini_array_end = .);
+ PROVIDE (__fini_array_end = .);
}
.ctors :
{
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qemu-kvm-0.15.0/ppc64.ld new/qemu-kvm-0.15.1/ppc64.ld
--- old/qemu-kvm-0.15.0/ppc64.ld 2011-08-09 14:40:29.000000000 +0200
+++ new/qemu-kvm-0.15.1/ppc64.ld 2011-10-19 15:54:48.000000000 +0200
@@ -81,14 +81,12 @@
.sdata2 : { *(.sdata2 .sdata2.* .gnu.linkonce.s2.*) }
.sbss2 : { *(.sbss2 .sbss2.* .gnu.linkonce.sb2.*) }
.eh_frame_hdr : { *(.eh_frame_hdr) }
- .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) }
- .gcc_except_table : ONLY_IF_RO { KEEP (*(.gcc_except_table))
*(.gcc_except_table.*) } /* Adjust the address for the data segment. We want to
adjust up to + the same address within the page on the next page up. */
. = ALIGN (0x10000) - ((0x10000 - .) & (0x10000 - 1)); . = DATA_SEGMENT_ALIGN
(0x10000, 0x1000); /* Exception handling */
- .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) }
- .gcc_except_table : ONLY_IF_RW { KEEP (*(.gcc_except_table))
+ .eh_frame : { KEEP (*(.eh_frame)) }
+ .gcc_except_table : { KEEP (*(.gcc_except_table))
*(.gcc_except_table.*) } /* Thread Local Storage sections */
.tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) }
.tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qemu-kvm-0.15.0/qemu-options.hx new/qemu-kvm-0.15.1/qemu-options.hx
--- old/qemu-kvm-0.15.0/qemu-options.hx 2011-08-09 14:40:29.000000000 +0200
+++ new/qemu-kvm-0.15.1/qemu-options.hx 2011-10-19 15:54:48.000000000 +0200
@@ -1258,9 +1258,9 @@
Then @file{@var{dir}} can be accessed in @file{\\smbserver\qemu}.
-Note that a SAMBA server must be installed on the host OS in
-@file{/usr/sbin/smbd}. QEMU was tested successfully with smbd versions from
-Red Hat 9, Fedora Core 3 and OpenSUSE 11.x.
+Note that a SAMBA server must be installed on the host OS.
+QEMU was tested successfully with smbd versions from Red Hat 9,
+Fedora Core 3 and OpenSUSE 11.x.
@item hostfwd=[tcp|udp]:[@var{hostaddr}]:@var{hostport}-[@var{guestaddr}]:@var{guestport}
Redirect incoming TCP or UDP connections to the host port @var{hostport} to
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qemu-kvm-0.15.0/sparc.ld new/qemu-kvm-0.15.1/sparc.ld
--- old/qemu-kvm-0.15.0/sparc.ld 2011-08-09 14:40:29.000000000 +0200
+++ new/qemu-kvm-0.15.1/sparc.ld 2011-10-19 15:54:48.000000000 +0200
@@ -67,23 +67,23 @@
.tbss : { *(.tbss) }
.preinit_array :
{
- PROVIDE_HIDDEN (__preinit_array_start = .);
+ PROVIDE (__preinit_array_start = .);
KEEP (*(.preinit_array))
- PROVIDE_HIDDEN (__preinit_array_end = .);
+ PROVIDE (__preinit_array_end = .);
}
.init_array :
{
- PROVIDE_HIDDEN (__init_array_start = .);
+ PROVIDE (__init_array_start = .);
KEEP (*(SORT(.init_array.*)))
KEEP (*(.init_array))
- PROVIDE_HIDDEN (__init_array_end = .);
+ PROVIDE (__init_array_end = .);
}
.fini_array :
{
- PROVIDE_HIDDEN (__fini_array_start = .);
+ PROVIDE (__fini_array_start = .);
KEEP (*(.fini_array))
KEEP (*(SORT(.fini_array.*)))
- PROVIDE_HIDDEN (__fini_array_end = .);
+ PROVIDE (__fini_array_end = .);
}
.ctors :
{
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qemu-kvm-0.15.0/ui/sdl.c new/qemu-kvm-0.15.1/ui/sdl.c
--- old/qemu-kvm-0.15.0/ui/sdl.c 2011-08-09 14:40:29.000000000 +0200
+++ new/qemu-kvm-0.15.1/ui/sdl.c 2011-10-19 15:54:48.000000000 +0200
@@ -672,8 +672,10 @@
sdl_process_key(&ev->key);
break;
case SDL_QUIT:
- if (!no_quit)
+ if (!no_quit) {
+ no_shutdown = 0;
qemu_system_shutdown_request();
+ }
break;
case SDL_MOUSEMOTION:
if (gui_grab || kbd_mouse_is_absolute() ||
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qemu-kvm-0.15.0/vl.c new/qemu-kvm-0.15.1/vl.c
--- old/qemu-kvm-0.15.0/vl.c 2011-08-09 14:40:29.000000000 +0200
+++ new/qemu-kvm-0.15.1/vl.c 2011-10-19 15:54:48.000000000 +0200
@@ -1285,6 +1285,7 @@
{
shutdown_signal = signal;
shutdown_pid = pid;
+ no_shutdown = 0;
qemu_system_shutdown_request();
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qemu-kvm-0.15.0/x86_64.ld new/qemu-kvm-0.15.1/x86_64.ld
--- old/qemu-kvm-0.15.0/x86_64.ld 2011-08-09 14:40:29.000000000 +0200
+++ new/qemu-kvm-0.15.1/x86_64.ld 2011-10-19 15:54:48.000000000 +0200
@@ -38,16 +38,16 @@
.rel.plt :
{
*(.rel.plt)
- PROVIDE_HIDDEN (__rel_iplt_start = .);
+ PROVIDE (__rel_iplt_start = .);
*(.rel.iplt)
- PROVIDE_HIDDEN (__rel_iplt_end = .);
+ PROVIDE (__rel_iplt_end = .);
}
.rela.plt :
{
*(.rela.plt)
- PROVIDE_HIDDEN (__rela_iplt_start = .);
+ PROVIDE (__rela_iplt_start = .);
*(.rela.iplt)
- PROVIDE_HIDDEN (__rela_iplt_end = .);
+ PROVIDE (__rela_iplt_end = .);
}
.init :
{
@@ -70,8 +70,6 @@
.rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) }
.rodata1 : { *(.rodata1) }
.eh_frame_hdr : { *(.eh_frame_hdr) }
- .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) }
- .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table) }
/* Adjust the address for the data segment. We want to adjust up to
the same address within the page on the next page up. */
. = ALIGN (0x100000) - ((0x100000 - .) & (0x100000 - 1)); . = DATA_SEGMENT_ALIGN (0x100000, 0x1000);
@@ -97,8 +95,8 @@
.data1 : { *(.data1) }
.tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) }
.tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) }
- .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) }
- .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table) }
+ .eh_frame : { KEEP (*(.eh_frame)) }
+ .gcc_except_table : { *(.gcc_except_table) }
.dynamic : { *(.dynamic) }
.ctors :
{
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package kvm for openSUSE:Factory checked in at 2011-10-29 08:00:32
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kvm (Old)
and /work/SRC/openSUSE:Factory/.kvm.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kvm", Maintainer is "BROGERS(a)suse.com"
Changes:
--------
--- /work/SRC/openSUSE:Factory/kvm/kvm.changes 2011-10-11 16:56:45.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.kvm.new/kvm.changes 2011-10-29 08:00:33.000000000 +0200
@@ -1,0 +2,7 @@
+Wed Oct 26 20:02:43 UTC 2011 - brogers(a)suse.com
+
+- Update to qemu-kvm v0.15.1
+ - see http://wiki.qemu.org/ChangeLog/0.15 for details
+- update to most recent ipxe upstream development sources
+
+-------------------------------------------------------------------
Old:
----
ipxe-git-149b502.tar.bz2
kvm-qemu-preXX-Fix-termination-by-signal-with-no-shutdown.patch
qemu-kvm-0.15.0.tar.bz2
New:
----
ipxe-git-aaf7a35.tar.bz2
qemu-kvm-0.15.1.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kvm.spec ++++++
--- /var/tmp/diff_new_pack.Jy7VHK/_old 2011-10-29 08:00:37.000000000 +0200
+++ /var/tmp/diff_new_pack.Jy7VHK/_new 2011-10-29 08:00:37.000000000 +0200
@@ -20,10 +20,10 @@
%bcond_with spice
-%define package_true_version 0.15.0
-%define package_base_version 0.15.0
+%define package_true_version 0.15.1
+%define package_base_version 0.15.1
%define bios_id seabios-1.6.3
-%define pxe_rom_id ipxe-git-149b502
+%define pxe_rom_id ipxe-git-aaf7a35
%define vgabios_id vgabios-0.6c
# sgabios comes from: http://sgabios.googlecode.com/svn/trunk, Rev 8
%define sgabios_id sgabios
@@ -87,7 +87,7 @@
Summary: Kernel-based Virtual Machine
Url: http://www.linux-kvm.org
Version: %{package_true_version}
-Release: 2
+Release: 0
Source0: qemu-%{name}-%{package_true_version}.tar.bz2
Source1: 60-kvm.rules
Source2: qemu-ifup
@@ -126,10 +126,9 @@
Patch104: kvm-qemu-preXX-vns-tls-don-t-use-depricated-gnutls-functions.patch
Patch105: kvm-qemu-preXX-qemu_vmalloc-align-properly-for-transparent-hugepag.patch
Patch106: kvm-qemu-madvise-hugepages.patch
-Patch107: kvm-qemu-preXX-Fix-termination-by-signal-with-no-shutdown.patch
-Patch108: kvm-qemu-preXX-block-curl-Implement-a-flush-function-on-the-fd-han.patch
-Patch109: kvm-qemu-preXX-block-curl-Don-t-finish-AIOCBs-too-early.patch
-Patch110: kvm-qemu-preXX-e1000-Don-t-set-the-Capabilities-List-bit.patch
+Patch107: kvm-qemu-preXX-block-curl-Implement-a-flush-function-on-the-fd-han.patch
+Patch108: kvm-qemu-preXX-block-curl-Don-t-finish-AIOCBs-too-early.patch
+Patch109: kvm-qemu-preXX-e1000-Don-t-set-the-Capabilities-List-bit.patch
Patch150: qemu-kvm-common-code-fixes-for-s390-build.patch
@@ -229,7 +228,6 @@
%patch107 -p1
%patch108 -p1
%patch109 -p1
-%patch110 -p1
%patch150 -p1
++++++ ipxe-git-149b502.tar.bz2 -> ipxe-git-aaf7a35.tar.bz2 ++++++
++++ 81233 lines of diff (skipped)
++++++ qemu-kvm-0.15.0.tar.bz2 -> qemu-kvm-0.15.1.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qemu-kvm-0.15.0/VERSION new/qemu-kvm-0.15.1/VERSION
--- old/qemu-kvm-0.15.0/VERSION 2011-08-09 14:40:29.000000000 +0200
+++ new/qemu-kvm-0.15.1/VERSION 2011-10-19 15:54:48.000000000 +0200
@@ -1 +1 @@
-0.15.0
+0.15.1
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qemu-kvm-0.15.0/arm.ld new/qemu-kvm-0.15.1/arm.ld
--- old/qemu-kvm-0.15.0/arm.ld 2011-08-09 14:40:29.000000000 +0200
+++ new/qemu-kvm-0.15.1/arm.ld 2011-10-19 15:54:48.000000000 +0200
@@ -71,23 +71,23 @@
.data1 : { *(.data1) }
.preinit_array :
{
- PROVIDE_HIDDEN (__preinit_array_start = .);
+ PROVIDE (__preinit_array_start = .);
KEEP (*(.preinit_array))
- PROVIDE_HIDDEN (__preinit_array_end = .);
+ PROVIDE (__preinit_array_end = .);
}
.init_array :
{
- PROVIDE_HIDDEN (__init_array_start = .);
+ PROVIDE (__init_array_start = .);
KEEP (*(SORT(.init_array.*)))
KEEP (*(.init_array))
- PROVIDE_HIDDEN (__init_array_end = .);
+ PROVIDE (__init_array_end = .);
}
.fini_array :
{
- PROVIDE_HIDDEN (__fini_array_start = .);
+ PROVIDE (__fini_array_start = .);
KEEP (*(.fini_array))
KEEP (*(SORT(.fini_array.*)))
- PROVIDE_HIDDEN (__fini_array_end = .);
+ PROVIDE (__fini_array_end = .);
}
.ctors :
{
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qemu-kvm-0.15.0/block/qed-table.c new/qemu-kvm-0.15.1/block/qed-table.c
--- old/qemu-kvm-0.15.0/block/qed-table.c 2011-08-09 14:40:29.000000000 +0200
+++ new/qemu-kvm-0.15.1/block/qed-table.c 2011-10-19 15:54:48.000000000 +0200
@@ -230,21 +230,21 @@
QEDRequest *request = read_l2_table_cb->request;
BDRVQEDState *s = read_l2_table_cb->s;
CachedL2Table *l2_table = request->l2_table;
+ uint64_t l2_offset = read_l2_table_cb->l2_offset;
if (ret) {
/* can't trust loaded L2 table anymore */
qed_unref_l2_cache_entry(l2_table);
request->l2_table = NULL;
} else {
- l2_table->offset = read_l2_table_cb->l2_offset;
+ l2_table->offset = l2_offset;
qed_commit_l2_cache_entry(&s->l2_cache, l2_table);
/* This is guaranteed to succeed because we just committed the entry
* to the cache.
*/
- request->l2_table = qed_find_l2_cache_entry(&s->l2_cache,
- l2_table->offset);
+ request->l2_table = qed_find_l2_cache_entry(&s->l2_cache, l2_offset);
assert(request->l2_table != NULL);
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qemu-kvm-0.15.0/block/qed.c new/qemu-kvm-0.15.1/block/qed.c
--- old/qemu-kvm-0.15.0/block/qed.c 2011-08-09 14:40:29.000000000 +0200
+++ new/qemu-kvm-0.15.1/block/qed.c 2011-10-19 15:54:48.000000000 +0200
@@ -915,14 +915,14 @@
QEDAIOCB *acb = opaque;
BDRVQEDState *s = acb_to_s(acb);
CachedL2Table *l2_table = acb->request.l2_table;
+ uint64_t l2_offset = l2_table->offset;
qed_commit_l2_cache_entry(&s->l2_cache, l2_table);
/* This is guaranteed to succeed because we just committed the entry to the
* cache.
*/
- acb->request.l2_table = qed_find_l2_cache_entry(&s->l2_cache,
- l2_table->offset);
+ acb->request.l2_table = qed_find_l2_cache_entry(&s->l2_cache, l2_offset);
assert(acb->request.l2_table != NULL);
qed_aio_next_io(opaque, ret);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qemu-kvm-0.15.0/check-qjson.c new/qemu-kvm-0.15.1/check-qjson.c
--- old/qemu-kvm-0.15.0/check-qjson.c 2011-08-09 14:40:29.000000000 +0200
+++ new/qemu-kvm-0.15.1/check-qjson.c 2011-10-19 15:54:48.000000000 +0200
@@ -33,7 +33,8 @@
{ "\"\\n\"", "\n" },
{ "\"\\r\"", "\r" },
{ "\"\\t\"", "\t" },
- { "\"\\/\"", "\\/" },
+ { "\"/\"", "/" },
+ { "\"\\/\"", "/", .skip = 1 },
{ "\"\\\\\"", "\\" },
{ "\"\\\"\"", "\"" },
{ "\"hello world \\\"embedded string\\\"\"",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qemu-kvm-0.15.0/configure new/qemu-kvm-0.15.1/configure
--- old/qemu-kvm-0.15.0/configure 2011-08-09 14:40:29.000000000 +0200
+++ new/qemu-kvm-0.15.1/configure 2011-10-19 15:54:48.000000000 +0200
@@ -422,6 +422,7 @@
make="${MAKE-gmake}"
install="${INSTALL-ginstall}"
ld="gld"
+ smbd="${SMBD-/usr/sfw/sbin/smbd}"
needs_libsunmath="no"
solarisrev=`uname -r | cut -f2 -d.`
# have to select again, because `uname -m` returns i86pc
@@ -497,6 +498,7 @@
: ${make=${MAKE-make}}
: ${install=${INSTALL-install}}
: ${python=${PYTHON-python}}
+: ${smbd=${SMBD-/usr/sbin/smbd}}
if test "$mingw32" = "yes" ; then
EXESUF=".exe"
@@ -540,6 +542,8 @@
;;
--python=*) python="$optarg"
;;
+ --smbd=*) smbd="$optarg"
+ ;;
--extra-cflags=*)
;;
--extra-ldflags=*)
@@ -962,6 +966,7 @@
echo " --make=MAKE use specified make [$make]"
echo " --install=INSTALL use specified install [$install]"
echo " --python=PYTHON use specified python [$python]"
+echo " --smbd=SMBD use specified smbd [$smbd]"
echo " --static enable static build [$static]"
echo " --mandir=PATH install man pages in PATH"
echo " --datadir=PATH install firmware in PATH"
@@ -1548,11 +1553,17 @@
return 0;
}
EOF
+ if $pkg_config libpng --modversion >/dev/null 2>&1; then
+ vnc_png_cflags=`$pkg_config libpng --cflags 2> /dev/null`
+ vnc_png_libs=`$pkg_config libpng --libs 2> /dev/null`
+ else
vnc_png_cflags=""
vnc_png_libs="-lpng"
+ fi
if compile_prog "$vnc_png_cflags" "$vnc_png_libs" ; then
vnc_png=yes
libs_softmmu="$vnc_png_libs $libs_softmmu"
+ QEMU_CFLAGS="$QEMU_CFLAGS $vnc_png_cflags"
else
if test "$vnc_png" = "yes" ; then
feature_not_found "vnc-png"
@@ -1900,7 +1911,7 @@
##########################################
# pthread probe
-PTHREADLIBS_LIST="-lpthread -lpthreadGC2"
+PTHREADLIBS_LIST="-pthread -lpthread -lpthreadGC2"
pthread=no
cat > $TMPC << EOF
@@ -2694,6 +2705,9 @@
echo "make $make"
echo "install $install"
echo "python $python"
+if test "$slirp" = "yes" ; then
+ echo "smbd $smbd"
+fi
echo "host CPU $cpu"
echo "host big endian $bigendian"
echo "target list $target_list"
@@ -2855,6 +2869,7 @@
fi
if test "$slirp" = "yes" ; then
echo "CONFIG_SLIRP=y" >> $config_host_mak
+ echo "CONFIG_SMBD_COMMAND=\"$smbd\"" >> $config_host_mak
QEMU_INCLUDES="-I\$(SRC_PATH)/slirp $QEMU_INCLUDES"
fi
if test "$vde" = "yes" ; then
@@ -3112,9 +3127,9 @@
echo "ROMS=$roms" >> $config_host_mak
echo "MAKE=$make" >> $config_host_mak
echo "INSTALL=$install" >> $config_host_mak
-echo "INSTALL_DIR=$install -d -m0755 -p" >> $config_host_mak
-echo "INSTALL_DATA=$install -m0644 -p" >> $config_host_mak
-echo "INSTALL_PROG=$install -m0755 -p" >> $config_host_mak
+echo "INSTALL_DIR=$install -d -m 0755" >> $config_host_mak
+echo "INSTALL_DATA=$install -c -m 0644" >> $config_host_mak
+echo "INSTALL_PROG=$install -c -m 0755" >> $config_host_mak
echo "PYTHON=$python" >> $config_host_mak
echo "CC=$cc" >> $config_host_mak
echo "CC_I386=$cc_i386" >> $config_host_mak
@@ -3639,7 +3654,7 @@
DIRS="$DIRS fsdev ui"
DIRS="$DIRS qapi"
DIRS="$DIRS qga"
-FILES="Makefile tests/Makefile"
+FILES="Makefile tests/Makefile qdict-test-data.txt"
FILES="$FILES tests/cris/Makefile tests/cris/.gdbinit"
FILES="$FILES pc-bios/optionrom/Makefile pc-bios/keymaps"
FILES="$FILES pc-bios/spapr-rtas/Makefile"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qemu-kvm-0.15.0/hppa.ld new/qemu-kvm-0.15.1/hppa.ld
--- old/qemu-kvm-0.15.0/hppa.ld 2011-08-09 14:40:29.000000000 +0200
+++ new/qemu-kvm-0.15.1/hppa.ld 2011-10-19 15:54:48.000000000 +0200
@@ -75,36 +75,34 @@
.sbss2 : { *(.sbss2 .sbss2.* .gnu.linkonce.sb2.*) }
.PARISC.unwind : { *(.PARISC.unwind) }
.eh_frame_hdr : { *(.eh_frame_hdr) }
- .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) }
- .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) }
/* Adjust the address for the data segment. We want to adjust up to
the same address within the page on the next page up. */
. = ALIGN(0x10000) + (. & (0x10000 - 1));
/* Exception handling */
- .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) }
- .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) }
+ .eh_frame : { KEEP (*(.eh_frame)) }
+ .gcc_except_table : { *(.gcc_except_table .gcc_except_table.*) }
/* Thread Local Storage sections */
.tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) }
.tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) }
.preinit_array :
{
- PROVIDE_HIDDEN (__preinit_array_start = .);
+ PROVIDE (__preinit_array_start = .);
KEEP (*(.preinit_array))
- PROVIDE_HIDDEN (__preinit_array_end = .);
+ PROVIDE (__preinit_array_end = .);
}
.init_array :
{
- PROVIDE_HIDDEN (__init_array_start = .);
+ PROVIDE (__init_array_start = .);
KEEP (*(SORT(.init_array.*)))
KEEP (*(.init_array))
- PROVIDE_HIDDEN (__init_array_end = .);
+ PROVIDE (__init_array_end = .);
}
.fini_array :
{
- PROVIDE_HIDDEN (__fini_array_start = .);
+ PROVIDE (__fini_array_start = .);
KEEP (*(.fini_array))
KEEP (*(SORT(.fini_array.*)))
- PROVIDE_HIDDEN (__fini_array_end = .);
+ PROVIDE (__fini_array_end = .);
}
.ctors :
{
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qemu-kvm-0.15.0/i386.ld new/qemu-kvm-0.15.1/i386.ld
--- old/qemu-kvm-0.15.0/i386.ld 2011-08-09 14:40:29.000000000 +0200
+++ new/qemu-kvm-0.15.1/i386.ld 2011-10-19 15:54:48.000000000 +0200
@@ -42,16 +42,16 @@
.rel.plt :
{
*(.rel.plt)
- PROVIDE_HIDDEN (__rel_iplt_start = .);
+ PROVIDE (__rel_iplt_start = .);
*(.rel.iplt)
- PROVIDE_HIDDEN (__rel_iplt_end = .);
+ PROVIDE (__rel_iplt_end = .);
}
.rela.plt :
{
*(.rela.plt)
- PROVIDE_HIDDEN (__rela_iplt_start = .);
+ PROVIDE (__rela_iplt_start = .);
*(.rela.iplt)
- PROVIDE_HIDDEN (__rela_iplt_end = .);
+ PROVIDE (__rela_iplt_end = .);
}
.init : { *(.init) } =0x47ff041f
.text :
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qemu-kvm-0.15.0/mips.ld new/qemu-kvm-0.15.1/mips.ld
--- old/qemu-kvm-0.15.0/mips.ld 2011-08-09 14:40:29.000000000 +0200
+++ new/qemu-kvm-0.15.1/mips.ld 2011-10-19 15:54:48.000000000 +0200
@@ -79,36 +79,34 @@
}
.sbss2 : { *(.sbss2 .sbss2.* .gnu.linkonce.sb2.*) }
.eh_frame_hdr : { *(.eh_frame_hdr) }
- .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) }
- .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) }
/* Adjust the address for the data segment. We want to adjust up to
the same address within the page on the next page up. */
. = ALIGN (0x40000) - ((0x40000 - .) & (0x40000 - 1)); . = DATA_SEGMENT_ALIGN (0x40000, 0x1000);
/* Exception handling */
- .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) }
- .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) }
+ .eh_frame : { KEEP (*(.eh_frame)) }
+ .gcc_except_table : { *(.gcc_except_table .gcc_except_table.*) }
/* Thread Local Storage sections */
.tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) }
.tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) }
.preinit_array :
{
- PROVIDE_HIDDEN (__preinit_array_start = .);
+ PROVIDE (__preinit_array_start = .);
KEEP (*(.preinit_array))
- PROVIDE_HIDDEN (__preinit_array_end = .);
+ PROVIDE (__preinit_array_end = .);
}
.init_array :
{
- PROVIDE_HIDDEN (__init_array_start = .);
+ PROVIDE (__init_array_start = .);
KEEP (*(SORT(.init_array.*)))
KEEP (*(.init_array))
- PROVIDE_HIDDEN (__init_array_end = .);
+ PROVIDE (__init_array_end = .);
}
.fini_array :
{
- PROVIDE_HIDDEN (__fini_array_start = .);
+ PROVIDE (__fini_array_start = .);
KEEP (*(.fini_array))
KEEP (*(SORT(.fini_array.*)))
- PROVIDE_HIDDEN (__fini_array_end = .);
+ PROVIDE (__fini_array_end = .);
}
.ctors :
{
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qemu-kvm-0.15.0/monitor.c new/qemu-kvm-0.15.1/monitor.c
--- old/qemu-kvm-0.15.0/monitor.c 2011-08-09 14:40:29.000000000 +0200
+++ new/qemu-kvm-0.15.1/monitor.c 2011-10-19 15:54:48.000000000 +0200
@@ -1210,7 +1210,6 @@
{
const char *protocol = qdict_get_str(qdict, "protocol");
const char *fdname = qdict_get_str(qdict, "fdname");
- int skipauth = qdict_get_try_bool(qdict, "skipauth", 0);
CharDriverState *s;
if (strcmp(protocol, "spice") == 0) {
@@ -1221,10 +1220,13 @@
}
qerror_report(QERR_ADD_CLIENT_FAILED);
return -1;
+#ifdef CONFIG_VNC
} else if (strcmp(protocol, "vnc") == 0) {
int fd = monitor_get_fd(mon, fdname);
+ int skipauth = qdict_get_try_bool(qdict, "skipauth", 0);
vnc_display_add_client(NULL, fd, skipauth);
return 0;
+#endif
} else if ((s = qemu_chr_find(protocol)) != NULL) {
int fd = monitor_get_fd(mon, fdname);
if (qemu_chr_add_client(s, fd) < 0) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qemu-kvm-0.15.0/net/slirp.c new/qemu-kvm-0.15.1/net/slirp.c
--- old/qemu-kvm-0.15.0/net/slirp.c 2011-08-09 14:40:29.000000000 +0200
+++ new/qemu-kvm-0.15.1/net/slirp.c 2011-10-19 15:54:48.000000000 +0200
@@ -529,7 +529,7 @@
fclose(f);
snprintf(smb_cmdline, sizeof(smb_cmdline), "%s -s %s",
- SMBD_COMMAND, smb_conf);
+ CONFIG_SMBD_COMMAND, smb_conf);
if (slirp_add_exec(s->slirp, 0, smb_cmdline, &vserver_addr, 139) < 0) {
slirp_smb_cleanup(s);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qemu-kvm-0.15.0/net/socket.c new/qemu-kvm-0.15.1/net/socket.c
--- old/qemu-kvm-0.15.0/net/socket.c 2011-08-09 14:40:29.000000000 +0200
+++ new/qemu-kvm-0.15.1/net/socket.c 2011-10-19 15:54:48.000000000 +0200
@@ -154,6 +154,12 @@
struct ip_mreq imr;
int fd;
int val, ret;
+#ifdef __OpenBSD__
+ unsigned char loop;
+#else
+ int loop;
+#endif
+
if (!IN_MULTICAST(ntohl(mcastaddr->sin_addr.s_addr))) {
fprintf(stderr, "qemu: error: specified mcastaddr \"%s\" (0x%08x) does not contain a multicast address\n",
inet_ntoa(mcastaddr->sin_addr),
@@ -197,9 +203,9 @@
}
/* Force mcast msgs to loopback (eg. several QEMUs in same host */
- val = 1;
+ loop = 1;
ret=setsockopt(fd, IPPROTO_IP, IP_MULTICAST_LOOP,
- (const char *)&val, sizeof(val));
+ (const char *)&loop, sizeof(loop));
if (ret < 0) {
perror("setsockopt(SOL_IP, IP_MULTICAST_LOOP)");
goto fail;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qemu-kvm-0.15.0/net.h new/qemu-kvm-0.15.1/net.h
--- old/qemu-kvm-0.15.0/net.h 2011-08-09 14:40:29.000000000 +0200
+++ new/qemu-kvm-0.15.1/net.h 2011-10-19 15:54:48.000000000 +0200
@@ -174,11 +174,6 @@
#define DEFAULT_NETWORK_SCRIPT "/etc/qemu-ifup"
#define DEFAULT_NETWORK_DOWN_SCRIPT "/etc/qemu-ifdown"
-#ifdef __sun__
-#define SMBD_COMMAND "/usr/sfw/sbin/smbd"
-#else
-#define SMBD_COMMAND "/usr/sbin/smbd"
-#endif
void qdev_set_nic_properties(DeviceState *dev, NICInfo *nd);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qemu-kvm-0.15.0/ppc.ld new/qemu-kvm-0.15.1/ppc.ld
--- old/qemu-kvm-0.15.0/ppc.ld 2011-08-09 14:40:29.000000000 +0200
+++ new/qemu-kvm-0.15.1/ppc.ld 2011-10-19 15:54:48.000000000 +0200
@@ -79,36 +79,34 @@
}
.sbss2 : { *(.sbss2 .sbss2.* .gnu.linkonce.sb2.*) }
.eh_frame_hdr : { *(.eh_frame_hdr) }
- .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) }
- .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) }
/* Adjust the address for the data segment. We want to adjust up to
the same address within the page on the next page up. */
. = ALIGN (0x10000) - ((0x10000 - .) & (0x10000 - 1)); . = DATA_SEGMENT_ALIGN (0x10000, 0x1000);
/* Exception handling */
- .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) }
- .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) }
+ .eh_frame : { KEEP (*(.eh_frame)) }
+ .gcc_except_table : { *(.gcc_except_table .gcc_except_table.*) }
/* Thread Local Storage sections */
.tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) }
.tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) }
.preinit_array :
{
- PROVIDE_HIDDEN (__preinit_array_start = .);
+ PROVIDE (__preinit_array_start = .);
KEEP (*(.preinit_array))
- PROVIDE_HIDDEN (__preinit_array_end = .);
+ PROVIDE (__preinit_array_end = .);
}
.init_array :
{
- PROVIDE_HIDDEN (__init_array_start = .);
+ PROVIDE (__init_array_start = .);
KEEP (*(SORT(.init_array.*)))
KEEP (*(.init_array))
- PROVIDE_HIDDEN (__init_array_end = .);
+ PROVIDE (__init_array_end = .);
}
.fini_array :
{
- PROVIDE_HIDDEN (__fini_array_start = .);
+ PROVIDE (__fini_array_start = .);
KEEP (*(.fini_array))
KEEP (*(SORT(.fini_array.*)))
- PROVIDE_HIDDEN (__fini_array_end = .);
+ PROVIDE (__fini_array_end = .);
}
.ctors :
{
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qemu-kvm-0.15.0/ppc64.ld new/qemu-kvm-0.15.1/ppc64.ld
--- old/qemu-kvm-0.15.0/ppc64.ld 2011-08-09 14:40:29.000000000 +0200
+++ new/qemu-kvm-0.15.1/ppc64.ld 2011-10-19 15:54:48.000000000 +0200
@@ -81,14 +81,12 @@
.sdata2 : { *(.sdata2 .sdata2.* .gnu.linkonce.s2.*) }
.sbss2 : { *(.sbss2 .sbss2.* .gnu.linkonce.sb2.*) }
.eh_frame_hdr : { *(.eh_frame_hdr) }
- .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) }
- .gcc_except_table : ONLY_IF_RO { KEEP (*(.gcc_except_table))
*(.gcc_except_table.*) } /* Adjust the address for the data segment. We want to
adjust up to + the same address within the page on the next page up. */
. = ALIGN (0x10000) - ((0x10000 - .) & (0x10000 - 1)); . = DATA_SEGMENT_ALIGN
(0x10000, 0x1000); /* Exception handling */
- .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) }
- .gcc_except_table : ONLY_IF_RW { KEEP (*(.gcc_except_table))
+ .eh_frame : { KEEP (*(.eh_frame)) }
+ .gcc_except_table : { KEEP (*(.gcc_except_table))
*(.gcc_except_table.*) } /* Thread Local Storage sections */
.tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) }
.tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qemu-kvm-0.15.0/qemu-options.hx new/qemu-kvm-0.15.1/qemu-options.hx
--- old/qemu-kvm-0.15.0/qemu-options.hx 2011-08-09 14:40:29.000000000 +0200
+++ new/qemu-kvm-0.15.1/qemu-options.hx 2011-10-19 15:54:48.000000000 +0200
@@ -1258,9 +1258,9 @@
Then @file{@var{dir}} can be accessed in @file{\\smbserver\qemu}.
-Note that a SAMBA server must be installed on the host OS in
-@file{/usr/sbin/smbd}. QEMU was tested successfully with smbd versions from
-Red Hat 9, Fedora Core 3 and OpenSUSE 11.x.
+Note that a SAMBA server must be installed on the host OS.
+QEMU was tested successfully with smbd versions from Red Hat 9,
+Fedora Core 3 and OpenSUSE 11.x.
@item hostfwd=[tcp|udp]:[@var{hostaddr}]:@var{hostport}-[@var{guestaddr}]:@var{guestport}
Redirect incoming TCP or UDP connections to the host port @var{hostport} to
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qemu-kvm-0.15.0/sparc.ld new/qemu-kvm-0.15.1/sparc.ld
--- old/qemu-kvm-0.15.0/sparc.ld 2011-08-09 14:40:29.000000000 +0200
+++ new/qemu-kvm-0.15.1/sparc.ld 2011-10-19 15:54:48.000000000 +0200
@@ -67,23 +67,23 @@
.tbss : { *(.tbss) }
.preinit_array :
{
- PROVIDE_HIDDEN (__preinit_array_start = .);
+ PROVIDE (__preinit_array_start = .);
KEEP (*(.preinit_array))
- PROVIDE_HIDDEN (__preinit_array_end = .);
+ PROVIDE (__preinit_array_end = .);
}
.init_array :
{
- PROVIDE_HIDDEN (__init_array_start = .);
+ PROVIDE (__init_array_start = .);
KEEP (*(SORT(.init_array.*)))
KEEP (*(.init_array))
- PROVIDE_HIDDEN (__init_array_end = .);
+ PROVIDE (__init_array_end = .);
}
.fini_array :
{
- PROVIDE_HIDDEN (__fini_array_start = .);
+ PROVIDE (__fini_array_start = .);
KEEP (*(.fini_array))
KEEP (*(SORT(.fini_array.*)))
- PROVIDE_HIDDEN (__fini_array_end = .);
+ PROVIDE (__fini_array_end = .);
}
.ctors :
{
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qemu-kvm-0.15.0/ui/sdl.c new/qemu-kvm-0.15.1/ui/sdl.c
--- old/qemu-kvm-0.15.0/ui/sdl.c 2011-08-09 14:40:29.000000000 +0200
+++ new/qemu-kvm-0.15.1/ui/sdl.c 2011-10-19 15:54:48.000000000 +0200
@@ -672,8 +672,10 @@
sdl_process_key(&ev->key);
break;
case SDL_QUIT:
- if (!no_quit)
+ if (!no_quit) {
+ no_shutdown = 0;
qemu_system_shutdown_request();
+ }
break;
case SDL_MOUSEMOTION:
if (gui_grab || kbd_mouse_is_absolute() ||
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qemu-kvm-0.15.0/vl.c new/qemu-kvm-0.15.1/vl.c
--- old/qemu-kvm-0.15.0/vl.c 2011-08-09 14:40:29.000000000 +0200
+++ new/qemu-kvm-0.15.1/vl.c 2011-10-19 15:54:48.000000000 +0200
@@ -1285,6 +1285,7 @@
{
shutdown_signal = signal;
shutdown_pid = pid;
+ no_shutdown = 0;
qemu_system_shutdown_request();
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qemu-kvm-0.15.0/x86_64.ld new/qemu-kvm-0.15.1/x86_64.ld
--- old/qemu-kvm-0.15.0/x86_64.ld 2011-08-09 14:40:29.000000000 +0200
+++ new/qemu-kvm-0.15.1/x86_64.ld 2011-10-19 15:54:48.000000000 +0200
@@ -38,16 +38,16 @@
.rel.plt :
{
*(.rel.plt)
- PROVIDE_HIDDEN (__rel_iplt_start = .);
+ PROVIDE (__rel_iplt_start = .);
*(.rel.iplt)
- PROVIDE_HIDDEN (__rel_iplt_end = .);
+ PROVIDE (__rel_iplt_end = .);
}
.rela.plt :
{
*(.rela.plt)
- PROVIDE_HIDDEN (__rela_iplt_start = .);
+ PROVIDE (__rela_iplt_start = .);
*(.rela.iplt)
- PROVIDE_HIDDEN (__rela_iplt_end = .);
+ PROVIDE (__rela_iplt_end = .);
}
.init :
{
@@ -70,8 +70,6 @@
.rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) }
.rodata1 : { *(.rodata1) }
.eh_frame_hdr : { *(.eh_frame_hdr) }
- .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) }
- .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table) }
/* Adjust the address for the data segment. We want to adjust up to
the same address within the page on the next page up. */
. = ALIGN (0x100000) - ((0x100000 - .) & (0x100000 - 1)); . = DATA_SEGMENT_ALIGN (0x100000, 0x1000);
@@ -97,8 +95,8 @@
.data1 : { *(.data1) }
.tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) }
.tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) }
- .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) }
- .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table) }
+ .eh_frame : { KEEP (*(.eh_frame)) }
+ .gcc_except_table : { *(.gcc_except_table) }
.dynamic : { *(.dynamic) }
.ctors :
{
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package gtk2 for openSUSE:12.1 checked in at 2011-10-29 08:00:26
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:12.1/gtk2 (Old)
and /work/SRC/openSUSE:12.1/.gtk2.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "gtk2", Maintainer is "gnome-maintainers(a)suse.de"
Changes:
--------
--- /work/SRC/openSUSE:12.1/gtk2/gtk2.changes 2011-10-25 16:01:46.000000000 +0200
+++ /work/SRC/openSUSE:12.1/.gtk2.new/gtk2.changes 2011-10-29 08:00:27.000000000 +0200
@@ -1,0 +2,8 @@
+Fri Oct 28 18:33:42 UTC 2011 - vuntz(a)opensuse.org
+
+- Add gtk3-immodule-fallback.patch: make it possible to specify
+ fallback input method modules in the GTK_IM_MODULE environment
+ variable. This is useful in case a module doesn't exist for both
+ gtk2 and gtk3. Fix bnc#723382.
+
+-------------------------------------------------------------------
New:
----
gtk2-immodule-fallback.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ gtk2.spec ++++++
--- /var/tmp/diff_new_pack.oqejPP/_old 2011-10-29 08:00:27.000000000 +0200
+++ /var/tmp/diff_new_pack.oqejPP/_new 2011-10-29 08:00:27.000000000 +0200
@@ -38,6 +38,8 @@
Patch0: gtk2-window-dragging.patch
# PATCH-FIX-OPENSUSE gtk64.patch sbrabec(a)novell.com - 64-bit dual install. See also the Fedora patch for a simpler way of doing this.
Patch8: gtk64.patch
+# PATCH-FEATURE-UPSTREAM gtk2-immodule-fallback.patch bgo#603559 bnc#723382 vuntz(a)opensuse.org -- Make it possible to specify fallback im modules in GTK_IM_MODULE; useful in case a module doesn't exist for both gtk2 and gtk3
+Patch21: gtk2-immodule-fallback.patch
# PATCH-FEATURE-UPSTREAM bugzilla-129753-gtk+-2.8.9-localize-font-style-name.diff bnc129753 bgo319484 mfabian(a)novell.com - Translate the font styles in the GUI
Patch22: bugzilla-129753-gtk+-2.8.9-localize-font-style-name.diff
# PATCH-FIX-OPENSUSE bugzilla-131498-allow-xim-for-all-languages.patch bnc131498 mfabian(a)novell.com - Allow all languages to be run with the X Input Method
@@ -314,6 +316,7 @@
# WARNING: This patch does not patch not installed demos and tests.
%patch8 -p1
%endif
+%patch21 -p1
%patch22 -p1
%patch23 -p1
%patch24 -p1
++++++ gtk2-immodule-fallback.patch ++++++
diff --git a/gtk/gtkimmodule.c b/gtk/gtkimmodule.c
index 593a868..c5bd139 100644
--- a/gtk/gtkimmodule.c
+++ b/gtk/gtkimmodule.c
@@ -648,6 +648,26 @@ match_locale (const gchar *locale,
return 0;
}
+static const gchar *
+lookup_immodule (gchar **immodules_list)
+{
+ while (immodules_list && *immodules_list)
+ {
+ if (g_strcmp0 (*immodules_list, SIMPLE_ID) == 0)
+ return SIMPLE_ID;
+ else
+ {
+ GtkIMModule *module;
+ module = g_hash_table_lookup (contexts_hash, *immodules_list);
+ if (module)
+ return module->contexts[0]->context_id;
+ }
+ immodules_list++;
+ }
+
+ return NULL;
+}
+
/**
* _gtk_im_module_get_default_context_id:
* @client_window: a window
@@ -664,7 +684,7 @@ _gtk_im_module_get_default_context_id (GdkWindow *client_window)
const gchar *context_id = NULL;
gint best_goodness = 0;
gint i;
- gchar *tmp_locale, *tmp;
+ gchar *tmp_locale, *tmp, **immodules;
const gchar *envvar;
GdkScreen *screen;
GtkSettings *settings;
@@ -672,11 +692,16 @@ _gtk_im_module_get_default_context_id (GdkWindow *client_window)
if (!contexts_hash)
gtk_im_module_initialize ();
- envvar = g_getenv ("GTK_IM_MODULE");
- if (envvar &&
- (strcmp (envvar, SIMPLE_ID) == 0 ||
- g_hash_table_lookup (contexts_hash, envvar)))
- return envvar;
+ envvar = g_getenv("GTK_IM_MODULE");
+ if (envvar)
+ {
+ immodules = g_strsplit(envvar, ":", 0);
+ context_id = lookup_immodule(immodules);
+ g_strfreev(immodules);
+
+ if (context_id)
+ return context_id;
+ }
/* Check if the certain immodule is set in XSETTINGS.
*/
@@ -687,15 +712,9 @@ _gtk_im_module_get_default_context_id (GdkWindow *client_window)
g_object_get (G_OBJECT (settings), "gtk-im-module", &tmp, NULL);
if (tmp)
{
- if (strcmp (tmp, SIMPLE_ID) == 0)
- context_id = SIMPLE_ID;
- else
- {
- GtkIMModule *module;
- module = g_hash_table_lookup (contexts_hash, tmp);
- if (module)
- context_id = module->contexts[0]->context_id;
- }
+ immodules = g_strsplit(tmp, ":", 0);
+ context_id = lookup_immodule(immodules);
+ g_strfreev(immodules);
g_free (tmp);
if (context_id)
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package gtk2 for openSUSE:Factory checked in at 2011-10-29 08:00:22
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/gtk2 (Old)
and /work/SRC/openSUSE:Factory/.gtk2.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "gtk2", Maintainer is "gnome-maintainers(a)suse.de"
Changes:
--------
--- /work/SRC/openSUSE:Factory/gtk2/gtk2.changes 2011-10-25 16:01:35.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.gtk2.new/gtk2.changes 2011-10-29 08:00:24.000000000 +0200
@@ -1,0 +2,8 @@
+Fri Oct 28 18:33:42 UTC 2011 - vuntz(a)opensuse.org
+
+- Add gtk3-immodule-fallback.patch: make it possible to specify
+ fallback input method modules in the GTK_IM_MODULE environment
+ variable. This is useful in case a module doesn't exist for both
+ gtk2 and gtk3. Fix bnc#723382.
+
+-------------------------------------------------------------------
New:
----
gtk2-immodule-fallback.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ gtk2.spec ++++++
--- /var/tmp/diff_new_pack.vZ2Ytb/_old 2011-10-29 08:00:26.000000000 +0200
+++ /var/tmp/diff_new_pack.vZ2Ytb/_new 2011-10-29 08:00:26.000000000 +0200
@@ -38,6 +38,8 @@
Patch0: gtk2-window-dragging.patch
# PATCH-FIX-OPENSUSE gtk64.patch sbrabec(a)novell.com - 64-bit dual install. See also the Fedora patch for a simpler way of doing this.
Patch8: gtk64.patch
+# PATCH-FEATURE-UPSTREAM gtk2-immodule-fallback.patch bgo#603559 bnc#723382 vuntz(a)opensuse.org -- Make it possible to specify fallback im modules in GTK_IM_MODULE; useful in case a module doesn't exist for both gtk2 and gtk3
+Patch21: gtk2-immodule-fallback.patch
# PATCH-FEATURE-UPSTREAM bugzilla-129753-gtk+-2.8.9-localize-font-style-name.diff bnc129753 bgo319484 mfabian(a)novell.com - Translate the font styles in the GUI
Patch22: bugzilla-129753-gtk+-2.8.9-localize-font-style-name.diff
# PATCH-FIX-OPENSUSE bugzilla-131498-allow-xim-for-all-languages.patch bnc131498 mfabian(a)novell.com - Allow all languages to be run with the X Input Method
@@ -314,6 +316,7 @@
# WARNING: This patch does not patch not installed demos and tests.
%patch8 -p1
%endif
+%patch21 -p1
%patch22 -p1
%patch23 -p1
%patch24 -p1
++++++ gtk2-immodule-fallback.patch ++++++
diff --git a/gtk/gtkimmodule.c b/gtk/gtkimmodule.c
index 593a868..c5bd139 100644
--- a/gtk/gtkimmodule.c
+++ b/gtk/gtkimmodule.c
@@ -648,6 +648,26 @@ match_locale (const gchar *locale,
return 0;
}
+static const gchar *
+lookup_immodule (gchar **immodules_list)
+{
+ while (immodules_list && *immodules_list)
+ {
+ if (g_strcmp0 (*immodules_list, SIMPLE_ID) == 0)
+ return SIMPLE_ID;
+ else
+ {
+ GtkIMModule *module;
+ module = g_hash_table_lookup (contexts_hash, *immodules_list);
+ if (module)
+ return module->contexts[0]->context_id;
+ }
+ immodules_list++;
+ }
+
+ return NULL;
+}
+
/**
* _gtk_im_module_get_default_context_id:
* @client_window: a window
@@ -664,7 +684,7 @@ _gtk_im_module_get_default_context_id (GdkWindow *client_window)
const gchar *context_id = NULL;
gint best_goodness = 0;
gint i;
- gchar *tmp_locale, *tmp;
+ gchar *tmp_locale, *tmp, **immodules;
const gchar *envvar;
GdkScreen *screen;
GtkSettings *settings;
@@ -672,11 +692,16 @@ _gtk_im_module_get_default_context_id (GdkWindow *client_window)
if (!contexts_hash)
gtk_im_module_initialize ();
- envvar = g_getenv ("GTK_IM_MODULE");
- if (envvar &&
- (strcmp (envvar, SIMPLE_ID) == 0 ||
- g_hash_table_lookup (contexts_hash, envvar)))
- return envvar;
+ envvar = g_getenv("GTK_IM_MODULE");
+ if (envvar)
+ {
+ immodules = g_strsplit(envvar, ":", 0);
+ context_id = lookup_immodule(immodules);
+ g_strfreev(immodules);
+
+ if (context_id)
+ return context_id;
+ }
/* Check if the certain immodule is set in XSETTINGS.
*/
@@ -687,15 +712,9 @@ _gtk_im_module_get_default_context_id (GdkWindow *client_window)
g_object_get (G_OBJECT (settings), "gtk-im-module", &tmp, NULL);
if (tmp)
{
- if (strcmp (tmp, SIMPLE_ID) == 0)
- context_id = SIMPLE_ID;
- else
- {
- GtkIMModule *module;
- module = g_hash_table_lookup (contexts_hash, tmp);
- if (module)
- context_id = module->contexts[0]->context_id;
- }
+ immodules = g_strsplit(tmp, ":", 0);
+ context_id = lookup_immodule(immodules);
+ g_strfreev(immodules);
g_free (tmp);
if (context_id)
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package flashrom for openSUSE:12.1 checked in at 2011-10-29 08:00:16
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:12.1/flashrom (Old)
and /work/SRC/openSUSE:12.1/.flashrom.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "flashrom", Maintainer is "BWalle(a)novell.com"
Changes:
--------
--- /work/SRC/openSUSE:12.1/flashrom/flashrom.changes 2011-10-24 12:40:09.000000000 +0200
+++ /work/SRC/openSUSE:12.1/.flashrom.new/flashrom.changes 2011-10-29 08:00:17.000000000 +0200
@@ -1,0 +2,6 @@
+Fri Oct 28 21:59:50 CLST 2011 - crrodriguez(a)opensuse.org
+
+- update to 0.9.4 r1457.
+ * Mark several new boards as supported/unsupported
+
+-------------------------------------------------------------------
Old:
----
flashrom-0.9.4_r1450.tar.bz2
New:
----
flashrom-0.9.4_r1457.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ flashrom.spec ++++++
--- /var/tmp/diff_new_pack.3TM2xI/_old 2011-10-29 08:00:17.000000000 +0200
+++ /var/tmp/diff_new_pack.3TM2xI/_new 2011-10-29 08:00:17.000000000 +0200
@@ -20,7 +20,7 @@
Name: flashrom
Url: http://coreboot.org/
Summary: A universal flash programming utility
-Version: 0.9.4_r1450
+Version: 0.9.4_r1457
Release: 1
License: GPLv2 ; GPLv2+
Group: Development/Tools/Other
++++++ flashrom-0.9.4_r1450.tar.bz2 -> flashrom-0.9.4_r1457.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/flashrom-0.9.4_r1450/ChangeLog new/flashrom-0.9.4_r1457/ChangeLog
--- old/flashrom-0.9.4_r1450/ChangeLog 2011-10-14 05:02:54.000000000 +0200
+++ new/flashrom-0.9.4_r1457/ChangeLog 2011-10-29 02:59:50.000000000 +0200
@@ -1,4 +1,259 @@
------------------------------------------------------------------------
+r1457 | stefanct | 2011-10-22 19:01:09 -0300 (Sat, 22 Oct 2011) | 58 lines
+
+Fix all ASUS P5GD* board enables
+
+Changes related to P5GD1 variants:
+- Reorder "P5GD1 Pro" in print.c and include a DMI patter to its board enable
+- Add an untested "P5GD1(-VM)" board enable and add an entry to print.c
+- Add P5GD1-VM/S variant as reported by "Limer"
+
+Changes related to P5GD(2/C) variants:
+- Fix the name of "P5GDC-V Deluxe" board enable and add a DMI pattern and
+ print.c entry. NB: there is no "P5GDC-V" board.
+- Add a generic match for P5GD(2/C)* boards with a not tested tag.
+ This are the potential targets for this according to the asus ftp:
+ ftp://ftp.asus.com.tw/pub/ASUS/mb/socket775/
+ Unsupported variants of the P5GD2:
+ P5GD2, P5GD2 Deluxe, P5GD2 Pro, P5GD2-X
+ (P5GD2 Premium is already tested)
+ (there seems to be also a P5GD2-TVM/GB/SI in the wild, which is not known to
+ asus :)
+ Unsupported variants of the P5GDC:
+ P5GDC Pro, P5GDC-MX
+ (P5GDC Deluxe and P5GDC-V Deluxe are already tested)
+
+ References:
+P5GD1 PRO (dmi "P5GD1 PRO")
+ smbus: 0x8086, 0x266a, 0x1043, 0x80a6; audio: 0x8086, 0x2668, 0x1043, *0x814e*
+ http://www.coreboot.org/pipermail/flashrom/2010-August/004539.html
+P5GD1 (dmi "P5GD1")
+ The non-pro version seems to match the pro pci pattern, but could be
+ distinguished by the SATA ID of 1043:2604 vs. 1043:2601:
+ https://launchpadlibrarian.net/62167576/Lspci.txt
+ or a DMI pattern of course.
+P5GD1-VM (dmi "P5GD1-VM")
+ This does also match the current PCI IDs.
+ https://bugs.launchpad.net/ubuntu/+source/linux/+bug/465379
+
+- P5GD2 Premium (dmi "P5GD2-Premium")
+ smbus: 0x8086, 0x266a, 0x1043, 0x80a6; audio: 0x8086, 0x2668, 0x1043, 0x813d
+ http://www.flashrom.org/pipermail/flashrom/2010-August/004555.html
+- P5GDC-V Deluxe (dmi "P5GDC-V")
+ smbus: 0x8086, 0x266a, 0x1043, 0x80a6; audio: 0x8086, 0x2668, 0x1043, 0x813d
+ http://www.flashrom.org/pipermail/flashrom/2010-September/004939.html
+- P5GDC Deluxe (dmi "P5GDC")
+ smbus: 0x8086, 0x266a, 0x1043, 0x80a6; audio: 0x8086, 0x2668, 0x1043, 0x813d
+ http://www.flashrom.org/pipermail/flashrom/2010-September/004684.html
+
+- P5GDC Pro, P5GDC-MX, P5GD2-X, P5GD2 Pro, P5GD2
+ no useful logs found
+- P5GD2-Deluxe (dmi "P5GD2-Deluxe")
+ smbus: 0x8086, 0x266a, 0x1043, 0x80a6; audio: 0x8086, 0x2668, 0x1043, 0x813d
+ https://bugs.launchpad.net/ubuntu/+source/foomatic-filters/+bug/572514
+
+- P5GD2-TVM/GB/SI (dmi "P5GD2-TVM/GB/SI")
+ smbus: 0x8086, 0x266a, 0x1043, 0x266a; audio: 0x8086, 0x2668, 0x1043, *0x81a7*
+ https://bugs.launchpad.net/ubuntu/+source/linux/+bug/462500
+
+Signed-off-by: Stefan Tauner <stefan.tauner(a)student.tuwien.ac.at>
+and due to the tremendous interest... ;)
+Acked-by: Stefan Tauner <stefan.tauner(a)student.tuwien.ac.at>
+------------------------------------------------------------------------
+r1456 | stefanct | 2011-10-22 18:45:27 -0300 (Sat, 22 Oct 2011) | 8 lines
+
+serprog: small improvements
+
+- rename serprog_delay parameter to usecs
+- fix code style, (output) formatting issues and comments
+- sp_docommand: remove unnecessary malloc+memcpy and fix formatting
+
+Signed-off-by: Stefan Tauner <stefan.tauner(a)student.tuwien.ac.at>
+Acked-by: Uwe Hermann <uwe(a)hermann-uwe.de>
+------------------------------------------------------------------------
+r1455 | stefanct | 2011-10-21 10:20:11 -0300 (Fri, 21 Oct 2011) | 13 lines
+
+Add board enable for ABIT AV8
+
+I disassembled the write enable and the write disable functions from
+the Award BIOS image and reconstructed C code to understand for
+myself what happens. For details see:
+http://www.flashrom.org/pipermail/flashrom/2011-October/008033.html
+
+I compared the download pages of both, abit AV8 and abit AV8-3rd Eye,
+and the BIOS downloads are the same. So it's save to assume that this
+board enable works on both versions. Tested on AV8.
+
+Signed-off-by: Christoph Grenz <christophg+cb(a)grenz-bonn.de>
+Acked-by: Stefan Tauner <stefan.tauner(a)student.tuwien.ac.at>
+------------------------------------------------------------------------
+r1454 | stefanct | 2011-10-21 09:33:07 -0300 (Fri, 21 Oct 2011) | 87 lines
+
+Add a bunch of new/tested stuff and various small changes 8
+
+Tested mainboards:
+OK:
+- ASUS Crosshair II Formula
+ http://www.flashrom.org/pipermail/flashrom/2011-September/007888.html
+- ASUS K8N
+ http://paste.flashrom.org/view.php?id=856
+- ASUS M2N-E SLI
+ http://www.flashrom.org/pipermail/flashrom/2011-September/007909.html
+- ASUS M3N78-VM
+ http://www.flashrom.org/pipermail/flashrom/2011-May/006496.html
+- ASUS M4A78LT-M LE
+ http://www.flashrom.org/pipermail/flashrom/2011-September/007869.html
+- ASUS M4A89GTD PRO
+ http://www.flashrom.org/pipermail/flashrom/2011-February/005824.html
+- MSI A75MA-G55 (MS-7696)
+ http://www.flashrom.org/pipermail/flashrom/2011-October/008055.html
+- PCCHIPS M598LMR (V9.0)
+ http://www.flashrom.org/pipermail/flashrom/2011-October/008051.html
+- ECS P4VXMS (V1.0A)
+ http://www.flashrom.org/pipermail/flashrom/2011-September/007986.html
+- Foxconn P4M800P7MA-RS2
+ http://www.flashrom.org/pipermail/flashrom/2011-October/008114.html
+- GIGABYTE GA-P67A-UD3P
+ http://www.flashrom.org/pipermail/flashrom/2011-September/007930.html
+- GIGABYTE Z68MX-UD2H-B
+ http://www.flashrom.org/pipermail/flashrom/2011-October/008080.html
+- ZOTAC Fusion-ITX WiFi (FUSION350-A-E)
+ http://www.flashrom.org/pipermail/flashrom/2011-October/008011.html
+NOT OK:
+- ASUS P8B-E/4L
+ http://www.flashrom.org/pipermail/flashrom/2011-October/008047.html
+- ASUS P8B WS
+ http://www.flashrom.org/pipermail/flashrom/2011-October/008081.html
+
+Tested chipsets:
+- MCP78S (:075d)
+ http://www.flashrom.org/pipermail/flashrom/2011-August/007612.html
+- VT8233 (:3074)
+ http://www.flashrom.org/pipermail/flashrom/2011-September/007986.html
+- SiS 530 (:0530)
+ http://www.flashrom.org/pipermail/flashrom/2011-October/008051.html
+- P67 (:1c46)
+ http://www.flashrom.org/pipermail/flashrom/2011-September/007930.html
+ - Z68 (:1c44)
+ http://www.flashrom.org/pipermail/flashrom/2011-October/008080.html
+
+Tested flash chips:
+- mark AMIC A29002T as TEST_OK_PREW
+ http://www.flashrom.org/pipermail/flashrom/2011-October/008085.html
+- mark Eon EN29F002(A)(N)T as TEST_OK_PREW
+ http://www.flashrom.org/pipermail/flashrom/2011-October/008053.html
+- mark EonEN25F16 as TEST_OK_PREW
+ http://www.flashrom.org/pipermail/flashrom/2011-February/005824.html
+- mark Macronix MX29F002(N)T as TEST_OK_PREW
+ http://www.flashrom.org/pipermail/flashrom/2011-October/008083.html
+- mark Pm39LV040 as TEST_OK_PR
+ http://www.flashrom.org/pipermail/flashrom/2011-September/007942.html
+- mark Pm39LV010 as TEST_OK_PREW
+ http://www.flashrom.org/pipermail/flashrom/2011-September/007942.html
+- mark SST49LF008A as TEST_OK_PREW
+ http://www.flashrom.org/pipermail/flashrom/2011-September/007989.html
+- mark SyncMOS {F,S,V}29C51002T as TEST_OK_PREW
+ http://www.flashrom.org/pipermail/flashrom/2011-October/008052.html
+- mark W39V040B as write tested
+ http://www.flashrom.org/pipermail/flashrom/2011-October/008114.html
+- mark W39V040C as TEST_OK_PREW
+ http://www.flashrom.org/pipermail/flashrom/2011-October/008114.html
+
+- remove superfluous line break in enable_flash_ich_dc_spi
+- m->M in "min" and "max" (voltage) in print_wiki.c
+
+- spi25: get rid of unneccessary line breaks (on failed probes)
+which is
+Acked-by: Uwe Hermann <uwe(a)hermann-uwe.de>
+
+- rayer_spi.c: Remove double word: `s/the the/the/`
+which is
+Signed-off-by: Paul Menzel <paulepanter(a)users.sourceforge.net>
+
+The parts added until 2011-10-14 (most of this patch) were
+Acked-by: Uwe Hermann <uwe(a)hermann-uwe.de>
+
+everything else is
+Signed-off-by: Stefan Tauner <stefan.tauner(a)student.tuwien.ac.at>
+Acked-by: Stefan Tauner <stefan.tauner(a)student.tuwien.ac.at>
+------------------------------------------------------------------------
+r1453 | uwe | 2011-10-20 20:14:10 -0300 (Thu, 20 Oct 2011) | 33 lines
+
+Add support for the GOEPEL PicoTAP programmer.
+
+http://www.goepel.com/en/jtagboundary-scan/hardware/picotap.html
+
+This device is actually a JTAG adapter, but since it uses standard
+FT2232 A interface pins, it can be easily used as SPI programmer
+(tested it here successfully). PicoTAP supports only 5V output, so one
+needs to reduce this to 3.3V in a same manner as DLP Design DLP-USB1232H, see
+
+ http://flashrom.org/FT2232SPI_Programmer#DLP_Design_DLP-USB1232H
+
+for details.
+
+The PicoTAP pin-out is as follows:
+
+ PicoTAP | SPI
+ ---------+-------
+ TCK | SCLK
+ TMS | CS#
+ TDI | SO
+ TDO | SI
+ /TRST | -
+ GND | GND
+ +5V | VCC, HOLD# & WP# after 3.3V regulator
+
+I managed to run PicoTAP in 10MHz, 15MHz and 30MHz modes (by forcing
+DIVIDE_BY), against SST25VF016B SPI flash, read/write/erase all worked
+fine (write seems somewhat slow).
+
+Signed-off-by: Samir Ibrad?\197?\190i?\196?\135 <sibradzic(a)gmail.com>
+Acked-by: Uwe Hermann <uwe(a)hermann-uwe.de>
+
+
+------------------------------------------------------------------------
+r1452 | stefanct | 2011-10-20 09:57:14 -0300 (Thu, 20 Oct 2011) | 7 lines
+
+ichspi: add (partially) dead support code for Intel Hardware Sequencing
+
+This was done to ease the review. Another patch will hook up (and
+explain) this code later.
+
+Signed-off-by: Stefan Tauner <stefan.tauner(a)student.tuwien.ac.at>
+Acked-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006(a)gmx.net>
+------------------------------------------------------------------------
+r1451 | uwe | 2011-10-14 17:33:14 -0300 (Fri, 14 Oct 2011) | 28 lines
+
+TIAO/DIYGADGET USB Multi-Protocol Adapter (TUMPA) support.
+
+Thanks to TIAO/DIYGADGET for sponsoring a test device!
+
+This is an FTDI FT2232H based device which provides an easily accessible JTAG,
+SPI, I2C, serial breakout. The SPI part can be used to flash SPI flash chips
+using flashrom.
+
+http://www.diygadget.com/tiao-usb-multi-protocol-adapter-jtag-spi-i2c-serial.html
+http://www.tiaowiki.com/w/TIAO_USB_Multi_Protocol_Adapter_User%27s_Manual#SPI_Connector_1
+
+There are two SPI connectors (pin headers) on the board: SPI1, which is
+connected to the FT2232H's A interface, and SPI2, which is connected to the
+chip's B interface. Both can be used to flash SPI chips:
+
+ flashrom -p ft2232_spi:type=tumpa,port=A
+ flashrom -p ft2232_spi:type=tumpa,port=B
+
+The default interface is A, so for SPI1 you can also just write:
+
+ flashrom -p ft2232_spi:type=tumpa
+
+I tested all operations on both interfaces, everything works fine.
+
+Signed-off-by: Uwe Hermann <uwe(a)hermann-uwe.de>
+Acked-by: Stefan Tauner <stefan.tauner(a)student.tuwien.ac.at>
+
+
+------------------------------------------------------------------------
r1450 | stefanct | 2011-09-18 19:42:18 -0300 (Sun, 18 Sep 2011) | 17 lines
Revert "Unsignify lengths and addresses in chip functions and structs"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/flashrom-0.9.4_r1450/Makefile new/flashrom-0.9.4_r1457/Makefile
--- old/flashrom-0.9.4_r1450/Makefile 2011-10-14 05:02:48.000000000 +0200
+++ new/flashrom-0.9.4_r1457/Makefile 2011-10-29 02:59:44.000000000 +0200
@@ -256,7 +256,7 @@
# of the checked out flashrom files.
# Note to packagers: Any tree exported with "make export" or "make tarball"
# will not require subversion. The downloadable snapshots are already exported.
-SVNVERSION := 1450
+SVNVERSION := 1457
RELEASE := 0.9.4
VERSION := $(RELEASE)-r$(SVNVERSION)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/flashrom-0.9.4_r1450/board_enable.c new/flashrom-0.9.4_r1457/board_enable.c
--- old/flashrom-0.9.4_r1450/board_enable.c 2011-09-03 13:22:27.000000000 +0200
+++ new/flashrom-0.9.4_r1457/board_enable.c 2011-10-23 00:01:09.000000000 +0200
@@ -1830,6 +1830,22 @@
/*
* Suited for:
+ * - abit AV8: Socket939 + K8T800Pro + VT8237
+ */
+static int board_abit_av8(void)
+{
+ uint8_t val;
+
+ /* Raise GPO pins GP22 & GP23 */
+ val = INB(0x404E);
+ val |= 0xC0;
+ OUTB(val, 0x404E);
+
+ return 0;
+}
+
+/*
+ * Suited for:
* - ASUS A7V333: VIA KT333 + VT8233A + IT8703F
* - ASUS A7V8X: VIA KT400 + VT8235 + IT8703F
*/
@@ -1979,6 +1995,7 @@
/* first pci-id set [4], second pci-id set [4], dmi identifier, coreboot id [2], phase, vendor name, board name max_rom_... OK? flash enable */
#if defined(__i386__) || defined(__x86_64__)
{0x10DE, 0x0547, 0x147B, 0x1C2F, 0x10DE, 0x0548, 0x147B, 0x1C2F, NULL, NULL, NULL, P3, "abit", "AN-M2", 0, NT, nvidia_mcp_gpio2_raise},
+ {0x1106, 0x0282, 0x147B, 0x1415, 0x1106, 0x3227, 0x147B, 0x1415, "^AV8 ", NULL, NULL, P3, "abit", "AV8", 0, OK, board_abit_av8},
{0x8086, 0x7190, 0, 0, 0x8086, 0x7110, 0, 0, "^i440BX-W977 (BM6)$", NULL, NULL, P3, "abit", "BM6", 0, OK, intel_piix4_gpo26_lower},
{0x8086, 0x24d3, 0x147b, 0x1014, 0x8086, 0x2578, 0x147b, 0x1014, NULL, NULL, NULL, P3, "abit", "IC7", 0, NT, intel_ich_gpio23_raise},
{0x8086, 0x2930, 0x147b, 0x1084, 0x11ab, 0x4364, 0x147b, 0x1084, NULL, NULL, NULL, P3, "abit", "IP35", 0, OK, intel_ich_gpio16_raise},
@@ -2024,9 +2041,13 @@
{0x8086, 0x2570, 0x1043, 0x80A5, 0x105A, 0x24D3, 0x1043, 0x80A6, NULL, NULL, NULL, P3, "ASUS", "P4SD-LA", 0, NT, intel_ich_gpio32_raise},
{0x1039, 0x0661, 0x1043, 0x8113, 0x1039, 0x5513, 0x1043, 0x8087, NULL, NULL, NULL, P3, "ASUS", "P4S800-MX", 512, OK, w836xx_memw_enable_2e},
{0x10B9, 0x1541, 0, 0, 0x10B9, 0x1533, 0, 0, "^P5A$", "asus", "p5a", P3, "ASUS", "P5A", 0, OK, board_asus_p5a},
- {0x8086, 0x266a, 0x1043, 0x80a6, 0x8086, 0x2668, 0x1043, 0x814e, NULL, NULL, NULL, P3, "ASUS", "P5GD1 Pro", 0, OK, intel_ich_gpio21_raise},
+ {0x8086, 0x266a, 0x1043, 0x80a6, 0x8086, 0x2668, 0x1043, 0x814e, "^P5GD1 PRO$", NULL, NULL, P3, "ASUS", "P5GD1 Pro", 0, OK, intel_ich_gpio21_raise},
+ {0x8086, 0x266a, 0x1043, 0x80a6, 0x8086, 0x2668, 0x1043, 0x814e, "^P5GD1-VM$", NULL, NULL, P3, "ASUS", "P5GD1-VM/S", 0, OK, intel_ich_gpio21_raise},
+ {0x8086, 0x266a, 0x1043, 0x80a6, 0x8086, 0x2668, 0x1043, 0x814e, NULL, NULL, NULL, P3, "ASUS", "P5GD1(-VM)", 0, NT, intel_ich_gpio21_raise},
{0x8086, 0x266a, 0x1043, 0x80a6, 0x8086, 0x2668, 0x1043, 0x813d, "^P5GD2-Premium$", NULL, NULL, P3, "ASUS", "P5GD2 Premium", 0, OK, intel_ich_gpio21_raise},
- {0x8086, 0x266a, 0x1043, 0x80a6, 0x8086, 0x2668, 0x1043, 0x813d, NULL, NULL, NULL, P3, "ASUS", "P5GDC Deluxe", 0, OK, intel_ich_gpio21_raise},
+ {0x8086, 0x266a, 0x1043, 0x80a6, 0x8086, 0x2668, 0x1043, 0x813d, "^P5GDC-V$", NULL, NULL, P3, "ASUS", "P5GDC-V Deluxe", 0, OK, intel_ich_gpio21_raise},
+ {0x8086, 0x266a, 0x1043, 0x80a6, 0x8086, 0x2668, 0x1043, 0x813d, "^P5GDC$", NULL, NULL, P3, "ASUS", "P5GDC Deluxe", 0, OK, intel_ich_gpio21_raise},
+ {0x8086, 0x266a, 0x1043, 0x80a6, 0x8086, 0x2668, 0x1043, 0x813d, NULL, NULL, NULL, P3, "ASUS", "P5GD2/C variants", 0, NT, intel_ich_gpio21_raise},
{0x8086, 0x27b8, 0x103c, 0x2a22, 0x8086, 0x2770, 0x103c, 0x2a22, "^LITHIUM$", NULL, NULL, P3, "ASUS", "P5LP-LE (Lithium-UL8E)",0, OK, intel_ich_gpio34_raise},
{0x8086, 0x27b8, 0x1043, 0x2a22, 0x8086, 0x2770, 0x1043, 0x2a22, "^P5LP-LE$", NULL, NULL, P3, "ASUS", "P5LP-LE (Epson OEM)", 0, OK, intel_ich_gpio34_raise},
{0x8086, 0x27da, 0x1043, 0x8179, 0x8086, 0x27b8, 0x1043, 0x8179, "^P5LD2$", NULL, NULL, P3, "ASUS", "P5LD2", 0, NT, intel_ich_gpio16_raise},
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/flashrom-0.9.4_r1450/chipset_enable.c new/flashrom-0.9.4_r1457/chipset_enable.c
--- old/flashrom-0.9.4_r1450/chipset_enable.c 2011-09-09 14:46:32.000000000 +0200
+++ new/flashrom-0.9.4_r1457/chipset_enable.c 2011-10-21 14:33:07.000000000 +0200
@@ -536,7 +536,7 @@
/* Get physical address of Root Complex Register Block */
tmp = pci_read_long(dev, 0xf0) & 0xffffc000;
- msg_pdbg("\nRoot Complex Register Block address = 0x%x\n", tmp);
+ msg_pdbg("Root Complex Register Block address = 0x%x\n", tmp);
/* Map RCBA to virtual memory */
rcrb = physmap("ICH RCRB", tmp, 0x4000);
@@ -1138,7 +1138,7 @@
{0x1022, 0x780e, OK, "AMD", "Hudson", enable_flash_sb600},
{0x1039, 0x0406, NT, "SiS", "501/5101/5501", enable_flash_sis501},
{0x1039, 0x0496, NT, "SiS", "85C496+497", enable_flash_sis85c496},
- {0x1039, 0x0530, NT, "SiS", "530", enable_flash_sis530},
+ {0x1039, 0x0530, OK, "SiS", "530", enable_flash_sis530},
{0x1039, 0x0540, NT, "SiS", "540", enable_flash_sis540},
{0x1039, 0x0620, NT, "SiS", "620", enable_flash_sis530},
{0x1039, 0x0630, NT, "SiS", "630", enable_flash_sis540},
@@ -1205,7 +1205,7 @@
{0x10de, 0x0443, NT, "NVIDIA", "MCP65", enable_flash_mcp6x_7x},
{0x10de, 0x0548, OK, "NVIDIA", "MCP67", enable_flash_mcp6x_7x},
{0x10de, 0x075c, NT, "NVIDIA", "MCP78S", enable_flash_mcp6x_7x},
- {0x10de, 0x075d, NT, "NVIDIA", "MCP78S", enable_flash_mcp6x_7x},
+ {0x10de, 0x075d, OK, "NVIDIA", "MCP78S", enable_flash_mcp6x_7x},
{0x10de, 0x07d7, NT, "NVIDIA", "MCP73", enable_flash_mcp6x_7x},
{0x10de, 0x0aac, NT, "NVIDIA", "MCP79", enable_flash_mcp6x_7x},
{0x10de, 0x0aad, NT, "NVIDIA", "MCP79", enable_flash_mcp6x_7x},
@@ -1222,7 +1222,7 @@
{0x1106, 0x0586, OK, "VIA", "VT82C586A/B", enable_flash_amd8111},
{0x1106, 0x0596, OK, "VIA", "VT82C596", enable_flash_amd8111},
{0x1106, 0x0686, NT, "VIA", "VT82C686A/B", enable_flash_amd8111},
- {0x1106, 0x3074, NT, "VIA", "VT8233", enable_flash_vt823x},
+ {0x1106, 0x3074, OK, "VIA", "VT8233", enable_flash_vt823x},
{0x1106, 0x3147, OK, "VIA", "VT8233A", enable_flash_vt823x},
{0x1106, 0x3177, OK, "VIA", "VT8235", enable_flash_vt823x},
{0x1106, 0x3227, OK, "VIA", "VT8237", enable_flash_vt823x},
@@ -1236,8 +1236,8 @@
{0x1166, 0x0205, OK, "Broadcom", "HT-1000", enable_flash_ht1000},
{0x8086, 0x122e, OK, "Intel", "PIIX", enable_flash_piix4},
{0x8086, 0x1234, NT, "Intel", "MPIIX", enable_flash_piix4},
- {0x8086, 0x1c44, NT, "Intel", "Z68", enable_flash_pch6},
- {0x8086, 0x1c46, NT, "Intel", "P67", enable_flash_pch6},
+ {0x8086, 0x1c44, OK, "Intel", "Z68", enable_flash_pch6},
+ {0x8086, 0x1c46, OK, "Intel", "P67", enable_flash_pch6},
{0x8086, 0x1c47, NT, "Intel", "UM67", enable_flash_pch6},
{0x8086, 0x1c49, NT, "Intel", "HM65", enable_flash_pch6},
{0x8086, 0x1c4a, OK, "Intel", "H67", enable_flash_pch6},
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/flashrom-0.9.4_r1450/flashchips.c new/flashrom-0.9.4_r1457/flashchips.c
--- old/flashrom-0.9.4_r1450/flashchips.c 2011-09-14 00:05:44.000000000 +0200
+++ new/flashrom-0.9.4_r1457/flashchips.c 2011-10-21 14:33:07.000000000 +0200
@@ -1229,7 +1229,7 @@
.total_size = 256,
.page_size = 64 * 1024,
.feature_bits = FEATURE_ADDR_2AA | FEATURE_SHORT_RESET,
- .tested = TEST_OK_PR,
+ .tested = TEST_OK_PREW,
.probe = probe_jedec,
.probe_timing = TIMING_ZERO,
.block_erasers =
@@ -3169,7 +3169,7 @@
.total_size = 2048,
.page_size = 256,
.feature_bits = FEATURE_WRSR_WREN,
- .tested = TEST_UNTESTED,
+ .tested = TEST_OK_PREW,
.probe = probe_spi_rdid,
.probe_timing = TIMING_ZERO,
.block_erasers =
@@ -3550,7 +3550,7 @@
.total_size = 256,
.page_size = 256,
.feature_bits = FEATURE_ADDR_AAA | FEATURE_EITHER_RESET,
- .tested = TEST_OK_PR,
+ .tested = TEST_OK_PREW,
.probe = probe_jedec,
.probe_timing = TIMING_ZERO, /* Datasheet has no timing info specified */
.block_erasers =
@@ -4587,7 +4587,7 @@
.total_size = 256,
.page_size = 64 * 1024,
.feature_bits = FEATURE_ADDR_2AA | FEATURE_SHORT_RESET,
- .tested = TEST_OK_PR,
+ .tested = TEST_OK_PREW,
.probe = probe_jedec,
.probe_timing = TIMING_ZERO,
.block_erasers =
@@ -5268,7 +5268,7 @@
.total_size = 128,
.page_size = 4096,
.feature_bits = FEATURE_ADDR_2AA | FEATURE_EITHER_RESET,
- .tested = TEST_OK_PRE,
+ .tested = TEST_OK_PREW,
.probe = probe_jedec,
.probe_timing = TIMING_ZERO, /* Datasheet has no timing info specified */
.block_erasers =
@@ -5328,7 +5328,7 @@
.total_size = 512,
.page_size = 4096,
.feature_bits = FEATURE_ADDR_2AA | FEATURE_EITHER_RESET,
- .tested = TEST_UNTESTED,
+ .tested = TEST_OK_PR,
.probe = probe_jedec,
.probe_timing = TIMING_ZERO, /* Datasheet has no timing info specified */
.block_erasers =
@@ -6482,7 +6482,7 @@
.total_size = 1024,
.page_size = 64 * 1024,
.feature_bits = FEATURE_REGISTERMAP | FEATURE_EITHER_RESET,
- .tested = TEST_OK_PRE,
+ .tested = TEST_OK_PREW,
.probe = probe_jedec,
.probe_timing = 1, /* 150 ns */
.block_erasers =
@@ -7763,7 +7763,7 @@
.total_size = 256,
.page_size = 512,
.feature_bits = FEATURE_EITHER_RESET,
- .tested = TEST_OK_PRE,
+ .tested = TEST_OK_PREW,
.probe = probe_jedec,
.probe_timing = TIMING_ZERO, /* Datasheet has no timing info specified */
.block_erasers =
@@ -8532,9 +8532,9 @@
.total_size = 512,
.page_size = 64 * 1024,
.feature_bits = FEATURE_EITHER_RESET,
- .tested = TEST_OK_PRE,
+ .tested = TEST_OK_PREW,
.probe = probe_jedec,
- .probe_timing = 10,
+ .probe_timing = 10,
.block_erasers =
{
{
@@ -8560,7 +8560,7 @@
.total_size = 512,
.page_size = 64 * 1024,
.feature_bits = FEATURE_EITHER_RESET,
- .tested = TEST_UNTESTED,
+ .tested = TEST_OK_PREW,
.probe = probe_jedec,
.probe_timing = 10,
.block_erasers =
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/flashrom-0.9.4_r1450/flashrom.8 new/flashrom-0.9.4_r1457/flashrom.8
--- old/flashrom-0.9.4_r1450/flashrom.8 2011-09-12 08:17:06.000000000 +0200
+++ new/flashrom-0.9.4_r1457/flashrom.8 2011-10-21 01:14:10.000000000 +0200
@@ -199,7 +199,8 @@
based USB SPI programmer), including the DLP Design DLP-USB1232H, \
FTDI FT2232H Mini-Module, FTDI FT4232H Mini-Module, openbiosprog-spi, Amontec \
JTAGkey/JTAGkey-tiny/JTAGkey-2, Dangerous Prototypes Bus Blaster, \
-Olimex ARM-USB-TINY/-H, and Olimex ARM-USB-OCD/-H."
+Olimex ARM-USB-TINY/-H, Olimex ARM-USB-OCD/-H, TIAO/DIYGADGET USB
+Multi-Protocol Adapter (TUMPA), and GOEPEL PicoTAP.
.sp
.BR "* serprog" " (for flash ROMs attached to a programmer speaking serprog), \
including AVR flasher by Urja Rannikko, AVR flasher by eightdot, \
@@ -441,7 +442,8 @@
.B model
can be
.BR 2232H ", " 4232H ", " jtagkey ", " busblaster ", " openmoko ", " \
-arm-usb-tiny ", " arm-usb-tiny-h ", " arm-usb-ocd " or " arm-usb-ocd-h
+arm-usb-tiny ", " arm-usb-tiny-h ", " arm-usb-ocd ", " arm-usb-ocd-h \
+", " tumpa ", or " picotap
and
.B interface
can be
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/flashrom-0.9.4_r1450/ft2232_spi.c new/flashrom-0.9.4_r1457/ft2232_spi.c
--- old/flashrom-0.9.4_r1450/ft2232_spi.c 2011-08-16 14:08:22.000000000 +0200
+++ new/flashrom-0.9.4_r1457/ft2232_spi.c 2011-10-21 01:14:10.000000000 +0200
@@ -29,11 +29,17 @@
#include "spi.h"
#include <ftdi.h>
+/* Please keep sorted by vendor ID, then device ID. */
+
#define FTDI_VID 0x0403
#define FTDI_FT2232H_PID 0x6010
#define FTDI_FT4232H_PID 0x6011
+#define TIAO_TUMPA_PID 0x8a98
#define AMONTEC_JTAGKEY_PID 0xCFF8
+#define GOEPEL_VID 0x096C
+#define GOEPEL_PICOTAP_PID 0x1449
+
#define FIC_VID 0x1457
#define OPENMOKO_DBGBOARD_PID 0x5118
@@ -46,7 +52,9 @@
const struct usbdev_status devs_ft2232spi[] = {
{FTDI_VID, FTDI_FT2232H_PID, OK, "FTDI", "FT2232H"},
{FTDI_VID, FTDI_FT4232H_PID, OK, "FTDI", "FT4232H"},
+ {FTDI_VID, TIAO_TUMPA_PID, OK, "TIAO", "USB Multi-Protocol Adapter"},
{FTDI_VID, AMONTEC_JTAGKEY_PID, OK, "Amontec", "JTAGkey"},
+ {GOEPEL_VID, GOEPEL_PICOTAP_PID, OK, "GOEPEL", "PicoTAP"},
{FIC_VID, OPENMOKO_DBGBOARD_PID, OK, "FIC",
"OpenMoko Neo1973 Debug board (V2+)"},
{OLIMEX_VID, OLIMEX_ARM_OCD_PID, NT, "Olimex", "ARM-USB-OCD"},
@@ -172,6 +180,14 @@
ft2232_interface = INTERFACE_A;
cs_bits = 0x18;
pindir = 0x1b;
+ } else if (!strcasecmp(arg, "picotap")) {
+ ft2232_vid = GOEPEL_VID;
+ ft2232_type = GOEPEL_PICOTAP_PID;
+ ft2232_interface = INTERFACE_A;
+ } else if (!strcasecmp(arg, "tumpa")) {
+ /* Interface A is SPI1, B is SPI2. */
+ ft2232_type = TIAO_TUMPA_PID;
+ ft2232_interface = INTERFACE_A;
} else if (!strcasecmp(arg, "busblaster")) {
/* In its default configuration it is a jtagkey clone */
ft2232_type = FTDI_FT2232H_PID;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/flashrom-0.9.4_r1450/ich_descriptors.c new/flashrom-0.9.4_r1457/ich_descriptors.c
--- old/flashrom-0.9.4_r1450/ich_descriptors.c 2011-09-16 01:52:55.000000000 +0200
+++ new/flashrom-0.9.4_r1457/ich_descriptors.c 2011-10-20 14:57:14.000000000 +0200
@@ -213,6 +213,34 @@
msg_pdbg2("\n");
}
+/** Returns the integer representation of the component density with index
+idx in bytes or 0 if a correct size can not be determined. */
+int getFCBA_component_density(const struct ich_descriptors *desc, uint8_t idx)
+{
+ uint8_t size_enc;
+
+ switch(idx) {
+ case 0:
+ size_enc = desc->component.comp1_density;
+ break;
+ case 1:
+ if (desc->content.NC == 0)
+ return 0;
+ size_enc = desc->component.comp2_density;
+ break;
+ default:
+ msg_perr("Only ICH SPI component index 0 or 1 are supported "
+ "yet.\n");
+ return 0;
+ }
+ if (size_enc > 5) {
+ msg_perr("Density of ICH SPI component with index %d is "
+ "invalid. Encoded density is 0x%x.\n", idx, size_enc);
+ return 0;
+ }
+ return (1 << (19 + size_enc));
+}
+
static uint32_t read_descriptor_reg(uint8_t section, uint16_t offset, void *spibar)
{
uint32_t control = 0;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/flashrom-0.9.4_r1450/ich_descriptors.h new/flashrom-0.9.4_r1457/ich_descriptors.h
--- old/flashrom-0.9.4_r1450/ich_descriptors.h 2011-09-16 01:52:55.000000000 +0200
+++ new/flashrom-0.9.4_r1457/ich_descriptors.h 2011-10-20 14:57:14.000000000 +0200
@@ -255,6 +255,7 @@
void prettyprint_ich_descriptor_master(const struct ich_desc_master *master);
int read_ich_descriptors_via_fdo(void *spibar, struct ich_descriptors *desc);
+int getFCBA_component_density(const struct ich_descriptors *desc, uint8_t idx);
#endif /* __ICH_DESCRIPTORS_H__ */
#endif /* defined(__i386__) || defined(__x86_64__) */
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/flashrom-0.9.4_r1450/ichspi.c new/flashrom-0.9.4_r1457/ichspi.c
--- old/flashrom-0.9.4_r1450/ichspi.c 2011-09-18 17:15:31.000000000 +0200
+++ new/flashrom-0.9.4_r1457/ichspi.c 2011-10-20 14:57:14.000000000 +0200
@@ -26,6 +26,7 @@
#if defined(__i386__) || defined(__x86_64__)
#include <string.h>
+#include <stdlib.h>
#include "flash.h"
#include "programmer.h"
#include "spi.h"
@@ -1080,6 +1081,77 @@
return result;
}
+#if 0
+/* Sets FLA in FADDR to (addr & 0x01FFFFFF) without touching other bits. */
+static void ich_hwseq_set_addr(uint32_t addr)
+{
+ uint32_t addr_old = REGREAD32(ICH9_REG_FADDR) & ~0x01FFFFFF;
+ REGWRITE32(ICH9_REG_FADDR, (addr & 0x01FFFFFF) | addr_old);
+}
+
+/* Sets FADDR.FLA to 'addr' and returns the erase block size in bytes
+ * of the block containing this address. May return nonsense if the address is
+ * not valid. The erase block size for a specific address depends on the flash
+ * partition layout as specified by FPB and the partition properties as defined
+ * by UVSCC and LVSCC respectively. An alternative to implement this method
+ * would be by querying FPB and the respective VSCC register directly.
+ */
+static uint32_t ich_hwseq_get_erase_block_size(unsigned int addr)
+{
+ uint8_t enc_berase;
+ static const uint32_t const dec_berase[4] = {
+ 256,
+ 4 * 1024,
+ 8 * 1024,
+ 64 * 1024
+ };
+
+ ich_hwseq_set_addr(addr);
+ enc_berase = (REGREAD16(ICH9_REG_HSFS) & HSFS_BERASE) >>
+ HSFS_BERASE_OFF;
+ return dec_berase[enc_berase];
+}
+
+/* Polls for Cycle Done Status, Flash Cycle Error or timeout in 8 us intervals.
+ Resets all error flags in HSFS.
+ Returns 0 if the cycle completes successfully without errors within
+ timeout us, 1 on errors. */
+static int ich_hwseq_wait_for_cycle_complete(unsigned int timeout,
+ unsigned int len)
+{
+ uint16_t hsfs;
+ uint32_t addr;
+
+ timeout /= 8; /* scale timeout duration to counter */
+ while ((((hsfs = REGREAD16(ICH9_REG_HSFS)) &
+ (HSFS_FDONE | HSFS_FCERR)) == 0) &&
+ --timeout) {
+ programmer_delay(8);
+ }
+ REGWRITE16(ICH9_REG_HSFS, REGREAD16(ICH9_REG_HSFS));
+ if (!timeout) {
+ addr = REGREAD32(ICH9_REG_FADDR) & 0x01FFFFFF;
+ msg_perr("Timeout error between offset 0x%08x and "
+ "0x%08x + %d (=0x%08x)!\n",
+ addr, addr, len - 1, addr + len - 1);
+ prettyprint_ich9_reg_hsfs(hsfs);
+ prettyprint_ich9_reg_hsfc(REGREAD16(ICH9_REG_HSFC));
+ return 1;
+ }
+
+ if (hsfs & HSFS_FCERR) {
+ addr = REGREAD32(ICH9_REG_FADDR) & 0x01FFFFFF;
+ msg_perr("Transaction error between offset 0x%08x and "
+ "0x%08x (=0x%08x + %d)!\n",
+ addr, addr + len - 1, addr, len - 1);
+ prettyprint_ich9_reg_hsfs(hsfs);
+ prettyprint_ich9_reg_hsfc(REGREAD16(ICH9_REG_HSFC));
+ return 1;
+ }
+ return 0;
+}
+#endif
+
static int ich_spi_send_multicommand(struct spi_command *cmds)
{
int ret = 0;
@@ -1250,21 +1322,18 @@
uint8_t old, new;
uint16_t spibar_offset, tmp2;
uint32_t tmp;
- int ichspi_desc = 0;
+ int desc_valid = 0;
switch (ich_generation) {
case 7:
- register_spi_programmer(&spi_programmer_ich7);
spibar_offset = 0x3020;
break;
case 8:
- register_spi_programmer(&spi_programmer_ich9);
spibar_offset = 0x3020;
break;
case 9:
case 10:
default: /* Future version might behave the same */
- register_spi_programmer(&spi_programmer_ich9);
spibar_offset = 0x3800;
break;
}
@@ -1275,8 +1344,8 @@
/* Assign Virtual Address */
ich_spibar = rcrb + spibar_offset;
- switch (spi_programmer->type) {
- case SPI_CONTROLLER_ICH7:
+ switch (ich_generation) {
+ case 7:
msg_pdbg("0x00: 0x%04x (SPIS)\n",
mmio_readw(ich_spibar + 0));
msg_pdbg("0x02: 0x%04x (SPIC)\n",
@@ -1313,9 +1382,13 @@
ichspi_lock = 1;
}
ich_set_bbar(ich_generation, 0);
+ register_spi_programmer(&spi_programmer_ich7);
ich_init_opcodes();
break;
- case SPI_CONTROLLER_ICH9:
+ case 8:
+ case 9:
+ case 10:
+ default: /* Future version might behave the same */
tmp2 = mmio_readw(ich_spibar + ICH9_REG_HSFS);
msg_pdbg("0x04: 0x%04x (HSFS)\n", tmp2);
prettyprint_ich9_reg_hsfs(tmp2);
@@ -1324,8 +1397,8 @@
ichspi_lock = 1;
}
if (tmp2 & HSFS_FDV)
- ichspi_desc = 1;
- if (!(tmp2 & HSFS_FDOPSS) && ichspi_desc)
+ desc_valid = 1;
+ if (!(tmp2 & HSFS_FDOPSS) && desc_valid)
msg_pinfo("The Flash Descriptor Security Override "
"Strap-Pin is set. Restrictions implied\n"
"by the FRAP and FREG registers are NOT in "
@@ -1400,18 +1473,16 @@
}
msg_pdbg("\n");
- if (ichspi_desc) {
+ if (desc_valid) {
struct ich_descriptors desc = {{ 0 }};
if (read_ich_descriptors_via_fdo(ich_spibar, &desc) ==
ICH_RET_OK)
prettyprint_ich_descriptors(CHIPSET_ICH_UNKNOWN,
&desc);
}
+ register_spi_programmer(&spi_programmer_ich9);
ich_init_opcodes();
break;
- default:
- /* Nothing */
- break;
}
old = pci_read_byte(dev, 0xdc);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/flashrom-0.9.4_r1450/print.c new/flashrom-0.9.4_r1457/print.c
--- old/flashrom-0.9.4_r1450/print.c 2011-09-13 00:55:01.000000000 +0200
+++ new/flashrom-0.9.4_r1457/print.c 2011-10-23 00:01:09.000000000 +0200
@@ -535,6 +535,7 @@
#if defined(__i386__) || defined(__x86_64__)
B("A-Trend", "ATC-6220", 1, "http://www.motherboard.cz/mb/atrend/atc6220.htm", NULL),
B("abit", "AN-M2", 1, "http://www.abit.com.tw/page/en/motherboard/motherboard_detail.php?DEFTITLE=…", NULL),
+ B("abit", "AV8", 1, "http://www.abit.com.tw/page/en/motherboard/motherboard_detail.php?DEFTITLE=…", NULL),
B("abit", "AX8", 1, "http://www.abit.com.tw/page/en/motherboard/motherboard_detail.php?DEFTITLE=…", NULL),
B("abit", "BM6", 1, "http://www.abit.com.tw/page/en/motherboard/motherboard_detail.php?pMODEL_NA…", NULL),
B("abit", "Fatal1ty F-I90HD", 1, "http://www.abit.com.tw/page/en/motherboard/motherboard_detail.php?pMODEL_NA…", NULL),
@@ -590,8 +591,10 @@
B("ASUS", "A8V Deluxe", 1, "http://www.asus.com/product.aspx?P_ID=tvpdgPNCPaABZRVU", NULL),
B("ASUS", "A8V-E Deluxe", 1, "http://www.asus.com/product.aspx?P_ID=hQBPIJWEZnnGAZEh", NULL),
B("ASUS", "A8V-E SE", 1, "http://www.asus.com/product.aspx?P_ID=VMfiJJRYTHM4gXIi", "See http://www.coreboot.org/pipermail/coreboot/2007-October/026496.html"),
+ B("ASUS", "Crosshair II Formula", 1, "http://www.asus.com/product.aspx?P_ID=EIDxaW1Ln3YR9RA2", NULL),
B("ASUS", "Crosshair IV Extreme", 1, "http://www.asus.com/product.aspx?P_ID=lt1ShF6xEn3rlLe7", NULL),
B("ASUS", "E35M1-I DELUXE", 1, "http://www.asus.com/product.aspx?P_ID=9BmKhMwWCwqyl1lz", NULL),
+ B("ASUS", "K8N", 1, "http://www.asus.com/product.aspx?P_ID=zigzffr75jWJ7j2y", NULL),
B("ASUS", "K8V", 1, "http://www.asus.com/product.aspx?P_ID=fG2KZOWF7v6MRFRm", NULL),
B("ASUS", "K8V SE Deluxe", 1, "http://www.asus.com/product.aspx?P_ID=65HeDI8XM1u6Uy6o", NULL),
B("ASUS", "K8V-X", 1, NULL, NULL),
@@ -600,6 +603,7 @@
B("ASUS", "M2A-VM", 1, "http://www.asus.com/product.aspx?P_ID=St3pWpym8xXpROQS", "See http://www.coreboot.org/pipermail/coreboot/2007-September/025281.html"),
B("ASUS", "M2N32-SLI Deluxe", 1, "http://www.asus.com/product.aspx?P_ID=0jMy2X8lKstYRvev", NULL),
B("ASUS", "M2N-E", 1, "http://www.asus.com/product.aspx?P_ID=NFlvt10av3F7ayQ9", "If the machine doesn't come up again after flashing, try resetting the NVRAM(CMOS). The MAC address of the onboard network card will change to the value stored in the new image, so backup the old address first. See http://www.flashrom.org/pipermail/flashrom/2009-November/000879.html"),
+ B("ASUS", "M2N-E SLI", 1, "http://www.asus.com/product.aspx?P_ID=NJ8fkR6ufRM9XvFC", NULL),
B("ASUS", "M2N-SLI Deluxe", 1, "http://www.asus.com/product.aspx?P_ID=szSFtrap7crpBaQE", NULL),
B("ASUS", "M2NBP-VM CSM", 1, "http://www.asus.com/product.aspx?P_ID=MnOfzTGd2KkwG0rF", NULL),
B("ASUS", "M2NPV-VM", 1, "http://www.asus.com/product.aspx?P_ID=HGTVnGv5nGahCYgK", NULL),
@@ -608,11 +612,14 @@
B("ASUS", "M3A", 1, "http://www.asus.com/product.aspx?P_ID=P48rppKk4jrc9pNd", NULL),
B("ASUS", "M3A76-CM", 1, "http://www.asus.com/product.aspx?P_ID=aU8effdifLvraVze", NULL),
B("ASUS", "M3A78-EM", 1, "http://www.asus.com/product.aspx?P_ID=KjpYqzmAd9vsTM2D", NULL),
+ B("ASUS", "M3N78-VM", 1, "http://www.asus.com/product.aspx?P_ID=ovqEgLFRjnSClhSV", NULL),
B("ASUS", "M4A78-EM", 1, "http://www.asus.com/product.aspx?P_ID=0KyowHKUFAQqH2DO", NULL),
B("ASUS", "M4A785TD-V EVO", 1, "http://www.asus.com/product.aspx?P_ID=fcsXWSxnhzZE9rnR", NULL),
B("ASUS", "M4A785TD-M EVO", 1, "http://www.asus.com/product.aspx?P_ID=QHbvGVB1mXmmD8qQ", NULL),
+ B("ASUS", "M4A78LT-M LE", 1, "http://www.asus.com/product.aspx?P_ID=exJL00uovTJaDqxR", NULL),
B("ASUS", "M4A79T Deluxe", 1, "http://www.asus.com/product.aspx?P_ID=lhJiLTN5huPfCVkW", NULL),
B("ASUS", "M4A87TD/USB3", 1, "http://www.asus.com/product.aspx?P_ID=nlWYrI9wlNIYHAaa", NULL),
+ B("ASUS", "M4A89GTD PRO", 1, "http://www.asus.com/product.aspx?P_ID=Gdf0vtpVf72LTYgs", NULL),
B("ASUS", "M6Ne", 0, "http://www.asus.com/Product.aspx?P_ID=IbqN4JCxeRiep4WN", "Untested board enable."),
B("ASUS", "MEW-AM", 0, "ftp://ftp.asus.com.tw/pub/ASUS/mb/sock370/810/mew-am/", "No public report found. Owned by Uwe Hermann <uwe(a)hermann-uwe.de>. May work now."),
B("ASUS", "MEW-VM", 0, "http://www.elhvb.com/mboards/OEM/HP/manual/ASUS%20MEW-VM.htm", "No public report found. Owned by Uwe Hermann <uwe(a)hermann-uwe.de>. May work now."),
@@ -640,15 +647,19 @@
B("ASUS", "P5B-Deluxe", 1, "http://www.asus.com/product.aspx?P_ID=bswT66IBSb2rEWNa", NULL),
B("ASUS", "P5BV-M", 0, "ftp://ftp.asus.com.tw/pub/ASUS/mb/socket775/P5B-VM/", "Reported by Bernhard M. Wiedemann <bernhard(a)uml12d.zq1.de> to flashrom(a)coreboot.org, no public archive. Missing board enable and/or SST49LF008A unlocking. May work now."),
B("ASUS", "P5GC-MX/1333", 1, "http://www.asus.com/product.aspx?P_ID=PYvbfOokwxUzJky3", NULL),
+ B("ASUS", "P5GD1 Pro", 1, "http://www.asus.com/product.aspx?P_ID=50M49xQh71EZOeM1", NULL),
+ B("ASUS", "P5GD1-VM/S", 1, NULL, "This is an OEM board from FSC. Although flashrom supports it and can probably not distinguish it from the P5GD1-VM, please note that the P5GD1-VM BIOS does not support the FSC variants completely."),
+ B("ASUS", "P5GD1(-VM)", 0, NULL, "Untested board enable."),
B("ASUS", "P5GD2 Premium", 1, "http://www.asus.it/product.aspx?P_ID=lRKaz1Rb6Xb0OFM7", NULL),
B("ASUS", "P5GDC Deluxe", 1, "http://www.asus.com/product.aspx?P_ID=AbeoopyNpI2TZixg", NULL),
+ B("ASUS", "P5GDC-V Deluxe", 1, NULL, NULL),
+ B("ASUS", "P5GD2/C variants", 0, NULL, "Untested board enable."),
B("ASUS", "P5KC", 1, "http://www.asus.com/product.aspx?P_ID=fFZ8oUIGmLpwNMjj", NULL),
B("ASUS", "P5L-MX", 1, "http://www.asus.com/product.aspx?P_ID=X70d3NCzH2DE9vWH", NULL),
B("ASUS", "P5LD2", 0, NULL, "Untested board enable."),
B("ASUS", "P5LP-LE (Lithium-UL8E)", 1, "http://h10025.www1.hp.com/ewfrf/wc/document?docname=c00379616&tmp_task=prod…", "This is an OEM board from HP."),
B("ASUS", "P5LP-LE (Epson OEM)", 1, NULL, "This is an OEM board from Epson (e.g. Endeavor MT7700)."),
B("ASUS", "P5LP-LE", 0, NULL, "This designation is used for OEM boards from HP, Epson and maybe others. The HP names vary and not all of them have been tested yet. Please report any success or failure, thanks."),
- B("ASUS", "P5GD1 Pro", 1, "http://www.asus.com/product.aspx?P_ID=50M49xQh71EZOeM1", NULL),
B("ASUS", "P5N-E SLI", 0, "http://www.asus.com/product.aspx?P_ID=KyHOsOKWujC2QguJ", "Needs a board enable (http://patchwork.coreboot.org/patch/3298/)"),
B("ASUS", "P5N32-E SLI", 1, "http://www.asus.com/product.aspx?P_ID=vBZLIBtPzYB2bLcb", NULL),
B("ASUS", "P5ND2-SLI Deluxe", 1, "http://www.asus.com/product.aspx?P_ID=WY7XroDuUImVbgp5", NULL),
@@ -659,6 +670,8 @@
B("ASUS", "P6T Deluxe V2", 1, "http://www.asus.com/product.aspx?P_ID=iRlP8RG9han6saZx", NULL),
B("ASUS", "P7H57D-V EVO", 1, "http://www.asus.com/Motherboards/Intel_Socket_1156/P7H57DV_EVO/", NULL),
B("ASUS", "P7H55-M LX", 0, NULL, "flashrom works correctly, but GbE LAN is nonworking (probably due to a missing/bogus MAC address; see http://www.flashrom.org/pipermail/flashrom/2011-July/007432.html and http://ubuntuforums.org/showthread.php?t=1534389 for a possible workaround)"),
+ B("ASUS", "P8B-E/4L", 0, NULL, "Probing works (Winbond W25Q64, 8192 kB, SPI), but parts of the flash are problematic: descriptor is r/o (conforming to ICH reqs), ME region is locked."),
+ B("ASUS", "P8B WS", 0, NULL, "Probing works (Winbond W25Q32, 4096 kB, SPI), but parts of the flash are problematic: descriptor is r/o (conforming to ICH reqs), ME region is locked."),
B("ASUS", "Z8NA-D6C", 1, "http://www.asus.com/product.aspx?P_ID=k81cpN8uEB01BpQ6", NULL),
B("BCOM", "WinNET100", 1, "http://www.coreboot.org/BCOM_WINNET100", "Used in the IGEL-316 thin client."),
B("Biostar", "N68S3+", 1, NULL, NULL),
@@ -677,6 +690,7 @@
B("Elitegroup", "K7S6A", 1, "http://www.ecs.com.tw/ECSWebSite/Products/ProductsDetail.aspx?detailid=77&C…", NULL),
B("Elitegroup", "K7VTA3", 1, "http://www.ecs.com.tw/ECSWebSite/Products/ProductsDetail.aspx?detailid=264&…", NULL),
B("Elitegroup", "P4M800PRO-M (V1.0A)", 1, "http://www.ecs.com.tw/ECSWebSite_2007/Products/ProductsDetail.aspx?Category…", NULL),
+ B("Elitegroup", "P4VXMS (V1.0A)", 1, NULL, NULL),
B("Elitegroup", "P6IWP-Fe", 1, "http://www.ecs.com.tw/ECSWebSite_2007/Products/ProductsDetail.aspx?Category…", NULL),
B("Elitegroup", "P6VAP-A+", 1, "http://www.ecs.com.tw/ECSWebSite/Products/ProductsDetail.aspx?detailid=117&…", NULL),
B("Elitegroup", "RS485M-M", 1, "http://www.ecs.com.tw/ECSWebSite_2007/Products/ProductsDetail.aspx?Category…", NULL),
@@ -691,6 +705,7 @@
B("FIC", "VA-502", 0, "ftp://ftp.fic.com.tw/motherboard/manual/socket7/va-502/", "No public report found. Owned by Uwe Hermann <uwe(a)hermann-uwe.de>. Seems the PCI subsystem IDs are identical with the Tekram P6Pro-A5. May work now."),
B("Foxconn", "6150K8MD-8EKRSH", 1, "http://www.foxconnchannel.com/product/motherboards/detail_overview.aspx?id=…", NULL),
B("Foxconn", "A6VMX", 1, "http://www.foxconnchannel.com/product/motherboards/detail_overview.aspx?id=…", NULL),
+ B("Foxconn", "P4M800P7MA-RS2", 1, "http://www.foxconnchannel.com/Product/Motherboards/detail_overview.aspx?id=…", NULL),
B("Freetech", "P6F91i", 1, "http://web.archive.org/web/20010417035034/http://www.freetech.com/prod/P6F9…", NULL),
B("Fujitsu-Siemens", "ESPRIMO P5915", 1, "http://uk.ts.fujitsu.com/rl/servicesupport/techsupport/professionalpc/ESPRI…", "Mainboard model is D2312-A2."),
B("GIGABYTE", "GA-2761GXDK", 1, "http://www.computerbase.de/news/hardware/mainboards/amd-systeme/2007/mai/gi…", NULL),
@@ -733,7 +748,9 @@
B("GIGABYTE", "GA-MA790GP-DS4H", 1, "http://www.gigabyte.com/products/product-page.aspx?pid=2887", NULL),
B("GIGABYTE", "GA-MA790XT-UD4P (rev. 1.0)", 1, "http://www.gigabyte.com/products/product-page.aspx?pid=3010", NULL),
B("GIGABYTE", "GA-P55A-UD4 (rev. 1.0)", 1, "http://www.gigabyte.com/products/product-page.aspx?pid=3436", NULL),
+ B("GIGABYTE", "GA-P67A-UD3P", 1, "http://www.gigabyte.com/products/product-page.aspx?pid=3649", NULL),
B("GIGABYTE", "GA-X58A-UD7 (rev. 2.0)", 1, NULL, NULL),
+ B("GIGABYTE", "GA-Z68MX-UD2H-B (rev. 1.3)", 1, "http://www.gigabyte.com/products/product-page.aspx?pid=3854", NULL),
B("HP", "e-Vectra P2706T", 1, "http://h20000.www2.hp.com/bizsupport/TechSupport/Home.jsp?lang=en&cc=us&pro…", NULL),
B("HP", "ProLiant DL145 G3", 1, "http://h20000.www2.hp.com/bizsupport/TechSupport/Document.jsp?objectID=c008…", NULL),
B("HP", "ProLiant DL165 G6", 1, "http://h10010.www1.hp.com/wwpc/us/en/sm/WF05a/15351-15351-3328412-241644-33…", NULL),
@@ -799,9 +816,11 @@
B("MSI", "MS-7599 (870-C45)", 1, "http://www.msi.com/product/mb/870-C45.html", NULL),
B("MSI", "MS-7640 (890FXA-GD70)",1, "http://www.msi.com/product/mb/890FXA-GD70.html", NULL),
B("MSI", "MS-7642 (890GXM-G65)", 1, "http://www.msi.com/product/mb/890GXM-G65.html", NULL),
+ B("MSI", "MS-7696 (A75MA-G55)", 1, "http://www.msi.com/product/mb/A75MA-G55.html", NULL),
B("MSI", "MS-7698 (E350IA-E45)", 1, "http://www.msi.com/product/mb/E350IA-E45.html", NULL),
B("NEC", "PowerMate 2000", 1, "http://support.necam.com/mobilesolutions/hardware/Desktops/pm2000/celeron/", NULL),
B("Nokia", "IP530", 1, NULL, NULL),
+ B("PCCHIPS ", "M598LMR (V9.0)", 1, NULL, NULL),
B("PCCHIPS ", "M863G (V5.1A)", 1, "http://www.pcchips.com.tw/PCCWebSite/Products/ProductsDetail.aspx?CategoryI…", NULL),
B("PC Engines", "Alix.1c", 1, "http://pcengines.ch/alix1c.htm", NULL),
B("PC Engines", "Alix.2c2", 1, "http://pcengines.ch/alix2c2.htm", NULL),
@@ -884,6 +903,7 @@
B("VIA", "pc2500e", 1, "http://www.via.com.tw/en/initiatives/empowered/pc2500_mainboard/index.jsp", NULL),
B("VIA", "PC3500G", 1, "http://www.via.com.tw/en/initiatives/empowered/pc3500_mainboard/index.jsp", NULL),
B("VIA", "VB700X", 1, "http://www.via.com.tw/en/products/mainboards/motherboards.jsp?motherboard_i…", NULL),
+ B("ZOTAC", "Fusion-ITX WiFi (FUSION350-A-E)", 1, NULL, NULL),
B("ZOTAC", "GeForce 8200", 1, "http://pden.zotac.com/index.php?page=shop.product_details&product_id=129&ca…", NULL),
B("ZOTAC", "ZBOX HD-ID11", 1, "http://pdde.zotac.com/index.php?page=shop.product_details&product_id=240&ca…", NULL),
#endif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/flashrom-0.9.4_r1450/print_wiki.c new/flashrom-0.9.4_r1457/print_wiki.c
--- old/flashrom-0.9.4_r1450/print_wiki.c 2011-09-15 00:09:48.000000000 +0200
+++ new/flashrom-0.9.4_r1457/print_wiki.c 2011-10-21 14:33:07.000000000 +0200
@@ -70,7 +70,7 @@
! align=\"center\" colspan=\"2\" | Voltage [V]\n\n\
|- bgcolor=\"#6699ff\"\n| colspan=\"4\" | \n\
| Probe\n| Read\n| Erase\n| Write\n\
-| align=\"center\" | min \n| align=\"center\" | max\n\n";
+| align=\"center\" | Min \n| align=\"center\" | Max\n\n";
static const char programmer_section[] = "\
\n== Supported programmers ==\n\nThis is a list \
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/flashrom-0.9.4_r1450/programmer.h new/flashrom-0.9.4_r1457/programmer.h
--- old/flashrom-0.9.4_r1450/programmer.h 2011-09-19 00:42:18.000000000 +0200
+++ new/flashrom-0.9.4_r1457/programmer.h 2011-10-22 23:45:27.000000000 +0200
@@ -607,9 +607,10 @@
void serprog_chip_writeb(uint8_t val, chipaddr addr);
uint8_t serprog_chip_readb(const chipaddr addr);
void serprog_chip_readn(uint8_t *buf, const chipaddr addr, size_t len);
-void serprog_delay(int delay);
+void serprog_delay(int usecs);
int serprog_spi_send_command(unsigned int writecnt, unsigned int readcnt,
- const unsigned char *writearr, unsigned char *readarr);
+ const unsigned char *writearr,
+ unsigned char *readarr);
int serprog_spi_read(struct flashchip *flash, uint8_t *buf, int start, int len);
#endif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/flashrom-0.9.4_r1450/rayer_spi.c new/flashrom-0.9.4_r1457/rayer_spi.c
--- old/flashrom-0.9.4_r1450/rayer_spi.c 2011-09-12 08:17:06.000000000 +0200
+++ new/flashrom-0.9.4_r1457/rayer_spi.c 2011-10-21 14:33:07.000000000 +0200
@@ -42,7 +42,7 @@
/* We have two sets of pins, out and in. The numbers for both sets are
* independent and are bitshift values, not real pin numbers.
- * Default settings are for the the RayeR hardware.
+ * Default settings are for the RayeR hardware.
*/
/* Pins for master->slave direction */
static int rayer_cs_bit = 5;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/flashrom-0.9.4_r1450/serprog-protocol.txt new/flashrom-0.9.4_r1457/serprog-protocol.txt
--- old/flashrom-0.9.4_r1450/serprog-protocol.txt 2011-09-16 01:38:14.000000000 +0200
+++ new/flashrom-0.9.4_r1457/serprog-protocol.txt 2011-10-22 23:45:27.000000000 +0200
@@ -19,7 +19,7 @@
0x05 Query supported bustypes none ACK + 8-bit flags (as per flashrom) / NAK
0x06 Query connected address lines none ACK + 8bit line count / NAK
0x07 Query operation buffer size none ACK + 16bit size / NAK
-0x08 Query write-n maximum data len none ACK + 24bit maximum length / NAK
+0x08 Query maximum write-n length none ACK + 24bit length (0==2^24) / NAK
0x09 Read byte 24-bit addr ACK + BYTE / NAK
0x0A Read n bytes 24-bit addr + 24-bit length ACK + length bytes / NAK
0x0B Initialize operation buffer none ACK / NAK
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/flashrom-0.9.4_r1450/serprog.c new/flashrom-0.9.4_r1457/serprog.c
--- old/flashrom-0.9.4_r1450/serprog.c 2011-09-19 00:42:18.000000000 +0200
+++ new/flashrom-0.9.4_r1457/serprog.c 2011-10-22 23:45:27.000000000 +0200
@@ -38,7 +38,7 @@
#include "programmer.h"
#include "chipdrivers.h"
-#define MSGHEADER "serprog:"
+#define MSGHEADER "serprog: "
/*
* FIXME: This prototype was added to help reduce diffs for the shutdown
@@ -204,7 +204,7 @@
return;
}
}
- msg_perr("Error: cannot synchronize protocol\n"
+ msg_perr("Error: cannot synchronize protocol "
"- check communications and reset device?\n");
exit(1);
}
@@ -220,32 +220,27 @@
static int sp_automatic_cmdcheck(uint8_t cmd)
{
if ((sp_check_avail_automatic) && (sp_check_commandavail(cmd) == 0)) {
- msg_pdbg("Warning: Automatic command availability check"
- " failed for cmd %d - wont execute cmd\n",cmd);
+ msg_pdbg("Warning: Automatic command availability check failed "
+ "for cmd 0x%x - won't execute cmd\n", cmd);
return 1;
}
return 0;
}
static int sp_docommand(uint8_t command, uint32_t parmlen,
- uint8_t * params, uint32_t retlen, void *retparms)
+ uint8_t *params, uint32_t retlen, void *retparms)
{
- unsigned char *sendpacket;
unsigned char c;
if (sp_automatic_cmdcheck(command))
return 1;
- sendpacket = malloc(1 + parmlen);
- if (!sendpacket)
- sp_die("Error: cannot malloc command buffer");
- sendpacket[0] = command;
- memcpy(&(sendpacket[1]), params, parmlen);
- if (write(sp_fd, sendpacket, 1 + parmlen) != (1 + parmlen)) {
- sp_die("Error: cannot write command");
- }
- free(sendpacket);
+ if (write(sp_fd, &command, 1) != 1)
+ sp_die("Error: cannot write op code");
+ if (write(sp_fd, params, parmlen) != (parmlen))
+ sp_die("Error: cannot write parameters");
if (read(sp_fd, &c, 1) != 1)
sp_die("Error: cannot read from device");
- if (c == S_NAK) return 1;
+ if (c == S_NAK)
+ return 1;
if (c != S_ACK) {
msg_perr("Error: invalid response 0x%02X from device\n",c);
exit(1);
@@ -256,8 +251,8 @@
int r;
r = read(sp_fd, retparms + rd_bytes,
retlen - rd_bytes);
- if (r <= 0) sp_die
- ("Error: cannot read return parameters");
+ if (r <= 0)
+ sp_die("Error: cannot read return parameters");
rd_bytes += r;
} while (rd_bytes != retlen);
}
@@ -404,12 +399,12 @@
msg_pdbg(MSGHEADER "Synchronized\n");
if (sp_docommand(S_CMD_Q_IFACE, 0, NULL, 2, &iface)) {
- msg_perr("Error: NAK to Query Interface version\n");
+ msg_perr("Error: NAK to query interface version\n");
exit(1);
}
if (iface != 1) {
- msg_perr("Error: Unknown interface version %d\n", iface);
+ msg_perr("Error: Unknown interface version: %d\n", iface);
exit(1);
}
@@ -428,6 +423,11 @@
c = BUS_NONSPI; /* A reasonable default for now. */
}
buses_supported = c;
+ msg_pdbg(MSGHEADER "Bus support: parallel=%s, LPC=%s, FWH=%s, SPI=%s\n",
+ (c & BUS_PARALLEL) ? "on" : "off",
+ (c & BUS_LPC) ? "on" : "off",
+ (c & BUS_FWH) ? "on" : "off",
+ (c & BUS_SPI) ? "on" : "off");
/* Check for the minimum operational set of commands. */
if (buses_supported & BUS_SPI) {
uint8_t bt = BUS_SPI;
@@ -538,12 +538,12 @@
strcpy((char *)pgmname, "(unknown)");
}
pgmname[16] = 0;
- msg_pinfo(MSGHEADER "Programmer name \"%s\"\n", pgmname);
+ msg_pinfo(MSGHEADER "Programmer name is \"%s\"\n", pgmname);
if (sp_docommand(S_CMD_Q_SERBUF, 0, NULL, 2, &sp_device_serbuf_size)) {
msg_perr("Warning: NAK to query serial buffer size\n");
}
- msg_pdbg(MSGHEADER "serial buffer size %d\n",
+ msg_pdbg(MSGHEADER "Serial buffer size is %d\n",
sp_device_serbuf_size);
if (sp_check_commandavail(S_CMD_O_INIT)) {
@@ -564,7 +564,7 @@
msg_perr("Warning: NAK to query operation buffer "
"size\n");
}
- msg_pdbg(MSGHEADER "operation buffer size %d\n",
+ msg_pdbg(MSGHEADER "operation buffer size is %d\n",
sp_device_opbuf_size);
}
@@ -581,7 +581,7 @@
{
unsigned char header[7];
msg_pspew(MSGHEADER "Passing write-n bytes=%d addr=0x%x\n",
- sp_write_n_bytes, sp_write_n_addr);
+ sp_write_n_bytes, sp_write_n_addr);
if (sp_streamed_transmit_bytes >=
(7 + sp_write_n_bytes + sp_device_serbuf_size))
sp_flush_stream();
@@ -735,31 +735,32 @@
{
size_t lenm = len;
chipaddr addrm = addr;
- while ((sp_max_read_n)&&(lenm > sp_max_read_n)) {
- sp_do_read_n(&(buf[addrm-addr]),addrm,sp_max_read_n);
+ while ((sp_max_read_n != 0) && (lenm > sp_max_read_n)) {
+ sp_do_read_n(&(buf[addrm-addr]), addrm, sp_max_read_n);
addrm += sp_max_read_n;
lenm -= sp_max_read_n;
}
- if (lenm) sp_do_read_n(&(buf[addrm-addr]),addrm,lenm);
+ if (lenm)
+ sp_do_read_n(&(buf[addrm-addr]), addrm, lenm);
}
-void serprog_delay(int delay)
+void serprog_delay(int usecs)
{
unsigned char buf[4];
- msg_pspew("%s\n", __func__);
+ msg_pspew("%s usecs=%d\n", __func__, usecs);
if (!sp_check_commandavail(S_CMD_O_DELAY)) {
- internal_delay(delay);
msg_pdbg("Note: serprog_delay used, but the programmer doesn't "
"support delay\n");
+ internal_delay(usecs);
return;
}
if ((sp_max_write_n) && (sp_write_n_bytes))
sp_pass_writen();
sp_check_opbuf_usage(5);
- buf[0] = ((delay >> 0) & 0xFF);
- buf[1] = ((delay >> 8) & 0xFF);
- buf[2] = ((delay >> 16) & 0xFF);
- buf[3] = ((delay >> 24) & 0xFF);
+ buf[0] = ((usecs >> 0) & 0xFF);
+ buf[1] = ((usecs >> 8) & 0xFF);
+ buf[2] = ((usecs >> 16) & 0xFF);
+ buf[3] = ((usecs >> 24) & 0xFF);
sp_stream_buffer_op(S_CMD_O_DELAY, 4, buf);
sp_opbuf_usage += 5;
sp_prev_was_write = 0;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/flashrom-0.9.4_r1450/spi25.c new/flashrom-0.9.4_r1457/spi25.c
--- old/flashrom-0.9.4_r1450/spi25.c 2011-09-19 00:42:18.000000000 +0200
+++ new/flashrom-0.9.4_r1457/spi25.c 2011-10-21 14:33:07.000000000 +0200
@@ -120,7 +120,6 @@
uint32_t id2;
if (spi_rdid(readarr, bytes)) {
- msg_cdbg("\n");
return 0;
}
@@ -201,7 +200,6 @@
uint32_t id1, id2;
if (spi_rems(readarr)) {
- msg_cdbg("\n");
return 0;
}
@@ -259,7 +257,6 @@
}
if (spi_res(readarr, 1)) {
- msg_cdbg("\n");
return 0;
}
@@ -283,7 +280,6 @@
uint32_t id1, id2;
if (spi_res(readarr, 2)) {
- msg_cdbg("\n");
return 0;
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/flashrom-0.9.4_r1450/util/z60_flashrom.rules new/flashrom-0.9.4_r1457/util/z60_flashrom.rules
--- old/flashrom-0.9.4_r1450/util/z60_flashrom.rules 2011-06-17 23:25:48.000000000 +0200
+++ new/flashrom-0.9.4_r1457/util/z60_flashrom.rules 2011-10-21 01:14:10.000000000 +0200
@@ -56,6 +56,10 @@
# http://www.ftdichip.com/Products/EvaluationKits/FT4232H_MiniModule.htm
ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6011", MODE="664", GROUP="plugdev"
+# GOEPEL PicoTAP
+# http://www.goepel.com/jtagboundary-scan/hardware/picotap.html
+ATTRS{idVendor}=="096c", ATTRS{idProduct}=="1449", MODE="664", GROUP="plugdev"
+
# Olimex ARM-USB-OCD
# http://olimex.com/dev/arm-usb-ocd.html
ATTRS{idVendor}=="15ba", ATTRS{idProduct}=="0003", MODE="664", GROUP="plugdev"
@@ -72,4 +76,8 @@
# http://olimex.com/dev/arm-usb-tiny-h.html
ATTRS{idVendor}=="15ba", ATTRS{idProduct}=="002a", MODE="664", GROUP="plugdev"
+# TIAO/DIYGADGET USB Multi-Protocol Adapter (TUMPA)
+# http://www.diygadget.com/tiao-usb-multi-protocol-adapter-jtag-spi-i2c-seria…
+ATTRS{idVendor}=="0403", ATTRS{idProduct}=="8a98", MODE="664", GROUP="plugdev"
+
LABEL="flashrom_rules_end"
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0