[oe-commits] org.oe.dev merge of '0e150443d291bc62c30745eee41a34a08f3eb3db'

florian commit openembedded-commits at lists.openembedded.org
Wed Jul 4 12:05:39 UTC 2007


merge of '0e150443d291bc62c30745eee41a34a08f3eb3db'
     and '1b058511a74a92f00fa349a145e6d36bc37c7e21'

Author: florian at openembedded.org
Branch: org.openembedded.dev
Revision: 78d4b34c6287acb9fbc2589ac0b7f3442083df51
ViewMTN: http://monotone.openembedded.org/revision.psp?id=78d4b34c6287acb9fbc2589ac0b7f3442083df51
Files:
1
classes/sdk.bbclass
packages/meta/meta-sdk.bb
packages/linux/linux/sarge-at91
conf/machine/sarge-at91.conf
packages/atk/atk_1.19.3.bb
packages/linux/linux/sarge-at91/2.6.21-sarge-kernel.patch
packages/linux/linux/sarge-at91/2.6.21-sarge-mmc.patch
packages/linux/linux/sarge-at91/2.6.21-sarge-phy.patch
packages/linux/linux/sarge-at91/defconfig
packages/linux/linux-rp-2.6.21/locomo_spi-r4.patch
packages/linux/linux-rp-2.6.21/sharpsl_pm-r1.patch
packages/uboot/u-boot-1.1.6/sarge-uboot.patch
packages/uicmoc/uicmoc-native-2.3.10/kernel-asm-page.patch
classes/sanity.bbclass
conf/distro/sharprom-compatible.conf
packages/linux/linux-rp_2.6.21.bb
packages/linux/linux.inc
packages/linux/linux_2.6.21.bb
packages/modutils/modutils-cross_2.4.27.bb
packages/modutils/modutils_2.4.27.bb
packages/qemu/qemu-native.inc
packages/slugos-init/files/boot/kexec
packages/tasks/task-opie-all.bb
packages/uboot/u-boot_1.1.6.bb
packages/uicmoc/uicmoc-native_2.3.10.bb
Diffs:

#
# mt diff -r0e150443d291bc62c30745eee41a34a08f3eb3db -r78d4b34c6287acb9fbc2589ac0b7f3442083df51
#
# 
# 
# patch "classes/sdk.bbclass"
#  from [f5a6cb53cd1f28070b6b61af23f5004767157e55]
#    to [100957b869cd48dd7933ace807f396c946442a32]
# 
# patch "packages/meta/meta-sdk.bb"
#  from [07d62cef69fc1e5ce78c9473a1807dab6b7e1a55]
#    to [ff295d96a64b4812465dc168854063b3d3d0cb4a]
# 
============================================================
--- classes/sdk.bbclass	f5a6cb53cd1f28070b6b61af23f5004767157e55
+++ classes/sdk.bbclass	100957b869cd48dd7933ace807f396c946442a32
@@ -26,3 +26,23 @@ FILES_${PN}-dbg += "${prefix}/bin/.debug
 FILES_${PN}-dbg += "${prefix}/bin/.debug \
                     ${prefix}/sbin/.debug \
                    "
