Changeset 4096
- Timestamp:
- 02/21/08 09:37:05 (5 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/src/target/kernel/2.6.24.x/patches/s3c_mci.patch
r4082 r4096 90 90 --- /dev/null 91 91 +++ linux-2.6.24/drivers/mmc/host/s3cmci.c 92 @@ -0,0 +1,141 1@@92 @@ -0,0 +1,1419 @@ 93 93 +/* 94 94 + * linux/drivers/mmc/s3cmci.h - Samsung S3C MCI driver … … 344 344 + 345 345 + /* we might have an unaligned start of data */ 346 + while (((unsigned long)host->pio_ptr & 0x03) && fifo --)346 + while (((unsigned long)host->pio_ptr & 0x03) && fifo) { 347 347 + *(host->pio_ptr++) = readb(host->base + host->sdidata_b); 348 + fifo--; 349 + } 348 350 + 349 351 + /* and a major chunk of data in the middle */ … … 354 356 + 355 357 + /* as well as some non-modulo-four trailer */ 356 + while (fifo) 358 + while (fifo) { 357 359 + *(host->pio_ptr++) = readb(host->base + host->sdidata_b); 360 + fifo--; 361 + } 358 362 + } 359 363 + … … 408 412 + 409 413 + /* we might have an unaligned start of data */ 410 + while (( unsigned long)host->pio_ptr & 0x03)414 + while (((unsigned long)host->pio_ptr & 0x03) && fifo) { 411 415 + writeb(*(host->pio_ptr++), host->base + host->sdidata_b); 416 + fifo--; 417 + } 412 418 + 413 419 + /* and a major chunk of data in the middle */ … … 418 424 + 419 425 + /* as well as some non-modulo-four trailer */ 420 + while (fifo --)426 + while (fifo) { 421 427 + writeb(*(host->pio_ptr++), host->base + host->sdidata_b); 428 + fifo--; 429 + } 422 430 + } 423 431 + … … 1580 1588 --- linux-2.6.24.orig/drivers/mmc/host/Kconfig 1581 1589 +++ linux-2.6.24/drivers/mmc/host/Kconfig 1582 @@ -130,3 +130,14 @@ 1590 @@ -130,3 +130,14 @@ config MMC_SPI 1583 1591 1584 1592 If unsure, or if your system has no SPI master driver, say N. … … 1599 1607 --- linux-2.6.24.orig/drivers/mmc/host/Makefile 1600 1608 +++ linux-2.6.24/drivers/mmc/host/Makefile 1601 @@ -17,4 +17,4 @@ 1609 @@ -17,4 +17,4 @@ obj-$(CONFIG_MMC_OMAP) += omap.o 1602 1610 obj-$(CONFIG_MMC_AT91) += at91_mci.o 1603 1611 obj-$(CONFIG_MMC_TIFM_SD) += tifm_sd.o … … 1627 1635 --- linux-2.6.24.orig/arch/arm/mach-s3c2412/s3c2412.c 1628 1636 +++ linux-2.6.24/arch/arm/mach-s3c2412/s3c2412.c 1629 @@ -214,5 +214,8 @@ 1637 @@ -214,5 +214,8 @@ int __init s3c2412_init(void) 1630 1638 { 1631 1639 printk("S3C2412: Initialising architecture\n"); … … 1640 1648 --- linux-2.6.24.orig/arch/arm/mach-s3c2440/s3c2440.c 1641 1649 +++ linux-2.6.24/arch/arm/mach-s3c2440/s3c2440.c 1642 @@ -46,6 +46,9 @@ 1650 @@ -46,6 +46,9 @@ int __init s3c2440_init(void) 1643 1651 s3c_device_wdt.resource[1].start = IRQ_S3C2440_WDT; 1644 1652 s3c_device_wdt.resource[1].end = IRQ_S3C2440_WDT; … … 1662 1670 static struct sys_device s3c2442_sysdev = { 1663 1671 .cls = &s3c2442_sysclass, 1664 @@ -30,5 +31,8 @@ 1672 @@ -30,5 +31,8 @@ int __init s3c2442_init(void) 1665 1673 { 1666 1674 printk("S3C2442: Initialising architecture\n");
Note: See TracChangeset
for help on using the changeset viewer.
