aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2010-05-24 10:58:28 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2010-05-24 10:58:28 -0400
commit0fed2b5cb4c04336b26b0cbf6f9a8c07081f79a6 (patch)
treea9be0f082d3c2f53eb2d5f9de9ad900c31236b34 /arch
parent0163916f1db7f345963dad1af78b7628c759c6ee (diff)
parent41ec7ebee14189a0424176279c227168960c28ad (diff)
Merge git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6: (25 commits) sh: fix up sh7785lcr_32bit_defconfig. arch/sh/lib/strlen.S: Checkpatch cleanup sh: fix up sh7786 dmaengine build. sh: guard cookie consistency across termination in the DMA driver sh: prevent the DMA driver from unloading, while in use sh: fix Oops in the serial SCI driver sh: allow platforms to specify SD-card supported voltages mmc: let MFD's provide supported Vdd card voltages to tmio_mmc sh: disable SD-card write-protection detection on kfr2r09 mfd: pass platform flags down to the tmio_mmc driver tmio: add a platform flag to disable card write-protection detection sh: Add SDHI DMA support to migor sh: Add SDHI DMA support to kfr2r09 sh: Add SDHI DMA support to ms7724se sh: Add SDHI DMA support to ecovec mmc: add DMA support to tmio_mmc driver, when used on SuperH sh: prepare the SDHI MFD driver to pass DMA configuration to tmio_mmc.c mmc: prepare tmio_mmc for passing of DMA configuration from the MFD cell sh: add DMA slave definitions to sh7724 sh: add DMA slaves for two SDHI controllers to sh7722 ...
Diffstat (limited to 'arch')
-rw-r--r--arch/sh/boards/mach-ecovec24/setup.c87
-rw-r--r--arch/sh/boards/mach-kfr2r09/setup.c11
-rw-r--r--arch/sh/boards/mach-migor/setup.c9
-rw-r--r--arch/sh/boards/mach-se/7724/setup.c107
-rw-r--r--arch/sh/configs/sh7785lcr_32bit_defconfig273
-rw-r--r--arch/sh/include/asm/dmaengine.h34
-rw-r--r--arch/sh/include/asm/siu.h2
-rw-r--r--arch/sh/include/cpu-sh4/cpu/sh7722.h15
-rw-r--r--arch/sh/include/cpu-sh4/cpu/sh7724.h19
-rw-r--r--arch/sh/kernel/cpu/sh4a/clock-sh7786.c1
-rw-r--r--arch/sh/kernel/cpu/sh4a/setup-sh7722.c11
-rw-r--r--arch/sh/kernel/cpu/sh4a/setup-sh7724.c88
-rw-r--r--arch/sh/kernel/cpu/sh4a/setup-sh7780.c3
-rw-r--r--arch/sh/kernel/cpu/sh4a/setup-sh7785.c2
-rw-r--r--arch/sh/kernel/cpu/sh4a/setup-sh7786.c2
-rw-r--r--arch/sh/kernel/dwarf.c4
-rw-r--r--arch/sh/lib/strlen.S2
17 files changed, 507 insertions, 163 deletions
diff --git a/arch/sh/boards/mach-ecovec24/setup.c b/arch/sh/boards/mach-ecovec24/setup.c
index 62123885a6fa..49714258732e 100644
--- a/arch/sh/boards/mach-ecovec24/setup.c
+++ b/arch/sh/boards/mach-ecovec24/setup.c
@@ -11,6 +11,7 @@
11#include <linux/init.h> 11#include <linux/init.h>
12#include <linux/device.h> 12#include <linux/device.h>
13#include <linux/platform_device.h> 13#include <linux/platform_device.h>
14#include <linux/mfd/sh_mobile_sdhi.h>
14#include <linux/mtd/physmap.h> 15#include <linux/mtd/physmap.h>
15#include <linux/gpio.h> 16#include <linux/gpio.h>
16#include <linux/interrupt.h> 17#include <linux/interrupt.h>
@@ -442,7 +443,9 @@ static void sdhi0_set_pwr(struct platform_device *pdev, int state)
442} 443}
443 444
444static struct sh_mobile_sdhi_info sdhi0_info = { 445static struct sh_mobile_sdhi_info sdhi0_info = {
445 .set_pwr = sdhi0_set_pwr, 446 .dma_slave_tx = SHDMA_SLAVE_SDHI0_TX,
447 .dma_slave_rx = SHDMA_SLAVE_SDHI0_RX,
448 .set_pwr = sdhi0_set_pwr,
446}; 449};
447 450
448static struct resource sdhi0_resources[] = { 451static struct resource sdhi0_resources[] = {
@@ -478,7 +481,9 @@ static void sdhi1_set_pwr(struct platform_device *pdev, int state)
478} 481}
479 482
480static struct sh_mobile_sdhi_info sdhi1_info = { 483static struct sh_mobile_sdhi_info sdhi1_info = {
481 .set_pwr = sdhi1_set_pwr, 484 .dma_slave_tx = SHDMA_SLAVE_SDHI1_TX,
485 .dma_slave_rx = SHDMA_SLAVE_SDHI1_RX,
486 .set_pwr = sdhi1_set_pwr,
482}; 487};
483 488
484static struct resource sdhi1_resources[] = { 489static struct resource sdhi1_resources[] = {
@@ -769,6 +774,51 @@ static struct platform_device irda_device = {
769 .resource = irda_resources, 774 .resource = irda_resources,
770}; 775};
771 776
777#include <media/ak881x.h>
778#include <media/sh_vou.h>
779
780struct ak881x_pdata ak881x_pdata = {
781 .flags = AK881X_IF_MODE_SLAVE,
782};
783
784static struct i2c_board_info ak8813 = {
785 I2C_BOARD_INFO("ak8813", 0x20),
786 .platform_data = &ak881x_pdata,
787};
788
789struct sh_vou_pdata sh_vou_pdata = {
790 .bus_fmt = SH_VOU_BUS_8BIT,
791 .flags = SH_VOU_HSYNC_LOW | SH_VOU_VSYNC_LOW,
792 .board_info = &ak8813,
793 .i2c_adap = 0,
794 .module_name = "ak881x",
795};
796
797static struct resource sh_vou_resources[] = {
798 [0] = {
799 .start = 0xfe960000,
800 .end = 0xfe962043,
801 .flags = IORESOURCE_MEM,
802 },
803 [1] = {
804 .start = 55,
805 .flags = IORESOURCE_IRQ,
806 },
807};
808
809static struct platform_device vou_device = {
810 .name = "sh-vou",
811 .id = -1,
812 .num_resources = ARRAY_SIZE(sh_vou_resources),
813 .resource = sh_vou_resources,
814 .dev = {
815 .platform_data = &sh_vou_pdata,
816 },
817 .archdata = {
818 .hwblk_id = HWBLK_VOU,
819 },
820};
821
772static struct platform_device *ecovec_devices[] __initdata = { 822static struct platform_device *ecovec_devices[] __initdata = {
773 &heartbeat_device, 823 &heartbeat_device,
774 &nor_flash_device, 824 &nor_flash_device,
@@ -790,6 +840,7 @@ static struct platform_device *ecovec_devices[] __initdata = {
790 &camera_devices[2], 840 &camera_devices[2],
791 &fsi_device, 841 &fsi_device,
792 &irda_device, 842 &irda_device,
843 &vou_device,
793}; 844};
794 845
795#ifdef CONFIG_I2C 846#ifdef CONFIG_I2C
@@ -1179,6 +1230,38 @@ static int __init arch_setup(void)
1179 i2c_register_board_info(1, i2c1_devices, 1230 i2c_register_board_info(1, i2c1_devices,
1180 ARRAY_SIZE(i2c1_devices)); 1231 ARRAY_SIZE(i2c1_devices));
1181 1232
1233 /* VOU */
1234 gpio_request(GPIO_FN_DV_D15, NULL);
1235 gpio_request(GPIO_FN_DV_D14, NULL);
1236 gpio_request(GPIO_FN_DV_D13, NULL);
1237 gpio_request(GPIO_FN_DV_D12, NULL);
1238 gpio_request(GPIO_FN_DV_D11, NULL);
1239 gpio_request(GPIO_FN_DV_D10, NULL);
1240 gpio_request(GPIO_FN_DV_D9, NULL);
1241 gpio_request(GPIO_FN_DV_D8, NULL);
1242 gpio_request(GPIO_FN_DV_CLKI, NULL);
1243 gpio_request(GPIO_FN_DV_CLK, NULL);
1244 gpio_request(GPIO_FN_DV_VSYNC, NULL);
1245 gpio_request(GPIO_FN_DV_HSYNC, NULL);
1246
1247 /* AK8813 power / reset sequence */
1248 gpio_request(GPIO_PTG4, NULL);
1249 gpio_request(GPIO_PTU3, NULL);
1250 /* Reset */
1251 gpio_direction_output(GPIO_PTG4, 0);
1252 /* Power down */
1253 gpio_direction_output(GPIO_PTU3, 1);
1254
1255 udelay(10);
1256
1257 /* Power up, reset */
1258 gpio_set_value(GPIO_PTU3, 0);
1259
1260 udelay(10);
1261
1262 /* Remove reset */
1263 gpio_set_value(GPIO_PTG4, 1);
1264
1182 return platform_add_devices(ecovec_devices, 1265 return platform_add_devices(ecovec_devices,
1183 ARRAY_SIZE(ecovec_devices)); 1266 ARRAY_SIZE(ecovec_devices));
1184} 1267}
diff --git a/arch/sh/boards/mach-kfr2r09/setup.c b/arch/sh/boards/mach-kfr2r09/setup.c
index b2cd0ed8664e..68994a163f6c 100644
--- a/arch/sh/boards/mach-kfr2r09/setup.c
+++ b/arch/sh/boards/mach-kfr2r09/setup.c
@@ -10,6 +10,8 @@
10#include <linux/init.h> 10#include <linux/init.h>
11#include <linux/platform_device.h> 11#include <linux/platform_device.h>
12#include <linux/interrupt.h> 12#include <linux/interrupt.h>
13#include <linux/mfd/sh_mobile_sdhi.h>
14#include <linux/mfd/tmio.h>
13#include <linux/mtd/physmap.h> 15#include <linux/mtd/physmap.h>
14#include <linux/mtd/onenand.h> 16#include <linux/mtd/onenand.h>
15#include <linux/delay.h> 17#include <linux/delay.h>
@@ -356,10 +358,19 @@ static struct resource kfr2r09_sh_sdhi0_resources[] = {
356 }, 358 },
357}; 359};
358 360
361static struct sh_mobile_sdhi_info sh7724_sdhi0_data = {
362 .dma_slave_tx = SHDMA_SLAVE_SDHI0_TX,
363 .dma_slave_rx = SHDMA_SLAVE_SDHI0_RX,
364 .tmio_flags = TMIO_MMC_WRPROTECT_DISABLE,
365};
366
359static struct platform_device kfr2r09_sh_sdhi0_device = { 367static struct platform_device kfr2r09_sh_sdhi0_device = {
360 .name = "sh_mobile_sdhi", 368 .name = "sh_mobile_sdhi",
361 .num_resources = ARRAY_SIZE(kfr2r09_sh_sdhi0_resources), 369 .num_resources = ARRAY_SIZE(kfr2r09_sh_sdhi0_resources),
362 .resource = kfr2r09_sh_sdhi0_resources, 370 .resource = kfr2r09_sh_sdhi0_resources,
371 .dev = {
372 .platform_data = &sh7724_sdhi0_data,
373 },
363 .archdata = { 374 .archdata = {
364 .hwblk_id = HWBLK_SDHI0, 375 .hwblk_id = HWBLK_SDHI0,
365 }, 376 },
diff --git a/arch/sh/boards/mach-migor/setup.c b/arch/sh/boards/mach-migor/setup.c
index 7da0fc94a01e..87185de20446 100644
--- a/arch/sh/boards/mach-migor/setup.c
+++ b/arch/sh/boards/mach-migor/setup.c
@@ -12,6 +12,7 @@
12#include <linux/interrupt.h> 12#include <linux/interrupt.h>
13#include <linux/input.h> 13#include <linux/input.h>
14#include <linux/input/sh_keysc.h> 14#include <linux/input/sh_keysc.h>
15#include <linux/mfd/sh_mobile_sdhi.h>
15#include <linux/mtd/physmap.h> 16#include <linux/mtd/physmap.h>
16#include <linux/mtd/nand.h> 17#include <linux/mtd/nand.h>
17#include <linux/i2c.h> 18#include <linux/i2c.h>
@@ -402,10 +403,18 @@ static struct resource sdhi_cn9_resources[] = {
402 }, 403 },
403}; 404};
404 405
406static struct sh_mobile_sdhi_info sh7724_sdhi_data = {
407 .dma_slave_tx = SHDMA_SLAVE_SDHI0_TX,
408 .dma_slave_rx = SHDMA_SLAVE_SDHI0_RX,
409};
410
405static struct platform_device sdhi_cn9_device = { 411static struct platform_device sdhi_cn9_device = {
406 .name = "sh_mobile_sdhi", 412 .name = "sh_mobile_sdhi",
407 .num_resources = ARRAY_SIZE(sdhi_cn9_resources), 413 .num_resources = ARRAY_SIZE(sdhi_cn9_resources),
408 .resource = sdhi_cn9_resources, 414 .resource = sdhi_cn9_resources,
415 .dev = {
416 .platform_data = &sh7724_sdhi_data,
417 },
409 .archdata = { 418 .archdata = {
410 .hwblk_id = HWBLK_SDHI, 419 .hwblk_id = HWBLK_SDHI,
411 }, 420 },
diff --git a/arch/sh/boards/mach-se/7724/setup.c b/arch/sh/boards/mach-se/7724/setup.c
index e74ae7b0d8bf..f9b82546c2df 100644
--- a/arch/sh/boards/mach-se/7724/setup.c
+++ b/arch/sh/boards/mach-se/7724/setup.c
@@ -14,6 +14,7 @@
14#include <linux/device.h> 14#include <linux/device.h>
15#include <linux/interrupt.h> 15#include <linux/interrupt.h>
16#include <linux/platform_device.h> 16#include <linux/platform_device.h>
17#include <linux/mfd/sh_mobile_sdhi.h>
17#include <linux/mtd/physmap.h> 18#include <linux/mtd/physmap.h>
18#include <linux/delay.h> 19#include <linux/delay.h>
19#include <linux/smc91x.h> 20#include <linux/smc91x.h>
@@ -462,11 +463,19 @@ static struct resource sdhi0_cn7_resources[] = {
462 }, 463 },
463}; 464};
464 465
466static struct sh_mobile_sdhi_info sh7724_sdhi0_data = {
467 .dma_slave_tx = SHDMA_SLAVE_SDHI0_TX,
468 .dma_slave_rx = SHDMA_SLAVE_SDHI0_RX,
469};
470
465static struct platform_device sdhi0_cn7_device = { 471static struct platform_device sdhi0_cn7_device = {
466 .name = "sh_mobile_sdhi", 472 .name = "sh_mobile_sdhi",
467 .id = 0, 473 .id = 0,
468 .num_resources = ARRAY_SIZE(sdhi0_cn7_resources), 474 .num_resources = ARRAY_SIZE(sdhi0_cn7_resources),
469 .resource = sdhi0_cn7_resources, 475 .resource = sdhi0_cn7_resources,
476 .dev = {
477 .platform_data = &sh7724_sdhi0_data,
478 },
470 .archdata = { 479 .archdata = {
471 .hwblk_id = HWBLK_SDHI0, 480 .hwblk_id = HWBLK_SDHI0,
472 }, 481 },
@@ -485,11 +494,19 @@ static struct resource sdhi1_cn8_resources[] = {
485 }, 494 },
486}; 495};
487 496
497static struct sh_mobile_sdhi_info sh7724_sdhi1_data = {
498 .dma_slave_tx = SHDMA_SLAVE_SDHI1_TX,
499 .dma_slave_rx = SHDMA_SLAVE_SDHI1_RX,
500};
501
488static struct platform_device sdhi1_cn8_device = { 502static struct platform_device sdhi1_cn8_device = {
489 .name = "sh_mobile_sdhi", 503 .name = "sh_mobile_sdhi",
490 .id = 1, 504 .id = 1,
491 .num_resources = ARRAY_SIZE(sdhi1_cn8_resources), 505 .num_resources = ARRAY_SIZE(sdhi1_cn8_resources),
492 .resource = sdhi1_cn8_resources, 506 .resource = sdhi1_cn8_resources,
507 .dev = {
508 .platform_data = &sh7724_sdhi1_data,
509 },
493 .archdata = { 510 .archdata = {
494 .hwblk_id = HWBLK_SDHI1, 511 .hwblk_id = HWBLK_SDHI1,
495 }, 512 },
@@ -515,6 +532,52 @@ static struct platform_device irda_device = {
515 .resource = irda_resources, 532 .resource = irda_resources,
516}; 533};
517 534
535#include <media/ak881x.h>
536#include <media/sh_vou.h>
537
538struct ak881x_pdata ak881x_pdata = {
539 .flags = AK881X_IF_MODE_SLAVE,
540};
541
542static struct i2c_board_info ak8813 = {
543 /* With open J18 jumper address is 0x21 */
544 I2C_BOARD_INFO("ak8813", 0x20),
545 .platform_data = &ak881x_pdata,
546};
547
548struct sh_vou_pdata sh_vou_pdata = {
549 .bus_fmt = SH_VOU_BUS_8BIT,
550 .flags = SH_VOU_HSYNC_LOW | SH_VOU_VSYNC_LOW,
551 .board_info = &ak8813,
552 .i2c_adap = 0,
553 .module_name = "ak881x",
554};
555
556static struct resource sh_vou_resources[] = {
557 [0] = {
558 .start = 0xfe960000,
559 .end = 0xfe962043,
560 .flags = IORESOURCE_MEM,
561 },
562 [1] = {
563 .start = 55,
564 .flags = IORESOURCE_IRQ,
565 },
566};
567
568static struct platform_device vou_device = {
569 .name = "sh-vou",
570 .id = -1,
571 .num_resources = ARRAY_SIZE(sh_vou_resources),
572 .resource = sh_vou_resources,
573 .dev = {
574 .platform_data = &sh_vou_pdata,
575 },
576 .archdata = {
577 .hwblk_id = HWBLK_VOU,
578 },
579};
580
518static struct platform_device *ms7724se_devices[] __initdata = { 581static struct platform_device *ms7724se_devices[] __initdata = {
519 &heartbeat_device, 582 &heartbeat_device,
520 &smc91x_eth_device, 583 &smc91x_eth_device,
@@ -530,6 +593,7 @@ static struct platform_device *ms7724se_devices[] __initdata = {
530 &sdhi0_cn7_device, 593 &sdhi0_cn7_device,
531 &sdhi1_cn8_device, 594 &sdhi1_cn8_device,
532 &irda_device, 595 &irda_device,
596 &vou_device,
533}; 597};
534 598
535/* I2C device */ 599/* I2C device */
@@ -614,6 +678,7 @@ static int __init devices_setup(void)
614{ 678{
615 u16 sw = __raw_readw(SW4140); /* select camera, monitor */ 679 u16 sw = __raw_readw(SW4140); /* select camera, monitor */
616 struct clk *clk; 680 struct clk *clk;
681 u16 fpga_out;
617 682
618 /* register board specific self-refresh code */ 683 /* register board specific self-refresh code */
619 sh_mobile_register_self_refresh(SUSP_SH_STANDBY | SUSP_SH_SF | 684 sh_mobile_register_self_refresh(SUSP_SH_STANDBY | SUSP_SH_SF |
@@ -623,14 +688,26 @@ static int __init devices_setup(void)
623 &ms7724se_sdram_leave_start, 688 &ms7724se_sdram_leave_start,
624 &ms7724se_sdram_leave_end); 689 &ms7724se_sdram_leave_end);
625 /* Reset Release */ 690 /* Reset Release */
626 __raw_writew(__raw_readw(FPGA_OUT) & 691 fpga_out = __raw_readw(FPGA_OUT);
627 ~((1 << 1) | /* LAN */ 692 /* bit4: NTSC_PDN, bit5: NTSC_RESET */
628 (1 << 6) | /* VIDEO DAC */ 693 fpga_out &= ~((1 << 1) | /* LAN */
629 (1 << 7) | /* AK4643 */ 694 (1 << 4) | /* AK8813 PDN */
630 (1 << 8) | /* IrDA */ 695 (1 << 5) | /* AK8813 RESET */
631 (1 << 12) | /* USB0 */ 696 (1 << 6) | /* VIDEO DAC */
632 (1 << 14)), /* RMII */ 697 (1 << 7) | /* AK4643 */
633 FPGA_OUT); 698 (1 << 8) | /* IrDA */
699 (1 << 12) | /* USB0 */
700 (1 << 14)); /* RMII */
701 __raw_writew(fpga_out | (1 << 4), FPGA_OUT);
702
703 udelay(10);
704
705 /* AK8813 RESET */
706 __raw_writew(fpga_out | (1 << 5), FPGA_OUT);
707
708 udelay(10);
709
710 __raw_writew(fpga_out, FPGA_OUT);
634 711
635 /* turn on USB clocks, use external clock */ 712 /* turn on USB clocks, use external clock */
636 __raw_writew((__raw_readw(PORT_MSELCRB) & ~0xc000) | 0x8000, PORT_MSELCRB); 713 __raw_writew((__raw_readw(PORT_MSELCRB) & ~0xc000) | 0x8000, PORT_MSELCRB);
@@ -862,6 +939,20 @@ static int __init devices_setup(void)
862 lcdc_info.ch[0].flags = LCDC_FLAGS_DWPOL; 939 lcdc_info.ch[0].flags = LCDC_FLAGS_DWPOL;
863 } 940 }
864 941
942 /* VOU */
943 gpio_request(GPIO_FN_DV_D15, NULL);
944 gpio_request(GPIO_FN_DV_D14, NULL);
945 gpio_request(GPIO_FN_DV_D13, NULL);
946 gpio_request(GPIO_FN_DV_D12, NULL);
947 gpio_request(GPIO_FN_DV_D11, NULL);
948 gpio_request(GPIO_FN_DV_D10, NULL);
949 gpio_request(GPIO_FN_DV_D9, NULL);
950 gpio_request(GPIO_FN_DV_D8, NULL);
951 gpio_request(GPIO_FN_DV_CLKI, NULL);
952 gpio_request(GPIO_FN_DV_CLK, NULL);
953 gpio_request(GPIO_FN_DV_VSYNC, NULL);
954 gpio_request(GPIO_FN_DV_HSYNC, NULL);
955
865 return platform_add_devices(ms7724se_devices, 956 return platform_add_devices(ms7724se_devices,
866 ARRAY_SIZE(ms7724se_devices)); 957 ARRAY_SIZE(ms7724se_devices));
867} 958}
diff --git a/arch/sh/configs/sh7785lcr_32bit_defconfig b/arch/sh/configs/sh7785lcr_32bit_defconfig
index e9af616b2160..71f39c71b04b 100644
--- a/arch/sh/configs/sh7785lcr_32bit_defconfig
+++ b/arch/sh/configs/sh7785lcr_32bit_defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.34-rc5 3# Linux kernel version: 2.6.34
4# Tue May 18 17:22:09 2010 4# Mon May 24 08:33:02 2010
5# 5#
6CONFIG_SUPERH=y 6CONFIG_SUPERH=y
7CONFIG_SUPERH32=y 7CONFIG_SUPERH32=y
@@ -76,7 +76,7 @@ CONFIG_RCU_FANOUT=32
76# CONFIG_TREE_RCU_TRACE is not set 76# CONFIG_TREE_RCU_TRACE is not set
77CONFIG_IKCONFIG=y 77CONFIG_IKCONFIG=y
78CONFIG_IKCONFIG_PROC=y 78CONFIG_IKCONFIG_PROC=y
79CONFIG_LOG_BUF_SHIFT=14 79CONFIG_LOG_BUF_SHIFT=16
80# CONFIG_CGROUPS is not set 80# CONFIG_CGROUPS is not set
81# CONFIG_SYSFS_DEPRECATED_V2 is not set 81# CONFIG_SYSFS_DEPRECATED_V2 is not set
82# CONFIG_RELAY is not set 82# CONFIG_RELAY is not set
@@ -111,18 +111,17 @@ CONFIG_PERF_USE_VMALLOC=y
111# 111#
112CONFIG_PERF_EVENTS=y 112CONFIG_PERF_EVENTS=y
113CONFIG_PERF_COUNTERS=y 113CONFIG_PERF_COUNTERS=y
114# CONFIG_DEBUG_PERF_USE_VMALLOC is not set
114CONFIG_VM_EVENT_COUNTERS=y 115CONFIG_VM_EVENT_COUNTERS=y
115CONFIG_PCI_QUIRKS=y 116CONFIG_PCI_QUIRKS=y
116CONFIG_COMPAT_BRK=y 117# CONFIG_COMPAT_BRK is not set
117CONFIG_SLAB=y 118CONFIG_SLAB=y
118# CONFIG_SLUB is not set 119# CONFIG_SLUB is not set
119# CONFIG_SLOB is not set 120# CONFIG_SLOB is not set
120CONFIG_PROFILING=y 121CONFIG_PROFILING=y
121CONFIG_TRACEPOINTS=y 122# CONFIG_OPROFILE is not set
122CONFIG_OPROFILE=y
123CONFIG_HAVE_OPROFILE=y 123CONFIG_HAVE_OPROFILE=y
124CONFIG_KPROBES=y 124# CONFIG_KPROBES is not set
125CONFIG_KRETPROBES=y
126CONFIG_HAVE_KPROBES=y 125CONFIG_HAVE_KPROBES=y
127CONFIG_HAVE_KRETPROBES=y 126CONFIG_HAVE_KRETPROBES=y
128CONFIG_HAVE_ARCH_TRACEHOOK=y 127CONFIG_HAVE_ARCH_TRACEHOOK=y
@@ -130,6 +129,7 @@ CONFIG_HAVE_DMA_ATTRS=y
130CONFIG_HAVE_CLK=y 129CONFIG_HAVE_CLK=y
131CONFIG_HAVE_DMA_API_DEBUG=y 130CONFIG_HAVE_DMA_API_DEBUG=y
132CONFIG_HAVE_HW_BREAKPOINT=y 131CONFIG_HAVE_HW_BREAKPOINT=y
132CONFIG_HAVE_MIXED_BREAKPOINTS_REGS=y
133 133
134# 134#
135# GCOV-based kernel profiling 135# GCOV-based kernel profiling
@@ -243,8 +243,9 @@ CONFIG_PAGE_OFFSET=0x80000000
243CONFIG_FORCE_MAX_ZONEORDER=11 243CONFIG_FORCE_MAX_ZONEORDER=11
244CONFIG_MEMORY_START=0x40000000 244CONFIG_MEMORY_START=0x40000000
245CONFIG_MEMORY_SIZE=0x20000000 245CONFIG_MEMORY_SIZE=0x20000000
246CONFIG_29BIT=y 246# CONFIG_29BIT is not set
247# CONFIG_PMB is not set 247CONFIG_32BIT=y
248CONFIG_PMB=y
248CONFIG_X2TLB=y 249CONFIG_X2TLB=y
249CONFIG_VSYSCALL=y 250CONFIG_VSYSCALL=y
250# CONFIG_NUMA is not set 251# CONFIG_NUMA is not set
@@ -262,9 +263,9 @@ CONFIG_PAGE_SIZE_4KB=y
262# CONFIG_PAGE_SIZE_8KB is not set 263# CONFIG_PAGE_SIZE_8KB is not set
263# CONFIG_PAGE_SIZE_16KB is not set 264# CONFIG_PAGE_SIZE_16KB is not set
264# CONFIG_PAGE_SIZE_64KB is not set 265# CONFIG_PAGE_SIZE_64KB is not set
265CONFIG_HUGETLB_PAGE_SIZE_64K=y 266# CONFIG_HUGETLB_PAGE_SIZE_64K is not set
266# CONFIG_HUGETLB_PAGE_SIZE_256K is not set 267# CONFIG_HUGETLB_PAGE_SIZE_256K is not set
267# CONFIG_HUGETLB_PAGE_SIZE_1MB is not set 268CONFIG_HUGETLB_PAGE_SIZE_1MB=y
268# CONFIG_HUGETLB_PAGE_SIZE_4MB is not set 269# CONFIG_HUGETLB_PAGE_SIZE_4MB is not set
269# CONFIG_HUGETLB_PAGE_SIZE_64MB is not set 270# CONFIG_HUGETLB_PAGE_SIZE_64MB is not set
270# CONFIG_HUGETLB_PAGE_SIZE_512MB is not set 271# CONFIG_HUGETLB_PAGE_SIZE_512MB is not set
@@ -276,7 +277,7 @@ CONFIG_SPARSEMEM=y
276CONFIG_HAVE_MEMORY_PRESENT=y 277CONFIG_HAVE_MEMORY_PRESENT=y
277CONFIG_SPARSEMEM_STATIC=y 278CONFIG_SPARSEMEM_STATIC=y
278# CONFIG_MEMORY_HOTPLUG is not set 279# CONFIG_MEMORY_HOTPLUG is not set
279CONFIG_SPLIT_PTLOCK_CPUS=4 280CONFIG_SPLIT_PTLOCK_CPUS=999999
280CONFIG_MIGRATION=y 281CONFIG_MIGRATION=y
281# CONFIG_PHYS_ADDR_T_64BIT is not set 282# CONFIG_PHYS_ADDR_T_64BIT is not set
282CONFIG_ZONE_DMA_FLAG=0 283CONFIG_ZONE_DMA_FLAG=0
@@ -298,7 +299,7 @@ CONFIG_CPU_LITTLE_ENDIAN=y
298# CONFIG_CPU_BIG_ENDIAN is not set 299# CONFIG_CPU_BIG_ENDIAN is not set
299CONFIG_SH_FPU=y 300CONFIG_SH_FPU=y
300CONFIG_SH_STORE_QUEUES=y 301CONFIG_SH_STORE_QUEUES=y
301# CONFIG_SPECULATIVE_EXECUTION is not set 302CONFIG_SPECULATIVE_EXECUTION=y
302CONFIG_CPU_HAS_INTEVT=y 303CONFIG_CPU_HAS_INTEVT=y
303CONFIG_CPU_HAS_SR_RB=y 304CONFIG_CPU_HAS_SR_RB=y
304CONFIG_CPU_HAS_FPU=y 305CONFIG_CPU_HAS_FPU=y
@@ -308,7 +309,7 @@ CONFIG_CPU_HAS_FPU=y
308# 309#
309# CONFIG_SH_HIGHLANDER is not set 310# CONFIG_SH_HIGHLANDER is not set
310CONFIG_SH_SH7785LCR=y 311CONFIG_SH_SH7785LCR=y
311CONFIG_SH_SH7785LCR_29BIT_PHYSMAPS=y 312# CONFIG_SH_SH7785LCR_PT is not set
312 313
313# 314#
314# Timer and clock configuration 315# Timer and clock configuration
@@ -371,7 +372,7 @@ CONFIG_SECCOMP=y
371# CONFIG_PREEMPT_VOLUNTARY is not set 372# CONFIG_PREEMPT_VOLUNTARY is not set
372CONFIG_PREEMPT=y 373CONFIG_PREEMPT=y
373CONFIG_GUSA=y 374CONFIG_GUSA=y
374# CONFIG_INTC_USERIMASK is not set 375CONFIG_INTC_USERIMASK=y
375 376
376# 377#
377# Boot options 378# Boot options
@@ -389,6 +390,7 @@ CONFIG_PCI=y
389CONFIG_PCI_DOMAINS=y 390CONFIG_PCI_DOMAINS=y
390# CONFIG_PCIEPORTBUS is not set 391# CONFIG_PCIEPORTBUS is not set
391# CONFIG_ARCH_SUPPORTS_MSI is not set 392# CONFIG_ARCH_SUPPORTS_MSI is not set
393CONFIG_PCI_DEBUG=y
392# CONFIG_PCI_STUB is not set 394# CONFIG_PCI_STUB is not set
393# CONFIG_PCI_IOV is not set 395# CONFIG_PCI_IOV is not set
394# CONFIG_PCCARD is not set 396# CONFIG_PCCARD is not set
@@ -465,6 +467,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
465# CONFIG_RDS is not set 467# CONFIG_RDS is not set
466# CONFIG_TIPC is not set 468# CONFIG_TIPC is not set
467# CONFIG_ATM is not set 469# CONFIG_ATM is not set
470# CONFIG_L2TP is not set
468# CONFIG_BRIDGE is not set 471# CONFIG_BRIDGE is not set
469# CONFIG_NET_DSA is not set 472# CONFIG_NET_DSA is not set
470# CONFIG_VLAN_8021Q is not set 473# CONFIG_VLAN_8021Q is not set
@@ -485,8 +488,6 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
485# Network testing 488# Network testing
486# 489#
487# CONFIG_NET_PKTGEN is not set 490# CONFIG_NET_PKTGEN is not set
488# CONFIG_NET_TCPPROBE is not set
489# CONFIG_NET_DROP_MONITOR is not set
490# CONFIG_HAMRADIO is not set 491# CONFIG_HAMRADIO is not set
491# CONFIG_CAN is not set 492# CONFIG_CAN is not set
492# CONFIG_IRDA is not set 493# CONFIG_IRDA is not set
@@ -499,11 +500,20 @@ CONFIG_WIRELESS=y
499# 500#
500# CFG80211 needs to be enabled for MAC80211 501# CFG80211 needs to be enabled for MAC80211
501# 502#
503
504#
505# Some wireless drivers require a rate control algorithm
506#
502# CONFIG_WIMAX is not set 507# CONFIG_WIMAX is not set
503# CONFIG_RFKILL is not set 508# CONFIG_RFKILL is not set
504# CONFIG_NET_9P is not set 509# CONFIG_NET_9P is not set
505 510
506# 511#
512# CAIF Support
513#
514# CONFIG_CAIF is not set
515
516#
507# Device Drivers 517# Device Drivers
508# 518#
509 519
@@ -514,7 +524,11 @@ CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
514# CONFIG_DEVTMPFS is not set 524# CONFIG_DEVTMPFS is not set
515CONFIG_STANDALONE=y 525CONFIG_STANDALONE=y
516CONFIG_PREVENT_FIRMWARE_BUILD=y 526CONFIG_PREVENT_FIRMWARE_BUILD=y
517# CONFIG_FW_LOADER is not set 527CONFIG_FW_LOADER=y
528CONFIG_FIRMWARE_IN_KERNEL=y
529CONFIG_EXTRA_FIRMWARE=""
530# CONFIG_DEBUG_DRIVER is not set
531# CONFIG_DEBUG_DEVRES is not set
518# CONFIG_SYS_HYPERVISOR is not set 532# CONFIG_SYS_HYPERVISOR is not set
519# CONFIG_CONNECTOR is not set 533# CONFIG_CONNECTOR is not set
520CONFIG_MTD=y 534CONFIG_MTD=y
@@ -537,6 +551,7 @@ CONFIG_MTD_BLOCK=y
537# CONFIG_INFTL is not set 551# CONFIG_INFTL is not set
538# CONFIG_RFD_FTL is not set 552# CONFIG_RFD_FTL is not set
539# CONFIG_SSFDC is not set 553# CONFIG_SSFDC is not set
554# CONFIG_SM_FTL is not set
540# CONFIG_MTD_OOPS is not set 555# CONFIG_MTD_OOPS is not set
541 556
542# 557#
@@ -668,7 +683,9 @@ CONFIG_ATA=y
668CONFIG_ATA_VERBOSE_ERROR=y 683CONFIG_ATA_VERBOSE_ERROR=y
669CONFIG_SATA_PMP=y 684CONFIG_SATA_PMP=y
670# CONFIG_SATA_AHCI is not set 685# CONFIG_SATA_AHCI is not set
686# CONFIG_SATA_AHCI_PLATFORM is not set
671# CONFIG_SATA_SIL24 is not set 687# CONFIG_SATA_SIL24 is not set
688# CONFIG_SATA_INIC162X is not set
672CONFIG_ATA_SFF=y 689CONFIG_ATA_SFF=y
673# CONFIG_SATA_SVW is not set 690# CONFIG_SATA_SVW is not set
674# CONFIG_ATA_PIIX is not set 691# CONFIG_ATA_PIIX is not set
@@ -683,7 +700,6 @@ CONFIG_SATA_SIL=y
683# CONFIG_SATA_ULI is not set 700# CONFIG_SATA_ULI is not set
684# CONFIG_SATA_VIA is not set 701# CONFIG_SATA_VIA is not set
685# CONFIG_SATA_VITESSE is not set 702# CONFIG_SATA_VITESSE is not set
686# CONFIG_SATA_INIC162X is not set
687# CONFIG_PATA_ALI is not set 703# CONFIG_PATA_ALI is not set
688# CONFIG_PATA_AMD is not set 704# CONFIG_PATA_AMD is not set
689# CONFIG_PATA_ARTOP is not set 705# CONFIG_PATA_ARTOP is not set
@@ -753,8 +769,36 @@ CONFIG_NETDEVICES=y
753# CONFIG_TUN is not set 769# CONFIG_TUN is not set
754# CONFIG_VETH is not set 770# CONFIG_VETH is not set
755# CONFIG_ARCNET is not set 771# CONFIG_ARCNET is not set
756# CONFIG_NET_ETHERNET is not set 772# CONFIG_PHYLIB is not set
773CONFIG_NET_ETHERNET=y
757CONFIG_MII=y 774CONFIG_MII=y
775# CONFIG_AX88796 is not set
776# CONFIG_STNIC is not set
777# CONFIG_HAPPYMEAL is not set
778# CONFIG_SUNGEM is not set
779# CONFIG_CASSINI is not set
780CONFIG_NET_VENDOR_3COM=y
781CONFIG_VORTEX=y
782# CONFIG_TYPHOON is not set
783# CONFIG_SMC91X is not set
784# CONFIG_ETHOC is not set
785# CONFIG_SMC911X is not set
786# CONFIG_SMSC911X is not set
787# CONFIG_DNET is not set
788# CONFIG_NET_TULIP is not set
789# CONFIG_HP100 is not set
790# CONFIG_IBM_NEW_EMAC_ZMII is not set
791# CONFIG_IBM_NEW_EMAC_RGMII is not set
792# CONFIG_IBM_NEW_EMAC_TAH is not set
793# CONFIG_IBM_NEW_EMAC_EMAC4 is not set
794# CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set
795# CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set
796# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set
797# CONFIG_NET_PCI is not set
798# CONFIG_B44 is not set
799# CONFIG_KS8842 is not set
800# CONFIG_KS8851_MLL is not set
801# CONFIG_ATL2 is not set
758CONFIG_NETDEV_1000=y 802CONFIG_NETDEV_1000=y
759# CONFIG_ACENIC is not set 803# CONFIG_ACENIC is not set
760# CONFIG_DL2K is not set 804# CONFIG_DL2K is not set
@@ -836,6 +880,7 @@ CONFIG_INPUT_KEYBOARD=y
836CONFIG_KEYBOARD_ATKBD=y 880CONFIG_KEYBOARD_ATKBD=y
837# CONFIG_QT2160 is not set 881# CONFIG_QT2160 is not set
838# CONFIG_KEYBOARD_LKKBD is not set 882# CONFIG_KEYBOARD_LKKBD is not set
883# CONFIG_KEYBOARD_TCA6416 is not set
839# CONFIG_KEYBOARD_MAX7359 is not set 884# CONFIG_KEYBOARD_MAX7359 is not set
840# CONFIG_KEYBOARD_NEWTON is not set 885# CONFIG_KEYBOARD_NEWTON is not set
841# CONFIG_KEYBOARD_OPENCORES is not set 886# CONFIG_KEYBOARD_OPENCORES is not set
@@ -884,6 +929,7 @@ CONFIG_HW_CONSOLE=y
884CONFIG_VT_HW_CONSOLE_BINDING=y 929CONFIG_VT_HW_CONSOLE_BINDING=y
885# CONFIG_DEVKMEM is not set 930# CONFIG_DEVKMEM is not set
886# CONFIG_SERIAL_NONSTANDARD is not set 931# CONFIG_SERIAL_NONSTANDARD is not set
932# CONFIG_N_GSM is not set
887# CONFIG_NOZOMI is not set 933# CONFIG_NOZOMI is not set
888 934
889# 935#
@@ -901,6 +947,8 @@ CONFIG_SERIAL_CORE=y
901CONFIG_SERIAL_CORE_CONSOLE=y 947CONFIG_SERIAL_CORE_CONSOLE=y
902# CONFIG_SERIAL_JSM is not set 948# CONFIG_SERIAL_JSM is not set
903# CONFIG_SERIAL_TIMBERDALE is not set 949# CONFIG_SERIAL_TIMBERDALE is not set
950# CONFIG_SERIAL_ALTERA_JTAGUART is not set
951# CONFIG_SERIAL_ALTERA_UART is not set
904CONFIG_UNIX98_PTYS=y 952CONFIG_UNIX98_PTYS=y
905CONFIG_DEVPTS_MULTIPLE_INSTANCES=y 953CONFIG_DEVPTS_MULTIPLE_INSTANCES=y
906# CONFIG_LEGACY_PTYS is not set 954# CONFIG_LEGACY_PTYS is not set
@@ -1071,7 +1119,7 @@ CONFIG_FB_CFB_IMAGEBLIT=y
1071# CONFIG_FB_SIS is not set 1119# CONFIG_FB_SIS is not set
1072# CONFIG_FB_VIA is not set 1120# CONFIG_FB_VIA is not set
1073# CONFIG_FB_NEOMAGIC is not set 1121# CONFIG_FB_NEOMAGIC is not set
1074# CONFIG_FB_KYRO is not set 1122CONFIG_FB_KYRO=y
1075# CONFIG_FB_3DFX is not set 1123# CONFIG_FB_3DFX is not set
1076# CONFIG_FB_VOODOO1 is not set 1124# CONFIG_FB_VOODOO1 is not set
1077# CONFIG_FB_VT8623 is not set 1125# CONFIG_FB_VT8623 is not set
@@ -1097,15 +1145,15 @@ CONFIG_FB_SM501=y
1097# 1145#
1098CONFIG_DUMMY_CONSOLE=y 1146CONFIG_DUMMY_CONSOLE=y
1099CONFIG_FRAMEBUFFER_CONSOLE=y 1147CONFIG_FRAMEBUFFER_CONSOLE=y
1100# CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY is not set 1148CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y
1101# CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set 1149# CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set
1102# CONFIG_FONTS is not set 1150# CONFIG_FONTS is not set
1103CONFIG_FONT_8x8=y 1151CONFIG_FONT_8x8=y
1104CONFIG_FONT_8x16=y 1152CONFIG_FONT_8x16=y
1105CONFIG_LOGO=y 1153CONFIG_LOGO=y
1106# CONFIG_LOGO_LINUX_MONO is not set 1154CONFIG_LOGO_LINUX_MONO=y
1107# CONFIG_LOGO_LINUX_VGA16 is not set 1155CONFIG_LOGO_LINUX_VGA16=y
1108# CONFIG_LOGO_LINUX_CLUT224 is not set 1156CONFIG_LOGO_LINUX_CLUT224=y
1109CONFIG_LOGO_SUPERH_MONO=y 1157CONFIG_LOGO_SUPERH_MONO=y
1110CONFIG_LOGO_SUPERH_VGA16=y 1158CONFIG_LOGO_SUPERH_VGA16=y
1111CONFIG_LOGO_SUPERH_CLUT224=y 1159CONFIG_LOGO_SUPERH_CLUT224=y
@@ -1129,15 +1177,18 @@ CONFIG_SND_SEQ_HRTIMER_DEFAULT=y
1129CONFIG_SND_DYNAMIC_MINORS=y 1177CONFIG_SND_DYNAMIC_MINORS=y
1130# CONFIG_SND_SUPPORT_OLD_API is not set 1178# CONFIG_SND_SUPPORT_OLD_API is not set
1131# CONFIG_SND_VERBOSE_PROCFS is not set 1179# CONFIG_SND_VERBOSE_PROCFS is not set
1132# CONFIG_SND_VERBOSE_PRINTK is not set 1180CONFIG_SND_VERBOSE_PRINTK=y
1133# CONFIG_SND_DEBUG is not set 1181CONFIG_SND_DEBUG=y
1182CONFIG_SND_DEBUG_VERBOSE=y
1183CONFIG_SND_VMASTER=y
1134CONFIG_SND_RAWMIDI_SEQ=y 1184CONFIG_SND_RAWMIDI_SEQ=y
1135CONFIG_SND_OPL3_LIB_SEQ=y 1185CONFIG_SND_OPL3_LIB_SEQ=y
1136# CONFIG_SND_OPL4_LIB_SEQ is not set 1186# CONFIG_SND_OPL4_LIB_SEQ is not set
1137# CONFIG_SND_SBAWE_SEQ is not set 1187# CONFIG_SND_SBAWE_SEQ is not set
1138# CONFIG_SND_EMU10K1_SEQ is not set 1188CONFIG_SND_EMU10K1_SEQ=y
1139CONFIG_SND_MPU401_UART=y 1189CONFIG_SND_MPU401_UART=y
1140CONFIG_SND_OPL3_LIB=y 1190CONFIG_SND_OPL3_LIB=y
1191CONFIG_SND_AC97_CODEC=y
1141# CONFIG_SND_DRIVERS is not set 1192# CONFIG_SND_DRIVERS is not set
1142CONFIG_SND_PCI=y 1193CONFIG_SND_PCI=y
1143# CONFIG_SND_AD1889 is not set 1194# CONFIG_SND_AD1889 is not set
@@ -1172,7 +1223,7 @@ CONFIG_SND_CMIPCI=y
1172# CONFIG_SND_INDIGODJ is not set 1223# CONFIG_SND_INDIGODJ is not set
1173# CONFIG_SND_INDIGOIOX is not set 1224# CONFIG_SND_INDIGOIOX is not set
1174# CONFIG_SND_INDIGODJX is not set 1225# CONFIG_SND_INDIGODJX is not set
1175# CONFIG_SND_EMU10K1 is not set 1226CONFIG_SND_EMU10K1=y
1176# CONFIG_SND_EMU10K1X is not set 1227# CONFIG_SND_EMU10K1X is not set
1177# CONFIG_SND_ENS1370 is not set 1228# CONFIG_SND_ENS1370 is not set
1178# CONFIG_SND_ENS1371 is not set 1229# CONFIG_SND_ENS1371 is not set
@@ -1211,6 +1262,7 @@ CONFIG_SND_USB=y
1211# CONFIG_SND_USB_CAIAQ is not set 1262# CONFIG_SND_USB_CAIAQ is not set
1212# CONFIG_SND_SOC is not set 1263# CONFIG_SND_SOC is not set
1213# CONFIG_SOUND_PRIME is not set 1264# CONFIG_SOUND_PRIME is not set
1265CONFIG_AC97_BUS=y
1214CONFIG_HID_SUPPORT=y 1266CONFIG_HID_SUPPORT=y
1215CONFIG_HID=y 1267CONFIG_HID=y
1216# CONFIG_HIDRAW is not set 1268# CONFIG_HIDRAW is not set
@@ -1226,44 +1278,42 @@ CONFIG_USB_HID=y
1226# Special HID drivers 1278# Special HID drivers
1227# 1279#
1228# CONFIG_HID_3M_PCT is not set 1280# CONFIG_HID_3M_PCT is not set
1229CONFIG_HID_A4TECH=m 1281# CONFIG_HID_A4TECH is not set
1230CONFIG_HID_APPLE=m 1282# CONFIG_HID_APPLE is not set
1231CONFIG_HID_BELKIN=m 1283# CONFIG_HID_BELKIN is not set
1232CONFIG_HID_CHERRY=m 1284# CONFIG_HID_CANDO is not set
1233CONFIG_HID_CHICONY=m 1285# CONFIG_HID_CHERRY is not set
1234CONFIG_HID_CYPRESS=m 1286# CONFIG_HID_CHICONY is not set
1235CONFIG_HID_DRAGONRISE=m 1287# CONFIG_HID_PRODIKEYS is not set
1236# CONFIG_DRAGONRISE_FF is not set 1288# CONFIG_HID_CYPRESS is not set
1237CONFIG_HID_EZKEY=m 1289# CONFIG_HID_DRAGONRISE is not set
1238CONFIG_HID_KYE=m 1290# CONFIG_HID_EGALAX is not set
1239CONFIG_HID_GYRATION=m 1291# CONFIG_HID_EZKEY is not set
1240CONFIG_HID_TWINHAN=m 1292# CONFIG_HID_KYE is not set
1241CONFIG_HID_KENSINGTON=m 1293# CONFIG_HID_GYRATION is not set
1242CONFIG_HID_LOGITECH=m 1294# CONFIG_HID_TWINHAN is not set
1243# CONFIG_LOGITECH_FF is not set 1295# CONFIG_HID_KENSINGTON is not set
1244# CONFIG_LOGIRUMBLEPAD2_FF is not set 1296# CONFIG_HID_LOGITECH is not set
1245# CONFIG_LOGIG940_FF is not set 1297# CONFIG_HID_MICROSOFT is not set
1246CONFIG_HID_MICROSOFT=m
1247# CONFIG_HID_MOSART is not set 1298# CONFIG_HID_MOSART is not set
1248CONFIG_HID_MONTEREY=m 1299# CONFIG_HID_MONTEREY is not set
1249CONFIG_HID_NTRIG=m 1300# CONFIG_HID_NTRIG is not set
1250# CONFIG_HID_ORTEK is not set 1301# CONFIG_HID_ORTEK is not set
1251CONFIG_HID_PANTHERLORD=m 1302# CONFIG_HID_PANTHERLORD is not set
1252# CONFIG_PANTHERLORD_FF is not set 1303# CONFIG_HID_PETALYNX is not set
1253CONFIG_HID_PETALYNX=m 1304# CONFIG_HID_PICOLCD is not set
1254# CONFIG_HID_QUANTA is not set 1305# CONFIG_HID_QUANTA is not set
1255CONFIG_HID_SAMSUNG=m 1306# CONFIG_HID_ROCCAT_KONE is not set
1256CONFIG_HID_SONY=m 1307# CONFIG_HID_SAMSUNG is not set
1308# CONFIG_HID_SONY is not set
1257# CONFIG_HID_STANTUM is not set 1309# CONFIG_HID_STANTUM is not set
1258CONFIG_HID_SUNPLUS=m 1310# CONFIG_HID_SUNPLUS is not set
1259CONFIG_HID_GREENASIA=m 1311# CONFIG_HID_GREENASIA is not set
1260# CONFIG_GREENASIA_FF is not set 1312# CONFIG_HID_SMARTJOYPLUS is not set
1261CONFIG_HID_SMARTJOYPLUS=m 1313# CONFIG_HID_TOPSEED is not set
1262# CONFIG_SMARTJOYPLUS_FF is not set
1263CONFIG_HID_TOPSEED=m
1264# CONFIG_HID_THRUSTMASTER is not set 1314# CONFIG_HID_THRUSTMASTER is not set
1265CONFIG_HID_ZEROPLUS=m 1315# CONFIG_HID_ZEROPLUS is not set
1266# CONFIG_ZEROPLUS_FF is not set 1316# CONFIG_HID_ZYDACRON is not set
1267CONFIG_USB_SUPPORT=y 1317CONFIG_USB_SUPPORT=y
1268CONFIG_USB_ARCH_HAS_HCD=y 1318CONFIG_USB_ARCH_HAS_HCD=y
1269CONFIG_USB_ARCH_HAS_OHCI=y 1319CONFIG_USB_ARCH_HAS_OHCI=y
@@ -1276,9 +1326,8 @@ CONFIG_USB=y
1276# Miscellaneous USB options 1326# Miscellaneous USB options
1277# 1327#
1278# CONFIG_USB_DEVICEFS is not set 1328# CONFIG_USB_DEVICEFS is not set
1279CONFIG_USB_DEVICE_CLASS=y 1329# CONFIG_USB_DEVICE_CLASS is not set
1280# CONFIG_USB_DYNAMIC_MINORS is not set 1330# CONFIG_USB_DYNAMIC_MINORS is not set
1281# CONFIG_USB_OTG is not set
1282# CONFIG_USB_OTG_WHITELIST is not set 1331# CONFIG_USB_OTG_WHITELIST is not set
1283# CONFIG_USB_OTG_BLACKLIST_HUB is not set 1332# CONFIG_USB_OTG_BLACKLIST_HUB is not set
1284# CONFIG_USB_MON is not set 1333# CONFIG_USB_MON is not set
@@ -1290,9 +1339,7 @@ CONFIG_USB_DEVICE_CLASS=y
1290# 1339#
1291# CONFIG_USB_C67X00_HCD is not set 1340# CONFIG_USB_C67X00_HCD is not set
1292# CONFIG_USB_XHCI_HCD is not set 1341# CONFIG_USB_XHCI_HCD is not set
1293CONFIG_USB_EHCI_HCD=m 1342# CONFIG_USB_EHCI_HCD is not set
1294# CONFIG_USB_EHCI_ROOT_HUB_TT is not set
1295# CONFIG_USB_EHCI_TT_NEWSCHED is not set
1296# CONFIG_USB_OXU210HP_HCD is not set 1343# CONFIG_USB_OXU210HP_HCD is not set
1297# CONFIG_USB_ISP116X_HCD is not set 1344# CONFIG_USB_ISP116X_HCD is not set
1298# CONFIG_USB_ISP1760_HCD is not set 1345# CONFIG_USB_ISP1760_HCD is not set
@@ -1361,7 +1408,6 @@ CONFIG_USB_STORAGE=y
1361# CONFIG_USB_IDMOUSE is not set 1408# CONFIG_USB_IDMOUSE is not set
1362# CONFIG_USB_FTDI_ELAN is not set 1409# CONFIG_USB_FTDI_ELAN is not set
1363# CONFIG_USB_APPLEDISPLAY is not set 1410# CONFIG_USB_APPLEDISPLAY is not set
1364# CONFIG_USB_SISUSBVGA is not set
1365# CONFIG_USB_LD is not set 1411# CONFIG_USB_LD is not set
1366# CONFIG_USB_TRANCEVIBRATOR is not set 1412# CONFIG_USB_TRANCEVIBRATOR is not set
1367# CONFIG_USB_IOWARRIOR is not set 1413# CONFIG_USB_IOWARRIOR is not set
@@ -1464,6 +1510,7 @@ CONFIG_DMADEVICES=y
1464# 1510#
1465# DMA Devices 1511# DMA Devices
1466# 1512#
1513# CONFIG_TIMB_DMA is not set
1467# CONFIG_AUXDISPLAY is not set 1514# CONFIG_AUXDISPLAY is not set
1468CONFIG_UIO=m 1515CONFIG_UIO=m
1469# CONFIG_UIO_CIF is not set 1516# CONFIG_UIO_CIF is not set
@@ -1473,10 +1520,6 @@ CONFIG_UIO=m
1473# CONFIG_UIO_SERCOS3 is not set 1520# CONFIG_UIO_SERCOS3 is not set
1474# CONFIG_UIO_PCI_GENERIC is not set 1521# CONFIG_UIO_PCI_GENERIC is not set
1475# CONFIG_UIO_NETX is not set 1522# CONFIG_UIO_NETX is not set
1476
1477#
1478# TI VLYNQ
1479#
1480# CONFIG_STAGING is not set 1523# CONFIG_STAGING is not set
1481 1524
1482# 1525#
@@ -1653,63 +1696,75 @@ CONFIG_MAGIC_SYSRQ=y
1653# CONFIG_UNUSED_SYMBOLS is not set 1696# CONFIG_UNUSED_SYMBOLS is not set
1654CONFIG_DEBUG_FS=y 1697CONFIG_DEBUG_FS=y
1655# CONFIG_HEADERS_CHECK is not set 1698# CONFIG_HEADERS_CHECK is not set
1656# CONFIG_DEBUG_KERNEL is not set 1699CONFIG_DEBUG_KERNEL=y
1700# CONFIG_DEBUG_SHIRQ is not set
1701CONFIG_DETECT_SOFTLOCKUP=y
1702# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
1703CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0
1704CONFIG_DETECT_HUNG_TASK=y
1705# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
1706CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0
1657CONFIG_SCHED_DEBUG=y 1707CONFIG_SCHED_DEBUG=y
1658CONFIG_SCHEDSTATS=y 1708CONFIG_SCHEDSTATS=y
1659CONFIG_TRACE_IRQFLAGS=y 1709# CONFIG_TIMER_STATS is not set
1710# CONFIG_DEBUG_OBJECTS is not set
1711# CONFIG_DEBUG_SLAB is not set
1712CONFIG_DEBUG_KMEMLEAK=y
1713CONFIG_DEBUG_KMEMLEAK_EARLY_LOG_SIZE=400
1714# CONFIG_DEBUG_KMEMLEAK_TEST is not set
1715CONFIG_DEBUG_PREEMPT=y
1716# CONFIG_DEBUG_RT_MUTEXES is not set
1717# CONFIG_RT_MUTEX_TESTER is not set
1718CONFIG_DEBUG_SPINLOCK=y
1719CONFIG_DEBUG_MUTEXES=y
1720# CONFIG_DEBUG_LOCK_ALLOC is not set
1721# CONFIG_PROVE_LOCKING is not set
1722# CONFIG_LOCK_STAT is not set
1723CONFIG_DEBUG_SPINLOCK_SLEEP=y
1724# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
1660CONFIG_STACKTRACE=y 1725CONFIG_STACKTRACE=y
1726# CONFIG_DEBUG_KOBJECT is not set
1661CONFIG_DEBUG_BUGVERBOSE=y 1727CONFIG_DEBUG_BUGVERBOSE=y
1728CONFIG_DEBUG_INFO=y
1729# CONFIG_DEBUG_VM is not set
1730# CONFIG_DEBUG_WRITECOUNT is not set
1662# CONFIG_DEBUG_MEMORY_INIT is not set 1731# CONFIG_DEBUG_MEMORY_INIT is not set
1732# CONFIG_DEBUG_LIST is not set
1733# CONFIG_DEBUG_SG is not set
1734# CONFIG_DEBUG_NOTIFIERS is not set
1735# CONFIG_DEBUG_CREDENTIALS is not set
1663CONFIG_FRAME_POINTER=y 1736CONFIG_FRAME_POINTER=y
1737# CONFIG_RCU_TORTURE_TEST is not set
1664# CONFIG_RCU_CPU_STALL_DETECTOR is not set 1738# CONFIG_RCU_CPU_STALL_DETECTOR is not set
1739# CONFIG_BACKTRACE_SELF_TEST is not set
1740# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set
1741# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
1665# CONFIG_LKDTM is not set 1742# CONFIG_LKDTM is not set
1743# CONFIG_FAULT_INJECTION is not set
1666CONFIG_LATENCYTOP=y 1744CONFIG_LATENCYTOP=y
1667CONFIG_SYSCTL_SYSCALL_CHECK=y 1745CONFIG_SYSCTL_SYSCALL_CHECK=y
1668CONFIG_NOP_TRACER=y 1746# CONFIG_PAGE_POISONING is not set
1669CONFIG_HAVE_FTRACE_NMI_ENTER=y
1670CONFIG_HAVE_FUNCTION_TRACER=y 1747CONFIG_HAVE_FUNCTION_TRACER=y
1671CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y 1748CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
1672CONFIG_HAVE_FUNCTION_TRACE_MCOUNT_TEST=y 1749CONFIG_HAVE_FUNCTION_TRACE_MCOUNT_TEST=y
1673CONFIG_HAVE_DYNAMIC_FTRACE=y 1750CONFIG_HAVE_DYNAMIC_FTRACE=y
1674CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y 1751CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
1675CONFIG_HAVE_SYSCALL_TRACEPOINTS=y 1752CONFIG_HAVE_SYSCALL_TRACEPOINTS=y
1676CONFIG_TRACER_MAX_TRACE=y
1677CONFIG_RING_BUFFER=y
1678CONFIG_FTRACE_NMI_ENTER=y
1679CONFIG_EVENT_TRACING=y
1680CONFIG_CONTEXT_SWITCH_TRACER=y
1681CONFIG_RING_BUFFER_ALLOW_SWAP=y
1682CONFIG_TRACING=y
1683CONFIG_GENERIC_TRACER=y
1684CONFIG_TRACING_SUPPORT=y 1753CONFIG_TRACING_SUPPORT=y
1685CONFIG_FTRACE=y 1754# CONFIG_FTRACE is not set
1686CONFIG_FUNCTION_TRACER=y
1687CONFIG_FUNCTION_GRAPH_TRACER=y
1688CONFIG_IRQSOFF_TRACER=y
1689# CONFIG_PREEMPT_TRACER is not set
1690CONFIG_SCHED_TRACER=y
1691# CONFIG_FTRACE_SYSCALLS is not set
1692# CONFIG_BOOT_TRACER is not set
1693CONFIG_BRANCH_PROFILE_NONE=y
1694# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set
1695# CONFIG_PROFILE_ALL_BRANCHES is not set
1696# CONFIG_KSYM_TRACER is not set
1697CONFIG_STACK_TRACER=y
1698CONFIG_KMEMTRACE=y
1699CONFIG_WORKQUEUE_TRACER=y
1700# CONFIG_BLK_DEV_IO_TRACE is not set
1701CONFIG_DYNAMIC_FTRACE=y
1702# CONFIG_FUNCTION_PROFILER is not set
1703CONFIG_FTRACE_MCOUNT_RECORD=y
1704# CONFIG_FTRACE_STARTUP_TEST is not set
1705# CONFIG_RING_BUFFER_BENCHMARK is not set
1706# CONFIG_DYNAMIC_DEBUG is not set 1755# CONFIG_DYNAMIC_DEBUG is not set
1707# CONFIG_DMA_API_DEBUG is not set 1756# CONFIG_DMA_API_DEBUG is not set
1757# CONFIG_ATOMIC64_SELFTEST is not set
1708# CONFIG_SAMPLES is not set 1758# CONFIG_SAMPLES is not set
1709CONFIG_HAVE_ARCH_KGDB=y 1759CONFIG_HAVE_ARCH_KGDB=y
1760# CONFIG_KGDB is not set
1710# CONFIG_SH_STANDARD_BIOS is not set 1761# CONFIG_SH_STANDARD_BIOS is not set
1711CONFIG_DWARF_UNWINDER=y 1762# CONFIG_STACK_DEBUG is not set
1712CONFIG_MCOUNT=y 1763# CONFIG_DEBUG_STACK_USAGE is not set
1764# CONFIG_4KSTACKS is not set
1765CONFIG_DUMP_CODE=y
1766# CONFIG_DWARF_UNWINDER is not set
1767# CONFIG_SH_NO_BSS_INIT is not set
1713 1768
1714# 1769#
1715# Security options 1770# Security options
@@ -1820,7 +1875,7 @@ CONFIG_CRYPTO_DES=y
1820# CONFIG_CRYPTO_ANSI_CPRNG is not set 1875# CONFIG_CRYPTO_ANSI_CPRNG is not set
1821# CONFIG_CRYPTO_HW is not set 1876# CONFIG_CRYPTO_HW is not set
1822# CONFIG_VIRTUALIZATION is not set 1877# CONFIG_VIRTUALIZATION is not set
1823CONFIG_BINARY_PRINTF=y 1878# CONFIG_BINARY_PRINTF is not set
1824 1879
1825# 1880#
1826# Library routines 1881# Library routines
diff --git a/arch/sh/include/asm/dmaengine.h b/arch/sh/include/asm/dmaengine.h
deleted file mode 100644
index 2a02b611a9ad..000000000000
--- a/arch/sh/include/asm/dmaengine.h
+++ /dev/null
@@ -1,34 +0,0 @@
1/*
2 * Header for the new SH dmaengine driver
3 *
4 * Copyright (C) 2010 Guennadi Liakhovetski <g.liakhovetski@gmx.de>
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 as
8 * published by the Free Software Foundation.
9 */
10#ifndef ASM_DMAENGINE_H
11#define ASM_DMAENGINE_H
12
13#include <linux/sh_dma.h>
14
15enum {
16 SHDMA_SLAVE_SCIF0_TX,
17 SHDMA_SLAVE_SCIF0_RX,
18 SHDMA_SLAVE_SCIF1_TX,
19 SHDMA_SLAVE_SCIF1_RX,
20 SHDMA_SLAVE_SCIF2_TX,
21 SHDMA_SLAVE_SCIF2_RX,
22 SHDMA_SLAVE_SCIF3_TX,
23 SHDMA_SLAVE_SCIF3_RX,
24 SHDMA_SLAVE_SCIF4_TX,
25 SHDMA_SLAVE_SCIF4_RX,
26 SHDMA_SLAVE_SCIF5_TX,
27 SHDMA_SLAVE_SCIF5_RX,
28 SHDMA_SLAVE_SIUA_TX,
29 SHDMA_SLAVE_SIUA_RX,
30 SHDMA_SLAVE_SIUB_TX,
31 SHDMA_SLAVE_SIUB_RX,
32};
33
34#endif
diff --git a/arch/sh/include/asm/siu.h b/arch/sh/include/asm/siu.h
index e8d4142baf59..1d95c78808d1 100644
--- a/arch/sh/include/asm/siu.h
+++ b/arch/sh/include/asm/siu.h
@@ -11,8 +11,6 @@
11#ifndef ASM_SIU_H 11#ifndef ASM_SIU_H
12#define ASM_SIU_H 12#define ASM_SIU_H
13 13
14#include <asm/dmaengine.h>
15
16struct device; 14struct device;
17 15
18struct siu_platform { 16struct siu_platform {
diff --git a/arch/sh/include/cpu-sh4/cpu/sh7722.h b/arch/sh/include/cpu-sh4/cpu/sh7722.h
index 48560407cbe1..7a5b8a331b4a 100644
--- a/arch/sh/include/cpu-sh4/cpu/sh7722.h
+++ b/arch/sh/include/cpu-sh4/cpu/sh7722.h
@@ -235,4 +235,19 @@ enum {
235 HWBLK_NR, 235 HWBLK_NR,
236}; 236};
237 237
238enum {
239 SHDMA_SLAVE_SCIF0_TX,
240 SHDMA_SLAVE_SCIF0_RX,
241 SHDMA_SLAVE_SCIF1_TX,
242 SHDMA_SLAVE_SCIF1_RX,
243 SHDMA_SLAVE_SCIF2_TX,
244 SHDMA_SLAVE_SCIF2_RX,
245 SHDMA_SLAVE_SIUA_TX,
246 SHDMA_SLAVE_SIUA_RX,
247 SHDMA_SLAVE_SIUB_TX,
248 SHDMA_SLAVE_SIUB_RX,
249 SHDMA_SLAVE_SDHI0_TX,
250 SHDMA_SLAVE_SDHI0_RX,
251};
252
238#endif /* __ASM_SH7722_H__ */ 253#endif /* __ASM_SH7722_H__ */
diff --git a/arch/sh/include/cpu-sh4/cpu/sh7724.h b/arch/sh/include/cpu-sh4/cpu/sh7724.h
index 0cd1f71a1116..fbbf550cc529 100644
--- a/arch/sh/include/cpu-sh4/cpu/sh7724.h
+++ b/arch/sh/include/cpu-sh4/cpu/sh7724.h
@@ -283,4 +283,23 @@ enum {
283 HWBLK_NR, 283 HWBLK_NR,
284}; 284};
285 285
286enum {
287 SHDMA_SLAVE_SCIF0_TX,
288 SHDMA_SLAVE_SCIF0_RX,
289 SHDMA_SLAVE_SCIF1_TX,
290 SHDMA_SLAVE_SCIF1_RX,
291 SHDMA_SLAVE_SCIF2_TX,
292 SHDMA_SLAVE_SCIF2_RX,
293 SHDMA_SLAVE_SCIF3_TX,
294 SHDMA_SLAVE_SCIF3_RX,
295 SHDMA_SLAVE_SCIF4_TX,
296 SHDMA_SLAVE_SCIF4_RX,
297 SHDMA_SLAVE_SCIF5_TX,
298 SHDMA_SLAVE_SCIF5_RX,
299 SHDMA_SLAVE_SDHI0_TX,
300 SHDMA_SLAVE_SDHI0_RX,
301 SHDMA_SLAVE_SDHI1_TX,
302 SHDMA_SLAVE_SDHI1_RX,
303};
304
286#endif /* __ASM_SH7724_H__ */ 305#endif /* __ASM_SH7724_H__ */
diff --git a/arch/sh/kernel/cpu/sh4a/clock-sh7786.c b/arch/sh/kernel/cpu/sh4a/clock-sh7786.c
index 105a6d41b569..597c9fbe49c6 100644
--- a/arch/sh/kernel/cpu/sh4a/clock-sh7786.c
+++ b/arch/sh/kernel/cpu/sh4a/clock-sh7786.c
@@ -13,7 +13,6 @@
13#include <linux/kernel.h> 13#include <linux/kernel.h>
14#include <linux/clk.h> 14#include <linux/clk.h>
15#include <linux/io.h> 15#include <linux/io.h>
16#include <linux/clk.h>
17#include <asm/clkdev.h> 16#include <asm/clkdev.h>
18#include <asm/clock.h> 17#include <asm/clock.h>
19#include <asm/freq.h> 18#include <asm/freq.h>
diff --git a/arch/sh/kernel/cpu/sh4a/setup-sh7722.c b/arch/sh/kernel/cpu/sh4a/setup-sh7722.c
index 24c6167a7181..156ccc960015 100644
--- a/arch/sh/kernel/cpu/sh4a/setup-sh7722.c
+++ b/arch/sh/kernel/cpu/sh4a/setup-sh7722.c
@@ -17,7 +17,6 @@
17#include <linux/usb/m66592.h> 17#include <linux/usb/m66592.h>
18 18
19#include <asm/clock.h> 19#include <asm/clock.h>
20#include <asm/dmaengine.h>
21#include <asm/mmzone.h> 20#include <asm/mmzone.h>
22#include <asm/siu.h> 21#include <asm/siu.h>
23 22
@@ -75,6 +74,16 @@ static const struct sh_dmae_slave_config sh7722_dmae_slaves[] = {
75 .addr = 0xa454c094, 74 .addr = 0xa454c094,
76 .chcr = DM_INC | SM_FIX | 0x800 | TS_INDEX2VAL(XMIT_SZ_32BIT), 75 .chcr = DM_INC | SM_FIX | 0x800 | TS_INDEX2VAL(XMIT_SZ_32BIT),
77 .mid_rid = 0xb6, 76 .mid_rid = 0xb6,
77 }, {
78 .slave_id = SHDMA_SLAVE_SDHI0_TX,
79 .addr = 0x04ce0030,
80 .chcr = DM_FIX | SM_INC | 0x800 | TS_INDEX2VAL(XMIT_SZ_16BIT),
81 .mid_rid = 0xc1,
82 }, {
83 .slave_id = SHDMA_SLAVE_SDHI0_RX,
84 .addr = 0x04ce0030,
85 .chcr = DM_INC | SM_FIX | 0x800 | TS_INDEX2VAL(XMIT_SZ_16BIT),
86 .mid_rid = 0xc2,
78 }, 87 },
79}; 88};
80 89
diff --git a/arch/sh/kernel/cpu/sh4a/setup-sh7724.c b/arch/sh/kernel/cpu/sh4a/setup-sh7724.c
index 89fe16d20fdb..79c556e56262 100644
--- a/arch/sh/kernel/cpu/sh4a/setup-sh7724.c
+++ b/arch/sh/kernel/cpu/sh4a/setup-sh7724.c
@@ -18,19 +18,103 @@
18#include <linux/mm.h> 18#include <linux/mm.h>
19#include <linux/serial_sci.h> 19#include <linux/serial_sci.h>
20#include <linux/uio_driver.h> 20#include <linux/uio_driver.h>
21#include <linux/sh_dma.h>
21#include <linux/sh_timer.h> 22#include <linux/sh_timer.h>
22#include <linux/io.h> 23#include <linux/io.h>
23#include <linux/notifier.h> 24#include <linux/notifier.h>
24 25
25#include <asm/suspend.h> 26#include <asm/suspend.h>
26#include <asm/clock.h> 27#include <asm/clock.h>
27#include <asm/dmaengine.h>
28#include <asm/mmzone.h> 28#include <asm/mmzone.h>
29 29
30#include <cpu/dma-register.h> 30#include <cpu/dma-register.h>
31#include <cpu/sh7724.h> 31#include <cpu/sh7724.h>
32 32
33/* DMA */ 33/* DMA */
34static const struct sh_dmae_slave_config sh7724_dmae_slaves[] = {
35 {
36 .slave_id = SHDMA_SLAVE_SCIF0_TX,
37 .addr = 0xffe0000c,
38 .chcr = DM_FIX | SM_INC | 0x800 | TS_INDEX2VAL(XMIT_SZ_8BIT),
39 .mid_rid = 0x21,
40 }, {
41 .slave_id = SHDMA_SLAVE_SCIF0_RX,
42 .addr = 0xffe00014,
43 .chcr = DM_INC | SM_FIX | 0x800 | TS_INDEX2VAL(XMIT_SZ_8BIT),
44 .mid_rid = 0x22,
45 }, {
46 .slave_id = SHDMA_SLAVE_SCIF1_TX,
47 .addr = 0xffe1000c,
48 .chcr = DM_FIX | SM_INC | 0x800 | TS_INDEX2VAL(XMIT_SZ_8BIT),
49 .mid_rid = 0x25,
50 }, {
51 .slave_id = SHDMA_SLAVE_SCIF1_RX,
52 .addr = 0xffe10014,
53 .chcr = DM_INC | SM_FIX | 0x800 | TS_INDEX2VAL(XMIT_SZ_8BIT),
54 .mid_rid = 0x26,
55 }, {
56 .slave_id = SHDMA_SLAVE_SCIF2_TX,
57 .addr = 0xffe2000c,
58 .chcr = DM_FIX | SM_INC | 0x800 | TS_INDEX2VAL(XMIT_SZ_8BIT),
59 .mid_rid = 0x29,
60 }, {
61 .slave_id = SHDMA_SLAVE_SCIF2_RX,
62 .addr = 0xffe20014,
63 .chcr = DM_INC | SM_FIX | 0x800 | TS_INDEX2VAL(XMIT_SZ_8BIT),
64 .mid_rid = 0x2a,
65 }, {
66 .slave_id = SHDMA_SLAVE_SCIF3_TX,
67 .addr = 0xa4e30020,
68 .chcr = DM_FIX | SM_INC | 0x800 | TS_INDEX2VAL(XMIT_SZ_8BIT),
69 .mid_rid = 0x2d,
70 }, {
71 .slave_id = SHDMA_SLAVE_SCIF3_RX,
72 .addr = 0xa4e30024,
73 .chcr = DM_INC | SM_FIX | 0x800 | TS_INDEX2VAL(XMIT_SZ_8BIT),
74 .mid_rid = 0x2e,
75 }, {
76 .slave_id = SHDMA_SLAVE_SCIF4_TX,
77 .addr = 0xa4e40020,
78 .chcr = DM_FIX | SM_INC | 0x800 | TS_INDEX2VAL(XMIT_SZ_8BIT),
79 .mid_rid = 0x31,
80 }, {
81 .slave_id = SHDMA_SLAVE_SCIF4_RX,
82 .addr = 0xa4e40024,
83 .chcr = DM_INC | SM_FIX | 0x800 | TS_INDEX2VAL(XMIT_SZ_8BIT),
84 .mid_rid = 0x32,
85 }, {
86 .slave_id = SHDMA_SLAVE_SCIF5_TX,
87 .addr = 0xa4e50020,
88 .chcr = DM_FIX | SM_INC | 0x800 | TS_INDEX2VAL(XMIT_SZ_8BIT),
89 .mid_rid = 0x35,
90 }, {
91 .slave_id = SHDMA_SLAVE_SCIF5_RX,
92 .addr = 0xa4e50024,
93 .chcr = DM_INC | SM_FIX | 0x800 | TS_INDEX2VAL(XMIT_SZ_8BIT),
94 .mid_rid = 0x36,
95 }, {
96 .slave_id = SHDMA_SLAVE_SDHI0_TX,
97 .addr = 0x04ce0030,
98 .chcr = DM_FIX | SM_INC | 0x800 | TS_INDEX2VAL(XMIT_SZ_16BIT),
99 .mid_rid = 0xc1,
100 }, {
101 .slave_id = SHDMA_SLAVE_SDHI0_RX,
102 .addr = 0x04ce0030,
103 .chcr = DM_INC | SM_FIX | 0x800 | TS_INDEX2VAL(XMIT_SZ_16BIT),
104 .mid_rid = 0xc2,
105 }, {
106 .slave_id = SHDMA_SLAVE_SDHI1_TX,
107 .addr = 0x04cf0030,
108 .chcr = DM_FIX | SM_INC | 0x800 | TS_INDEX2VAL(XMIT_SZ_16BIT),
109 .mid_rid = 0xc9,
110 }, {
111 .slave_id = SHDMA_SLAVE_SDHI1_RX,
112 .addr = 0x04cf0030,
113 .chcr = DM_INC | SM_FIX | 0x800 | TS_INDEX2VAL(XMIT_SZ_16BIT),
114 .mid_rid = 0xca,
115 },
116};
117
34static const struct sh_dmae_channel sh7724_dmae_channels[] = { 118static const struct sh_dmae_channel sh7724_dmae_channels[] = {
35 { 119 {
36 .offset = 0, 120 .offset = 0,
@@ -62,6 +146,8 @@ static const struct sh_dmae_channel sh7724_dmae_channels[] = {
62static const unsigned int ts_shift[] = TS_SHIFT; 146static const unsigned int ts_shift[] = TS_SHIFT;
63 147
64static struct sh_dmae_pdata dma_platform_data = { 148static struct sh_dmae_pdata dma_platform_data = {
149 .slave = sh7724_dmae_slaves,
150 .slave_num = ARRAY_SIZE(sh7724_dmae_slaves),
65 .channel = sh7724_dmae_channels, 151 .channel = sh7724_dmae_channels,
66 .channel_num = ARRAY_SIZE(sh7724_dmae_channels), 152 .channel_num = ARRAY_SIZE(sh7724_dmae_channels),
67 .ts_low_shift = CHCR_TS_LOW_SHIFT, 153 .ts_low_shift = CHCR_TS_LOW_SHIFT,
diff --git a/arch/sh/kernel/cpu/sh4a/setup-sh7780.c b/arch/sh/kernel/cpu/sh4a/setup-sh7780.c
index b12f537e4dde..0f414864f76b 100644
--- a/arch/sh/kernel/cpu/sh4a/setup-sh7780.c
+++ b/arch/sh/kernel/cpu/sh4a/setup-sh7780.c
@@ -12,10 +12,9 @@
12#include <linux/serial.h> 12#include <linux/serial.h>
13#include <linux/io.h> 13#include <linux/io.h>
14#include <linux/serial_sci.h> 14#include <linux/serial_sci.h>
15#include <linux/sh_dma.h>
15#include <linux/sh_timer.h> 16#include <linux/sh_timer.h>
16 17
17#include <asm/dmaengine.h>
18
19#include <cpu/dma-register.h> 18#include <cpu/dma-register.h>
20 19
21static struct plat_sci_port scif0_platform_data = { 20static struct plat_sci_port scif0_platform_data = {
diff --git a/arch/sh/kernel/cpu/sh4a/setup-sh7785.c b/arch/sh/kernel/cpu/sh4a/setup-sh7785.c
index f3e3ea0ce050..c9a572bc6dc8 100644
--- a/arch/sh/kernel/cpu/sh4a/setup-sh7785.c
+++ b/arch/sh/kernel/cpu/sh4a/setup-sh7785.c
@@ -13,9 +13,9 @@
13#include <linux/serial_sci.h> 13#include <linux/serial_sci.h>
14#include <linux/io.h> 14#include <linux/io.h>
15#include <linux/mm.h> 15#include <linux/mm.h>
16#include <linux/sh_dma.h>
16#include <linux/sh_timer.h> 17#include <linux/sh_timer.h>
17 18
18#include <asm/dmaengine.h>
19#include <asm/mmzone.h> 19#include <asm/mmzone.h>
20 20
21#include <cpu/dma-register.h> 21#include <cpu/dma-register.h>
diff --git a/arch/sh/kernel/cpu/sh4a/setup-sh7786.c b/arch/sh/kernel/cpu/sh4a/setup-sh7786.c
index 81657091da46..8797723231ea 100644
--- a/arch/sh/kernel/cpu/sh4a/setup-sh7786.c
+++ b/arch/sh/kernel/cpu/sh4a/setup-sh7786.c
@@ -21,10 +21,10 @@
21#include <linux/mm.h> 21#include <linux/mm.h>
22#include <linux/dma-mapping.h> 22#include <linux/dma-mapping.h>
23#include <linux/sh_timer.h> 23#include <linux/sh_timer.h>
24#include <linux/sh_dma.h>
24#include <linux/sh_intc.h> 25#include <linux/sh_intc.h>
25#include <cpu/dma-register.h> 26#include <cpu/dma-register.h>
26#include <asm/mmzone.h> 27#include <asm/mmzone.h>
27#include <asm/dmaengine.h>
28 28
29static struct plat_sci_port scif0_platform_data = { 29static struct plat_sci_port scif0_platform_data = {
30 .mapbase = 0xffea0000, 30 .mapbase = 0xffea0000,
diff --git a/arch/sh/kernel/dwarf.c b/arch/sh/kernel/dwarf.c
index 5ec1d1818691..886d7d83ace3 100644
--- a/arch/sh/kernel/dwarf.c
+++ b/arch/sh/kernel/dwarf.c
@@ -845,8 +845,10 @@ static int dwarf_parse_cie(void *entry, void *p, unsigned long len,
845 rb_link_node(&cie->node, parent, rb_node); 845 rb_link_node(&cie->node, parent, rb_node);
846 rb_insert_color(&cie->node, &cie_root); 846 rb_insert_color(&cie->node, &cie_root);
847 847
848#ifdef CONFIG_MODULES
848 if (mod != NULL) 849 if (mod != NULL)
849 list_add_tail(&cie->link, &mod->arch.cie_list); 850 list_add_tail(&cie->link, &mod->arch.cie_list);
851#endif
850 852
851 spin_unlock_irqrestore(&dwarf_cie_lock, flags); 853 spin_unlock_irqrestore(&dwarf_cie_lock, flags);
852 854
@@ -935,8 +937,10 @@ static int dwarf_parse_fde(void *entry, u32 entry_type,
935 rb_link_node(&fde->node, parent, rb_node); 937 rb_link_node(&fde->node, parent, rb_node);
936 rb_insert_color(&fde->node, &fde_root); 938 rb_insert_color(&fde->node, &fde_root);
937 939
940#ifdef CONFIG_MODULES
938 if (mod != NULL) 941 if (mod != NULL)
939 list_add_tail(&fde->link, &mod->arch.fde_list); 942 list_add_tail(&fde->link, &mod->arch.fde_list);
943#endif
940 944
941 spin_unlock_irqrestore(&dwarf_fde_lock, flags); 945 spin_unlock_irqrestore(&dwarf_fde_lock, flags);
942 946
diff --git a/arch/sh/lib/strlen.S b/arch/sh/lib/strlen.S
index f8ab296047b3..1bcc13f05962 100644
--- a/arch/sh/lib/strlen.S
+++ b/arch/sh/lib/strlen.S
@@ -35,7 +35,7 @@ ENTRY(strlen)
35 mov.b @r4+,r1 35 mov.b @r4+,r1
36 tst r1,r1 36 tst r1,r1
37 bt 8f 37 bt 8f
38 add #1,r2 38 add #1,r2
39 39
401: 401:
41 mov #0,r3 41 mov #0,r3