+
+sdk_ipk_do_indexes () {
+	set -x
+
+	ipkgarchs="${PACKAGE_ARCHS}"
+
+        if [ -z "${DEPLOY_KEEP_PACKAGES}" ]; then
+                touch ${DEPLOY_DIR_IPK}/Packages
+                ipkg-make-index -r ${DEPLOY_DIR_IPK}/Packages -p ${DEPLOY_DIR_IPK}/Packages -l ${DEPLOY_DIR_IPK}/Packages.filelist -m ${DEPLOY_DIR_IPK}
+        fi
+
+	for arch in $ipkgarchs; do
+		if [ -z "${DEPLOY_KEEP_PACKAGES}" ]; then
+			if [ -e ${DEPLOY_DIR_IPK}/${BUILD_ARCH}-$arch-sdk/ ] ; then 
+				touch ${DEPLOY_DIR_IPK}/${BUILD_ARCH}-$arch-sdk/Packages
+				ipkg-make-index -r ${DEPLOY_DIR_IPK}/${BUILD_ARCH}-$arch-sdk/Packages -p ${DEPLOY_DIR_IPK}/${BUILD_ARCH}-$arch-sdk/Packages -l ${DEPLOY_DIR_IPK}/${BUILD_ARCH}-$arch-sdk/Packages.filelist -m ${DEPLOY_DIR_IPK}/${BUILD_ARCH}-$arch-sdk/
+			fi
+		fi
+	done
+}
============================================================
--- packages/meta/meta-sdk.bb	07d62cef69fc1e5ce78c9473a1807dab6b7e1a55
+++ packages/meta/meta-sdk.bb	ff295d96a64b4812465dc168854063b3d3d0cb4a
@@ -1,9 +1,9 @@ DEPENDS = "ipkg-native ipkg-utils-native
 DESCRIPTION = "Meta package for bare SDK package"
 LICENSE = "MIT"
 DEPENDS = "ipkg-native ipkg-utils-native fakeroot-native sed-native"
-PR = "r13"
+PR = "r14"
 
-inherit sdk meta
+inherit rootfs_ipk sdk meta
 
 SDK_DIR = "${WORKDIR}/sdk"
 SDK_OUTPUT = "${SDK_DIR}/image"
@@ -23,25 +23,31 @@ RDEPENDS = "${TARGET_INSTALL} ${HOST_INS
 
 RDEPENDS = "${TARGET_INSTALL} ${HOST_INSTALL}"
 
