diff options
-rw-r--r-- | conf/machine/jornada6xx.conf | 4 | ||||
-rw-r--r-- | conf/machine/lite5200.conf | 8 | ||||
-rw-r--r-- | packages/libcroco/libcroco_0.6.1.bb | 7 | ||||
-rw-r--r-- | packages/linux/linux-openzaurus-2.6.16/rmk-mmc1.patch | 61 | ||||
-rw-r--r-- | packages/linux/linux-openzaurus-2.6.16/rmk-mmc2.patch | 26 | ||||
-rw-r--r-- | packages/linux/linux-openzaurus_2.6.16.bb | 4 |
6 files changed, 96 insertions, 14 deletions
diff --git a/conf/machine/jornada6xx.conf b/conf/machine/jornada6xx.conf index 03fa7faa62..5aa492f57d 100644 --- a/conf/machine/jornada6xx.conf +++ b/conf/machine/jornada6xx.conf @@ -2,9 +2,7 @@ #@NAME: HP Jornada 680 #@DESCRIPTION: Machine configuration for the HITACHI SH3 based HP Jornada 6xx palmtop computer -TARGET_ARCH = "sh" +TARGET_ARCH = "sh3" IPKG_ARCHS = "all ${TARGET_ARCH} ${MACHINE}" -PREFERRED_VERSION_glibc = "2.3.4" -PREFERRED_VERSION_glibc-initial = "2.3.4" include conf/machine/include/tune-sh3.conf diff --git a/conf/machine/lite5200.conf b/conf/machine/lite5200.conf index 8df7b51d69..68efccef32 100644 --- a/conf/machine/lite5200.conf +++ b/conf/machine/lite5200.conf @@ -1,18 +1,10 @@ TARGET_ARCH = "powerpc" -TARGET_OS = "linux" IPKG_ARCHS = "all ppc ${MACHINE}" UBOOT_MACHINE = "Lite5200" SERIAL_CONSOLE="38400 ttyS0" -DISTRO = "familiar" TARGET_PREFIX = powerpc-603e-linux-gnu- -ASSUME_PROVIDED += "virtual/${TARGET_PREFIX}gcc virtual/libc" -PREFERRED_PROVIDERS += "virtual/qte:qte virtual/libqpe:libqpe-opie" -PREFERRED_PROVIDERS += " virtual/libsdl:libsdl-qpe" -PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}gcc-initial:gcc-cross-initial" -PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}gcc:gcc-cross" -PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}g++:gcc-cross" IMAGE_FSTYPES = "jffs2 tar.bz2" diff --git a/packages/libcroco/libcroco_0.6.1.bb b/packages/libcroco/libcroco_0.6.1.bb index d5553cf138..d92987adf3 100644 --- a/packages/libcroco/libcroco_0.6.1.bb +++ b/packages/libcroco/libcroco_0.6.1.bb @@ -3,10 +3,13 @@ SECTION = "x11/utils" MAINTAINER = "Koen Kooi <koen@dominion.kabel.utwente.nl>" DEPENDS = "glib-2.0 libxml2" LICENSE = "LGPL" -PR = "r0" +PR = "r1" inherit autotools pkgconfig gnome do_stage() { - autotools_stage_all + install -d ${STAGING_LIBDIR} + install -d ${STAGING_INCDIR}/libcroco + install -m 644 src/*.h ${STAGING_INCDIR}/libcroco/ + install -m 755 src/.libs/*so* ${STAGING_LIBDIR}/ } diff --git a/packages/linux/linux-openzaurus-2.6.16/rmk-mmc1.patch b/packages/linux/linux-openzaurus-2.6.16/rmk-mmc1.patch new file mode 100644 index 0000000000..054b48d28d --- /dev/null +++ b/packages/linux/linux-openzaurus-2.6.16/rmk-mmc1.patch @@ -0,0 +1,61 @@ + +The CSD contains a "read2write factor" which determines the multiplier to +be applied to the read timeout to obtain the write timeout. We were +ignoring this parameter, resulting in the possibility for writes being +timed out too early. + +Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk> + +diff --git a/drivers/mmc/mmc.c b/drivers/mmc/mmc.c +--- a/drivers/mmc/mmc.c ++++ b/drivers/mmc/mmc.c +@@ -549,6 +549,7 @@ static void mmc_decode_csd(struct mmc_ca + csd->read_partial = UNSTUFF_BITS(resp, 79, 1); + csd->write_misalign = UNSTUFF_BITS(resp, 78, 1); + csd->read_misalign = UNSTUFF_BITS(resp, 77, 1); ++ csd->r2w_factor = UNSTUFF_BITS(resp, 26, 3); + csd->write_blkbits = UNSTUFF_BITS(resp, 22, 4); + csd->write_partial = UNSTUFF_BITS(resp, 21, 1); + } else { +@@ -583,6 +584,7 @@ static void mmc_decode_csd(struct mmc_ca + csd->read_partial = UNSTUFF_BITS(resp, 79, 1); + csd->write_misalign = UNSTUFF_BITS(resp, 78, 1); + csd->read_misalign = UNSTUFF_BITS(resp, 77, 1); ++ csd->r2w_factor = UNSTUFF_BITS(resp, 26, 3); + csd->write_blkbits = UNSTUFF_BITS(resp, 22, 4); + csd->write_partial = UNSTUFF_BITS(resp, 21, 1); + } +diff --git a/drivers/mmc/mmc_block.c b/drivers/mmc/mmc_block.c +--- a/drivers/mmc/mmc_block.c ++++ b/drivers/mmc/mmc_block.c +@@ -187,6 +187,12 @@ static int mmc_blk_issue_rq(struct mmc_q + brq.cmd.opcode = MMC_WRITE_BLOCK; + brq.data.flags |= MMC_DATA_WRITE; + brq.data.blocks = 1; ++ ++ /* ++ * Scale up the timeout by the r2w factor ++ */ ++ brq.data.timeout_ns <<= card->csd.r2w_factor; ++ brq.data.timeout_clks <<= card->csd.r2w_factor; + } + + if (brq.data.blocks > 1) { +diff --git a/include/linux/mmc/card.h b/include/linux/mmc/card.h +--- a/include/linux/mmc/card.h ++++ b/include/linux/mmc/card.h +@@ -28,6 +28,7 @@ struct mmc_csd { + unsigned short cmdclass; + unsigned short tacc_clks; + unsigned int tacc_ns; ++ unsigned int r2w_factor; + unsigned int max_dtr; + unsigned int read_blkbits; + unsigned int write_blkbits; + + +------------------------------------------------------------------- +List admin: http://lists.arm.linux.org.uk/mailman/listinfo/linux-arm-kernel +FAQ: http://www.arm.linux.org.uk/mailinglists/faq.php +Etiquette: http://www.arm.linux.org.uk/mailinglists/etiquette.php + diff --git a/packages/linux/linux-openzaurus-2.6.16/rmk-mmc2.patch b/packages/linux/linux-openzaurus-2.6.16/rmk-mmc2.patch new file mode 100644 index 0000000000..cef02436d6 --- /dev/null +++ b/packages/linux/linux-openzaurus-2.6.16/rmk-mmc2.patch @@ -0,0 +1,26 @@ + +Always send a stop command at the end of a data transfer. If we avoid +sending the stop command, some cards remain in data transfer mode, and +refuse to accept further read/write commands. + +Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk> + +diff --git a/drivers/mmc/pxamci.c b/drivers/mmc/pxamci.c +--- a/drivers/mmc/pxamci.c ++++ b/drivers/mmc/pxamci.c +@@ -291,7 +291,7 @@ static int pxamci_data_done(struct pxamc + pxamci_disable_irq(host, DATA_TRAN_DONE); + + host->data = NULL; +- if (host->mrq->stop && data->error == MMC_ERR_NONE) { ++ if (host->mrq->stop) { + pxamci_stop_clock(host); + pxamci_start_cmd(host, host->mrq->stop, 0); + } else { + + +------------------------------------------------------------------- +List admin: http://lists.arm.linux.org.uk/mailman/listinfo/linux-arm-kernel +FAQ: http://www.arm.linux.org.uk/mailinglists/faq.php +Etiquette: http://www.arm.linux.org.uk/mailinglists/etiquette.php + diff --git a/packages/linux/linux-openzaurus_2.6.16.bb b/packages/linux/linux-openzaurus_2.6.16.bb index b62bcba688..ad293b82b3 100644 --- a/packages/linux/linux-openzaurus_2.6.16.bb +++ b/packages/linux/linux-openzaurus_2.6.16.bb @@ -1,6 +1,6 @@ include linux-openzaurus.inc -PR = "r15" +PR = "r19" # Handy URLs # git://rsync.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git \ @@ -13,6 +13,8 @@ PR = "r15" # Patches submitted upstream are towards top of this list # Hacks should clearly named and at the bottom SRC_URI = "http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.16.tar.bz2 \ + file://rmk-mmc1.patch;patch=1 \ + file://rmk-mmc2.patch;patch=1 \ ${RPSRC}/led_core-r15.patch;patch=1 \ ${RPSRC}/led_triggers-r14.patch;patch=1 \ ${RPSRC}/led_trig_timer-r8.patch;patch=1 \ |