summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--packages/linux/openzaurus-pxa-2.4.18-rmk7-pxa3-embedix20031107/unb0rk-apm.patch102
-rw-r--r--packages/linux/openzaurus-pxa_2.4.18-rmk7-pxa3-embedix20031107.inc7
2 files changed, 107 insertions, 2 deletions
diff --git a/packages/linux/openzaurus-pxa-2.4.18-rmk7-pxa3-embedix20031107/unb0rk-apm.patch b/packages/linux/openzaurus-pxa-2.4.18-rmk7-pxa3-embedix20031107/unb0rk-apm.patch
new file mode 100644
index 0000000000..6095ccb604
--- /dev/null
+++ b/packages/linux/openzaurus-pxa-2.4.18-rmk7-pxa3-embedix20031107/unb0rk-apm.patch
@@ -0,0 +1,102 @@
+--- linux/arch/arm/mach-pxa/sharpsl_apm.c 2005-09-07 10:49:06.000000000 +0200
++++ /home/hrw//devel/diffs/sharpsl_apm.c 2005-09-07 10:46:57.000000000 +0200
+@@ -1876,10 +1876,11 @@
+ switch (event) {
+ case APM_SYS_STANDBY:
+ case APM_USER_STANDBY:
+- if (send_event(event)) {
+- queue_event(event, NULL);
+- if (standbys_pending <= 0)
++ queue_event(event, NULL);
++ if (standbys_pending <= 0) {
++ if (send_event(event)) {
+ standby();
++ }
+ }
+ break;
+
+@@ -1907,13 +1908,12 @@
+ */
+ if (waiting_for_resume)
+ return;
+- if (send_event(event)) {
+- queue_event(event, NULL);
+- waiting_for_resume = 1;
+- if (suspends_pending <= 0){
++ queue_event(event, NULL);
++ waiting_for_resume = 1;
++ if (suspends_pending <= 0)
++ if (send_event(event)) {
+ (void) suspend();
+ }
+- }
+ break;
+
+ case APM_NORMAL_RESUME:
+@@ -2225,26 +2225,32 @@
+ as->standbys_read--;
+ as->standbys_pending--;
+ standbys_pending--;
+- } else if (!send_event(APM_USER_STANDBY))
+- return -EAGAIN;
+- else
++ } else {
+ queue_event(APM_USER_STANDBY, as);
+- if (standbys_pending <= 0)
+- standby();
++ }
++ if (standbys_pending <= 0) {
++ if (send_event(APM_USER_STANDBY)) {
++ standby();
++ } else {
++ return -EAGAIN;
++ }
++ }
+ break;
+ case APM_IOC_SUSPEND:
+ if (as->suspends_read > 0) {
+ as->suspends_read--;
+ as->suspends_pending--;
+ suspends_pending--;
+- } else if (!send_event(APM_USER_SUSPEND))
+- return -EAGAIN;
+- else
++ } else {
+ queue_event(APM_USER_SUSPEND, as);
++ }
+ if (suspends_pending <= 0) {
+-
+- if (suspend() != APM_SUCCESS)
+- return -EIO;
++ if (send_event(APM_USER_SUSPEND)) {
++ if (suspend() != APM_SUCCESS)
++ return -EIO;
++ } else {
++ return -EAGAIN;
++ }
+ } else {
+ as->suspend_wait = 1;
+ add_wait_queue(&apm_suspend_waitqueue, &wait);
+@@ -2483,13 +2489,18 @@
+ lock_kernel();
+ if (as->standbys_pending > 0) {
+ standbys_pending -= as->standbys_pending;
+- if (standbys_pending <= 0)
+- standby();
++ if (standbys_pending <= 0) {
++ if (send_event(APM_USER_STANDBY)) {
++ standby();
++ }
++ }
+ }
+ if (as->suspends_pending > 0) {
+ suspends_pending -= as->suspends_pending;
+- if (suspends_pending <= 0){
+- (void) suspend();
++ if (suspends_pending <= 0) {
++ if (send_event(APM_USER_SUSPEND)) {
++ (void) suspend();
++ }
+ }
+ }
+ if (user_list == as)
diff --git a/packages/linux/openzaurus-pxa_2.4.18-rmk7-pxa3-embedix20031107.inc b/packages/linux/openzaurus-pxa_2.4.18-rmk7-pxa3-embedix20031107.inc
index 548d87c1a2..dfea2b527e 100644
--- a/packages/linux/openzaurus-pxa_2.4.18-rmk7-pxa3-embedix20031107.inc
+++ b/packages/linux/openzaurus-pxa_2.4.18-rmk7-pxa3-embedix20031107.inc
@@ -1,13 +1,15 @@
DESCRIPTION = "Linux kernel for OpenZaurus PXA processor based devices."
MAINTAINER = "Michael 'Mickey' Lauer <mickey@Vanille.de>"
SECTION = "kernel"
-PV = "2.4.18-rmk7-pxa3-embedix"
LICENSE = "GPL"
+PV = "2.4.18-rmk7-pxa3-embedix"
+PR = "r43"
+
KV = "2.4.18"
RMKV = "7"
PXAV = "3"
SHARPV = "20031107"
-PR = "r41"
+
FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/openzaurus-pxa-${KV}-rmk${RMKV}-pxa${PXAV}-embedix${SHARPV}"
SRC_URI = "ftp://ftp.kernel.org/pub/linux/kernel/v2.4/linux-${KV}.tar.bz2 \
@@ -49,6 +51,7 @@ SRC_URI = "ftp://ftp.kernel.org/pub/linux/kernel/v2.4/linux-${KV}.tar.bz2 \
http://us1.samba.org/samba/ftp/cifs-cvs/cifs-1.20c-2.4.tar.gz \
file://fix_tosa_apm.patch;patch=1 \
file://dumb-hack-for-wlan-ng.patch;patch=1 \
+ file://unb0rk-apm.patch;patch=1 \
file://defconfig-${MACHINE} "
SRC_URI_append_poodle += " file://smallfonts.diff;patch=1"