+sdk_do_indexes () {
+        set -ex
+        rootfs_ipk_do_indexes
+        sdk_ipk_do_indexes
+        set +ex
+}
+
 do_populate_sdk() {
-	touch ${DEPLOY_DIR_IPK}/Packages
-	ipkg-make-index -r ${DEPLOY_DIR_IPK}/Packages -p ${DEPLOY_DIR_IPK}/Packages -l ${DEPLOY_DIR_IPK}/Packages.filelist -m ${DEPLOY_DIR_IPK}
+        sdk_do_indexes
+        echo "Creating host.conf..."
 
 	rm -rf ${SDK_OUTPUT}
 	mkdir -p ${SDK_OUTPUT}
 
-	cat <<EOF >${SDK_DIR}/ipkg-host.conf
-src oe file:${DEPLOY_DIR_IPK}
-EOF
-        cat <<EOF >${SDK_DIR}/ipkg-target.conf
-src oe file:${DEPLOY_DIR_IPK}
-EOF
-	ipkgarchs="${PACKAGE_ARCHS}"
         priority=1
         for arch in $ipkgarchs; do
                 echo "arch $arch $priority" >> ${SDK_DIR}/ipkg-target.conf
-		echo "arch ${BUILD_ARCH}-$arch-sdk $priority" >> ${SDK_DIR}/ipkg-host.conf
+                echo "arch ${BUILD_ARCH}-$arch-sdk $priority" >> ${SDK_DIR}/ipkg-host.conf
 	        priority=$(expr $priority + 5)
+                if [ -e ${DEPLOY_DIR_IPK}/$arch/Packages ] ; then
+                        echo "src oe-$arch file:${DEPLOY_DIR_IPK}/$arch" >> ${SDK_DIR}/ipkg-target.conf
+                fi
+                if [ -e ${DEPLOY_DIR_IPK}/${BUILD_ARCH}-$arch-sdk/Packages ] ; then
+                        echo "src oe-$arch-sdk file:${DEPLOY_DIR_IPK}/${BUILD_ARCH}-$arch-sdk" >> ${SDK_DIR}/ipkg-host.conf
+                fi
         done
 
 	rm -r ${SDK_OUTPUT}


#
# mt diff -r1b058511a74a92f00fa349a145e6d36bc37c7e21 -r78d4b34c6287acb9fbc2589ac0b7f3442083df51
#
# 
# 
# add_dir "packages/linux/linux/sarge-at91"
# 
# add_file "conf/machine/sarge-at91.conf"
#  content [c143fccacff25ccef3d78df850733d0a04c84286]
# 
# add_file "packages/atk/atk_1.19.3.bb"
#  content [656b768718fa0fb3c29376f5b6d2cecb01f2f4c1]
# 
# add_file "packages/linux/linux/sarge-at91/2.6.21-sarge-kernel.patch"
#  content [214f7346ed9238c8e7169504a486dd0d9b8e8f6d]
# 
# add_file "packages/linux/linux/sarge-at91/2.6.21-sarge-mmc.patch"
#  content [bf050035be44127be85f7e032a598eedf4633167]
# 
# add_file "packages/linux/linux/sarge-at91/2.6.21-sarge-phy.patch"
#  content [9260941cf7e54b07a87e8ffda492d2ff9a25a460]
# 
# add_file "packages/linux/linux/sarge-at91/defconfig"
#  content [887a1501d7a72435df8b09c025425ef867d22132]
# 
# add_file "packages/linux/linux-rp-2.6.21/locomo_spi-r4.patch"
#  content [b8a26ac453b32eabec7a152dc8995c03346c07fa]
# 
# add_file "packages/linux/linux-rp-2.6.21/sharpsl_pm-r1.patch"
#  content [bb565e82d3dbd8bf8be036f83d615b6a6fb269e4]
# 
# add_file "packages/uboot/u-boot-1.1.6/sarge-uboot.patch"
#  content [c9ee9edf5969ee2d501b6edeae91189ad44478ab]
# 
# add_file "packages/uicmoc/uicmoc-native-2.3.10/kernel-asm-page.patch"
#  content [80a6d114216133cf5b84be77d9090ced7721b591]
# 
# patch "classes/sanity.bbclass"
#  from [cebf5a2ee9519f8342891e74db6ab2aaa370b992]
#    to [dcb94eb7036e5db9888430963dfbead08880632d]
# 
# patch "conf/distro/sharprom-compatible.conf"
#  from [36c0bbeac678610033e6ff170af8457bd2f04dbb]
#    to [3c1abcc8cdbeb6500fc7e48ad25b8eb278dff3a1]
# 
# patch "packages/linux/linux-rp_2.6.21.bb"
#  from [0611fe14d6ba36f9557f2f7c5814c1be6fbd7f84]
#    to [a52ed332d359bc91a192a08cf926d94a67787424]
# 
# patch "packages/linux/linux.inc"
#  from [571ad2731ad0b3d6172a72c2f807cbcc9bb6c840]
#    to [08e72ce149668a87f2289e9d8b21ed7c99ea7fb8]
# 
# patch "packages/linux/linux_2.6.21.bb"
#  from [53a97580492f0de948ef1e7ef160f429dc8a1408]
#    to [b173c031d2b38c69861aac233b95eb1254d0c9ed]
# 
# patch "packages/modutils/modutils-cross_2.4.27.bb"
#  from [0930c6ca80cd394f3bc0297699ec6ee0c8e07077]
#    to [d2e5a6051325833d0a5b8fc3e3d9c178a778e38b]
# 
# patch "packages/modutils/modutils_2.4.27.bb"
#  from [064be998ea2ba1e1a54c8240906da23faeb1c552]
#    to [851e756dae52512055185fc00ee99ffbda2ac230]
# 
# patch "packages/qemu/qemu-native.inc"
#  from [a6c0e5a75f0d0228a83c274f444a11031af95f6c]
#    to [71d3322a1e1cff08495c023c071fdd6a29e15a80]
# 
# patch "packages/slugos-init/files/boot/kexec"
#  from [b1ddcced6d9e71541270a6164d283c40b6bf4c53]
#    to [673016bf05b9aa6cb772a7c6b241caedab27151a]
# 
# patch "packages/tasks/task-opie-all.bb"
#  from [736a212427892e2181e55efb54106fec963fcf48]
#    to [f882913a23b727a2f228423837f49cd69400af8b]
# 
# patch "packages/uboot/u-boot_1.1.6.bb"
#  from [4fc0f6a543827c9634e59fdcf640234b80d8580f]
#    to [2c312681345e37f99ff59ba0f3b883c44dd4f35c]
# 
# patch "packages/uicmoc/uicmoc-native_2.3.10.bb"
#  from [3eb23cf0c505c798552d20494b420631903c6ab1]
#    to [5f5ef578c72a6f1a4350fd30b2b73d049ce313c6]
# 
============================================================
--- conf/machine/sarge-at91.conf	c143fccacff25ccef3d78df850733d0a04c84286
+++ conf/machine/sarge-at91.conf	c143fccacff25ccef3d78df850733d0a04c84286
@@ -0,0 +1,23 @@
+#@TYPE: Machine
+#@Name: Sarge AT91RM9200 blackmesaeast dev boards
+#@DESCRIPTION: Machine configuration for sarge_at91 dev boards
+#
+#Homepage: http://blackmesaeast.com.pl/projects/electronics/sarge-single-board-computer/
+
+TARGET_ARCH = "arm"
+PACKAGE_EXTRA_ARCHS = "armv4t"
+
+# used by sysvinit_2
+SERIAL_CONSOLE = "115200 ttyS0"
+
+IMAGE_FSTYPES = "tar.gz"
+
+MACHINE_FEATURES = "kernel26"
+
+require conf/machine/include/tune-arm920t.conf
+
+PREFERRED_PROVIDER_virtual/kernel = "linux"
+
+# device has own patchset for u-boot 1.1.6
+PREFERRED_VERSION_u-boot = "1.1.6"
+PREFERRED_VERSION_linux  = "2.6.21"
============================================================
--- packages/atk/atk_1.19.3.bb	656b768718fa0fb3c29376f5b6d2cecb01f2f4c1
+++ packages/atk/atk_1.19.3.bb	656b768718fa0fb3c29376f5b6d2cecb01f2f4c1
@@ -0,0 +1,10 @@
+require atk.inc
+
+DEFAULT_PREFERENCE = "-1"
+
+SRC_URI = "ftp://ftp.gnome.org/pub/GNOME/sources/atk/1.19/atk-${PV}.tar.bz2"
+
+do_stage () {
+        oe_libinstall -so -C atk libatk-1.0 ${STAGING_LIBDIR}
+        autotools_stage_includes
+}
============================================================
--- packages/linux/linux/sarge-at91/2.6.21-sarge-kernel.patch	214f7346ed9238c8e7169504a486dd0d9b8e8f6d
+++ packages/linux/linux/sarge-at91/2.6.21-sarge-kernel.patch	214f7346ed9238c8e7169504a486dd0d9b8e8f6d
@@ -0,0 +1,238 @@
+diff -Nurp ../linux-2.6.21.4/arch/arm/boot/compressed/head-at91rm9200.S ./arch/arm/boot/compressed/head-at91rm9200.S
+--- ../linux-2.6.21.4/arch/arm/boot/compressed/head-at91rm9200.S	2007-06-12 22:29:12.000000000 +0200
++++ ./arch/arm/boot/compressed/head-at91rm9200.S	2007-06-12 02:57:07.000000000 +0200
+@@ -73,6 +73,12 @@
+ 		cmp	r7, r3
+ 		beq	99f
+ 
++                @ AT91RM9200
++                mov     r3,     #(MACH_TYPE_AT91RM9200 & 0xff)
++                orr     r3, r3, #(MACH_TYPE_AT91RM9200 & 0xff00)
++                cmp     r7, r3
++                beq     99f
++
+ 		@ Unknown board, use the AT91RM9200DK board
+ 		@ mov	r7, #MACH_TYPE_AT91RM9200
+ 		mov	r7,	#(MACH_TYPE_AT91RM9200DK & 0xff)
+diff -Nurp ../linux-2.6.21.4/arch/arm/mach-at91/board-sarge.c ./arch/arm/mach-at91/board-sarge.c
+--- ../linux-2.6.21.4/arch/arm/mach-at91/board-sarge.c	1970-01-01 01:00:00.000000000 +0100
++++ ./arch/arm/mach-at91/board-sarge.c	2007-06-12 02:57:07.000000000 +0200
+@@ -0,0 +1,190 @@
++/*
++ * linux/arch/arm/mach-at91/board-sarge.c
++ *
++ *  Copyright (C) 2007 BlackMesaEast staff
++ *
++ *	mcgregor at blackmesaeast.com.pl
++ *
++ * This program is free software; you can redistribute it and/or modify
++ * it under the terms of the GNU General Public License as published by
++ * the Free Software Foundation; either version 2 of the License, or
++ * (at your option) any later version.
++ *
++ * This program is distributed in the hope that it will be useful,
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++ * GNU General Public License for more details.
++ *
++ * You should have received a copy of the GNU General Public License
++ * along with this program; if not, write to the Free Software
++ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
++ */
++
++#include <linux/types.h>
++#include <linux/init.h>
++#include <linux/mm.h>
++#include <linux/module.h>
++#include <linux/platform_device.h>
++#include <linux/spi/spi.h>
++#include <linux/mtd/physmap.h>
++
++#include <asm/hardware.h>
++#include <asm/setup.h>
++#include <asm/mach-types.h>
++#include <asm/irq.h>
++
++#include <asm/mach/arch.h>
++#include <asm/mach/map.h>
++#include <asm/mach/irq.h>
++
++#include <asm/arch/board.h>
++#include <asm/arch/gpio.h>
++#include <asm/arch/at91rm9200_mc.h>
++
++#include "generic.h"
++
++
++/*
++ * Serial port configuration.
++ *    0 .. 3 = USART0 .. USART3
++ *    4      = DBGU
++ */
++static struct at91_uart_config __initdata sarge_uart_config = {
++	.console_tty	= 0,				/* ttyS0 */
++	.nr_tty		= 5,
++	.tty_map	= { 4, 1, 0, 2, 3 }		/* ttyS0, ..., ttyS4 */
++};
++
++static void __init sarge_map_io(void)
++{
++	/* Initialize processor: 18.432 MHz crystal */
++	at91rm9200_initialize(18432000, AT91RM9200_PQFP);
++
++	/* Setup the serial ports and console */
++	at91_init_serial(&sarge_uart_config);
++}
++
++static void __init sarge_init_irq(void)
++{
++	at91rm9200_init_interrupts(NULL);
++}
++
++static struct at91_eth_data __initdata sarge_eth_data = {
++	.phy_irq_pin	= AT91_PIN_PB1,
++	.is_rmii	= 0,
++};
++
++static struct at91_usbh_data __initdata sarge_usbh_data = {
++	.ports		= 1,
++};
++
++static struct at91_udc_data __initdata sarge_udc_data = {
++	.vbus_pin	= AT91_PIN_PA20,
++	.pullup_pin	= AT91_PIN_PA21,
++};
++
++static struct at91_cf_data __initdata sarge_cf_data = {
++	.det_pin	= AT91_PIN_PB24,
++	.rst_pin	= AT91_PIN_PB23,
++	// .irq_pin	= ... not connected
++	// .vcc_pin	= ... always powered
++};
++
++static struct at91_mmc_data __initdata sarge_mmc_data = {
++	.det_pin	= AT91_PIN_PB0,
++	.slot_b		= 0,	
++	.wire4		= 1,	
++	.wp_pin		= AT91_PIN_PB2,
++};
++
++
++
++static struct spi_board_info sarge_spi_devices[] = {
++	{	/* DataFlash chip */
++		.modalias	= "mtd_dataflash",
++		.chip_select	= 0,
++		.max_speed_hz	= 15 * 1000 * 1000,
++	}
++};
++
++static struct mtd_partition __initdata sarge_nand_partition[] = {
++	{
++		.name	= "NAND Partition 1",
++		.offset	= 0,
++		.size	= MTDPART_SIZ_FULL,
++	},
++};
++
++static struct mtd_partition *nand_partitions(int size, int *num_partitions)
++{
++	*num_partitions = ARRAY_SIZE(sarge_nand_partition);
++	return sarge_nand_partition;
++}
++
++static struct at91_nand_data __initdata sarge_nand_data = {
++	.ale		= 22,
++	.cle		= 21,
++	.det_pin	= AT91_PIN_PB22,
++	.rdy_pin	= AT91_PIN_PB22,
++	// .enable_pin	= ... not there
++	.partition_info	= nand_partitions,
++};
++
++#define SARGE_FLASH_BASE	AT91_CHIPSELECT_0
++#define SARGE_FLASH_SIZE	0x200000
++
++static struct physmap_flash_data sarge_flash_data = {
++	.width		= 2,
++};
++
++static struct resource sarge_flash_resource = {
++	.start		= SARGE_FLASH_BASE,
++	.end		= SARGE_FLASH_BASE + SARGE_FLASH_SIZE - 1,
++	.flags		= IORESOURCE_MEM,
++};
++
++static struct platform_device sarge_flash = {
++	.name		= "physmap-flash",
++	.id		= 0,
++	.dev		= {
++				.platform_data	= &sarge_flash_data,
++			},
++	.resource	= &sarge_flash_resource,
++	.num_resources	= 1,
++};
++
++static void __init sarge_board_init(void)
++{
++	/* Serial */
++	at91_add_device_serial();
++	/* Ethernet */
++	at91_add_device_eth(&sarge_eth_data);
++	/* USB Host */
++	at91_add_device_usbh(&sarge_usbh_data);
++	/* USB Device */
++	at91_add_device_udc(&sarge_udc_data);
++	at91_set_multi_drive(sarge_udc_data.pullup_pin, 1);	/* pullup_pin is connected to reset */
++	/* Compact Flash */
++	at91_add_device_cf(&sarge_cf_data);
++	/* I2C */
++	at91_add_device_i2c();
++	/* SPI */
++	at91_add_device_spi(sarge_spi_devices, ARRAY_SIZE(sarge_spi_devices));
++
++	/* MMC */
++	at91_add_device_mmc(0, &sarge_mmc_data);
++	/* NAND */
++	at91_add_device_nand(&sarge_nand_data);
++	/* NOR Flash */
++	platform_device_register(&sarge_flash);
++}
++MACHINE_START(AT91RM9200, "Sarge AT91RM9200 SBC")
++	/* Maintainer: mcgregor at blackmesaeast.com.pl */
++	.phys_io	= AT91_BASE_SYS,
++	.io_pg_offst	= (AT91_VA_BASE_SYS >> 18) & 0xfffc,
++	.boot_params	= AT91_SDRAM_BASE + 0x100,
++	.timer		= &at91rm9200_timer,
++	.map_io		= sarge_map_io,
++	.init_irq	= sarge_init_irq,
++	.init_machine	= sarge_board_init,
++MACHINE_END
+diff -Nurp ../linux-2.6.21.4/arch/arm/mach-at91/Kconfig ./arch/arm/mach-at91/Kconfig
+--- ../linux-2.6.21.4/arch/arm/mach-at91/Kconfig	2007-06-12 22:29:12.000000000 +0200
++++ ./arch/arm/mach-at91/Kconfig	2007-06-12 03:00:28.000000000 +0200
+@@ -90,6 +90,13 @@ config MACH_KAFA
+ 	help
+ 	  Select this if you are using Sperry-Sun's KAFA board.
+ 
++config MACH_SARGE
++        bool "Black Mesa East Sarge SBC"
++        depends on ARCH_AT91RM9200
++        help
++	  Select this if you are using BlackMesaEast Sarge PCB
++	  <http://blackmesaeast.com.pl>
++					    
+ config MACH_CHUB
+ 	bool "Promwad Chub board"
+ 	depends on ARCH_AT91RM9200
+diff -Nurp ../linux-2.6.21.4/arch/arm/mach-at91/Makefile ./arch/arm/mach-at91/Makefile
+--- ../linux-2.6.21.4/arch/arm/mach-at91/Makefile	2007-06-12 22:29:12.000000000 +0200
++++ ./arch/arm/mach-at91/Makefile	2007-06-12 03:00:47.000000000 +0200
+@@ -29,6 +29,7 @@ obj-$(CONFIG_MACH_KB9200)	+= board-kb920
+ obj-$(CONFIG_MACH_ATEB9200)	+= board-eb9200.o
+ obj-$(CONFIG_MACH_KAFA)		+= board-kafa.o
+ obj-$(CONFIG_MACH_CHUB)		+= board-chub.o
++obj-$(CONFIG_MACH_SARGE)	+= board-sarge.o
+ 
+ # AT91SAM9260 board-specific support
+ obj-$(CONFIG_MACH_AT91SAM9260EK) += board-sam9260ek.o
============================================================
--- packages/linux/linux/sarge-at91/2.6.21-sarge-mmc.patch	bf050035be44127be85f7e032a598eedf4633167
+++ packages/linux/linux/sarge-at91/2.6.21-sarge-mmc.patch	bf050035be44127be85f7e032a598eedf4633167
@@ -0,0 +1,87 @@
+diff -Nurp ../linux-2.6.21.4/drivers/mmc/at91_mci.c ./drivers/mmc/at91_mci.c
+--- ../linux-2.6.21.4/drivers/mmc/at91_mci.c	2007-06-12 22:29:12.000000000 +0200
++++ ./drivers/mmc/at91_mci.c	2007-06-12 03:52:55.000000000 +0200
+@@ -421,8 +421,11 @@ static unsigned int at91_mci_send_comman
+ 	if (cmd->opcode == MMC_STOP_TRANSMISSION)
+ 		cmdr |= AT91_MCI_TRCMD_STOP;
+ 
+-	if (host->bus_mode == MMC_BUSMODE_OPENDRAIN)
+-		cmdr |= AT91_MCI_OPDCMD;
++	//if (host->bus_mode == MMC_BUSMODE_OPENDRAIN)
++	//	cmdr |= AT91_MCI_OPDCMD;
++		
++	if (!(1/**machine_is_sarge*/) && host->bus_mode == MMC_BUSMODE_OPENDRAIN)
++	     cmdr |= AT91_MCI_OPDCMD;		
+ 
+ 	/*
+ 	 * Set the arguments and send the command
+@@ -739,7 +742,13 @@ static irqreturn_t at91_mci_irq(int irq,
+ 		at91_mci_write(host, AT91_MCI_IDR, 0xffffffff);
+ 		at91mci_completed_command(host);
+ 	} else
++//		at91_mci_write(host, AT91_MCI_IDR, int_status);
++	 {
++	    if (1 /*machine_is_sarge()*/)
++		at91_mci_write(host, AT91_MCI_IDR, (int_status & ~AT91_MCI_TXRDY) );
++	    else
+ 		at91_mci_write(host, AT91_MCI_IDR, int_status);
++	}		
+ 
+ 	return IRQ_HANDLED;
+ }
+diff -Nurp ../linux-2.6.21.4/drivers/mmc/mmc_block.c ./drivers/mmc/mmc_block.c
+--- ../linux-2.6.21.4/drivers/mmc/mmc_block.c	2007-06-07 23:27:31.000000000 +0200
++++ ./drivers/mmc/mmc_block.c	2007-06-12 04:19:36.000000000 +0200
+@@ -256,10 +256,24 @@ static int mmc_blk_issue_rq(struct mmc_q
+ 		 * this rule as they support querying the number of
+ 		 * successfully written sectors.
+ 		 */
+-		if (rq_data_dir(req) != READ &&
++//		if (rq_data_dir(req) != READ &&
++		    if ((1/**machine_is_sarge*/))
++		    {
++			if (rq_data_dir(req) != READ)
++			    brq.data.blocks = 1;
++		    }
++		    else if (rq_data_dir(req) != READ &&			
++
+ 		    !(card->host->caps & MMC_CAP_MULTIWRITE) &&
+ 		    !mmc_card_sd(card))
+ 			brq.data.blocks = 1;
++			
++			
++			
++			
++			
++			
++			
+ 
+ 		if (brq.data.blocks > 1) {
+ 			brq.data.flags |= MMC_DATA_MULTI;
+diff -Nurp ../linux-2.6.21.4/drivers/mmc/mmc.c ./drivers/mmc/mmc.c
+--- ../linux-2.6.21.4/drivers/mmc/mmc.c	2007-06-07 23:27:31.000000000 +0200
++++ ./drivers/mmc/mmc.c	2007-06-12 04:10:05.000000000 +0200
+@@ -1500,12 +1500,22 @@ static void mmc_setup(struct mmc_host *h
+ 	mmc_set_ios(host);
+ 
+ 	mmc_read_csds(host);
+-
++	/*
+ 	if (host->mode == MMC_MODE_SD) {
+ 		mmc_read_scrs(host);
+ 		mmc_read_switch_caps(host);
+ 	} else
+ 		mmc_process_ext_csds(host);
++	*/
++	
++	if (!(1/*machine_is_sarge*/))
++	{
++	    if (host->mode == MMC_MODE_SD) {
++		mmc_read_scrs(host);
++	    mmc_read_switch_caps(host);
++	    } else
++		mmc_process_ext_csds(host);
++	}	
+ }
+ 
+ 
============================================================
--- packages/linux/linux/sarge-at91/2.6.21-sarge-phy.patch	9260941cf7e54b07a87e8ffda492d2ff9a25a460
+++ packages/linux/linux/sarge-at91/2.6.21-sarge-phy.patch	9260941cf7e54b07a87e8ffda492d2ff9a25a460
@@ -0,0 +1,400 @@
+diff -Nurp ../linux-2.6.21.4/drivers/net/arm/at91_ether.c ./drivers/net/arm/at91_ether.c
+--- ../linux-2.6.21.4/drivers/net/arm/at91_ether.c	2007-06-12 22:29:12.000000000 +0200
++++ ./drivers/net/arm/at91_ether.c	2007-06-12 03:11:16.000000000 +0200
+@@ -235,6 +235,11 @@ static irqreturn_t at91ether_phy_interru
+ 		if (!(phy & (1 << 7)))
+ 			goto done;
+ 	}
++	else if (lp->phy_type == MII_STE100P_ID) {	
++		read_phy(lp->phy_address, MII_STE100P_XCSIIS_REG, &phy); /* ack interrupt in STE100P PHY */
++		if (!(phy & 0x007F))
++		    goto done;
++	}
+ 
+ 	update_linkspeed(dev, 0);
+ 
+@@ -303,6 +308,11 @@ static void enable_phyirq(struct net_dev
+ 		dsintr = dsintr | 0x3;			/* set bits 0,1 */
+ 		write_phy(lp->phy_address, MII_DPMICR_REG, dsintr);
+ 	}
++	else if (lp->phy_type == MII_STE100P_ID) {	/* for STE100P PHY */
++		read_phy(lp->phy_address, MII_STE100P_XIE_REG, &dsintr);
++
++		dsintr |= 0x007F;
++	}
+ 
+ 	disable_mdi();
+ 	spin_unlock_irq(&lp->lock);
+@@ -359,6 +369,11 @@ static void disable_phyirq(struct net_de
+ 		dsintr = dsintr & ~0x3c;			/* clear bits 2..5 */
+ 		write_phy(lp->phy_address, MII_DPMISR_REG, dsintr);
+ 	}
++	else if (lp->phy_type =%s
>>> DIFF TRUNCATED @ 16K






More information about the Openembedded-commits mailing list