Merge branch 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc

* 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (45 commits)
ARM: ux500: update defconfig
ARM: u300: update defconfig
ARM: at91: enable additional boards in existing soc defconfig files
ARM: at91: refresh soc defconfig files for 3.2
ARM: at91: rename defconfig files appropriately
ARM: OMAP2+: Fix Compilation error when omap_l3_noc built as module
ARM: OMAP2+: Remove empty io.h
ARM: OMAP2: select ARM_AMBA if OMAP3_EMU is defined
ARM: OMAP: smartreflex: fix IRQ handling bug
ARM: OMAP: PM: only register TWL with voltage layer when device is present
ARM: OMAP: hwmod: Fix the addr space, irq, dma count APIs
arm: mx28: fix bit operation in clock setting
ARM: imx: export imx_ioremap
ARM: imx/mm-imx3: conditionally compile i.MX31 and i.MX35 code
ARM: mx5: Fix checkpatch warnings in cpu-imx5.c
MAINTAINERS: Add missing directory
ARM: imx: drop 'ARCH_MX31' and 'ARCH_MX35'
ARM: imx6q: move clock register map to machine_desc.map_io
ARM: pxa168/gplugd: add the correct SSP device
ARM: Update mach-types to fix mxs build breakage
...

+638 -391
+8
MAINTAINERS
··· 789 S: Maintained 790 T: git git://git.pengutronix.de/git/imx/linux-2.6.git 791 F: arch/arm/mach-mx*/ 792 F: arch/arm/plat-mxc/ 793 794 ARM/FREESCALE IMX51 ··· 804 S: Maintained 805 T: git git://git.linaro.org/people/shawnguo/linux-2.6.git 806 F: arch/arm/mach-imx/*imx6* 807 808 ARM/GLOMATION GESBC9312SX MACHINE SUPPORT 809 M: Lennert Buytenhek <kernel@wantstofly.org>
··· 789 S: Maintained 790 T: git git://git.pengutronix.de/git/imx/linux-2.6.git 791 F: arch/arm/mach-mx*/ 792 + F: arch/arm/mach-imx/ 793 F: arch/arm/plat-mxc/ 794 795 ARM/FREESCALE IMX51 ··· 803 S: Maintained 804 T: git git://git.linaro.org/people/shawnguo/linux-2.6.git 805 F: arch/arm/mach-imx/*imx6* 806 + 807 + ARM/FREESCALE MXS ARM ARCHITECTURE 808 + M: Shawn Guo <shawn.guo@linaro.org> 809 + L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers) 810 + S: Maintained 811 + T: git git://git.linaro.org/people/shawnguo/linux-2.6.git 812 + F: arch/arm/mach-mxs/ 813 814 ARM/GLOMATION GESBC9312SX MACHINE SUPPORT 815 M: Lennert Buytenhek <kernel@wantstofly.org>
+15 -51
arch/arm/configs/at91cap9adk_defconfig arch/arm/configs/at91sam9rl_defconfig
··· 11 # CONFIG_IOSCHED_DEADLINE is not set 12 # CONFIG_IOSCHED_CFQ is not set 13 CONFIG_ARCH_AT91=y 14 - CONFIG_ARCH_AT91CAP9=y 15 - CONFIG_MACH_AT91CAP9ADK=y 16 - CONFIG_MTD_AT91_DATAFLASH_CARD=y 17 CONFIG_AT91_PROGRAMMABLE_CLOCKS=y 18 # CONFIG_ARM_THUMB is not set 19 - CONFIG_AEABI=y 20 - CONFIG_LEDS=y 21 - CONFIG_LEDS_CPU=y 22 CONFIG_ZBOOT_ROM_TEXT=0x0 23 CONFIG_ZBOOT_ROM_BSS=0x0 24 - CONFIG_CMDLINE="console=ttyS0,115200 root=/dev/ram0 rw" 25 CONFIG_FPE_NWFPE=y 26 CONFIG_NET=y 27 - CONFIG_PACKET=y 28 CONFIG_UNIX=y 29 - CONFIG_INET=y 30 - CONFIG_IP_PNP=y 31 - CONFIG_IP_PNP_BOOTP=y 32 - CONFIG_IP_PNP_RARP=y 33 - # CONFIG_INET_XFRM_MODE_TRANSPORT is not set 34 - # CONFIG_INET_XFRM_MODE_TUNNEL is not set 35 - # CONFIG_INET_XFRM_MODE_BEET is not set 36 - # CONFIG_INET_LRO is not set 37 - # CONFIG_INET_DIAG is not set 38 - # CONFIG_IPV6 is not set 39 CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" 40 CONFIG_MTD=y 41 - CONFIG_MTD_PARTITIONS=y 42 CONFIG_MTD_CMDLINE_PARTS=y 43 CONFIG_MTD_CHAR=y 44 CONFIG_MTD_BLOCK=y 45 - CONFIG_MTD_CFI=y 46 - CONFIG_MTD_JEDECPROBE=y 47 - CONFIG_MTD_CFI_AMDSTD=y 48 - CONFIG_MTD_PHYSMAP=y 49 CONFIG_MTD_DATAFLASH=y 50 CONFIG_MTD_NAND=y 51 CONFIG_MTD_NAND_ATMEL=y 52 CONFIG_BLK_DEV_LOOP=y 53 CONFIG_BLK_DEV_RAM=y 54 - CONFIG_BLK_DEV_RAM_SIZE=8192 55 - CONFIG_ATMEL_SSC=y 56 CONFIG_SCSI=y 57 CONFIG_BLK_DEV_SD=y 58 CONFIG_SCSI_MULTI_LUN=y 59 - CONFIG_NETDEVICES=y 60 - CONFIG_NET_ETHERNET=y 61 - CONFIG_MII=y 62 - CONFIG_MACB=y 63 - # CONFIG_NETDEV_1000 is not set 64 - # CONFIG_NETDEV_10000 is not set 65 # CONFIG_INPUT_MOUSEDEV_PSAUX is not set 66 CONFIG_INPUT_EVDEV=y 67 # CONFIG_INPUT_KEYBOARD is not set 68 # CONFIG_INPUT_MOUSE is not set 69 CONFIG_INPUT_TOUCHSCREEN=y 70 - CONFIG_TOUCHSCREEN_ADS7846=y 71 # CONFIG_SERIO is not set 72 CONFIG_SERIAL_ATMEL=y 73 CONFIG_SERIAL_ATMEL_CONSOLE=y 74 - CONFIG_HW_RANDOM=y 75 CONFIG_I2C=y 76 CONFIG_I2C_CHARDEV=y 77 CONFIG_SPI=y 78 CONFIG_SPI_ATMEL=y 79 # CONFIG_HWMON is not set 80 CONFIG_WATCHDOG=y 81 CONFIG_WATCHDOG_NOWAYOUT=y 82 CONFIG_FB=y 83 CONFIG_FB_ATMEL=y 84 - # CONFIG_VGA_CONSOLE is not set 85 - CONFIG_LOGO=y 86 - # CONFIG_LOGO_LINUX_MONO is not set 87 - # CONFIG_LOGO_LINUX_CLUT224 is not set 88 - # CONFIG_USB_HID is not set 89 - CONFIG_USB=y 90 - CONFIG_USB_DEVICEFS=y 91 - CONFIG_USB_MON=y 92 - CONFIG_USB_OHCI_HCD=y 93 - CONFIG_USB_STORAGE=y 94 - CONFIG_USB_GADGET=y 95 - CONFIG_USB_ETH=m 96 - CONFIG_USB_FILE_STORAGE=m 97 CONFIG_MMC=y 98 CONFIG_MMC_AT91=m 99 CONFIG_RTC_CLASS=y 100 CONFIG_RTC_DRV_AT91SAM9=y 101 CONFIG_EXT2_FS=y 102 - CONFIG_INOTIFY=y 103 CONFIG_VFAT_FS=y 104 CONFIG_TMPFS=y 105 - CONFIG_JFFS2_FS=y 106 CONFIG_CRAMFS=y 107 - CONFIG_NFS_FS=y 108 - CONFIG_ROOT_NFS=y 109 CONFIG_NLS_CODEPAGE_437=y 110 CONFIG_NLS_CODEPAGE_850=y 111 CONFIG_NLS_ISO8859_1=y 112 - CONFIG_DEBUG_FS=y 113 CONFIG_DEBUG_KERNEL=y 114 CONFIG_DEBUG_INFO=y 115 CONFIG_DEBUG_USER=y
··· 11 # CONFIG_IOSCHED_DEADLINE is not set 12 # CONFIG_IOSCHED_CFQ is not set 13 CONFIG_ARCH_AT91=y 14 + CONFIG_ARCH_AT91SAM9RL=y 15 + CONFIG_MACH_AT91SAM9RLEK=y 16 CONFIG_AT91_PROGRAMMABLE_CLOCKS=y 17 # CONFIG_ARM_THUMB is not set 18 CONFIG_ZBOOT_ROM_TEXT=0x0 19 CONFIG_ZBOOT_ROM_BSS=0x0 20 + CONFIG_CMDLINE="mem=64M console=ttyS0,115200 initrd=0x21100000,17105363 root=/dev/ram0 rw" 21 CONFIG_FPE_NWFPE=y 22 CONFIG_NET=y 23 CONFIG_UNIX=y 24 CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" 25 CONFIG_MTD=y 26 CONFIG_MTD_CMDLINE_PARTS=y 27 CONFIG_MTD_CHAR=y 28 CONFIG_MTD_BLOCK=y 29 CONFIG_MTD_DATAFLASH=y 30 CONFIG_MTD_NAND=y 31 CONFIG_MTD_NAND_ATMEL=y 32 CONFIG_BLK_DEV_LOOP=y 33 CONFIG_BLK_DEV_RAM=y 34 + CONFIG_BLK_DEV_RAM_COUNT=4 35 + CONFIG_BLK_DEV_RAM_SIZE=24576 36 CONFIG_SCSI=y 37 CONFIG_BLK_DEV_SD=y 38 CONFIG_SCSI_MULTI_LUN=y 39 # CONFIG_INPUT_MOUSEDEV_PSAUX is not set 40 + CONFIG_INPUT_MOUSEDEV_SCREEN_X=320 41 + CONFIG_INPUT_MOUSEDEV_SCREEN_Y=240 42 CONFIG_INPUT_EVDEV=y 43 # CONFIG_INPUT_KEYBOARD is not set 44 # CONFIG_INPUT_MOUSE is not set 45 CONFIG_INPUT_TOUCHSCREEN=y 46 + CONFIG_TOUCHSCREEN_ATMEL_TSADCC=y 47 # CONFIG_SERIO is not set 48 CONFIG_SERIAL_ATMEL=y 49 CONFIG_SERIAL_ATMEL_CONSOLE=y 50 + # CONFIG_HW_RANDOM is not set 51 CONFIG_I2C=y 52 CONFIG_I2C_CHARDEV=y 53 + CONFIG_I2C_GPIO=y 54 CONFIG_SPI=y 55 CONFIG_SPI_ATMEL=y 56 # CONFIG_HWMON is not set 57 CONFIG_WATCHDOG=y 58 CONFIG_WATCHDOG_NOWAYOUT=y 59 + CONFIG_AT91SAM9X_WATCHDOG=y 60 CONFIG_FB=y 61 CONFIG_FB_ATMEL=y 62 CONFIG_MMC=y 63 CONFIG_MMC_AT91=m 64 CONFIG_RTC_CLASS=y 65 CONFIG_RTC_DRV_AT91SAM9=y 66 CONFIG_EXT2_FS=y 67 + CONFIG_MSDOS_FS=y 68 CONFIG_VFAT_FS=y 69 CONFIG_TMPFS=y 70 CONFIG_CRAMFS=y 71 CONFIG_NLS_CODEPAGE_437=y 72 CONFIG_NLS_CODEPAGE_850=y 73 CONFIG_NLS_ISO8859_1=y 74 + CONFIG_NLS_ISO8859_15=y 75 + CONFIG_NLS_UTF8=y 76 CONFIG_DEBUG_KERNEL=y 77 CONFIG_DEBUG_INFO=y 78 CONFIG_DEBUG_USER=y 79 + CONFIG_DEBUG_LL=y
+14 -33
arch/arm/configs/at91rm9200_defconfig
··· 5 CONFIG_IKCONFIG=y 6 CONFIG_IKCONFIG_PROC=y 7 CONFIG_LOG_BUF_SHIFT=14 8 - CONFIG_SYSFS_DEPRECATED_V2=y 9 CONFIG_BLK_DEV_INITRD=y 10 CONFIG_MODULES=y 11 CONFIG_MODULE_FORCE_LOAD=y ··· 55 CONFIG_IP_PNP_DHCP=y 56 CONFIG_IP_PNP_BOOTP=y 57 CONFIG_NET_IPIP=m 58 - CONFIG_NET_IPGRE=m 59 CONFIG_INET_AH=m 60 CONFIG_INET_ESP=m 61 CONFIG_INET_IPCOMP=m ··· 73 CONFIG_BRIDGE=m 74 CONFIG_VLAN_8021Q=m 75 CONFIG_BT=m 76 - CONFIG_BT_L2CAP=m 77 - CONFIG_BT_SCO=m 78 - CONFIG_BT_RFCOMM=m 79 - CONFIG_BT_RFCOMM_TTY=y 80 - CONFIG_BT_BNEP=m 81 - CONFIG_BT_BNEP_MC_FILTER=y 82 - CONFIG_BT_BNEP_PROTO_FILTER=y 83 - CONFIG_BT_HIDP=m 84 CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" 85 CONFIG_MTD=y 86 - CONFIG_MTD_CONCAT=y 87 - CONFIG_MTD_PARTITIONS=y 88 CONFIG_MTD_CMDLINE_PARTS=y 89 CONFIG_MTD_AFS_PARTS=y 90 CONFIG_MTD_CHAR=y ··· 96 CONFIG_BLK_DEV_NBD=y 97 CONFIG_BLK_DEV_RAM=y 98 CONFIG_BLK_DEV_RAM_SIZE=8192 99 - CONFIG_ATMEL_TCLIB=y 100 - CONFIG_EEPROM_LEGACY=m 101 CONFIG_SCSI=y 102 CONFIG_BLK_DEV_SD=y 103 CONFIG_BLK_DEV_SR=m ··· 105 # CONFIG_SCSI_LOWLEVEL is not set 106 CONFIG_NETDEVICES=y 107 CONFIG_TUN=m 108 CONFIG_PHYLIB=y 109 CONFIG_DAVICOM_PHY=y 110 CONFIG_SMSC_PHY=y 111 CONFIG_MICREL_PHY=y 112 - CONFIG_NET_ETHERNET=y 113 - CONFIG_ARM_AT91_ETHER=y 114 - # CONFIG_NETDEV_1000 is not set 115 - # CONFIG_NETDEV_10000 is not set 116 CONFIG_USB_CATC=m 117 CONFIG_USB_KAWETH=m 118 CONFIG_USB_PEGASUS=m ··· 134 CONFIG_USB_ALI_M5632=y 135 CONFIG_USB_AN2720=y 136 CONFIG_USB_EPSON2888=y 137 - CONFIG_PPP=y 138 - CONFIG_PPP_MULTILINK=y 139 - CONFIG_PPP_FILTER=y 140 - CONFIG_PPP_ASYNC=y 141 - CONFIG_PPP_DEFLATE=y 142 - CONFIG_PPP_BSDCOMP=y 143 - CONFIG_PPP_MPPE=m 144 - CONFIG_PPPOE=m 145 - CONFIG_SLIP=m 146 - CONFIG_SLIP_COMPRESSED=y 147 - CONFIG_SLIP_SMART=y 148 - CONFIG_SLIP_MODE_SLIP6=y 149 # CONFIG_INPUT_MOUSEDEV_PSAUX is not set 150 CONFIG_INPUT_MOUSEDEV_SCREEN_X=640 151 CONFIG_INPUT_MOUSEDEV_SCREEN_Y=480 ··· 141 CONFIG_KEYBOARD_GPIO=y 142 # CONFIG_INPUT_MOUSE is not set 143 CONFIG_INPUT_TOUCHSCREEN=y 144 CONFIG_SERIAL_ATMEL=y 145 CONFIG_SERIAL_ATMEL_CONSOLE=y 146 - CONFIG_LEGACY_PTY_COUNT=32 147 CONFIG_HW_RANDOM=y 148 CONFIG_I2C=y 149 CONFIG_I2C_CHARDEV=y ··· 273 CONFIG_NFS_V4=y 274 CONFIG_ROOT_NFS=y 275 CONFIG_NFSD=y 276 - CONFIG_SMB_FS=m 277 CONFIG_CIFS=m 278 CONFIG_PARTITION_ADVANCED=y 279 CONFIG_MAC_PARTITION=y ··· 317 CONFIG_MAGIC_SYSRQ=y 318 CONFIG_DEBUG_FS=y 319 CONFIG_DEBUG_KERNEL=y 320 - # CONFIG_RCU_CPU_STALL_DETECTOR is not set 321 # CONFIG_FTRACE is not set 322 CONFIG_CRYPTO_PCBC=y 323 CONFIG_CRYPTO_SHA1=y
··· 5 CONFIG_IKCONFIG=y 6 CONFIG_IKCONFIG_PROC=y 7 CONFIG_LOG_BUF_SHIFT=14 8 CONFIG_BLK_DEV_INITRD=y 9 CONFIG_MODULES=y 10 CONFIG_MODULE_FORCE_LOAD=y ··· 56 CONFIG_IP_PNP_DHCP=y 57 CONFIG_IP_PNP_BOOTP=y 58 CONFIG_NET_IPIP=m 59 CONFIG_INET_AH=m 60 CONFIG_INET_ESP=m 61 CONFIG_INET_IPCOMP=m ··· 75 CONFIG_BRIDGE=m 76 CONFIG_VLAN_8021Q=m 77 CONFIG_BT=m 78 CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" 79 CONFIG_MTD=y 80 CONFIG_MTD_CMDLINE_PARTS=y 81 CONFIG_MTD_AFS_PARTS=y 82 CONFIG_MTD_CHAR=y ··· 108 CONFIG_BLK_DEV_NBD=y 109 CONFIG_BLK_DEV_RAM=y 110 CONFIG_BLK_DEV_RAM_SIZE=8192 111 CONFIG_SCSI=y 112 CONFIG_BLK_DEV_SD=y 113 CONFIG_BLK_DEV_SR=m ··· 119 # CONFIG_SCSI_LOWLEVEL is not set 120 CONFIG_NETDEVICES=y 121 CONFIG_TUN=m 122 + CONFIG_ARM_AT91_ETHER=y 123 CONFIG_PHYLIB=y 124 CONFIG_DAVICOM_PHY=y 125 CONFIG_SMSC_PHY=y 126 CONFIG_MICREL_PHY=y 127 + CONFIG_PPP=y 128 + CONFIG_PPP_BSDCOMP=y 129 + CONFIG_PPP_DEFLATE=y 130 + CONFIG_PPP_FILTER=y 131 + CONFIG_PPP_MPPE=m 132 + CONFIG_PPP_MULTILINK=y 133 + CONFIG_PPPOE=m 134 + CONFIG_PPP_ASYNC=y 135 + CONFIG_SLIP=m 136 + CONFIG_SLIP_COMPRESSED=y 137 + CONFIG_SLIP_SMART=y 138 + CONFIG_SLIP_MODE_SLIP6=y 139 CONFIG_USB_CATC=m 140 CONFIG_USB_KAWETH=m 141 CONFIG_USB_PEGASUS=m ··· 139 CONFIG_USB_ALI_M5632=y 140 CONFIG_USB_AN2720=y 141 CONFIG_USB_EPSON2888=y 142 # CONFIG_INPUT_MOUSEDEV_PSAUX is not set 143 CONFIG_INPUT_MOUSEDEV_SCREEN_X=640 144 CONFIG_INPUT_MOUSEDEV_SCREEN_Y=480 ··· 158 CONFIG_KEYBOARD_GPIO=y 159 # CONFIG_INPUT_MOUSE is not set 160 CONFIG_INPUT_TOUCHSCREEN=y 161 + CONFIG_LEGACY_PTY_COUNT=32 162 CONFIG_SERIAL_ATMEL=y 163 CONFIG_SERIAL_ATMEL_CONSOLE=y 164 CONFIG_HW_RANDOM=y 165 CONFIG_I2C=y 166 CONFIG_I2C_CHARDEV=y ··· 290 CONFIG_NFS_V4=y 291 CONFIG_ROOT_NFS=y 292 CONFIG_NFSD=y 293 CONFIG_CIFS=m 294 CONFIG_PARTITION_ADVANCED=y 295 CONFIG_MAC_PARTITION=y ··· 335 CONFIG_MAGIC_SYSRQ=y 336 CONFIG_DEBUG_FS=y 337 CONFIG_DEBUG_KERNEL=y 338 # CONFIG_FTRACE is not set 339 CONFIG_CRYPTO_PCBC=y 340 CONFIG_CRYPTO_SHA1=y
+61 -20
arch/arm/configs/at91sam9260ek_defconfig arch/arm/configs/at91sam9g20_defconfig
··· 11 # CONFIG_IOSCHED_DEADLINE is not set 12 # CONFIG_IOSCHED_CFQ is not set 13 CONFIG_ARCH_AT91=y 14 - CONFIG_ARCH_AT91SAM9260=y 15 - CONFIG_MACH_AT91SAM9260EK=y 16 CONFIG_AT91_PROGRAMMABLE_CLOCKS=y 17 # CONFIG_ARM_THUMB is not set 18 CONFIG_ZBOOT_ROM_TEXT=0x0 19 CONFIG_ZBOOT_ROM_BSS=0x0 20 CONFIG_CMDLINE="mem=64M console=ttyS0,115200 initrd=0x21100000,3145728 root=/dev/ram0 rw" 21 CONFIG_FPE_NWFPE=y 22 CONFIG_NET=y ··· 46 # CONFIG_INET_LRO is not set 47 # CONFIG_IPV6 is not set 48 CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" 49 CONFIG_BLK_DEV_RAM=y 50 CONFIG_BLK_DEV_RAM_SIZE=8192 51 - CONFIG_ATMEL_SSC=y 52 CONFIG_SCSI=y 53 CONFIG_BLK_DEV_SD=y 54 CONFIG_SCSI_MULTI_LUN=y 55 CONFIG_NETDEVICES=y 56 - CONFIG_NET_ETHERNET=y 57 CONFIG_MII=y 58 CONFIG_MACB=y 59 # CONFIG_INPUT_MOUSEDEV_PSAUX is not set 60 - # CONFIG_INPUT_KEYBOARD is not set 61 # CONFIG_INPUT_MOUSE is not set 62 - # CONFIG_SERIO is not set 63 CONFIG_SERIAL_ATMEL=y 64 CONFIG_SERIAL_ATMEL_CONSOLE=y 65 - # CONFIG_HW_RANDOM is not set 66 - CONFIG_I2C=y 67 - CONFIG_I2C_CHARDEV=y 68 - CONFIG_I2C_GPIO=y 69 # CONFIG_HWMON is not set 70 - CONFIG_WATCHDOG=y 71 - CONFIG_WATCHDOG_NOWAYOUT=y 72 - CONFIG_AT91SAM9X_WATCHDOG=y 73 - # CONFIG_VGA_CONSOLE is not set 74 - # CONFIG_USB_HID is not set 75 CONFIG_USB=y 76 CONFIG_USB_DEVICEFS=y 77 CONFIG_USB_MON=y 78 CONFIG_USB_OHCI_HCD=y 79 CONFIG_USB_STORAGE=y 80 - CONFIG_USB_STORAGE_DEBUG=y 81 CONFIG_USB_GADGET=y 82 CONFIG_USB_ZERO=m 83 CONFIG_USB_GADGETFS=m 84 CONFIG_USB_FILE_STORAGE=m 85 CONFIG_USB_G_SERIAL=m 86 CONFIG_RTC_CLASS=y 87 CONFIG_RTC_DRV_AT91SAM9=y 88 CONFIG_EXT2_FS=y 89 - CONFIG_INOTIFY=y 90 CONFIG_VFAT_FS=y 91 CONFIG_TMPFS=y 92 CONFIG_CRAMFS=y 93 CONFIG_NLS_CODEPAGE_437=y 94 CONFIG_NLS_CODEPAGE_850=y 95 CONFIG_NLS_ISO8859_1=y 96 - CONFIG_DEBUG_KERNEL=y 97 - CONFIG_DEBUG_USER=y 98 - CONFIG_DEBUG_LL=y
··· 11 # CONFIG_IOSCHED_DEADLINE is not set 12 # CONFIG_IOSCHED_CFQ is not set 13 CONFIG_ARCH_AT91=y 14 + CONFIG_ARCH_AT91SAM9G20=y 15 + CONFIG_MACH_AT91SAM9G20EK=y 16 + CONFIG_MACH_AT91SAM9G20EK_2MMC=y 17 + CONFIG_MACH_CPU9G20=y 18 + CONFIG_MACH_ACMENETUSFOXG20=y 19 + CONFIG_MACH_PORTUXG20=y 20 + CONFIG_MACH_STAMP9G20=y 21 + CONFIG_MACH_PCONTROL_G20=y 22 + CONFIG_MACH_GSIA18S=y 23 + CONFIG_MACH_USB_A9G20=y 24 + CONFIG_MACH_SNAPPER_9260=y 25 + CONFIG_MACH_AT91SAM_DT=y 26 CONFIG_AT91_PROGRAMMABLE_CLOCKS=y 27 # CONFIG_ARM_THUMB is not set 28 + CONFIG_AEABI=y 29 + CONFIG_LEDS=y 30 + CONFIG_LEDS_CPU=y 31 CONFIG_ZBOOT_ROM_TEXT=0x0 32 CONFIG_ZBOOT_ROM_BSS=0x0 33 + CONFIG_ARM_APPENDED_DTB=y 34 + CONFIG_ARM_ATAG_DTB_COMPAT=y 35 CONFIG_CMDLINE="mem=64M console=ttyS0,115200 initrd=0x21100000,3145728 root=/dev/ram0 rw" 36 CONFIG_FPE_NWFPE=y 37 CONFIG_NET=y ··· 31 # CONFIG_INET_LRO is not set 32 # CONFIG_IPV6 is not set 33 CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" 34 + CONFIG_MTD=y 35 + CONFIG_MTD_CMDLINE_PARTS=y 36 + CONFIG_MTD_CHAR=y 37 + CONFIG_MTD_BLOCK=y 38 + CONFIG_MTD_DATAFLASH=y 39 + CONFIG_MTD_NAND=y 40 + CONFIG_MTD_NAND_ATMEL=y 41 + CONFIG_BLK_DEV_LOOP=y 42 CONFIG_BLK_DEV_RAM=y 43 CONFIG_BLK_DEV_RAM_SIZE=8192 44 CONFIG_SCSI=y 45 CONFIG_BLK_DEV_SD=y 46 CONFIG_SCSI_MULTI_LUN=y 47 + # CONFIG_SCSI_LOWLEVEL is not set 48 CONFIG_NETDEVICES=y 49 CONFIG_MII=y 50 CONFIG_MACB=y 51 # CONFIG_INPUT_MOUSEDEV_PSAUX is not set 52 + CONFIG_INPUT_MOUSEDEV_SCREEN_X=320 53 + CONFIG_INPUT_MOUSEDEV_SCREEN_Y=240 54 + CONFIG_INPUT_EVDEV=y 55 + # CONFIG_KEYBOARD_ATKBD is not set 56 + CONFIG_KEYBOARD_GPIO=y 57 # CONFIG_INPUT_MOUSE is not set 58 + CONFIG_LEGACY_PTY_COUNT=16 59 CONFIG_SERIAL_ATMEL=y 60 CONFIG_SERIAL_ATMEL_CONSOLE=y 61 + CONFIG_HW_RANDOM=y 62 + CONFIG_SPI=y 63 + CONFIG_SPI_ATMEL=y 64 + CONFIG_SPI_SPIDEV=y 65 # CONFIG_HWMON is not set 66 + CONFIG_SOUND=y 67 + CONFIG_SND=y 68 + CONFIG_SND_SEQUENCER=y 69 + CONFIG_SND_MIXER_OSS=y 70 + CONFIG_SND_PCM_OSS=y 71 + CONFIG_SND_SEQUENCER_OSS=y 72 + # CONFIG_SND_VERBOSE_PROCFS is not set 73 CONFIG_USB=y 74 CONFIG_USB_DEVICEFS=y 75 + # CONFIG_USB_DEVICE_CLASS is not set 76 CONFIG_USB_MON=y 77 CONFIG_USB_OHCI_HCD=y 78 CONFIG_USB_STORAGE=y 79 CONFIG_USB_GADGET=y 80 CONFIG_USB_ZERO=m 81 CONFIG_USB_GADGETFS=m 82 CONFIG_USB_FILE_STORAGE=m 83 CONFIG_USB_G_SERIAL=m 84 + CONFIG_MMC=y 85 + CONFIG_MMC_AT91=m 86 + CONFIG_NEW_LEDS=y 87 + CONFIG_LEDS_CLASS=y 88 + CONFIG_LEDS_GPIO=y 89 + CONFIG_LEDS_TRIGGERS=y 90 + CONFIG_LEDS_TRIGGER_TIMER=y 91 + CONFIG_LEDS_TRIGGER_HEARTBEAT=y 92 CONFIG_RTC_CLASS=y 93 CONFIG_RTC_DRV_AT91SAM9=y 94 CONFIG_EXT2_FS=y 95 + CONFIG_MSDOS_FS=y 96 CONFIG_VFAT_FS=y 97 CONFIG_TMPFS=y 98 + CONFIG_JFFS2_FS=y 99 + CONFIG_JFFS2_SUMMARY=y 100 CONFIG_CRAMFS=y 101 + CONFIG_NFS_FS=y 102 + CONFIG_NFS_V3=y 103 + CONFIG_ROOT_NFS=y 104 CONFIG_NLS_CODEPAGE_437=y 105 CONFIG_NLS_CODEPAGE_850=y 106 CONFIG_NLS_ISO8859_1=y 107 + CONFIG_NLS_ISO8859_15=y 108 + CONFIG_NLS_UTF8=y 109 + # CONFIG_ENABLE_WARN_DEPRECATED is not set
+29 -44
arch/arm/configs/at91sam9g20ek_defconfig arch/arm/configs/at91cap9_defconfig
··· 11 # CONFIG_IOSCHED_DEADLINE is not set 12 # CONFIG_IOSCHED_CFQ is not set 13 CONFIG_ARCH_AT91=y 14 - CONFIG_ARCH_AT91SAM9G20=y 15 - CONFIG_MACH_AT91SAM9G20EK=y 16 - CONFIG_MACH_AT91SAM9G20EK_2MMC=y 17 CONFIG_AT91_PROGRAMMABLE_CLOCKS=y 18 # CONFIG_ARM_THUMB is not set 19 CONFIG_AEABI=y ··· 21 CONFIG_LEDS_CPU=y 22 CONFIG_ZBOOT_ROM_TEXT=0x0 23 CONFIG_ZBOOT_ROM_BSS=0x0 24 - CONFIG_CMDLINE="mem=64M console=ttyS0,115200 initrd=0x21100000,3145728 root=/dev/ram0 rw" 25 CONFIG_FPE_NWFPE=y 26 - CONFIG_PM=y 27 CONFIG_NET=y 28 CONFIG_PACKET=y 29 CONFIG_UNIX=y 30 CONFIG_INET=y 31 CONFIG_IP_PNP=y 32 CONFIG_IP_PNP_BOOTP=y 33 # CONFIG_INET_XFRM_MODE_TRANSPORT is not set 34 # CONFIG_INET_XFRM_MODE_TUNNEL is not set 35 # CONFIG_INET_XFRM_MODE_BEET is not set 36 # CONFIG_INET_LRO is not set 37 # CONFIG_IPV6 is not set 38 CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" 39 CONFIG_MTD=y 40 - CONFIG_MTD_CONCAT=y 41 - CONFIG_MTD_PARTITIONS=y 42 CONFIG_MTD_CMDLINE_PARTS=y 43 CONFIG_MTD_CHAR=y 44 CONFIG_MTD_BLOCK=y 45 CONFIG_MTD_DATAFLASH=y 46 CONFIG_MTD_NAND=y 47 CONFIG_MTD_NAND_ATMEL=y 48 CONFIG_BLK_DEV_LOOP=y 49 CONFIG_BLK_DEV_RAM=y 50 CONFIG_BLK_DEV_RAM_SIZE=8192 51 - CONFIG_ATMEL_SSC=y 52 CONFIG_SCSI=y 53 CONFIG_BLK_DEV_SD=y 54 CONFIG_SCSI_MULTI_LUN=y 55 - # CONFIG_SCSI_LOWLEVEL is not set 56 CONFIG_NETDEVICES=y 57 - CONFIG_NET_ETHERNET=y 58 CONFIG_MII=y 59 CONFIG_MACB=y 60 - # CONFIG_NETDEV_1000 is not set 61 - # CONFIG_NETDEV_10000 is not set 62 # CONFIG_INPUT_MOUSEDEV_PSAUX is not set 63 - CONFIG_INPUT_MOUSEDEV_SCREEN_X=320 64 - CONFIG_INPUT_MOUSEDEV_SCREEN_Y=240 65 CONFIG_INPUT_EVDEV=y 66 - # CONFIG_KEYBOARD_ATKBD is not set 67 - CONFIG_KEYBOARD_GPIO=y 68 # CONFIG_INPUT_MOUSE is not set 69 CONFIG_SERIAL_ATMEL=y 70 CONFIG_SERIAL_ATMEL_CONSOLE=y 71 - CONFIG_LEGACY_PTY_COUNT=16 72 CONFIG_HW_RANDOM=y 73 CONFIG_SPI=y 74 CONFIG_SPI_ATMEL=y 75 - CONFIG_SPI_SPIDEV=y 76 # CONFIG_HWMON is not set 77 - # CONFIG_VGA_CONSOLE is not set 78 - CONFIG_SOUND=y 79 - CONFIG_SND=y 80 - CONFIG_SND_SEQUENCER=y 81 - CONFIG_SND_MIXER_OSS=y 82 - CONFIG_SND_PCM_OSS=y 83 - CONFIG_SND_SEQUENCER_OSS=y 84 - # CONFIG_SND_VERBOSE_PROCFS is not set 85 - CONFIG_SND_AT73C213=y 86 CONFIG_USB=y 87 CONFIG_USB_DEVICEFS=y 88 - # CONFIG_USB_DEVICE_CLASS is not set 89 CONFIG_USB_MON=y 90 CONFIG_USB_OHCI_HCD=y 91 CONFIG_USB_STORAGE=y 92 CONFIG_USB_GADGET=y 93 - CONFIG_USB_ZERO=m 94 - CONFIG_USB_GADGETFS=m 95 CONFIG_USB_FILE_STORAGE=m 96 - CONFIG_USB_G_SERIAL=m 97 CONFIG_MMC=y 98 CONFIG_MMC_AT91=m 99 - CONFIG_NEW_LEDS=y 100 - CONFIG_LEDS_CLASS=y 101 - CONFIG_LEDS_GPIO=y 102 - CONFIG_LEDS_TRIGGERS=y 103 - CONFIG_LEDS_TRIGGER_TIMER=y 104 - CONFIG_LEDS_TRIGGER_HEARTBEAT=y 105 CONFIG_RTC_CLASS=y 106 CONFIG_RTC_DRV_AT91SAM9=y 107 CONFIG_EXT2_FS=y 108 - CONFIG_INOTIFY=y 109 - CONFIG_MSDOS_FS=y 110 CONFIG_VFAT_FS=y 111 CONFIG_TMPFS=y 112 CONFIG_JFFS2_FS=y 113 - CONFIG_JFFS2_SUMMARY=y 114 CONFIG_CRAMFS=y 115 CONFIG_NFS_FS=y 116 - CONFIG_NFS_V3=y 117 CONFIG_ROOT_NFS=y 118 CONFIG_NLS_CODEPAGE_437=y 119 CONFIG_NLS_CODEPAGE_850=y 120 CONFIG_NLS_ISO8859_1=y 121 - CONFIG_NLS_ISO8859_15=y 122 - CONFIG_NLS_UTF8=y 123 - # CONFIG_ENABLE_WARN_DEPRECATED is not set
··· 11 # CONFIG_IOSCHED_DEADLINE is not set 12 # CONFIG_IOSCHED_CFQ is not set 13 CONFIG_ARCH_AT91=y 14 + CONFIG_ARCH_AT91CAP9=y 15 + CONFIG_MACH_AT91CAP9ADK=y 16 + CONFIG_MTD_AT91_DATAFLASH_CARD=y 17 CONFIG_AT91_PROGRAMMABLE_CLOCKS=y 18 # CONFIG_ARM_THUMB is not set 19 CONFIG_AEABI=y ··· 21 CONFIG_LEDS_CPU=y 22 CONFIG_ZBOOT_ROM_TEXT=0x0 23 CONFIG_ZBOOT_ROM_BSS=0x0 24 + CONFIG_CMDLINE="console=ttyS0,115200 root=/dev/ram0 rw" 25 CONFIG_FPE_NWFPE=y 26 CONFIG_NET=y 27 CONFIG_PACKET=y 28 CONFIG_UNIX=y 29 CONFIG_INET=y 30 CONFIG_IP_PNP=y 31 CONFIG_IP_PNP_BOOTP=y 32 + CONFIG_IP_PNP_RARP=y 33 # CONFIG_INET_XFRM_MODE_TRANSPORT is not set 34 # CONFIG_INET_XFRM_MODE_TUNNEL is not set 35 # CONFIG_INET_XFRM_MODE_BEET is not set 36 # CONFIG_INET_LRO is not set 37 + # CONFIG_INET_DIAG is not set 38 # CONFIG_IPV6 is not set 39 CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" 40 CONFIG_MTD=y 41 CONFIG_MTD_CMDLINE_PARTS=y 42 CONFIG_MTD_CHAR=y 43 CONFIG_MTD_BLOCK=y 44 + CONFIG_MTD_CFI=y 45 + CONFIG_MTD_JEDECPROBE=y 46 + CONFIG_MTD_CFI_AMDSTD=y 47 + CONFIG_MTD_PHYSMAP=y 48 CONFIG_MTD_DATAFLASH=y 49 CONFIG_MTD_NAND=y 50 CONFIG_MTD_NAND_ATMEL=y 51 CONFIG_BLK_DEV_LOOP=y 52 CONFIG_BLK_DEV_RAM=y 53 CONFIG_BLK_DEV_RAM_SIZE=8192 54 CONFIG_SCSI=y 55 CONFIG_BLK_DEV_SD=y 56 CONFIG_SCSI_MULTI_LUN=y 57 CONFIG_NETDEVICES=y 58 CONFIG_MII=y 59 CONFIG_MACB=y 60 # CONFIG_INPUT_MOUSEDEV_PSAUX is not set 61 CONFIG_INPUT_EVDEV=y 62 + # CONFIG_INPUT_KEYBOARD is not set 63 # CONFIG_INPUT_MOUSE is not set 64 + CONFIG_INPUT_TOUCHSCREEN=y 65 + CONFIG_TOUCHSCREEN_ADS7846=y 66 + # CONFIG_SERIO is not set 67 CONFIG_SERIAL_ATMEL=y 68 CONFIG_SERIAL_ATMEL_CONSOLE=y 69 CONFIG_HW_RANDOM=y 70 + CONFIG_I2C=y 71 + CONFIG_I2C_CHARDEV=y 72 CONFIG_SPI=y 73 CONFIG_SPI_ATMEL=y 74 # CONFIG_HWMON is not set 75 + CONFIG_WATCHDOG=y 76 + CONFIG_WATCHDOG_NOWAYOUT=y 77 + CONFIG_FB=y 78 + CONFIG_FB_ATMEL=y 79 + CONFIG_LOGO=y 80 + # CONFIG_LOGO_LINUX_MONO is not set 81 + # CONFIG_LOGO_LINUX_CLUT224 is not set 82 + # CONFIG_USB_HID is not set 83 CONFIG_USB=y 84 CONFIG_USB_DEVICEFS=y 85 CONFIG_USB_MON=y 86 CONFIG_USB_OHCI_HCD=y 87 CONFIG_USB_STORAGE=y 88 CONFIG_USB_GADGET=y 89 + CONFIG_USB_ETH=m 90 CONFIG_USB_FILE_STORAGE=m 91 CONFIG_MMC=y 92 CONFIG_MMC_AT91=m 93 CONFIG_RTC_CLASS=y 94 CONFIG_RTC_DRV_AT91SAM9=y 95 CONFIG_EXT2_FS=y 96 CONFIG_VFAT_FS=y 97 CONFIG_TMPFS=y 98 CONFIG_JFFS2_FS=y 99 CONFIG_CRAMFS=y 100 CONFIG_NFS_FS=y 101 CONFIG_ROOT_NFS=y 102 CONFIG_NLS_CODEPAGE_437=y 103 CONFIG_NLS_CODEPAGE_850=y 104 CONFIG_NLS_ISO8859_1=y 105 + CONFIG_DEBUG_FS=y 106 + CONFIG_DEBUG_KERNEL=y 107 + CONFIG_DEBUG_INFO=y 108 + CONFIG_DEBUG_USER=y
+2 -5
arch/arm/configs/at91sam9g45_defconfig
··· 18 CONFIG_ARCH_AT91=y 19 CONFIG_ARCH_AT91SAM9G45=y 20 CONFIG_MACH_AT91SAM9M10G45EK=y 21 CONFIG_AT91_PROGRAMMABLE_CLOCKS=y 22 CONFIG_AT91_SLOW_CLOCK=y 23 CONFIG_AEABI=y ··· 74 # CONFIG_SCSI_LOWLEVEL is not set 75 CONFIG_NETDEVICES=y 76 CONFIG_MII=y 77 - CONFIG_DAVICOM_PHY=y 78 - CONFIG_NET_ETHERNET=y 79 CONFIG_MACB=y 80 - # CONFIG_NETDEV_1000 is not set 81 - # CONFIG_NETDEV_10000 is not set 82 CONFIG_LIBERTAS_THINFIRM=m 83 CONFIG_LIBERTAS_THINFIRM_USB=m 84 CONFIG_AT76C50X_USB=m ··· 129 CONFIG_SPI=y 130 CONFIG_SPI_ATMEL=y 131 # CONFIG_HWMON is not set 132 - # CONFIG_MFD_SUPPORT is not set 133 CONFIG_FB=y 134 CONFIG_FB_ATMEL=y 135 CONFIG_FB_UDL=m
··· 18 CONFIG_ARCH_AT91=y 19 CONFIG_ARCH_AT91SAM9G45=y 20 CONFIG_MACH_AT91SAM9M10G45EK=y 21 + CONFIG_MACH_AT91SAM_DT=y 22 CONFIG_AT91_PROGRAMMABLE_CLOCKS=y 23 CONFIG_AT91_SLOW_CLOCK=y 24 CONFIG_AEABI=y ··· 73 # CONFIG_SCSI_LOWLEVEL is not set 74 CONFIG_NETDEVICES=y 75 CONFIG_MII=y 76 CONFIG_MACB=y 77 + CONFIG_DAVICOM_PHY=y 78 CONFIG_LIBERTAS_THINFIRM=m 79 CONFIG_LIBERTAS_THINFIRM_USB=m 80 CONFIG_AT76C50X_USB=m ··· 131 CONFIG_SPI=y 132 CONFIG_SPI_ATMEL=y 133 # CONFIG_HWMON is not set 134 CONFIG_FB=y 135 CONFIG_FB_ATMEL=y 136 CONFIG_FB_UDL=m
+40 -33
arch/arm/configs/at91sam9rlek_defconfig arch/arm/configs/at91sam9260_defconfig
··· 11 # CONFIG_IOSCHED_DEADLINE is not set 12 # CONFIG_IOSCHED_CFQ is not set 13 CONFIG_ARCH_AT91=y 14 - CONFIG_ARCH_AT91SAM9RL=y 15 - CONFIG_MACH_AT91SAM9RLEK=y 16 CONFIG_AT91_PROGRAMMABLE_CLOCKS=y 17 # CONFIG_ARM_THUMB is not set 18 CONFIG_ZBOOT_ROM_TEXT=0x0 19 CONFIG_ZBOOT_ROM_BSS=0x0 20 - CONFIG_CMDLINE="mem=64M console=ttyS0,115200 initrd=0x21100000,17105363 root=/dev/ram0 rw" 21 CONFIG_FPE_NWFPE=y 22 CONFIG_NET=y 23 CONFIG_UNIX=y 24 CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" 25 - CONFIG_MTD=y 26 - CONFIG_MTD_CONCAT=y 27 - CONFIG_MTD_PARTITIONS=y 28 - CONFIG_MTD_CMDLINE_PARTS=y 29 - CONFIG_MTD_CHAR=y 30 - CONFIG_MTD_BLOCK=y 31 - CONFIG_MTD_DATAFLASH=y 32 - CONFIG_MTD_NAND=y 33 - CONFIG_MTD_NAND_ATMEL=y 34 - CONFIG_BLK_DEV_LOOP=y 35 CONFIG_BLK_DEV_RAM=y 36 - CONFIG_BLK_DEV_RAM_COUNT=4 37 - CONFIG_BLK_DEV_RAM_SIZE=24576 38 - CONFIG_ATMEL_SSC=y 39 CONFIG_SCSI=y 40 CONFIG_BLK_DEV_SD=y 41 CONFIG_SCSI_MULTI_LUN=y 42 # CONFIG_INPUT_MOUSEDEV_PSAUX is not set 43 - CONFIG_INPUT_MOUSEDEV_SCREEN_X=320 44 - CONFIG_INPUT_MOUSEDEV_SCREEN_Y=240 45 - CONFIG_INPUT_EVDEV=y 46 # CONFIG_INPUT_KEYBOARD is not set 47 # CONFIG_INPUT_MOUSE is not set 48 - CONFIG_INPUT_TOUCHSCREEN=y 49 - CONFIG_TOUCHSCREEN_ATMEL_TSADCC=y 50 # CONFIG_SERIO is not set 51 CONFIG_SERIAL_ATMEL=y 52 CONFIG_SERIAL_ATMEL_CONSOLE=y ··· 61 CONFIG_I2C=y 62 CONFIG_I2C_CHARDEV=y 63 CONFIG_I2C_GPIO=y 64 - CONFIG_SPI=y 65 - CONFIG_SPI_ATMEL=y 66 # CONFIG_HWMON is not set 67 CONFIG_WATCHDOG=y 68 CONFIG_WATCHDOG_NOWAYOUT=y 69 CONFIG_AT91SAM9X_WATCHDOG=y 70 - CONFIG_FB=y 71 - CONFIG_FB_ATMEL=y 72 - # CONFIG_VGA_CONSOLE is not set 73 - CONFIG_MMC=y 74 - CONFIG_MMC_AT91=m 75 CONFIG_RTC_CLASS=y 76 CONFIG_RTC_DRV_AT91SAM9=y 77 CONFIG_EXT2_FS=y 78 - CONFIG_INOTIFY=y 79 - CONFIG_MSDOS_FS=y 80 CONFIG_VFAT_FS=y 81 CONFIG_TMPFS=y 82 CONFIG_CRAMFS=y 83 CONFIG_NLS_CODEPAGE_437=y 84 CONFIG_NLS_CODEPAGE_850=y 85 CONFIG_NLS_ISO8859_1=y 86 - CONFIG_NLS_ISO8859_15=y 87 - CONFIG_NLS_UTF8=y 88 CONFIG_DEBUG_KERNEL=y 89 - CONFIG_DEBUG_INFO=y 90 CONFIG_DEBUG_USER=y 91 CONFIG_DEBUG_LL=y
··· 11 # CONFIG_IOSCHED_DEADLINE is not set 12 # CONFIG_IOSCHED_CFQ is not set 13 CONFIG_ARCH_AT91=y 14 + CONFIG_ARCH_AT91SAM9260=y 15 + CONFIG_ARCH_AT91SAM9260_SAM9XE=y 16 + CONFIG_MACH_AT91SAM9260EK=y 17 + CONFIG_MACH_CAM60=y 18 + CONFIG_MACH_SAM9_L9260=y 19 + CONFIG_MACH_AFEB9260=y 20 + CONFIG_MACH_USB_A9260=y 21 + CONFIG_MACH_QIL_A9260=y 22 + CONFIG_MACH_CPU9260=y 23 + CONFIG_MACH_FLEXIBITY=y 24 + CONFIG_MACH_SNAPPER_9260=y 25 + CONFIG_MACH_AT91SAM_DT=y 26 CONFIG_AT91_PROGRAMMABLE_CLOCKS=y 27 # CONFIG_ARM_THUMB is not set 28 CONFIG_ZBOOT_ROM_TEXT=0x0 29 CONFIG_ZBOOT_ROM_BSS=0x0 30 + CONFIG_ARM_APPENDED_DTB=y 31 + CONFIG_ARM_ATAG_DTB_COMPAT=y 32 + CONFIG_CMDLINE="mem=64M console=ttyS0,115200 initrd=0x21100000,3145728 root=/dev/ram0 rw" 33 CONFIG_FPE_NWFPE=y 34 CONFIG_NET=y 35 + CONFIG_PACKET=y 36 CONFIG_UNIX=y 37 + CONFIG_INET=y 38 + CONFIG_IP_PNP=y 39 + CONFIG_IP_PNP_BOOTP=y 40 + # CONFIG_INET_XFRM_MODE_TRANSPORT is not set 41 + # CONFIG_INET_XFRM_MODE_TUNNEL is not set 42 + # CONFIG_INET_XFRM_MODE_BEET is not set 43 + # CONFIG_INET_LRO is not set 44 + # CONFIG_IPV6 is not set 45 CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" 46 CONFIG_BLK_DEV_RAM=y 47 + CONFIG_BLK_DEV_RAM_SIZE=8192 48 CONFIG_SCSI=y 49 CONFIG_BLK_DEV_SD=y 50 CONFIG_SCSI_MULTI_LUN=y 51 + CONFIG_NETDEVICES=y 52 + CONFIG_MII=y 53 + CONFIG_MACB=y 54 # CONFIG_INPUT_MOUSEDEV_PSAUX is not set 55 # CONFIG_INPUT_KEYBOARD is not set 56 # CONFIG_INPUT_MOUSE is not set 57 # CONFIG_SERIO is not set 58 CONFIG_SERIAL_ATMEL=y 59 CONFIG_SERIAL_ATMEL_CONSOLE=y ··· 54 CONFIG_I2C=y 55 CONFIG_I2C_CHARDEV=y 56 CONFIG_I2C_GPIO=y 57 # CONFIG_HWMON is not set 58 CONFIG_WATCHDOG=y 59 CONFIG_WATCHDOG_NOWAYOUT=y 60 CONFIG_AT91SAM9X_WATCHDOG=y 61 + # CONFIG_USB_HID is not set 62 + CONFIG_USB=y 63 + CONFIG_USB_DEVICEFS=y 64 + CONFIG_USB_MON=y 65 + CONFIG_USB_OHCI_HCD=y 66 + CONFIG_USB_STORAGE=y 67 + CONFIG_USB_STORAGE_DEBUG=y 68 + CONFIG_USB_GADGET=y 69 + CONFIG_USB_ZERO=m 70 + CONFIG_USB_GADGETFS=m 71 + CONFIG_USB_FILE_STORAGE=m 72 + CONFIG_USB_G_SERIAL=m 73 CONFIG_RTC_CLASS=y 74 CONFIG_RTC_DRV_AT91SAM9=y 75 CONFIG_EXT2_FS=y 76 CONFIG_VFAT_FS=y 77 CONFIG_TMPFS=y 78 CONFIG_CRAMFS=y 79 CONFIG_NLS_CODEPAGE_437=y 80 CONFIG_NLS_CODEPAGE_850=y 81 CONFIG_NLS_ISO8859_1=y 82 CONFIG_DEBUG_KERNEL=y 83 CONFIG_DEBUG_USER=y 84 CONFIG_DEBUG_LL=y
+1 -1
arch/arm/configs/ezx_defconfig
··· 287 # CONFIG_USB_DEVICE_CLASS is not set 288 CONFIG_USB_OHCI_HCD=y 289 CONFIG_USB_GADGET=y 290 - CONFIG_USB_GADGET_PXA27X=y 291 CONFIG_USB_ETH=m 292 # CONFIG_USB_ETH_RNDIS is not set 293 CONFIG_MMC=y
··· 287 # CONFIG_USB_DEVICE_CLASS is not set 288 CONFIG_USB_OHCI_HCD=y 289 CONFIG_USB_GADGET=y 290 + CONFIG_USB_PXA27X=y 291 CONFIG_USB_ETH=m 292 # CONFIG_USB_ETH_RNDIS is not set 293 CONFIG_MMC=y
+1 -1
arch/arm/configs/imote2_defconfig
··· 263 # CONFIG_USB_DEVICE_CLASS is not set 264 CONFIG_USB_OHCI_HCD=y 265 CONFIG_USB_GADGET=y 266 - CONFIG_USB_GADGET_PXA27X=y 267 CONFIG_USB_ETH=m 268 # CONFIG_USB_ETH_RNDIS is not set 269 CONFIG_MMC=y
··· 263 # CONFIG_USB_DEVICE_CLASS is not set 264 CONFIG_USB_OHCI_HCD=y 265 CONFIG_USB_GADGET=y 266 + CONFIG_USB_PXA27X=y 267 CONFIG_USB_ETH=m 268 # CONFIG_USB_ETH_RNDIS is not set 269 CONFIG_MMC=y
+1 -1
arch/arm/configs/magician_defconfig
··· 132 CONFIG_USB_OHCI_HCD=y 133 CONFIG_USB_GADGET=y 134 CONFIG_USB_GADGET_VBUS_DRAW=500 135 - CONFIG_USB_GADGET_PXA27X=y 136 CONFIG_USB_ETH=m 137 # CONFIG_USB_ETH_RNDIS is not set 138 CONFIG_USB_GADGETFS=m
··· 132 CONFIG_USB_OHCI_HCD=y 133 CONFIG_USB_GADGET=y 134 CONFIG_USB_GADGET_VBUS_DRAW=500 135 + CONFIG_USB_PXA27X=y 136 CONFIG_USB_ETH=m 137 # CONFIG_USB_ETH_RNDIS is not set 138 CONFIG_USB_GADGETFS=m
-1
arch/arm/configs/omap1_defconfig
··· 48 CONFIG_MACH_NOKIA770=y 49 CONFIG_MACH_AMS_DELTA=y 50 CONFIG_MACH_OMAP_GENERIC=y 51 - CONFIG_OMAP_CLOCKS_SET_BY_BOOTLOADER=y 52 CONFIG_OMAP_ARM_216MHZ=y 53 CONFIG_OMAP_ARM_195MHZ=y 54 CONFIG_OMAP_ARM_192MHZ=y
··· 48 CONFIG_MACH_NOKIA770=y 49 CONFIG_MACH_AMS_DELTA=y 50 CONFIG_MACH_OMAP_GENERIC=y 51 CONFIG_OMAP_ARM_216MHZ=y 52 CONFIG_OMAP_ARM_195MHZ=y 53 CONFIG_OMAP_ARM_192MHZ=y
+6 -7
arch/arm/configs/u300_defconfig
··· 14 CONFIG_ARCH_U300=y 15 CONFIG_MACH_U300=y 16 CONFIG_MACH_U300_BS335=y 17 - CONFIG_MACH_U300_DUAL_RAM=y 18 - CONFIG_U300_DEBUG=y 19 CONFIG_MACH_U300_SPIDUMMY=y 20 CONFIG_NO_HZ=y 21 CONFIG_HIGH_RES_TIMERS=y ··· 24 CONFIG_CMDLINE="root=/dev/ram0 rw rootfstype=rootfs console=ttyAMA0,115200n8 lpj=515072" 25 CONFIG_CPU_IDLE=y 26 CONFIG_FPE_NWFPE=y 27 - CONFIG_PM=y 28 # CONFIG_SUSPEND is not set 29 CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" 30 # CONFIG_PREVENT_FIRMWARE_BUILD is not set 31 - # CONFIG_MISC_DEVICES is not set 32 # CONFIG_INPUT_MOUSEDEV is not set 33 CONFIG_INPUT_EVDEV=y 34 # CONFIG_KEYBOARD_ATKBD is not set 35 # CONFIG_INPUT_MOUSE is not set 36 # CONFIG_SERIO is not set 37 CONFIG_SERIAL_AMBA_PL011=y 38 CONFIG_SERIAL_AMBA_PL011_CONSOLE=y 39 - CONFIG_LEGACY_PTY_COUNT=16 40 # CONFIG_HW_RANDOM is not set 41 CONFIG_I2C=y 42 # CONFIG_HWMON is not set ··· 51 # CONFIG_HID_SUPPORT is not set 52 # CONFIG_USB_SUPPORT is not set 53 CONFIG_MMC=y 54 CONFIG_MMC_ARMMMCI=y 55 CONFIG_RTC_CLASS=y 56 # CONFIG_RTC_HCTOSYS is not set ··· 66 CONFIG_NLS_ISO8859_1=y 67 CONFIG_PRINTK_TIME=y 68 CONFIG_DEBUG_FS=y 69 - CONFIG_DEBUG_KERNEL=y 70 # CONFIG_SCHED_DEBUG is not set 71 CONFIG_TIMER_STATS=y 72 # CONFIG_DEBUG_PREEMPT is not set 73 CONFIG_DEBUG_INFO=y 74 - # CONFIG_RCU_CPU_STALL_DETECTOR is not set 75 # CONFIG_CRC32 is not set
··· 14 CONFIG_ARCH_U300=y 15 CONFIG_MACH_U300=y 16 CONFIG_MACH_U300_BS335=y 17 CONFIG_MACH_U300_SPIDUMMY=y 18 CONFIG_NO_HZ=y 19 CONFIG_HIGH_RES_TIMERS=y ··· 26 CONFIG_CMDLINE="root=/dev/ram0 rw rootfstype=rootfs console=ttyAMA0,115200n8 lpj=515072" 27 CONFIG_CPU_IDLE=y 28 CONFIG_FPE_NWFPE=y 29 # CONFIG_SUSPEND is not set 30 CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" 31 # CONFIG_PREVENT_FIRMWARE_BUILD is not set 32 + CONFIG_MTD=y 33 + CONFIG_MTD_CMDLINE_PARTS=y 34 + CONFIG_MTD_NAND=y 35 + CONFIG_MTD_NAND_FSMC=y 36 # CONFIG_INPUT_MOUSEDEV is not set 37 CONFIG_INPUT_EVDEV=y 38 # CONFIG_KEYBOARD_ATKBD is not set 39 # CONFIG_INPUT_MOUSE is not set 40 # CONFIG_SERIO is not set 41 + CONFIG_LEGACY_PTY_COUNT=16 42 CONFIG_SERIAL_AMBA_PL011=y 43 CONFIG_SERIAL_AMBA_PL011_CONSOLE=y 44 # CONFIG_HW_RANDOM is not set 45 CONFIG_I2C=y 46 # CONFIG_HWMON is not set ··· 51 # CONFIG_HID_SUPPORT is not set 52 # CONFIG_USB_SUPPORT is not set 53 CONFIG_MMC=y 54 + CONFIG_MMC_CLKGATE=y 55 CONFIG_MMC_ARMMMCI=y 56 CONFIG_RTC_CLASS=y 57 # CONFIG_RTC_HCTOSYS is not set ··· 65 CONFIG_NLS_ISO8859_1=y 66 CONFIG_PRINTK_TIME=y 67 CONFIG_DEBUG_FS=y 68 # CONFIG_SCHED_DEBUG is not set 69 CONFIG_TIMER_STATS=y 70 # CONFIG_DEBUG_PREEMPT is not set 71 CONFIG_DEBUG_INFO=y 72 # CONFIG_CRC32 is not set
+5 -9
arch/arm/configs/u8500_defconfig
··· 10 CONFIG_ARCH_U8500=y 11 CONFIG_UX500_SOC_DB5500=y 12 CONFIG_UX500_SOC_DB8500=y 13 - CONFIG_MACH_U8500=y 14 CONFIG_MACH_SNOWBALL=y 15 CONFIG_MACH_U5500=y 16 CONFIG_NO_HZ=y ··· 24 CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y 25 CONFIG_VFP=y 26 CONFIG_NEON=y 27 CONFIG_NET=y 28 CONFIG_PACKET=y 29 CONFIG_UNIX=y ··· 42 CONFIG_AB8500_PWM=y 43 CONFIG_SENSORS_BH1780=y 44 CONFIG_NETDEVICES=y 45 - CONFIG_SMSC_PHY=y 46 - CONFIG_NET_ETHERNET=y 47 CONFIG_SMSC911X=y 48 - # CONFIG_NETDEV_1000 is not set 49 - # CONFIG_NETDEV_10000 is not set 50 # CONFIG_WLAN is not set 51 # CONFIG_INPUT_MOUSEDEV_PSAUX is not set 52 CONFIG_INPUT_EVDEV=y ··· 70 CONFIG_SPI_PL022=y 71 CONFIG_GPIO_STMPE=y 72 CONFIG_GPIO_TC3589X=y 73 - # CONFIG_HWMON is not set 74 CONFIG_MFD_STMPE=y 75 CONFIG_MFD_TC3589X=y 76 CONFIG_AB8500_CORE=y 77 CONFIG_REGULATOR_AB8500=y 78 # CONFIG_HID_SUPPORT is not set 79 - CONFIG_USB_MUSB_HDRC=y 80 - CONFIG_USB_GADGET_MUSB_HDRC=y 81 - CONFIG_MUSB_PIO_ONLY=y 82 CONFIG_USB_GADGET=y 83 CONFIG_AB8500_USB=y 84 CONFIG_MMC=y ··· 92 CONFIG_STE_DMA40=y 93 CONFIG_STAGING=y 94 CONFIG_TOUCHSCREEN_SYNAPTICS_I2C_RMI4=y 95 CONFIG_EXT2_FS=y 96 CONFIG_EXT2_FS_XATTR=y 97 CONFIG_EXT2_FS_POSIX_ACL=y
··· 10 CONFIG_ARCH_U8500=y 11 CONFIG_UX500_SOC_DB5500=y 12 CONFIG_UX500_SOC_DB8500=y 13 + CONFIG_MACH_HREFV60=y 14 CONFIG_MACH_SNOWBALL=y 15 CONFIG_MACH_U5500=y 16 CONFIG_NO_HZ=y ··· 24 CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y 25 CONFIG_VFP=y 26 CONFIG_NEON=y 27 + CONFIG_PM_RUNTIME=y 28 CONFIG_NET=y 29 CONFIG_PACKET=y 30 CONFIG_UNIX=y ··· 41 CONFIG_AB8500_PWM=y 42 CONFIG_SENSORS_BH1780=y 43 CONFIG_NETDEVICES=y 44 CONFIG_SMSC911X=y 45 + CONFIG_SMSC_PHY=y 46 # CONFIG_WLAN is not set 47 # CONFIG_INPUT_MOUSEDEV_PSAUX is not set 48 CONFIG_INPUT_EVDEV=y ··· 72 CONFIG_SPI_PL022=y 73 CONFIG_GPIO_STMPE=y 74 CONFIG_GPIO_TC3589X=y 75 CONFIG_MFD_STMPE=y 76 CONFIG_MFD_TC3589X=y 77 + CONFIG_AB5500_CORE=y 78 CONFIG_AB8500_CORE=y 79 CONFIG_REGULATOR_AB8500=y 80 # CONFIG_HID_SUPPORT is not set 81 CONFIG_USB_GADGET=y 82 CONFIG_AB8500_USB=y 83 CONFIG_MMC=y ··· 97 CONFIG_STE_DMA40=y 98 CONFIG_STAGING=y 99 CONFIG_TOUCHSCREEN_SYNAPTICS_I2C_RMI4=y 100 + CONFIG_HSEM_U8500=y 101 CONFIG_EXT2_FS=y 102 CONFIG_EXT2_FS_XATTR=y 103 CONFIG_EXT2_FS_POSIX_ACL=y
+1 -1
arch/arm/configs/zeus_defconfig
··· 140 CONFIG_USB_SERIAL_GENERIC=y 141 CONFIG_USB_SERIAL_MCT_U232=m 142 CONFIG_USB_GADGET=m 143 - CONFIG_USB_GADGET_PXA27X=y 144 CONFIG_USB_ETH=m 145 CONFIG_USB_GADGETFS=m 146 CONFIG_USB_FILE_STORAGE=m
··· 140 CONFIG_USB_SERIAL_GENERIC=y 141 CONFIG_USB_SERIAL_MCT_U232=m 142 CONFIG_USB_GADGET=m 143 + CONFIG_USB_PXA27X=y 144 CONFIG_USB_ETH=m 145 CONFIG_USB_GADGETFS=m 146 CONFIG_USB_FILE_STORAGE=m
+2
arch/arm/mach-exynos/cpuidle.c
··· 12 #include <linux/init.h> 13 #include <linux/cpuidle.h> 14 #include <linux/io.h> 15 16 #include <asm/proc-fns.h> 17
··· 12 #include <linux/init.h> 13 #include <linux/cpuidle.h> 14 #include <linux/io.h> 15 + #include <linux/export.h> 16 + #include <linux/time.h> 17 18 #include <asm/proc-fns.h> 19
+4
arch/arm/mach-highbank/highbank.c
··· 22 #include <linux/of_irq.h> 23 #include <linux/of_platform.h> 24 #include <linux/of_address.h> 25 26 #include <asm/cacheflush.h> 27 #include <asm/unified.h> ··· 73 74 void highbank_set_cpu_jump(int cpu, void *jump_addr) 75 { 76 writel(BSYM(virt_to_phys(jump_addr)), HB_JUMP_TABLE_VIRT(cpu)); 77 __cpuc_flush_dcache_area(HB_JUMP_TABLE_VIRT(cpu), 16); 78 outer_clean_range(HB_JUMP_TABLE_PHYS(cpu),
··· 22 #include <linux/of_irq.h> 23 #include <linux/of_platform.h> 24 #include <linux/of_address.h> 25 + #include <linux/smp.h> 26 27 #include <asm/cacheflush.h> 28 #include <asm/unified.h> ··· 72 73 void highbank_set_cpu_jump(int cpu, void *jump_addr) 74 { 75 + #ifdef CONFIG_SMP 76 + cpu = cpu_logical_map(cpu); 77 + #endif 78 writel(BSYM(virt_to_phys(jump_addr)), HB_JUMP_TABLE_VIRT(cpu)); 79 __cpuc_flush_dcache_area(HB_JUMP_TABLE_VIRT(cpu), 16); 80 outer_clean_range(HB_JUMP_TABLE_PHYS(cpu),
-13
arch/arm/mach-imx/Kconfig
··· 10 config HAVE_IMX_SRC 11 bool 12 13 - # 14 - # ARCH_MX31 and ARCH_MX35 are left for compatibility 15 - # Some usages assume that having one of them implies not having (e.g.) ARCH_MX2. 16 - # To easily distinguish good and reviewed from unreviewed usages new (and IMHO 17 - # more sensible) names are used: SOC_IMX31 and SOC_IMX35 18 config ARCH_MX1 19 bool 20 ··· 20 bool 21 22 config MACH_MX27 23 - bool 24 - 25 - config ARCH_MX31 26 - bool 27 - 28 - config ARCH_MX35 29 bool 30 31 config SOC_IMX1 ··· 61 select CPU_V6 62 select IMX_HAVE_PLATFORM_MXC_RNGA 63 select ARCH_MXC_AUDMUX_V2 64 - select ARCH_MX31 65 select MXC_AVIC 66 select SMP_ON_UP if SMP 67 ··· 70 select ARCH_MXC_IOMUX_V3 71 select ARCH_MXC_AUDMUX_V2 72 select HAVE_EPIT 73 - select ARCH_MX35 74 select MXC_AVIC 75 select SMP_ON_UP if SMP 76
··· 10 config HAVE_IMX_SRC 11 bool 12 13 config ARCH_MX1 14 bool 15 ··· 25 bool 26 27 config MACH_MX27 28 bool 29 30 config SOC_IMX1 ··· 72 select CPU_V6 73 select IMX_HAVE_PLATFORM_MXC_RNGA 74 select ARCH_MXC_AUDMUX_V2 75 select MXC_AVIC 76 select SMP_ON_UP if SMP 77 ··· 82 select ARCH_MXC_IOMUX_V3 83 select ARCH_MXC_AUDMUX_V2 84 select HAVE_EPIT 85 select MXC_AVIC 86 select SMP_ON_UP if SMP 87
+5 -2
arch/arm/mach-imx/clock-imx6q.c
··· 1953 imx_map_entry(MX6Q, ANATOP, MT_DEVICE), 1954 }; 1955 1956 int __init mx6q_clocks_init(void) 1957 { 1958 struct device_node *np; 1959 void __iomem *base; 1960 int i, irq; 1961 - 1962 - iotable_init(imx6q_clock_desc, ARRAY_SIZE(imx6q_clock_desc)); 1963 1964 /* retrieve the freqency of fixed clocks from device tree */ 1965 for_each_compatible_node(np, NULL, "fixed-clock") {
··· 1953 imx_map_entry(MX6Q, ANATOP, MT_DEVICE), 1954 }; 1955 1956 + void __init imx6q_clock_map_io(void) 1957 + { 1958 + iotable_init(imx6q_clock_desc, ARRAY_SIZE(imx6q_clock_desc)); 1959 + } 1960 + 1961 int __init mx6q_clocks_init(void) 1962 { 1963 struct device_node *np; 1964 void __iomem *base; 1965 int i, irq; 1966 1967 /* retrieve the freqency of fixed clocks from device tree */ 1968 for_each_compatible_node(np, NULL, "fixed-clock") {
+1
arch/arm/mach-imx/mach-imx6q.c
··· 34 { 35 imx_lluart_map_io(); 36 imx_scu_map_io(); 37 } 38 39 static void __init imx6q_gpio_add_irq_domain(struct device_node *np,
··· 34 { 35 imx_lluart_map_io(); 36 imx_scu_map_io(); 37 + imx6q_clock_map_io(); 38 } 39 40 static void __init imx6q_gpio_add_irq_domain(struct device_node *np,
+58 -51
arch/arm/mach-imx/mm-imx3.c
··· 33 static void imx3_idle(void) 34 { 35 unsigned long reg = 0; 36 - __asm__ __volatile__( 37 - /* disable I and D cache */ 38 - "mrc p15, 0, %0, c1, c0, 0\n" 39 - "bic %0, %0, #0x00001000\n" 40 - "bic %0, %0, #0x00000004\n" 41 - "mcr p15, 0, %0, c1, c0, 0\n" 42 - /* invalidate I cache */ 43 - "mov %0, #0\n" 44 - "mcr p15, 0, %0, c7, c5, 0\n" 45 - /* clear and invalidate D cache */ 46 - "mov %0, #0\n" 47 - "mcr p15, 0, %0, c7, c14, 0\n" 48 - /* WFI */ 49 - "mov %0, #0\n" 50 - "mcr p15, 0, %0, c7, c0, 4\n" 51 - "nop\n" "nop\n" "nop\n" "nop\n" 52 - "nop\n" "nop\n" "nop\n" 53 - /* enable I and D cache */ 54 - "mrc p15, 0, %0, c1, c0, 0\n" 55 - "orr %0, %0, #0x00001000\n" 56 - "orr %0, %0, #0x00000004\n" 57 - "mcr p15, 0, %0, c1, c0, 0\n" 58 - : "=r" (reg)); 59 } 60 61 static void __iomem *imx3_ioremap(unsigned long phys_addr, size_t size, ··· 111 l2x0_init(l2x0_base, 0x00030024, 0x00000000); 112 } 113 114 static struct map_desc mx31_io_desc[] __initdata = { 115 imx_map_entry(MX31, X_MEMC, MT_DEVICE), 116 imx_map_entry(MX31, AVIC, MT_DEVICE_NONSHARED), ··· 130 iotable_init(mx31_io_desc, ARRAY_SIZE(mx31_io_desc)); 131 } 132 133 - static struct map_desc mx35_io_desc[] __initdata = { 134 - imx_map_entry(MX35, X_MEMC, MT_DEVICE), 135 - imx_map_entry(MX35, AVIC, MT_DEVICE_NONSHARED), 136 - imx_map_entry(MX35, AIPS1, MT_DEVICE_NONSHARED), 137 - imx_map_entry(MX35, AIPS2, MT_DEVICE_NONSHARED), 138 - imx_map_entry(MX35, SPBA0, MT_DEVICE_NONSHARED), 139 - }; 140 - 141 - void __init mx35_map_io(void) 142 - { 143 - iotable_init(mx35_io_desc, ARRAY_SIZE(mx35_io_desc)); 144 - } 145 - 146 void __init imx31_init_early(void) 147 { 148 mxc_set_cpu_type(MXC_CPU_MX31); 149 mxc_arch_reset_init(MX31_IO_ADDRESS(MX31_WDOG_BASE_ADDR)); 150 - imx_idle = imx3_idle; 151 - imx_ioremap = imx3_ioremap; 152 - } 153 - 154 - void __init imx35_init_early(void) 155 - { 156 - mxc_set_cpu_type(MXC_CPU_MX35); 157 - mxc_iomux_v3_init(MX35_IO_ADDRESS(MX35_IOMUXC_BASE_ADDR)); 158 - mxc_arch_reset_init(MX35_IO_ADDRESS(MX35_WDOG_BASE_ADDR)); 159 - imx_idle = imx3_idle; 160 imx_ioremap = imx3_ioremap; 161 } 162 163 void __init mx31_init_irq(void) 164 { 165 mxc_init_irq(MX31_IO_ADDRESS(MX31_AVIC_BASE_ADDR)); 166 - } 167 - 168 - void __init mx35_init_irq(void) 169 - { 170 - mxc_init_irq(MX35_IO_ADDRESS(MX35_AVIC_BASE_ADDR)); 171 } 172 173 static struct sdma_script_start_addrs imx31_to1_sdma_script __initdata = { ··· 175 } 176 177 imx_add_imx_sdma("imx31-sdma", MX31_SDMA_BASE_ADDR, MX31_INT_SDMA, &imx31_sdma_pdata); 178 } 179 180 static struct sdma_script_start_addrs imx35_to1_sdma_script __initdata = { ··· 260 261 imx_add_imx_sdma("imx35-sdma", MX35_SDMA_BASE_ADDR, MX35_INT_SDMA, &imx35_sdma_pdata); 262 }
··· 33 static void imx3_idle(void) 34 { 35 unsigned long reg = 0; 36 + 37 + if (!need_resched()) 38 + __asm__ __volatile__( 39 + /* disable I and D cache */ 40 + "mrc p15, 0, %0, c1, c0, 0\n" 41 + "bic %0, %0, #0x00001000\n" 42 + "bic %0, %0, #0x00000004\n" 43 + "mcr p15, 0, %0, c1, c0, 0\n" 44 + /* invalidate I cache */ 45 + "mov %0, #0\n" 46 + "mcr p15, 0, %0, c7, c5, 0\n" 47 + /* clear and invalidate D cache */ 48 + "mov %0, #0\n" 49 + "mcr p15, 0, %0, c7, c14, 0\n" 50 + /* WFI */ 51 + "mov %0, #0\n" 52 + "mcr p15, 0, %0, c7, c0, 4\n" 53 + "nop\n" "nop\n" "nop\n" "nop\n" 54 + "nop\n" "nop\n" "nop\n" 55 + /* enable I and D cache */ 56 + "mrc p15, 0, %0, c1, c0, 0\n" 57 + "orr %0, %0, #0x00001000\n" 58 + "orr %0, %0, #0x00000004\n" 59 + "mcr p15, 0, %0, c1, c0, 0\n" 60 + : "=r" (reg)); 61 + local_irq_enable(); 62 } 63 64 static void __iomem *imx3_ioremap(unsigned long phys_addr, size_t size, ··· 108 l2x0_init(l2x0_base, 0x00030024, 0x00000000); 109 } 110 111 + #ifdef CONFIG_SOC_IMX31 112 static struct map_desc mx31_io_desc[] __initdata = { 113 imx_map_entry(MX31, X_MEMC, MT_DEVICE), 114 imx_map_entry(MX31, AVIC, MT_DEVICE_NONSHARED), ··· 126 iotable_init(mx31_io_desc, ARRAY_SIZE(mx31_io_desc)); 127 } 128 129 void __init imx31_init_early(void) 130 { 131 mxc_set_cpu_type(MXC_CPU_MX31); 132 mxc_arch_reset_init(MX31_IO_ADDRESS(MX31_WDOG_BASE_ADDR)); 133 + pm_idle = imx3_idle; 134 imx_ioremap = imx3_ioremap; 135 } 136 137 void __init mx31_init_irq(void) 138 { 139 mxc_init_irq(MX31_IO_ADDRESS(MX31_AVIC_BASE_ADDR)); 140 } 141 142 static struct sdma_script_start_addrs imx31_to1_sdma_script __initdata = { ··· 198 } 199 200 imx_add_imx_sdma("imx31-sdma", MX31_SDMA_BASE_ADDR, MX31_INT_SDMA, &imx31_sdma_pdata); 201 + } 202 + #endif /* ifdef CONFIG_SOC_IMX31 */ 203 + 204 + #ifdef CONFIG_SOC_IMX35 205 + static struct map_desc mx35_io_desc[] __initdata = { 206 + imx_map_entry(MX35, X_MEMC, MT_DEVICE), 207 + imx_map_entry(MX35, AVIC, MT_DEVICE_NONSHARED), 208 + imx_map_entry(MX35, AIPS1, MT_DEVICE_NONSHARED), 209 + imx_map_entry(MX35, AIPS2, MT_DEVICE_NONSHARED), 210 + imx_map_entry(MX35, SPBA0, MT_DEVICE_NONSHARED), 211 + }; 212 + 213 + void __init mx35_map_io(void) 214 + { 215 + iotable_init(mx35_io_desc, ARRAY_SIZE(mx35_io_desc)); 216 + } 217 + 218 + void __init imx35_init_early(void) 219 + { 220 + mxc_set_cpu_type(MXC_CPU_MX35); 221 + mxc_iomux_v3_init(MX35_IO_ADDRESS(MX35_IOMUXC_BASE_ADDR)); 222 + mxc_arch_reset_init(MX35_IO_ADDRESS(MX35_WDOG_BASE_ADDR)); 223 + pm_idle = imx3_idle; 224 + imx_ioremap = imx3_ioremap; 225 + } 226 + 227 + void __init mx35_init_irq(void) 228 + { 229 + mxc_init_irq(MX35_IO_ADDRESS(MX35_AVIC_BASE_ADDR)); 230 } 231 232 static struct sdma_script_start_addrs imx35_to1_sdma_script __initdata = { ··· 254 255 imx_add_imx_sdma("imx35-sdma", MX35_SDMA_BASE_ADDR, MX35_INT_SDMA, &imx35_sdma_pdata); 256 } 257 + #endif /* ifdef CONFIG_SOC_IMX35 */
+7
arch/arm/mach-imx/src.c
··· 14 #include <linux/io.h> 15 #include <linux/of.h> 16 #include <linux/of_address.h> 17 #include <asm/unified.h> 18 19 #define SRC_SCR 0x000 ··· 24 25 static void __iomem *src_base; 26 27 void imx_enable_cpu(int cpu, bool enable) 28 { 29 u32 mask, val; 30 31 mask = 1 << (BP_SRC_SCR_CORE1_ENABLE + cpu - 1); 32 val = readl_relaxed(src_base + SRC_SCR); 33 val = enable ? val | mask : val & ~mask; ··· 41 42 void imx_set_cpu_jump(int cpu, void *jump_addr) 43 { 44 writel_relaxed(BSYM(virt_to_phys(jump_addr)), 45 src_base + SRC_GPR1 + cpu * 8); 46 }
··· 14 #include <linux/io.h> 15 #include <linux/of.h> 16 #include <linux/of_address.h> 17 + #include <linux/smp.h> 18 #include <asm/unified.h> 19 20 #define SRC_SCR 0x000 ··· 23 24 static void __iomem *src_base; 25 26 + #ifndef CONFIG_SMP 27 + #define cpu_logical_map(cpu) 0 28 + #endif 29 + 30 void imx_enable_cpu(int cpu, bool enable) 31 { 32 u32 mask, val; 33 34 + cpu = cpu_logical_map(cpu); 35 mask = 1 << (BP_SRC_SCR_CORE1_ENABLE + cpu - 1); 36 val = readl_relaxed(src_base + SRC_SCR); 37 val = enable ? val | mask : val & ~mask; ··· 35 36 void imx_set_cpu_jump(int cpu, void *jump_addr) 37 { 38 + cpu = cpu_logical_map(cpu); 39 writel_relaxed(BSYM(virt_to_phys(jump_addr)), 40 src_base + SRC_GPR1 + cpu * 8); 41 }
+1 -1
arch/arm/mach-mmp/gplugd.c
··· 182 183 /* on-chip devices */ 184 pxa168_add_uart(3); 185 - pxa168_add_ssp(0); 186 pxa168_add_twsi(0, NULL, ARRAY_AND_SIZE(gplugd_i2c_board_info)); 187 188 pxa168_add_eth(&gplugd_eth_platform_data);
··· 182 183 /* on-chip devices */ 184 pxa168_add_uart(3); 185 + pxa168_add_ssp(1); 186 pxa168_add_twsi(0, NULL, ARRAY_AND_SIZE(gplugd_i2c_board_info)); 187 188 pxa168_add_eth(&gplugd_eth_platform_data);
+1 -1
arch/arm/mach-mmp/include/mach/gpio-pxa.h
··· 7 #define GPIO_REGS_VIRT (APB_VIRT_BASE + 0x19000) 8 9 #define BANK_OFF(n) (((n) < 3) ? (n) << 2 : 0x100 + (((n) - 3) << 2)) 10 - #define GPIO_REG(x) (GPIO_REGS_VIRT + (x)) 11 12 #define NR_BUILTIN_GPIO IRQ_GPIO_NUM 13
··· 7 #define GPIO_REGS_VIRT (APB_VIRT_BASE + 0x19000) 8 9 #define BANK_OFF(n) (((n) < 3) ? (n) << 2 : 0x100 + (((n) - 3) << 2)) 10 + #define GPIO_REG(x) (*(volatile u32 *)(GPIO_REGS_VIRT + (x))) 11 12 #define NR_BUILTIN_GPIO IRQ_GPIO_NUM 13
+3 -2
arch/arm/mach-mx5/cpu.c
··· 16 #include <linux/init.h> 17 #include <linux/module.h> 18 #include <mach/hardware.h> 19 - #include <asm/io.h> 20 21 static int mx5_cpu_rev = -1; 22 ··· 67 if (!cpu_is_mx51()) 68 return 0; 69 70 - if (mx51_revision() < IMX_CHIP_REVISION_3_0 && (elf_hwcap & HWCAP_NEON)) { 71 elf_hwcap &= ~HWCAP_NEON; 72 pr_info("Turning off NEON support, detected broken NEON implementation\n"); 73 }
··· 16 #include <linux/init.h> 17 #include <linux/module.h> 18 #include <mach/hardware.h> 19 + #include <linux/io.h> 20 21 static int mx5_cpu_rev = -1; 22 ··· 67 if (!cpu_is_mx51()) 68 return 0; 69 70 + if (mx51_revision() < IMX_CHIP_REVISION_3_0 && 71 + (elf_hwcap & HWCAP_NEON)) { 72 elf_hwcap &= ~HWCAP_NEON; 73 pr_info("Turning off NEON support, detected broken NEON implementation\n"); 74 }
+4 -2
arch/arm/mach-mx5/mm.c
··· 23 24 static void imx5_idle(void) 25 { 26 - mx5_cpu_lp_set(WAIT_UNCLOCKED_POWER_OFF); 27 } 28 29 /* ··· 91 mxc_set_cpu_type(MXC_CPU_MX51); 92 mxc_iomux_v3_init(MX51_IO_ADDRESS(MX51_IOMUXC_BASE_ADDR)); 93 mxc_arch_reset_init(MX51_IO_ADDRESS(MX51_WDOG1_BASE_ADDR)); 94 - imx_idle = imx5_idle; 95 } 96 97 void __init imx53_init_early(void)
··· 23 24 static void imx5_idle(void) 25 { 26 + if (!need_resched()) 27 + mx5_cpu_lp_set(WAIT_UNCLOCKED_POWER_OFF); 28 + local_irq_enable(); 29 } 30 31 /* ··· 89 mxc_set_cpu_type(MXC_CPU_MX51); 90 mxc_iomux_v3_init(MX51_IO_ADDRESS(MX51_IOMUXC_BASE_ADDR)); 91 mxc_arch_reset_init(MX51_IO_ADDRESS(MX51_WDOG1_BASE_ADDR)); 92 + pm_idle = imx5_idle; 93 } 94 95 void __init imx53_init_early(void)
+1 -1
arch/arm/mach-mxs/clock-mx28.c
··· 404 reg = __raw_readl(CLKCTRL_BASE_ADDR + HW_CLKCTRL_##dr); \ 405 reg &= ~BM_CLKCTRL_##dr##_DIV; \ 406 reg |= div << BP_CLKCTRL_##dr##_DIV; \ 407 - if (reg | (1 << clk->enable_shift)) { \ 408 pr_err("%s: clock is gated\n", __func__); \ 409 return -EINVAL; \ 410 } \
··· 404 reg = __raw_readl(CLKCTRL_BASE_ADDR + HW_CLKCTRL_##dr); \ 405 reg &= ~BM_CLKCTRL_##dr##_DIV; \ 406 reg |= div << BP_CLKCTRL_##dr##_DIV; \ 407 + if (reg & (1 << clk->enable_shift)) { \ 408 pr_err("%s: clock is gated\n", __func__); \ 409 return -EINVAL; \ 410 } \
-8
arch/arm/mach-omap1/Kconfig
··· 171 comment "OMAP CPU Speed" 172 depends on ARCH_OMAP1 173 174 - config OMAP_CLOCKS_SET_BY_BOOTLOADER 175 - bool "OMAP clocks set by bootloader" 176 - depends on ARCH_OMAP1 177 - help 178 - Enable this option to prevent the kernel from overriding the clock 179 - frequencies programmed by bootloader for MPU, DSP, MMUs, TC, 180 - internal LCD controller and MPU peripherals. 181 - 182 config OMAP_ARM_216MHZ 183 bool "OMAP ARM 216 MHz CPU (1710 only)" 184 depends on ARCH_OMAP1 && ARCH_OMAP16XX
··· 171 comment "OMAP CPU Speed" 172 depends on ARCH_OMAP1 173 174 config OMAP_ARM_216MHZ 175 bool "OMAP ARM 216 MHz CPU (1710 only)" 176 depends on ARCH_OMAP1 && ARCH_OMAP16XX
+7 -3
arch/arm/mach-omap1/board-ams-delta.c
··· 302 omap_cfg_reg(J19_1610_CAM_D6); 303 omap_cfg_reg(J18_1610_CAM_D7); 304 305 - iotable_init(ams_delta_io_desc, ARRAY_SIZE(ams_delta_io_desc)); 306 - 307 omap_board_config = ams_delta_config; 308 omap_board_config_size = ARRAY_SIZE(ams_delta_config); 309 omap_serial_init(); ··· 371 } 372 arch_initcall(ams_delta_modem_init); 373 374 MACHINE_START(AMS_DELTA, "Amstrad E3 (Delta)") 375 /* Maintainer: Jonathan McDowell <noodles@earth.li> */ 376 .atag_offset = 0x100, 377 - .map_io = omap15xx_map_io, 378 .init_early = omap1_init_early, 379 .reserve = omap_reserve, 380 .init_irq = omap1_init_irq,
··· 302 omap_cfg_reg(J19_1610_CAM_D6); 303 omap_cfg_reg(J18_1610_CAM_D7); 304 305 omap_board_config = ams_delta_config; 306 omap_board_config_size = ARRAY_SIZE(ams_delta_config); 307 omap_serial_init(); ··· 373 } 374 arch_initcall(ams_delta_modem_init); 375 376 + static void __init ams_delta_map_io(void) 377 + { 378 + omap15xx_map_io(); 379 + iotable_init(ams_delta_io_desc, ARRAY_SIZE(ams_delta_io_desc)); 380 + } 381 + 382 MACHINE_START(AMS_DELTA, "Amstrad E3 (Delta)") 383 /* Maintainer: Jonathan McDowell <noodles@earth.li> */ 384 .atag_offset = 0x100, 385 + .map_io = ams_delta_map_io, 386 .init_early = omap1_init_early, 387 .reserve = omap_reserve, 388 .init_irq = omap1_init_irq,
+2 -1
arch/arm/mach-omap1/clock.h
··· 17 18 #include <plat/clock.h> 19 20 - extern int __init omap1_clk_init(void); 21 extern int omap1_clk_enable(struct clk *clk); 22 extern void omap1_clk_disable(struct clk *clk); 23 extern long omap1_clk_round_rate(struct clk *clk, unsigned long rate);
··· 17 18 #include <plat/clock.h> 19 20 + int omap1_clk_init(void); 21 + void omap1_clk_late_init(void); 22 extern int omap1_clk_enable(struct clk *clk); 23 extern void omap1_clk_disable(struct clk *clk); 24 extern long omap1_clk_round_rate(struct clk *clk, unsigned long rate);
+34 -19
arch/arm/mach-omap1/clock_data.c
··· 767 .clk_disable_unused = omap1_clk_disable_unused, 768 }; 769 770 int __init omap1_clk_init(void) 771 { 772 struct omap_clk *c; ··· 844 /* We want to be in syncronous scalable mode */ 845 omap_writew(0x1000, ARM_SYSST); 846 847 - #ifdef CONFIG_OMAP_CLOCKS_SET_BY_BOOTLOADER 848 - /* Use values set by bootloader. Determine PLL rate and recalculate 849 - * dependent clocks as if kernel had changed PLL or divisors. 850 */ 851 { 852 unsigned pll_ctl_val = omap_readw(DPLL_CTL); ··· 874 } 875 } 876 } 877 - #else 878 - /* Find the highest supported frequency and enable it */ 879 - if (omap1_select_table_rate(&virtual_ck_mpu, ~0)) { 880 - printk(KERN_ERR "System frequencies not set. Check your config.\n"); 881 - /* Guess sane values (60MHz) */ 882 - omap_writew(0x2290, DPLL_CTL); 883 - omap_writew(cpu_is_omap7xx() ? 0x3005 : 0x1005, ARM_CKCTL); 884 - ck_dpll1.rate = 60000000; 885 - } 886 - #endif 887 propagate_rate(&ck_dpll1); 888 /* Cache rates for clocks connected to ck_ref (not dpll1) */ 889 propagate_rate(&ck_ref); 890 - printk(KERN_INFO "Clocking rate (xtal/DPLL1/MPU): " 891 - "%ld.%01ld/%ld.%01ld/%ld.%01ld MHz\n", 892 - ck_ref.rate / 1000000, (ck_ref.rate / 100000) % 10, 893 - ck_dpll1.rate / 1000000, (ck_dpll1.rate / 100000) % 10, 894 - arm_ck.rate / 1000000, (arm_ck.rate / 100000) % 10); 895 - 896 if (machine_is_omap_perseus2() || machine_is_omap_fsample()) { 897 /* Select slicer output as OMAP input clock */ 898 omap_writew(omap_readw(OMAP7XX_PCC_UPLD_CTRL) & ~0x1, ··· 921 clk_enable(&arm_gpio_ck); 922 923 return 0; 924 }
··· 767 .clk_disable_unused = omap1_clk_disable_unused, 768 }; 769 770 + static void __init omap1_show_rates(void) 771 + { 772 + pr_notice("Clocking rate (xtal/DPLL1/MPU): " 773 + "%ld.%01ld/%ld.%01ld/%ld.%01ld MHz\n", 774 + ck_ref.rate / 1000000, (ck_ref.rate / 100000) % 10, 775 + ck_dpll1.rate / 1000000, (ck_dpll1.rate / 100000) % 10, 776 + arm_ck.rate / 1000000, (arm_ck.rate / 100000) % 10); 777 + } 778 + 779 int __init omap1_clk_init(void) 780 { 781 struct omap_clk *c; ··· 835 /* We want to be in syncronous scalable mode */ 836 omap_writew(0x1000, ARM_SYSST); 837 838 + 839 + /* 840 + * Initially use the values set by bootloader. Determine PLL rate and 841 + * recalculate dependent clocks as if kernel had changed PLL or 842 + * divisors. See also omap1_clk_late_init() that can reprogram dpll1 843 + * after the SRAM is initialized. 844 */ 845 { 846 unsigned pll_ctl_val = omap_readw(DPLL_CTL); ··· 862 } 863 } 864 } 865 propagate_rate(&ck_dpll1); 866 /* Cache rates for clocks connected to ck_ref (not dpll1) */ 867 propagate_rate(&ck_ref); 868 + omap1_show_rates(); 869 if (machine_is_omap_perseus2() || machine_is_omap_fsample()) { 870 /* Select slicer output as OMAP input clock */ 871 omap_writew(omap_readw(OMAP7XX_PCC_UPLD_CTRL) & ~0x1, ··· 924 clk_enable(&arm_gpio_ck); 925 926 return 0; 927 + } 928 + 929 + #define OMAP1_DPLL1_SANE_VALUE 60000000 930 + 931 + void __init omap1_clk_late_init(void) 932 + { 933 + if (ck_dpll1.rate >= OMAP1_DPLL1_SANE_VALUE) 934 + return; 935 + 936 + /* Find the highest supported frequency and enable it */ 937 + if (omap1_select_table_rate(&virtual_ck_mpu, ~0)) { 938 + pr_err("System frequencies not set, using default. Check your config.\n"); 939 + omap_writew(0x2290, DPLL_CTL); 940 + omap_writew(cpu_is_omap7xx() ? 0x3005 : 0x1005, ARM_CKCTL); 941 + ck_dpll1.rate = OMAP1_DPLL1_SANE_VALUE; 942 + } 943 + propagate_rate(&ck_dpll1); 944 + omap1_show_rates(); 945 }
+3
arch/arm/mach-omap1/devices.c
··· 30 #include <plat/omap7xx.h> 31 #include <plat/mcbsp.h> 32 33 /*-------------------------------------------------------------------------*/ 34 35 #if defined(CONFIG_RTC_DRV_OMAP) || defined(CONFIG_RTC_DRV_OMAP_MODULE) ··· 295 return -ENODEV; 296 297 omap_sram_init(); 298 299 /* please keep these calls, and their implementations above, 300 * in alphabetical order so they're easier to sort through.
··· 30 #include <plat/omap7xx.h> 31 #include <plat/mcbsp.h> 32 33 + #include "clock.h" 34 + 35 /*-------------------------------------------------------------------------*/ 36 37 #if defined(CONFIG_RTC_DRV_OMAP) || defined(CONFIG_RTC_DRV_OMAP_MODULE) ··· 293 return -ENODEV; 294 295 omap_sram_init(); 296 + omap1_clk_late_init(); 297 298 /* please keep these calls, and their implementations above, 299 * in alphabetical order so they're easier to sort through.
+1
arch/arm/mach-omap2/Kconfig
··· 334 config OMAP3_EMU 335 bool "OMAP3 debugging peripherals" 336 depends on ARCH_OMAP3 337 select OC_ETM 338 help 339 Say Y here to enable debugging hardware of omap3
··· 334 config OMAP3_EMU 335 bool "OMAP3 debugging peripherals" 336 depends on ARCH_OMAP3 337 + select ARM_AMBA 338 select OC_ETM 339 help 340 Say Y here to enable debugging hardware of omap3
+1 -4
arch/arm/mach-omap2/Makefile
··· 4 5 # Common support 6 obj-y := id.o io.o control.o mux.o devices.o serial.o gpmc.o timer.o pm.o \ 7 - common.o gpio.o dma.o wd_timer.o 8 9 omap-2-3-common = irq.o sdrc.o 10 hwmod-common = omap_hwmod.o \ ··· 263 smsc911x-$(CONFIG_SMSC911X) := gpmc-smsc911x.o 264 obj-y += $(smsc911x-m) $(smsc911x-y) 265 obj-$(CONFIG_ARCH_OMAP4) += hwspinlock.o 266 - 267 - disp-$(CONFIG_OMAP2_DSS) := display.o 268 - obj-y += $(disp-m) $(disp-y) 269 270 obj-y += common-board-devices.o twl-common.o
··· 4 5 # Common support 6 obj-y := id.o io.o control.o mux.o devices.o serial.o gpmc.o timer.o pm.o \ 7 + common.o gpio.o dma.o wd_timer.o display.o 8 9 omap-2-3-common = irq.o sdrc.o 10 hwmod-common = omap_hwmod.o \ ··· 263 smsc911x-$(CONFIG_SMSC911X) := gpmc-smsc911x.o 264 obj-y += $(smsc911x-m) $(smsc911x-y) 265 obj-$(CONFIG_ARCH_OMAP4) += hwspinlock.o 266 267 obj-y += common-board-devices.o twl-common.o
+1
arch/arm/mach-omap2/cpuidle34xx.c
··· 24 25 #include <linux/sched.h> 26 #include <linux/cpuidle.h> 27 28 #include <plat/prcm.h> 29 #include <plat/irqs.h>
··· 24 25 #include <linux/sched.h> 26 #include <linux/cpuidle.h> 27 + #include <linux/export.h> 28 29 #include <plat/prcm.h> 30 #include <plat/irqs.h>
+159
arch/arm/mach-omap2/display.c
··· 27 #include <plat/omap_hwmod.h> 28 #include <plat/omap_device.h> 29 #include <plat/omap-pm.h> 30 31 #include "control.h" 32 33 static struct platform_device omap_display_device = { 34 .name = "omapdss", ··· 196 r = platform_device_register(&omap_display_device); 197 if (r < 0) 198 printk(KERN_ERR "Unable to register OMAP-Display device\n"); 199 200 return r; 201 }
··· 27 #include <plat/omap_hwmod.h> 28 #include <plat/omap_device.h> 29 #include <plat/omap-pm.h> 30 + #include <plat/common.h> 31 32 #include "control.h" 33 + #include "display.h" 34 + 35 + #define DISPC_CONTROL 0x0040 36 + #define DISPC_CONTROL2 0x0238 37 + #define DISPC_IRQSTATUS 0x0018 38 + 39 + #define DSS_SYSCONFIG 0x10 40 + #define DSS_SYSSTATUS 0x14 41 + #define DSS_CONTROL 0x40 42 + #define DSS_SDI_CONTROL 0x44 43 + #define DSS_PLL_CONTROL 0x48 44 + 45 + #define LCD_EN_MASK (0x1 << 0) 46 + #define DIGIT_EN_MASK (0x1 << 1) 47 + 48 + #define FRAMEDONE_IRQ_SHIFT 0 49 + #define EVSYNC_EVEN_IRQ_SHIFT 2 50 + #define EVSYNC_ODD_IRQ_SHIFT 3 51 + #define FRAMEDONE2_IRQ_SHIFT 22 52 + #define FRAMEDONETV_IRQ_SHIFT 24 53 + 54 + /* 55 + * FRAMEDONE_IRQ_TIMEOUT: how long (in milliseconds) to wait during DISPC 56 + * reset before deciding that something has gone wrong 57 + */ 58 + #define FRAMEDONE_IRQ_TIMEOUT 100 59 60 static struct platform_device omap_display_device = { 61 .name = "omapdss", ··· 169 r = platform_device_register(&omap_display_device); 170 if (r < 0) 171 printk(KERN_ERR "Unable to register OMAP-Display device\n"); 172 + 173 + return r; 174 + } 175 + 176 + static void dispc_disable_outputs(void) 177 + { 178 + u32 v, irq_mask = 0; 179 + bool lcd_en, digit_en, lcd2_en = false; 180 + int i; 181 + struct omap_dss_dispc_dev_attr *da; 182 + struct omap_hwmod *oh; 183 + 184 + oh = omap_hwmod_lookup("dss_dispc"); 185 + if (!oh) { 186 + WARN(1, "display: could not disable outputs during reset - could not find dss_dispc hwmod\n"); 187 + return; 188 + } 189 + 190 + if (!oh->dev_attr) { 191 + pr_err("display: could not disable outputs during reset due to missing dev_attr\n"); 192 + return; 193 + } 194 + 195 + da = (struct omap_dss_dispc_dev_attr *)oh->dev_attr; 196 + 197 + /* store value of LCDENABLE and DIGITENABLE bits */ 198 + v = omap_hwmod_read(oh, DISPC_CONTROL); 199 + lcd_en = v & LCD_EN_MASK; 200 + digit_en = v & DIGIT_EN_MASK; 201 + 202 + /* store value of LCDENABLE for LCD2 */ 203 + if (da->manager_count > 2) { 204 + v = omap_hwmod_read(oh, DISPC_CONTROL2); 205 + lcd2_en = v & LCD_EN_MASK; 206 + } 207 + 208 + if (!(lcd_en | digit_en | lcd2_en)) 209 + return; /* no managers currently enabled */ 210 + 211 + /* 212 + * If any manager was enabled, we need to disable it before 213 + * DSS clocks are disabled or DISPC module is reset 214 + */ 215 + if (lcd_en) 216 + irq_mask |= 1 << FRAMEDONE_IRQ_SHIFT; 217 + 218 + if (digit_en) { 219 + if (da->has_framedonetv_irq) { 220 + irq_mask |= 1 << FRAMEDONETV_IRQ_SHIFT; 221 + } else { 222 + irq_mask |= 1 << EVSYNC_EVEN_IRQ_SHIFT | 223 + 1 << EVSYNC_ODD_IRQ_SHIFT; 224 + } 225 + } 226 + 227 + if (lcd2_en) 228 + irq_mask |= 1 << FRAMEDONE2_IRQ_SHIFT; 229 + 230 + /* 231 + * clear any previous FRAMEDONE, FRAMEDONETV, 232 + * EVSYNC_EVEN/ODD or FRAMEDONE2 interrupts 233 + */ 234 + omap_hwmod_write(irq_mask, oh, DISPC_IRQSTATUS); 235 + 236 + /* disable LCD and TV managers */ 237 + v = omap_hwmod_read(oh, DISPC_CONTROL); 238 + v &= ~(LCD_EN_MASK | DIGIT_EN_MASK); 239 + omap_hwmod_write(v, oh, DISPC_CONTROL); 240 + 241 + /* disable LCD2 manager */ 242 + if (da->manager_count > 2) { 243 + v = omap_hwmod_read(oh, DISPC_CONTROL2); 244 + v &= ~LCD_EN_MASK; 245 + omap_hwmod_write(v, oh, DISPC_CONTROL2); 246 + } 247 + 248 + i = 0; 249 + while ((omap_hwmod_read(oh, DISPC_IRQSTATUS) & irq_mask) != 250 + irq_mask) { 251 + i++; 252 + if (i > FRAMEDONE_IRQ_TIMEOUT) { 253 + pr_err("didn't get FRAMEDONE1/2 or TV interrupt\n"); 254 + break; 255 + } 256 + mdelay(1); 257 + } 258 + } 259 + 260 + #define MAX_MODULE_SOFTRESET_WAIT 10000 261 + int omap_dss_reset(struct omap_hwmod *oh) 262 + { 263 + struct omap_hwmod_opt_clk *oc; 264 + int c = 0; 265 + int i, r; 266 + 267 + if (!(oh->class->sysc->sysc_flags & SYSS_HAS_RESET_STATUS)) { 268 + pr_err("dss_core: hwmod data doesn't contain reset data\n"); 269 + return -EINVAL; 270 + } 271 + 272 + for (i = oh->opt_clks_cnt, oc = oh->opt_clks; i > 0; i--, oc++) 273 + if (oc->_clk) 274 + clk_enable(oc->_clk); 275 + 276 + dispc_disable_outputs(); 277 + 278 + /* clear SDI registers */ 279 + if (cpu_is_omap3430()) { 280 + omap_hwmod_write(0x0, oh, DSS_SDI_CONTROL); 281 + omap_hwmod_write(0x0, oh, DSS_PLL_CONTROL); 282 + } 283 + 284 + /* 285 + * clear DSS_CONTROL register to switch DSS clock sources to 286 + * PRCM clock, if any 287 + */ 288 + omap_hwmod_write(0x0, oh, DSS_CONTROL); 289 + 290 + omap_test_timeout((omap_hwmod_read(oh, oh->class->sysc->syss_offs) 291 + & SYSS_RESETDONE_MASK), 292 + MAX_MODULE_SOFTRESET_WAIT, c); 293 + 294 + if (c == MAX_MODULE_SOFTRESET_WAIT) 295 + pr_warning("dss_core: waiting for reset to finish failed\n"); 296 + else 297 + pr_debug("dss_core: softreset done\n"); 298 + 299 + for (i = oh->opt_clks_cnt, oc = oh->opt_clks; i > 0; i--, oc++) 300 + if (oc->_clk) 301 + clk_disable(oc->_clk); 302 + 303 + r = (c == MAX_MODULE_SOFTRESET_WAIT) ? -ETIMEDOUT : 0; 304 305 return r; 306 }
+29
arch/arm/mach-omap2/display.h
···
··· 1 + /* 2 + * display.h - OMAP2+ integration-specific DSS header 3 + * 4 + * Copyright (C) 2011 Texas Instruments, Inc. 5 + * 6 + * This program is free software; you can redistribute it and/or modify it 7 + * under the terms of the GNU General Public License version 2 as published by 8 + * the Free Software Foundation. 9 + * 10 + * This program is distributed in the hope that it will be useful, but WITHOUT 11 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 12 + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 13 + * more details. 14 + * 15 + * You should have received a copy of the GNU General Public License along with 16 + * this program. If not, see <http://www.gnu.org/licenses/>. 17 + */ 18 + 19 + #ifndef __ARCH_ARM_MACH_OMAP2_DISPLAY_H 20 + #define __ARCH_ARM_MACH_OMAP2_DISPLAY_H 21 + 22 + #include <linux/kernel.h> 23 + 24 + struct omap_dss_dispc_dev_attr { 25 + u8 manager_count; 26 + bool has_framedonetv_irq; 27 + }; 28 + 29 + #endif
arch/arm/mach-omap2/io.h
+3 -3
arch/arm/mach-omap2/omap_hwmod.c
··· 749 ohii = &oh->mpu_irqs[i++]; 750 } while (ohii->irq != -1); 751 752 - return i; 753 } 754 755 /** ··· 772 ohdi = &oh->sdma_reqs[i++]; 773 } while (ohdi->dma_req != -1); 774 775 - return i; 776 } 777 778 /** ··· 795 mem = &os->addr[i++]; 796 } while (mem->pa_start != mem->pa_end); 797 798 - return i; 799 } 800 801 /**
··· 749 ohii = &oh->mpu_irqs[i++]; 750 } while (ohii->irq != -1); 751 752 + return i-1; 753 } 754 755 /** ··· 772 ohdi = &oh->sdma_reqs[i++]; 773 } while (ohdi->dma_req != -1); 774 775 + return i-1; 776 } 777 778 /** ··· 795 mem = &os->addr[i++]; 796 } while (mem->pa_start != mem->pa_end); 797 798 + return i-1; 799 } 800 801 /**
+14 -3
arch/arm/mach-omap2/omap_hwmod_2420_data.c
··· 875 }; 876 877 static struct omap_hwmod_opt_clk dss_opt_clks[] = { 878 { .role = "tv_clk", .clk = "dss_54m_fck" }, 879 { .role = "sys_clk", .clk = "dss2_fck" }, 880 }; ··· 903 .slaves_cnt = ARRAY_SIZE(omap2420_dss_slaves), 904 .masters = omap2420_dss_masters, 905 .masters_cnt = ARRAY_SIZE(omap2420_dss_masters), 906 - .flags = HWMOD_NO_IDLEST, 907 }; 908 909 /* l4_core -> dss_dispc */ ··· 943 .slaves = omap2420_dss_dispc_slaves, 944 .slaves_cnt = ARRAY_SIZE(omap2420_dss_dispc_slaves), 945 .flags = HWMOD_NO_IDLEST, 946 }; 947 948 /* l4_core -> dss_rfbi */ ··· 966 &omap2420_l4_core__dss_rfbi, 967 }; 968 969 static struct omap_hwmod omap2420_dss_rfbi_hwmod = { 970 .name = "dss_rfbi", 971 .class = &omap2_rfbi_hwmod_class, ··· 981 .module_offs = CORE_MOD, 982 }, 983 }, 984 .slaves = omap2420_dss_rfbi_slaves, 985 .slaves_cnt = ARRAY_SIZE(omap2420_dss_rfbi_slaves), 986 .flags = HWMOD_NO_IDLEST, ··· 992 static struct omap_hwmod_ocp_if omap2420_l4_core__dss_venc = { 993 .master = &omap2420_l4_core_hwmod, 994 .slave = &omap2420_dss_venc_hwmod, 995 - .clk = "dss_54m_fck", 996 .addr = omap2_dss_venc_addrs, 997 .fw = { 998 .omap2 = { ··· 1012 static struct omap_hwmod omap2420_dss_venc_hwmod = { 1013 .name = "dss_venc", 1014 .class = &omap2_venc_hwmod_class, 1015 - .main_clk = "dss1_fck", 1016 .prcm = { 1017 .omap2 = { 1018 .prcm_reg_id = 1,
··· 875 }; 876 877 static struct omap_hwmod_opt_clk dss_opt_clks[] = { 878 + /* 879 + * The DSS HW needs all DSS clocks enabled during reset. The dss_core 880 + * driver does not use these clocks. 881 + */ 882 { .role = "tv_clk", .clk = "dss_54m_fck" }, 883 { .role = "sys_clk", .clk = "dss2_fck" }, 884 }; ··· 899 .slaves_cnt = ARRAY_SIZE(omap2420_dss_slaves), 900 .masters = omap2420_dss_masters, 901 .masters_cnt = ARRAY_SIZE(omap2420_dss_masters), 902 + .flags = HWMOD_NO_IDLEST | HWMOD_CONTROL_OPT_CLKS_IN_RESET, 903 }; 904 905 /* l4_core -> dss_dispc */ ··· 939 .slaves = omap2420_dss_dispc_slaves, 940 .slaves_cnt = ARRAY_SIZE(omap2420_dss_dispc_slaves), 941 .flags = HWMOD_NO_IDLEST, 942 + .dev_attr = &omap2_3_dss_dispc_dev_attr 943 }; 944 945 /* l4_core -> dss_rfbi */ ··· 961 &omap2420_l4_core__dss_rfbi, 962 }; 963 964 + static struct omap_hwmod_opt_clk dss_rfbi_opt_clks[] = { 965 + { .role = "ick", .clk = "dss_ick" }, 966 + }; 967 + 968 static struct omap_hwmod omap2420_dss_rfbi_hwmod = { 969 .name = "dss_rfbi", 970 .class = &omap2_rfbi_hwmod_class, ··· 972 .module_offs = CORE_MOD, 973 }, 974 }, 975 + .opt_clks = dss_rfbi_opt_clks, 976 + .opt_clks_cnt = ARRAY_SIZE(dss_rfbi_opt_clks), 977 .slaves = omap2420_dss_rfbi_slaves, 978 .slaves_cnt = ARRAY_SIZE(omap2420_dss_rfbi_slaves), 979 .flags = HWMOD_NO_IDLEST, ··· 981 static struct omap_hwmod_ocp_if omap2420_l4_core__dss_venc = { 982 .master = &omap2420_l4_core_hwmod, 983 .slave = &omap2420_dss_venc_hwmod, 984 + .clk = "dss_ick", 985 .addr = omap2_dss_venc_addrs, 986 .fw = { 987 .omap2 = { ··· 1001 static struct omap_hwmod omap2420_dss_venc_hwmod = { 1002 .name = "dss_venc", 1003 .class = &omap2_venc_hwmod_class, 1004 + .main_clk = "dss_54m_fck", 1005 .prcm = { 1006 .omap2 = { 1007 .prcm_reg_id = 1,
+14 -3
arch/arm/mach-omap2/omap_hwmod_2430_data.c
··· 942 }; 943 944 static struct omap_hwmod_opt_clk dss_opt_clks[] = { 945 { .role = "tv_clk", .clk = "dss_54m_fck" }, 946 { .role = "sys_clk", .clk = "dss2_fck" }, 947 }; ··· 970 .slaves_cnt = ARRAY_SIZE(omap2430_dss_slaves), 971 .masters = omap2430_dss_masters, 972 .masters_cnt = ARRAY_SIZE(omap2430_dss_masters), 973 - .flags = HWMOD_NO_IDLEST, 974 }; 975 976 /* l4_core -> dss_dispc */ ··· 1004 .slaves = omap2430_dss_dispc_slaves, 1005 .slaves_cnt = ARRAY_SIZE(omap2430_dss_dispc_slaves), 1006 .flags = HWMOD_NO_IDLEST, 1007 }; 1008 1009 /* l4_core -> dss_rfbi */ ··· 1021 &omap2430_l4_core__dss_rfbi, 1022 }; 1023 1024 static struct omap_hwmod omap2430_dss_rfbi_hwmod = { 1025 .name = "dss_rfbi", 1026 .class = &omap2_rfbi_hwmod_class, ··· 1036 .module_offs = CORE_MOD, 1037 }, 1038 }, 1039 .slaves = omap2430_dss_rfbi_slaves, 1040 .slaves_cnt = ARRAY_SIZE(omap2430_dss_rfbi_slaves), 1041 .flags = HWMOD_NO_IDLEST, ··· 1047 static struct omap_hwmod_ocp_if omap2430_l4_core__dss_venc = { 1048 .master = &omap2430_l4_core_hwmod, 1049 .slave = &omap2430_dss_venc_hwmod, 1050 - .clk = "dss_54m_fck", 1051 .addr = omap2_dss_venc_addrs, 1052 .flags = OCPIF_SWSUP_IDLE, 1053 .user = OCP_USER_MPU | OCP_USER_SDMA, ··· 1061 static struct omap_hwmod omap2430_dss_venc_hwmod = { 1062 .name = "dss_venc", 1063 .class = &omap2_venc_hwmod_class, 1064 - .main_clk = "dss1_fck", 1065 .prcm = { 1066 .omap2 = { 1067 .prcm_reg_id = 1,
··· 942 }; 943 944 static struct omap_hwmod_opt_clk dss_opt_clks[] = { 945 + /* 946 + * The DSS HW needs all DSS clocks enabled during reset. The dss_core 947 + * driver does not use these clocks. 948 + */ 949 { .role = "tv_clk", .clk = "dss_54m_fck" }, 950 { .role = "sys_clk", .clk = "dss2_fck" }, 951 }; ··· 966 .slaves_cnt = ARRAY_SIZE(omap2430_dss_slaves), 967 .masters = omap2430_dss_masters, 968 .masters_cnt = ARRAY_SIZE(omap2430_dss_masters), 969 + .flags = HWMOD_NO_IDLEST | HWMOD_CONTROL_OPT_CLKS_IN_RESET, 970 }; 971 972 /* l4_core -> dss_dispc */ ··· 1000 .slaves = omap2430_dss_dispc_slaves, 1001 .slaves_cnt = ARRAY_SIZE(omap2430_dss_dispc_slaves), 1002 .flags = HWMOD_NO_IDLEST, 1003 + .dev_attr = &omap2_3_dss_dispc_dev_attr 1004 }; 1005 1006 /* l4_core -> dss_rfbi */ ··· 1016 &omap2430_l4_core__dss_rfbi, 1017 }; 1018 1019 + static struct omap_hwmod_opt_clk dss_rfbi_opt_clks[] = { 1020 + { .role = "ick", .clk = "dss_ick" }, 1021 + }; 1022 + 1023 static struct omap_hwmod omap2430_dss_rfbi_hwmod = { 1024 .name = "dss_rfbi", 1025 .class = &omap2_rfbi_hwmod_class, ··· 1027 .module_offs = CORE_MOD, 1028 }, 1029 }, 1030 + .opt_clks = dss_rfbi_opt_clks, 1031 + .opt_clks_cnt = ARRAY_SIZE(dss_rfbi_opt_clks), 1032 .slaves = omap2430_dss_rfbi_slaves, 1033 .slaves_cnt = ARRAY_SIZE(omap2430_dss_rfbi_slaves), 1034 .flags = HWMOD_NO_IDLEST, ··· 1036 static struct omap_hwmod_ocp_if omap2430_l4_core__dss_venc = { 1037 .master = &omap2430_l4_core_hwmod, 1038 .slave = &omap2430_dss_venc_hwmod, 1039 + .clk = "dss_ick", 1040 .addr = omap2_dss_venc_addrs, 1041 .flags = OCPIF_SWSUP_IDLE, 1042 .user = OCP_USER_MPU | OCP_USER_SDMA, ··· 1050 static struct omap_hwmod omap2430_dss_venc_hwmod = { 1051 .name = "dss_venc", 1052 .class = &omap2_venc_hwmod_class, 1053 + .main_clk = "dss_54m_fck", 1054 .prcm = { 1055 .omap2 = { 1056 .prcm_reg_id = 1,
+4 -1
arch/arm/mach-omap2/omap_hwmod_2xxx_3xxx_ipblock_data.c
··· 11 #include <plat/omap_hwmod.h> 12 #include <plat/serial.h> 13 #include <plat/dma.h> 14 15 #include <mach/irqs.h> 16 ··· 44 .rev_offs = 0x0000, 45 .sysc_offs = 0x0010, 46 .syss_offs = 0x0014, 47 - .sysc_flags = (SYSC_HAS_SOFTRESET | SYSC_HAS_AUTOIDLE), 48 .sysc_fields = &omap_hwmod_sysc_type1, 49 }; 50 51 struct omap_hwmod_class omap2_dss_hwmod_class = { 52 .name = "dss", 53 .sysc = &omap2_dss_sysc, 54 }; 55 56 /*
··· 11 #include <plat/omap_hwmod.h> 12 #include <plat/serial.h> 13 #include <plat/dma.h> 14 + #include <plat/common.h> 15 16 #include <mach/irqs.h> 17 ··· 43 .rev_offs = 0x0000, 44 .sysc_offs = 0x0010, 45 .syss_offs = 0x0014, 46 + .sysc_flags = (SYSC_HAS_SOFTRESET | SYSC_HAS_AUTOIDLE | 47 + SYSS_HAS_RESET_STATUS), 48 .sysc_fields = &omap_hwmod_sysc_type1, 49 }; 50 51 struct omap_hwmod_class omap2_dss_hwmod_class = { 52 .name = "dss", 53 .sysc = &omap2_dss_sysc, 54 + .reset = omap_dss_reset, 55 }; 56 57 /*
+32 -5
arch/arm/mach-omap2/omap_hwmod_3xxx_data.c
··· 1369 }; 1370 1371 static struct omap_hwmod_opt_clk dss_opt_clks[] = { 1372 - { .role = "tv_clk", .clk = "dss_tv_fck" }, 1373 - { .role = "video_clk", .clk = "dss_96m_fck" }, 1374 { .role = "sys_clk", .clk = "dss2_alwon_fck" }, 1375 }; 1376 1377 static struct omap_hwmod omap3430es1_dss_core_hwmod = { ··· 1399 .slaves_cnt = ARRAY_SIZE(omap3430es1_dss_slaves), 1400 .masters = omap3xxx_dss_masters, 1401 .masters_cnt = ARRAY_SIZE(omap3xxx_dss_masters), 1402 - .flags = HWMOD_NO_IDLEST, 1403 }; 1404 1405 static struct omap_hwmod omap3xxx_dss_core_hwmod = { 1406 .name = "dss_core", 1407 .class = &omap2_dss_hwmod_class, 1408 .main_clk = "dss1_alwon_fck", /* instead of dss_fck */ 1409 .sdma_reqs = omap3xxx_dss_sdma_chs, ··· 1462 .slaves = omap3xxx_dss_dispc_slaves, 1463 .slaves_cnt = ARRAY_SIZE(omap3xxx_dss_dispc_slaves), 1464 .flags = HWMOD_NO_IDLEST, 1465 }; 1466 1467 /* ··· 1493 static struct omap_hwmod_ocp_if omap3xxx_l4_core__dss_dsi1 = { 1494 .master = &omap3xxx_l4_core_hwmod, 1495 .slave = &omap3xxx_dss_dsi1_hwmod, 1496 .addr = omap3xxx_dss_dsi1_addrs, 1497 .fw = { 1498 .omap2 = { ··· 1510 &omap3xxx_l4_core__dss_dsi1, 1511 }; 1512 1513 static struct omap_hwmod omap3xxx_dss_dsi1_hwmod = { 1514 .name = "dss_dsi1", 1515 .class = &omap3xxx_dsi_hwmod_class, ··· 1526 .module_offs = OMAP3430_DSS_MOD, 1527 }, 1528 }, 1529 .slaves = omap3xxx_dss_dsi1_slaves, 1530 .slaves_cnt = ARRAY_SIZE(omap3xxx_dss_dsi1_slaves), 1531 .flags = HWMOD_NO_IDLEST, ··· 1554 &omap3xxx_l4_core__dss_rfbi, 1555 }; 1556 1557 static struct omap_hwmod omap3xxx_dss_rfbi_hwmod = { 1558 .name = "dss_rfbi", 1559 .class = &omap2_rfbi_hwmod_class, ··· 1569 .module_offs = OMAP3430_DSS_MOD, 1570 }, 1571 }, 1572 .slaves = omap3xxx_dss_rfbi_slaves, 1573 .slaves_cnt = ARRAY_SIZE(omap3xxx_dss_rfbi_slaves), 1574 .flags = HWMOD_NO_IDLEST, ··· 1580 static struct omap_hwmod_ocp_if omap3xxx_l4_core__dss_venc = { 1581 .master = &omap3xxx_l4_core_hwmod, 1582 .slave = &omap3xxx_dss_venc_hwmod, 1583 - .clk = "dss_tv_fck", 1584 .addr = omap2_dss_venc_addrs, 1585 .fw = { 1586 .omap2 = { ··· 1598 &omap3xxx_l4_core__dss_venc, 1599 }; 1600 1601 static struct omap_hwmod omap3xxx_dss_venc_hwmod = { 1602 .name = "dss_venc", 1603 .class = &omap2_venc_hwmod_class, 1604 - .main_clk = "dss1_alwon_fck", 1605 .prcm = { 1606 .omap2 = { 1607 .prcm_reg_id = 1, ··· 1614 .module_offs = OMAP3430_DSS_MOD, 1615 }, 1616 }, 1617 .slaves = omap3xxx_dss_venc_slaves, 1618 .slaves_cnt = ARRAY_SIZE(omap3xxx_dss_venc_slaves), 1619 .flags = HWMOD_NO_IDLEST,
··· 1369 }; 1370 1371 static struct omap_hwmod_opt_clk dss_opt_clks[] = { 1372 + /* 1373 + * The DSS HW needs all DSS clocks enabled during reset. The dss_core 1374 + * driver does not use these clocks. 1375 + */ 1376 { .role = "sys_clk", .clk = "dss2_alwon_fck" }, 1377 + { .role = "tv_clk", .clk = "dss_tv_fck" }, 1378 + /* required only on OMAP3430 */ 1379 + { .role = "tv_dac_clk", .clk = "dss_96m_fck" }, 1380 }; 1381 1382 static struct omap_hwmod omap3430es1_dss_core_hwmod = { ··· 1394 .slaves_cnt = ARRAY_SIZE(omap3430es1_dss_slaves), 1395 .masters = omap3xxx_dss_masters, 1396 .masters_cnt = ARRAY_SIZE(omap3xxx_dss_masters), 1397 + .flags = HWMOD_NO_IDLEST | HWMOD_CONTROL_OPT_CLKS_IN_RESET, 1398 }; 1399 1400 static struct omap_hwmod omap3xxx_dss_core_hwmod = { 1401 .name = "dss_core", 1402 + .flags = HWMOD_CONTROL_OPT_CLKS_IN_RESET, 1403 .class = &omap2_dss_hwmod_class, 1404 .main_clk = "dss1_alwon_fck", /* instead of dss_fck */ 1405 .sdma_reqs = omap3xxx_dss_sdma_chs, ··· 1456 .slaves = omap3xxx_dss_dispc_slaves, 1457 .slaves_cnt = ARRAY_SIZE(omap3xxx_dss_dispc_slaves), 1458 .flags = HWMOD_NO_IDLEST, 1459 + .dev_attr = &omap2_3_dss_dispc_dev_attr 1460 }; 1461 1462 /* ··· 1486 static struct omap_hwmod_ocp_if omap3xxx_l4_core__dss_dsi1 = { 1487 .master = &omap3xxx_l4_core_hwmod, 1488 .slave = &omap3xxx_dss_dsi1_hwmod, 1489 + .clk = "dss_ick", 1490 .addr = omap3xxx_dss_dsi1_addrs, 1491 .fw = { 1492 .omap2 = { ··· 1502 &omap3xxx_l4_core__dss_dsi1, 1503 }; 1504 1505 + static struct omap_hwmod_opt_clk dss_dsi1_opt_clks[] = { 1506 + { .role = "sys_clk", .clk = "dss2_alwon_fck" }, 1507 + }; 1508 + 1509 static struct omap_hwmod omap3xxx_dss_dsi1_hwmod = { 1510 .name = "dss_dsi1", 1511 .class = &omap3xxx_dsi_hwmod_class, ··· 1514 .module_offs = OMAP3430_DSS_MOD, 1515 }, 1516 }, 1517 + .opt_clks = dss_dsi1_opt_clks, 1518 + .opt_clks_cnt = ARRAY_SIZE(dss_dsi1_opt_clks), 1519 .slaves = omap3xxx_dss_dsi1_slaves, 1520 .slaves_cnt = ARRAY_SIZE(omap3xxx_dss_dsi1_slaves), 1521 .flags = HWMOD_NO_IDLEST, ··· 1540 &omap3xxx_l4_core__dss_rfbi, 1541 }; 1542 1543 + static struct omap_hwmod_opt_clk dss_rfbi_opt_clks[] = { 1544 + { .role = "ick", .clk = "dss_ick" }, 1545 + }; 1546 + 1547 static struct omap_hwmod omap3xxx_dss_rfbi_hwmod = { 1548 .name = "dss_rfbi", 1549 .class = &omap2_rfbi_hwmod_class, ··· 1551 .module_offs = OMAP3430_DSS_MOD, 1552 }, 1553 }, 1554 + .opt_clks = dss_rfbi_opt_clks, 1555 + .opt_clks_cnt = ARRAY_SIZE(dss_rfbi_opt_clks), 1556 .slaves = omap3xxx_dss_rfbi_slaves, 1557 .slaves_cnt = ARRAY_SIZE(omap3xxx_dss_rfbi_slaves), 1558 .flags = HWMOD_NO_IDLEST, ··· 1560 static struct omap_hwmod_ocp_if omap3xxx_l4_core__dss_venc = { 1561 .master = &omap3xxx_l4_core_hwmod, 1562 .slave = &omap3xxx_dss_venc_hwmod, 1563 + .clk = "dss_ick", 1564 .addr = omap2_dss_venc_addrs, 1565 .fw = { 1566 .omap2 = { ··· 1578 &omap3xxx_l4_core__dss_venc, 1579 }; 1580 1581 + static struct omap_hwmod_opt_clk dss_venc_opt_clks[] = { 1582 + /* required only on OMAP3430 */ 1583 + { .role = "tv_dac_clk", .clk = "dss_96m_fck" }, 1584 + }; 1585 + 1586 static struct omap_hwmod omap3xxx_dss_venc_hwmod = { 1587 .name = "dss_venc", 1588 .class = &omap2_venc_hwmod_class, 1589 + .main_clk = "dss_tv_fck", 1590 .prcm = { 1591 .omap2 = { 1592 .prcm_reg_id = 1, ··· 1589 .module_offs = OMAP3430_DSS_MOD, 1590 }, 1591 }, 1592 + .opt_clks = dss_venc_opt_clks, 1593 + .opt_clks_cnt = ARRAY_SIZE(dss_venc_opt_clks), 1594 .slaves = omap3xxx_dss_venc_slaves, 1595 .slaves_cnt = ARRAY_SIZE(omap3xxx_dss_venc_slaves), 1596 .flags = HWMOD_NO_IDLEST,
+12 -12
arch/arm/mach-omap2/omap_hwmod_44xx_data.c
··· 30 #include <plat/mmc.h> 31 #include <plat/i2c.h> 32 #include <plat/dmtimer.h> 33 34 #include "omap_hwmod_common_data.h" 35 ··· 1188 static struct omap_hwmod_class omap44xx_dss_hwmod_class = { 1189 .name = "dss", 1190 .sysc = &omap44xx_dss_sysc, 1191 }; 1192 1193 /* dss */ ··· 1242 static struct omap_hwmod_opt_clk dss_opt_clks[] = { 1243 { .role = "sys_clk", .clk = "dss_sys_clk" }, 1244 { .role = "tv_clk", .clk = "dss_tv_clk" }, 1245 - { .role = "dss_clk", .clk = "dss_dss_clk" }, 1246 - { .role = "video_clk", .clk = "dss_48mhz_clk" }, 1247 }; 1248 1249 static struct omap_hwmod omap44xx_dss_hwmod = { 1250 .name = "dss_core", 1251 .class = &omap44xx_dss_hwmod_class, 1252 .clkdm_name = "l3_dss_clkdm", 1253 .main_clk = "dss_dss_clk", ··· 1327 { } 1328 }; 1329 1330 /* l4_per -> dss_dispc */ 1331 static struct omap_hwmod_ocp_if omap44xx_l4_per__dss_dispc = { 1332 .master = &omap44xx_l4_per_hwmod, ··· 1347 &omap44xx_l4_per__dss_dispc, 1348 }; 1349 1350 - static struct omap_hwmod_opt_clk dss_dispc_opt_clks[] = { 1351 - { .role = "sys_clk", .clk = "dss_sys_clk" }, 1352 - { .role = "tv_clk", .clk = "dss_tv_clk" }, 1353 - { .role = "hdmi_clk", .clk = "dss_48mhz_clk" }, 1354 - }; 1355 - 1356 static struct omap_hwmod omap44xx_dss_dispc_hwmod = { 1357 .name = "dss_dispc", 1358 .class = &omap44xx_dispc_hwmod_class, ··· 1360 .context_offs = OMAP4_RM_DSS_DSS_CONTEXT_OFFSET, 1361 }, 1362 }, 1363 - .opt_clks = dss_dispc_opt_clks, 1364 - .opt_clks_cnt = ARRAY_SIZE(dss_dispc_opt_clks), 1365 .slaves = omap44xx_dss_dispc_slaves, 1366 .slaves_cnt = ARRAY_SIZE(omap44xx_dss_dispc_slaves), 1367 }; 1368 1369 /* ··· 1624 .clkdm_name = "l3_dss_clkdm", 1625 .mpu_irqs = omap44xx_dss_hdmi_irqs, 1626 .sdma_reqs = omap44xx_dss_hdmi_sdma_reqs, 1627 - .main_clk = "dss_dss_clk", 1628 .prcm = { 1629 .omap4 = { 1630 .clkctrl_offs = OMAP4_CM_DSS_DSS_CLKCTRL_OFFSET, ··· 1785 .name = "dss_venc", 1786 .class = &omap44xx_venc_hwmod_class, 1787 .clkdm_name = "l3_dss_clkdm", 1788 - .main_clk = "dss_dss_clk", 1789 .prcm = { 1790 .omap4 = { 1791 .clkctrl_offs = OMAP4_CM_DSS_DSS_CLKCTRL_OFFSET,
··· 30 #include <plat/mmc.h> 31 #include <plat/i2c.h> 32 #include <plat/dmtimer.h> 33 + #include <plat/common.h> 34 35 #include "omap_hwmod_common_data.h" 36 ··· 1187 static struct omap_hwmod_class omap44xx_dss_hwmod_class = { 1188 .name = "dss", 1189 .sysc = &omap44xx_dss_sysc, 1190 + .reset = omap_dss_reset, 1191 }; 1192 1193 /* dss */ ··· 1240 static struct omap_hwmod_opt_clk dss_opt_clks[] = { 1241 { .role = "sys_clk", .clk = "dss_sys_clk" }, 1242 { .role = "tv_clk", .clk = "dss_tv_clk" }, 1243 + { .role = "hdmi_clk", .clk = "dss_48mhz_clk" }, 1244 }; 1245 1246 static struct omap_hwmod omap44xx_dss_hwmod = { 1247 .name = "dss_core", 1248 + .flags = HWMOD_CONTROL_OPT_CLKS_IN_RESET, 1249 .class = &omap44xx_dss_hwmod_class, 1250 .clkdm_name = "l3_dss_clkdm", 1251 .main_clk = "dss_dss_clk", ··· 1325 { } 1326 }; 1327 1328 + static struct omap_dss_dispc_dev_attr omap44xx_dss_dispc_dev_attr = { 1329 + .manager_count = 3, 1330 + .has_framedonetv_irq = 1 1331 + }; 1332 + 1333 /* l4_per -> dss_dispc */ 1334 static struct omap_hwmod_ocp_if omap44xx_l4_per__dss_dispc = { 1335 .master = &omap44xx_l4_per_hwmod, ··· 1340 &omap44xx_l4_per__dss_dispc, 1341 }; 1342 1343 static struct omap_hwmod omap44xx_dss_dispc_hwmod = { 1344 .name = "dss_dispc", 1345 .class = &omap44xx_dispc_hwmod_class, ··· 1359 .context_offs = OMAP4_RM_DSS_DSS_CONTEXT_OFFSET, 1360 }, 1361 }, 1362 .slaves = omap44xx_dss_dispc_slaves, 1363 .slaves_cnt = ARRAY_SIZE(omap44xx_dss_dispc_slaves), 1364 + .dev_attr = &omap44xx_dss_dispc_dev_attr 1365 }; 1366 1367 /* ··· 1624 .clkdm_name = "l3_dss_clkdm", 1625 .mpu_irqs = omap44xx_dss_hdmi_irqs, 1626 .sdma_reqs = omap44xx_dss_hdmi_sdma_reqs, 1627 + .main_clk = "dss_48mhz_clk", 1628 .prcm = { 1629 .omap4 = { 1630 .clkctrl_offs = OMAP4_CM_DSS_DSS_CLKCTRL_OFFSET, ··· 1785 .name = "dss_venc", 1786 .class = &omap44xx_venc_hwmod_class, 1787 .clkdm_name = "l3_dss_clkdm", 1788 + .main_clk = "dss_tv_clk", 1789 .prcm = { 1790 .omap4 = { 1791 .clkctrl_offs = OMAP4_CM_DSS_DSS_CLKCTRL_OFFSET,
+4
arch/arm/mach-omap2/omap_hwmod_common_data.c
··· 49 .srst_shift = SYSC_TYPE2_SOFTRESET_SHIFT, 50 }; 51
··· 49 .srst_shift = SYSC_TYPE2_SOFTRESET_SHIFT, 50 }; 51 52 + struct omap_dss_dispc_dev_attr omap2_3_dss_dispc_dev_attr = { 53 + .manager_count = 2, 54 + .has_framedonetv_irq = 0 55 + };
+4
arch/arm/mach-omap2/omap_hwmod_common_data.h
··· 16 17 #include <plat/omap_hwmod.h> 18 19 /* Common address space across OMAP2xxx */ 20 extern struct omap_hwmod_addr_space omap2xxx_uart1_addr_space[]; 21 extern struct omap_hwmod_addr_space omap2xxx_uart2_addr_space[]; ··· 112 extern struct omap_hwmod_class omap2xxx_dma_hwmod_class; 113 extern struct omap_hwmod_class omap2xxx_mailbox_hwmod_class; 114 extern struct omap_hwmod_class omap2xxx_mcspi_class; 115 116 #endif
··· 16 17 #include <plat/omap_hwmod.h> 18 19 + #include "display.h" 20 + 21 /* Common address space across OMAP2xxx */ 22 extern struct omap_hwmod_addr_space omap2xxx_uart1_addr_space[]; 23 extern struct omap_hwmod_addr_space omap2xxx_uart2_addr_space[]; ··· 110 extern struct omap_hwmod_class omap2xxx_dma_hwmod_class; 111 extern struct omap_hwmod_class omap2xxx_mailbox_hwmod_class; 112 extern struct omap_hwmod_class omap2xxx_mcspi_class; 113 + 114 + extern struct omap_dss_dispc_dev_attr omap2_3_dss_dispc_dev_attr; 115 116 #endif
+1 -1
arch/arm/mach-omap2/omap_l3_noc.c
··· 237 static const struct of_device_id l3_noc_match[] = { 238 {.compatible = "ti,omap4-l3-noc", }, 239 {}, 240 - } 241 MODULE_DEVICE_TABLE(of, l3_noc_match); 242 #else 243 #define l3_noc_match NULL
··· 237 static const struct of_device_id l3_noc_match[] = { 238 {.compatible = "ti,omap4-l3-noc", }, 239 {}, 240 + }; 241 MODULE_DEVICE_TABLE(of, l3_noc_match); 242 #else 243 #define l3_noc_match NULL
+2 -4
arch/arm/mach-omap2/pm.c
··· 24 #include "powerdomain.h" 25 #include "clockdomain.h" 26 #include "pm.h" 27 28 static struct omap_device_pm_latency *pm_lats; 29 ··· 227 228 static int __init omap2_common_pm_late_init(void) 229 { 230 - /* Init the OMAP TWL parameters */ 231 - omap3_twl_init(); 232 - omap4_twl_init(); 233 - 234 /* Init the voltage layer */ 235 omap_voltage_late_init(); 236 237 /* Initialize the voltages */
··· 24 #include "powerdomain.h" 25 #include "clockdomain.h" 26 #include "pm.h" 27 + #include "twl-common.h" 28 29 static struct omap_device_pm_latency *pm_lats; 30 ··· 226 227 static int __init omap2_common_pm_late_init(void) 228 { 229 /* Init the voltage layer */ 230 + omap_pmic_late_init(); 231 omap_voltage_late_init(); 232 233 /* Initialize the voltages */
+1 -1
arch/arm/mach-omap2/smartreflex.c
··· 139 sr_write_reg(sr_info, ERRCONFIG_V1, status); 140 } else if (sr_info->ip_type == SR_TYPE_V2) { 141 /* Read the status bits */ 142 - sr_read_reg(sr_info, IRQSTATUS); 143 144 /* Clear them by writing back */ 145 sr_write_reg(sr_info, IRQSTATUS, status);
··· 139 sr_write_reg(sr_info, ERRCONFIG_V1, status); 140 } else if (sr_info->ip_type == SR_TYPE_V2) { 141 /* Read the status bits */ 142 + status = sr_read_reg(sr_info, IRQSTATUS); 143 144 /* Clear them by writing back */ 145 sr_write_reg(sr_info, IRQSTATUS, status);
+11
arch/arm/mach-omap2/twl-common.c
··· 30 #include <plat/usb.h> 31 32 #include "twl-common.h" 33 34 static struct i2c_board_info __initdata pmic_i2c_board_info = { 35 .addr = 0x48, ··· 47 pmic_i2c_board_info.platform_data = pmic_data; 48 49 omap_register_i2c_bus(bus, clkrate, &pmic_i2c_board_info, 1); 50 } 51 52 #if defined(CONFIG_ARCH_OMAP3)
··· 30 #include <plat/usb.h> 31 32 #include "twl-common.h" 33 + #include "pm.h" 34 35 static struct i2c_board_info __initdata pmic_i2c_board_info = { 36 .addr = 0x48, ··· 46 pmic_i2c_board_info.platform_data = pmic_data; 47 48 omap_register_i2c_bus(bus, clkrate, &pmic_i2c_board_info, 1); 49 + } 50 + 51 + void __init omap_pmic_late_init(void) 52 + { 53 + /* Init the OMAP TWL parameters (if PMIC has been registerd) */ 54 + if (!pmic_i2c_board_info.irq) 55 + return; 56 + 57 + omap3_twl_init(); 58 + omap4_twl_init(); 59 } 60 61 #if defined(CONFIG_ARCH_OMAP3)
+3
arch/arm/mach-omap2/twl-common.h
··· 1 #ifndef __OMAP_PMIC_COMMON__ 2 #define __OMAP_PMIC_COMMON__ 3 4 #define TWL_COMMON_PDATA_USB (1 << 0) 5 #define TWL_COMMON_PDATA_BCI (1 << 1) 6 #define TWL_COMMON_PDATA_MADC (1 << 2) ··· 32 33 void omap_pmic_init(int bus, u32 clkrate, const char *pmic_type, int pmic_irq, 34 struct twl4030_platform_data *pmic_data); 35 36 static inline void omap2_pmic_init(const char *pmic_type, 37 struct twl4030_platform_data *pmic_data)
··· 1 #ifndef __OMAP_PMIC_COMMON__ 2 #define __OMAP_PMIC_COMMON__ 3 4 + #include <plat/irqs.h> 5 + 6 #define TWL_COMMON_PDATA_USB (1 << 0) 7 #define TWL_COMMON_PDATA_BCI (1 << 1) 8 #define TWL_COMMON_PDATA_MADC (1 << 2) ··· 30 31 void omap_pmic_init(int bus, u32 clkrate, const char *pmic_type, int pmic_irq, 32 struct twl4030_platform_data *pmic_data); 33 + void omap_pmic_late_init(void); 34 35 static inline void omap2_pmic_init(const char *pmic_type, 36 struct twl4030_platform_data *pmic_data)
+1 -1
arch/arm/mach-pxa/balloon3.c
··· 307 /****************************************************************************** 308 * USB Gadget 309 ******************************************************************************/ 310 - #if defined(CONFIG_USB_GADGET_PXA27X)||defined(CONFIG_USB_GADGET_PXA27X_MODULE) 311 static void balloon3_udc_command(int cmd) 312 { 313 if (cmd == PXA2XX_UDC_CMD_CONNECT)
··· 307 /****************************************************************************** 308 * USB Gadget 309 ******************************************************************************/ 310 + #if defined(CONFIG_USB_PXA27X)||defined(CONFIG_USB_PXA27X_MODULE) 311 static void balloon3_udc_command(int cmd) 312 { 313 if (cmd == PXA2XX_UDC_CMD_CONNECT)
+1 -1
arch/arm/mach-pxa/colibri-pxa320.c
··· 146 static inline void __init colibri_pxa320_init_eth(void) {} 147 #endif /* CONFIG_AX88796 */ 148 149 - #if defined(CONFIG_USB_GADGET_PXA27X)||defined(CONFIG_USB_GADGET_PXA27X_MODULE) 150 static struct gpio_vbus_mach_info colibri_pxa320_gpio_vbus_info = { 151 .gpio_vbus = mfp_to_gpio(MFP_PIN_GPIO96), 152 .gpio_pullup = -1,
··· 146 static inline void __init colibri_pxa320_init_eth(void) {} 147 #endif /* CONFIG_AX88796 */ 148 149 + #if defined(CONFIG_USB_PXA27X)||defined(CONFIG_USB_PXA27X_MODULE) 150 static struct gpio_vbus_mach_info colibri_pxa320_gpio_vbus_info = { 151 .gpio_vbus = mfp_to_gpio(MFP_PIN_GPIO96), 152 .gpio_pullup = -1,
+1 -1
arch/arm/mach-pxa/gumstix.c
··· 106 } 107 #endif 108 109 - #ifdef CONFIG_USB_GADGET_PXA25X 110 static struct gpio_vbus_mach_info gumstix_udc_info = { 111 .gpio_vbus = GPIO_GUMSTIX_USB_GPIOn, 112 .gpio_pullup = GPIO_GUMSTIX_USB_GPIOx,
··· 106 } 107 #endif 108 109 + #ifdef CONFIG_USB_PXA25X 110 static struct gpio_vbus_mach_info gumstix_udc_info = { 111 .gpio_vbus = GPIO_GUMSTIX_USB_GPIOn, 112 .gpio_pullup = GPIO_GUMSTIX_USB_GPIOx,
+2 -2
arch/arm/mach-pxa/include/mach/palm27x.h
··· 37 #define palm27x_lcd_init(power, mode) do {} while (0) 38 #endif 39 40 - #if defined(CONFIG_USB_GADGET_PXA27X) || \ 41 - defined(CONFIG_USB_GADGET_PXA27X_MODULE) 42 extern void __init palm27x_udc_init(int vbus, int pullup, 43 int vbus_inverted); 44 #else
··· 37 #define palm27x_lcd_init(power, mode) do {} while (0) 38 #endif 39 40 + #if defined(CONFIG_USB_PXA27X) || \ 41 + defined(CONFIG_USB_PXA27X_MODULE) 42 extern void __init palm27x_udc_init(int vbus, int pullup, 43 int vbus_inverted); 44 #else
+2 -2
arch/arm/mach-pxa/palm27x.c
··· 164 /****************************************************************************** 165 * USB Gadget 166 ******************************************************************************/ 167 - #if defined(CONFIG_USB_GADGET_PXA27X) || \ 168 - defined(CONFIG_USB_GADGET_PXA27X_MODULE) 169 static struct gpio_vbus_mach_info palm27x_udc_info = { 170 .gpio_vbus_inverted = 1, 171 };
··· 164 /****************************************************************************** 165 * USB Gadget 166 ******************************************************************************/ 167 + #if defined(CONFIG_USB_PXA27X) || \ 168 + defined(CONFIG_USB_PXA27X_MODULE) 169 static struct gpio_vbus_mach_info palm27x_udc_info = { 170 .gpio_vbus_inverted = 1, 171 };
+1 -1
arch/arm/mach-pxa/palmtc.c
··· 338 /****************************************************************************** 339 * UDC 340 ******************************************************************************/ 341 - #if defined(CONFIG_USB_GADGET_PXA25X)||defined(CONFIG_USB_GADGET_PXA25X_MODULE) 342 static struct gpio_vbus_mach_info palmtc_udc_info = { 343 .gpio_vbus = GPIO_NR_PALMTC_USB_DETECT_N, 344 .gpio_vbus_inverted = 1,
··· 338 /****************************************************************************** 339 * UDC 340 ******************************************************************************/ 341 + #if defined(CONFIG_USB_PXA25X)||defined(CONFIG_USB_PXA25X_MODULE) 342 static struct gpio_vbus_mach_info palmtc_udc_info = { 343 .gpio_vbus = GPIO_NR_PALMTC_USB_DETECT_N, 344 .gpio_vbus_inverted = 1,
+1 -1
arch/arm/mach-pxa/vpac270.c
··· 343 /****************************************************************************** 344 * USB Gadget 345 ******************************************************************************/ 346 - #if defined(CONFIG_USB_GADGET_PXA27X)||defined(CONFIG_USB_GADGET_PXA27X_MODULE) 347 static struct gpio_vbus_mach_info vpac270_gpio_vbus_info = { 348 .gpio_vbus = GPIO41_VPAC270_UDC_DETECT, 349 .gpio_pullup = -1,
··· 343 /****************************************************************************** 344 * USB Gadget 345 ******************************************************************************/ 346 + #if defined(CONFIG_USB_PXA27X)||defined(CONFIG_USB_PXA27X_MODULE) 347 static struct gpio_vbus_mach_info vpac270_gpio_vbus_info = { 348 .gpio_vbus = GPIO41_VPAC270_UDC_DETECT, 349 .gpio_pullup = -1,
+1 -1
arch/arm/mach-s3c64xx/mach-crag6410-module.c
··· 8 * published by the Free Software Foundation. 9 */ 10 11 - #include <linux/module.h> 12 #include <linux/interrupt.h> 13 #include <linux/i2c.h> 14
··· 8 * published by the Free Software Foundation. 9 */ 10 11 + #include <linux/export.h> 12 #include <linux/interrupt.h> 13 #include <linux/i2c.h> 14
+1 -1
arch/arm/plat-mxc/include/mach/common.h
··· 85 }; 86 87 extern void mx5_cpu_lp_set(enum mxc_cpu_pwr_mode mode); 88 - extern void (*imx_idle)(void); 89 extern void imx_print_silicon_rev(const char *cpu, int srev); 90 91 void avic_handle_irq(struct pt_regs *); ··· 132 extern void imx53_smd_common_init(void); 133 extern int imx6q_set_lpm(enum mxc_cpu_pwr_mode mode); 134 extern void imx6q_pm_init(void); 135 #endif
··· 85 }; 86 87 extern void mx5_cpu_lp_set(enum mxc_cpu_pwr_mode mode); 88 extern void imx_print_silicon_rev(const char *cpu, int srev); 89 90 void avic_handle_irq(struct pt_regs *); ··· 133 extern void imx53_smd_common_init(void); 134 extern int imx6q_set_lpm(enum mxc_cpu_pwr_mode mode); 135 extern void imx6q_pm_init(void); 136 + extern void imx6q_clock_map_io(void); 137 #endif
-14
arch/arm/plat-mxc/include/mach/mxc.h
··· 50 #define IMX_CHIP_REVISION_3_3 0x33 51 #define IMX_CHIP_REVISION_UNKNOWN 0xff 52 53 - #define IMX_CHIP_REVISION_1_0_STRING "1.0" 54 - #define IMX_CHIP_REVISION_1_1_STRING "1.1" 55 - #define IMX_CHIP_REVISION_1_2_STRING "1.2" 56 - #define IMX_CHIP_REVISION_1_3_STRING "1.3" 57 - #define IMX_CHIP_REVISION_2_0_STRING "2.0" 58 - #define IMX_CHIP_REVISION_2_1_STRING "2.1" 59 - #define IMX_CHIP_REVISION_2_2_STRING "2.2" 60 - #define IMX_CHIP_REVISION_2_3_STRING "2.3" 61 - #define IMX_CHIP_REVISION_3_0_STRING "3.0" 62 - #define IMX_CHIP_REVISION_3_1_STRING "3.1" 63 - #define IMX_CHIP_REVISION_3_2_STRING "3.2" 64 - #define IMX_CHIP_REVISION_3_3_STRING "3.3" 65 - #define IMX_CHIP_REVISION_UNKNOWN_STRING "unknown" 66 - 67 #ifndef __ASSEMBLY__ 68 extern unsigned int __mxc_cpu_type; 69 #endif
··· 50 #define IMX_CHIP_REVISION_3_3 0x33 51 #define IMX_CHIP_REVISION_UNKNOWN 0xff 52 53 #ifndef __ASSEMBLY__ 54 extern unsigned int __mxc_cpu_type; 55 #endif
+1 -6
arch/arm/plat-mxc/include/mach/system.h
··· 17 #ifndef __ASM_ARCH_MXC_SYSTEM_H__ 18 #define __ASM_ARCH_MXC_SYSTEM_H__ 19 20 - extern void (*imx_idle)(void); 21 - 22 static inline void arch_idle(void) 23 { 24 - if (imx_idle != NULL) 25 - (imx_idle)(); 26 - else 27 - cpu_do_idle(); 28 } 29 30 void arch_reset(char mode, const char *cmd);
··· 17 #ifndef __ASM_ARCH_MXC_SYSTEM_H__ 18 #define __ASM_ARCH_MXC_SYSTEM_H__ 19 20 static inline void arch_idle(void) 21 { 22 + cpu_do_idle(); 23 } 24 25 void arch_reset(char mode, const char *cmd);
+2 -1
arch/arm/plat-mxc/system.c
··· 21 #include <linux/io.h> 22 #include <linux/err.h> 23 #include <linux/delay.h> 24 25 #include <mach/hardware.h> 26 #include <mach/common.h> ··· 29 #include <asm/system.h> 30 #include <asm/mach-types.h> 31 32 - void (*imx_idle)(void) = NULL; 33 void __iomem *(*imx_ioremap)(unsigned long, size_t, unsigned int) = NULL; 34 35 static void __iomem *wdog_base; 36
··· 21 #include <linux/io.h> 22 #include <linux/err.h> 23 #include <linux/delay.h> 24 + #include <linux/module.h> 25 26 #include <mach/hardware.h> 27 #include <mach/common.h> ··· 28 #include <asm/system.h> 29 #include <asm/mach-types.h> 30 31 void __iomem *(*imx_ioremap)(unsigned long, size_t, unsigned int) = NULL; 32 + EXPORT_SYMBOL_GPL(imx_ioremap); 33 34 static void __iomem *wdog_base; 35
+1 -1
arch/arm/plat-omap/include/plat/clock.h
··· 165 u8 auto_recal_bit; 166 u8 recal_en_bit; 167 u8 recal_st_bit; 168 - u8 flags; 169 # endif 170 }; 171 172 #endif
··· 165 u8 auto_recal_bit; 166 u8 recal_en_bit; 167 u8 recal_st_bit; 168 # endif 169 + u8 flags; 170 }; 171 172 #endif
+3
arch/arm/plat-omap/include/plat/common.h
··· 30 #include <linux/delay.h> 31 32 #include <plat/i2c.h> 33 34 struct sys_timer; 35 ··· 55 void am35xx_init_early(void); 56 void ti816x_init_early(void); 57 void omap4430_init_early(void); 58 59 void omap_sram_init(void); 60
··· 30 #include <linux/delay.h> 31 32 #include <plat/i2c.h> 33 + #include <plat/omap_hwmod.h> 34 35 struct sys_timer; 36 ··· 54 void am35xx_init_early(void); 55 void ti816x_init_early(void); 56 void omap4430_init_early(void); 57 + 58 + extern int omap_dss_reset(struct omap_hwmod *); 59 60 void omap_sram_init(void); 61
+1 -1
arch/arm/plat-s3c24xx/cpu-freq-debugfs.c
··· 12 */ 13 14 #include <linux/init.h> 15 - #include <linux/module.h> 16 #include <linux/interrupt.h> 17 #include <linux/ioport.h> 18 #include <linux/cpufreq.h>
··· 12 */ 13 14 #include <linux/init.h> 15 + #include <linux/export.h> 16 #include <linux/interrupt.h> 17 #include <linux/ioport.h> 18 #include <linux/cpufreq.h>
+1
arch/arm/plat-s5p/sysmmu.c
··· 11 #include <linux/io.h> 12 #include <linux/interrupt.h> 13 #include <linux/platform_device.h> 14 15 #include <asm/pgtable.h> 16
··· 11 #include <linux/io.h> 12 #include <linux/interrupt.h> 13 #include <linux/platform_device.h> 14 + #include <linux/export.h> 15 16 #include <asm/pgtable.h> 17
+2
arch/arm/plat-samsung/include/plat/gpio-cfg.h
··· 24 #ifndef __PLAT_GPIO_CFG_H 25 #define __PLAT_GPIO_CFG_H __FILE__ 26 27 typedef unsigned int __bitwise__ samsung_gpio_pull_t; 28 typedef unsigned int __bitwise__ s5p_gpio_drvstr_t; 29
··· 24 #ifndef __PLAT_GPIO_CFG_H 25 #define __PLAT_GPIO_CFG_H __FILE__ 26 27 + #include<linux/types.h> 28 + 29 typedef unsigned int __bitwise__ samsung_gpio_pull_t; 30 typedef unsigned int __bitwise__ s5p_gpio_drvstr_t; 31
+1 -1
arch/arm/plat-samsung/pd.c
··· 11 */ 12 13 #include <linux/init.h> 14 - #include <linux/module.h> 15 #include <linux/platform_device.h> 16 #include <linux/err.h> 17 #include <linux/pm_runtime.h>
··· 11 */ 12 13 #include <linux/init.h> 14 + #include <linux/export.h> 15 #include <linux/platform_device.h> 16 #include <linux/err.h> 17 #include <linux/pm_runtime.h>
+1 -1
arch/arm/plat-samsung/pwm.c
··· 11 * the Free Software Foundation; either version 2 of the License. 12 */ 13 14 - #include <linux/module.h> 15 #include <linux/kernel.h> 16 #include <linux/platform_device.h> 17 #include <linux/slab.h>
··· 11 * the Free Software Foundation; either version 2 of the License. 12 */ 13 14 + #include <linux/export.h> 15 #include <linux/kernel.h> 16 #include <linux/platform_device.h> 17 #include <linux/slab.h>
+1
arch/arm/tools/mach-types
··· 1123 thales_adc MACH_THALES_ADC THALES_ADC 3492 1124 ubisys_p9d_evp MACH_UBISYS_P9D_EVP UBISYS_P9D_EVP 3493 1125 atdgp318 MACH_ATDGP318 ATDGP318 3494 1126 smdk4212 MACH_SMDK4212 SMDK4212 3638 1127 smdk4412 MACH_SMDK4412 SMDK4412 3765
··· 1123 thales_adc MACH_THALES_ADC THALES_ADC 3492 1124 ubisys_p9d_evp MACH_UBISYS_P9D_EVP UBISYS_P9D_EVP 3493 1125 atdgp318 MACH_ATDGP318 ATDGP318 3494 1126 + m28evk MACH_M28EVK M28EVK 3613 1127 smdk4212 MACH_SMDK4212 SMDK4212 3638 1128 smdk4412 MACH_SMDK4412 SMDK4412 3765
-7
include/video/omapdss.h
··· 307 void (*dsi_disable_pads)(int dsi_id, unsigned lane_mask); 308 }; 309 310 - #if defined(CONFIG_OMAP2_DSS_MODULE) || defined(CONFIG_OMAP2_DSS) 311 /* Init with the board info */ 312 extern int omap_display_init(struct omap_dss_board_info *board_data); 313 - #else 314 - static inline int omap_display_init(struct omap_dss_board_info *board_data) 315 - { 316 - return 0; 317 - } 318 - #endif 319 320 struct omap_display_platform_data { 321 struct omap_dss_board_info *board_data;
··· 307 void (*dsi_disable_pads)(int dsi_id, unsigned lane_mask); 308 }; 309 310 /* Init with the board info */ 311 extern int omap_display_init(struct omap_dss_board_info *board_data); 312 313 struct omap_display_platform_data { 314 struct omap_dss_board_info *board_data;