Hiroshi DOYU [Tue, 20 Oct 2009 19:26:19 +0000 (12:26 -0700)]
omap: iommu: fix wrong condition check for SUPERSECTION
A bit (2 << 0) is set both on SECTION and SUPERSECTION. To identify
SUPERSECTION correctly, other bits should be compared too.
Reported-by: "Srinivas Pulukuru" <srinivas.pulukuru@ti.com>
Signed-off-by: Hiroshi DOYU <Hiroshi.DOYU@nokia.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Hiroshi DOYU [Tue, 20 Oct 2009 19:28:53 +0000 (12:28 -0700)]
omap: iovmm: remove cache flush operation
Cache flush operation is handled in the upper client layer and iovmm
modules doesn't have to care about it. This patch will improve some
performance with current camera isp driver.
Signed-off-by: Hiroshi DOYU <Hiroshi.DOYU@nokia.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Hiroshi DOYU [Tue, 20 Oct 2009 19:27:49 +0000 (12:27 -0700)]
omap: iommu: avoid remapping if it's been mapped in MPU side
MPU side (v)-(p) mapping is necessary only if IOVMF_MMIO is set in
"flags".
Signed-off-by: Hiroshi DOYU <Hiroshi.DOYU@nokia.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Santosh Shilimkar [Tue, 20 Oct 2009 18:09:58 +0000 (11:09 -0700)]
omap: SDMA: Fix omap_stop_dma() API for channel linking
OMAP sDMA driver API omap_stop_dma() doesn't really stop the dma when used
in linking scenario.
The DMA channel needs to be disabled before resetting the chain.
Also fix clearing of the OMAP_DMA_ACTIVE status in the linked case.
Cc: Hari n <hari.zoom@gmail.com>
Cc: Jarkko Nikula <jhnikula@gmail.com>
Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
Signed-off-by: Venkatraman S <svenkatr@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Tony Lindgren [Tue, 20 Oct 2009 00:11:27 +0000 (17:11 -0700)]
omap: Split vmalloc.h for mach-omap1 and mach-omap2
Earlier patch "omap: Remap L3, L4 to get more kernel io address space"
changed the VMALLOC_END.
However, this change causes problems on mach-omap1:
BUG: mapping for 0xe0000000 at 0xe0000000 overlaps vmalloc space
BUG: mapping for 0xe1000000 at 0xe1000000 overlaps vmalloc space
Fix this by creating separate vmalloc.h files for mach-omap1
and mach-omap2.
Signed-off-by: Tony Lindgren <tony@atomide.com>
Tony Lindgren [Mon, 19 Oct 2009 23:05:54 +0000 (16:05 -0700)]
Linux omap got rebuilt from scratch: Plat headers series merged
$ git checkout -b tmp-rebuild-
1255993547 linus
$ git merge -m "Merge omap-fixes" omap-fixes
$ git merge -m "Merge omap-testing" omap-testing
$ git merge -m "Merge for-next" for-next
$ git merge -m "Merge cbus" cbus
$ git merge -m "Merge ehci" ehci
$ git merge -s ours master
$ git checkout master
$ git merge tmp-rebuild-
1255993547
To view the changes since the last rebuild, please do
$ git diff
27f73066b96b4a96b647803876240ca87770d12c..
91e55455b71e94f9e5b1e53a4ce10dcacb4469d3 arch/arm/*omap*/
Merge branch 'master' into tmp-rebuild-
1255993547
Tony Lindgren [Mon, 19 Oct 2009 23:05:50 +0000 (16:05 -0700)]
Merge ehci
Merge branch 'ehci' into tmp-rebuild-
1255993547
Tony Lindgren [Mon, 19 Oct 2009 23:05:49 +0000 (16:05 -0700)]
Merge cbus
Merge branch 'cbus' into tmp-rebuild-
1255993547
Tony Lindgren [Mon, 19 Oct 2009 23:05:48 +0000 (16:05 -0700)]
Merge for-next
Merge branch 'for-next' into tmp-rebuild-
1255993547
Tony Lindgren [Mon, 19 Oct 2009 23:05:48 +0000 (16:05 -0700)]
Merge omap-testing
Merge branch 'omap-testing' into tmp-rebuild-
1255993547
Kevin Hilman [Mon, 19 Oct 2009 23:04:18 +0000 (16:04 -0700)]
omap: PM: enable UART3 module wakeups
UART3 is in the PER powerdomain. If PER goes idle/inactive
independently of CORE, for UART3 to wakeup it must have its wakeup
enable bits setup in PM_WKEN_PER. This patch enables these bits.
The reason it works when PER and CORE work together is because when
CORE goes inactive/retention, the IOPAD wakeups are enabled and
trigger UART3 wakeup.
Without this patch, when the UART inactivity timer fires for UART3,
its clocks are disabled and it's unable to wakeup so will be unusable
until PER is awoken by another source.
Another way of testing is by keeping CORE on during suspend but
allowing PER to hit retention
# echo 3 > /debug/pm_debug/core_pwrdm/suspend
then enter suspend
# echo mem > /sys/power/state
Without this patch, UART3 will be unable to wakeup the system.
Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Tony Lindgren [Mon, 19 Oct 2009 22:48:41 +0000 (15:48 -0700)]
omap: Search and replace headers to use plat
Search and replace headers to use plat
Signed-off-by: Tony Lindgren <tony@atomide.com>
Juha Yrjola [Mon, 19 Oct 2009 22:48:41 +0000 (15:48 -0700)]
omap: Add drivers/cbus support
CBUS is the bus that Energy Management ASICs are connected to on
some Nokia mobile devices. Added support for CBUS and two EM ASIC
drivers.
This commit is a merge of all the commits that were in the linux-omap
tree:
aae6da6d5f09307b1feb391a47d1ddb6bf2d523e CBUS: Switch to gpio_request/free calls
702e65cebefe0af8ac4a648286f229947f3e1b68 cbus build fixes
f03fdeddbbaafb57f0f62629a316036f270a973d use gpio_to_irq (OMAP tree only)
570f10b7d3aaa3d542b749622df2a1f86e54ebc3 use gpio_direction_output (OMAP tree only)
d59842e6881e8f58cb17de5c0d11866796347d50 use gpio_direction_input (OMAP tree only)
7270f33b7b0139f40fcfbf771dc5ec5a773a71cd use standard gpio get/set calls (OMAP tree only)
f228a725b975832ac5771ab2fc86d06bd694cdb3 ARM: OMAP: Remove io_p2v, use ioremap and XXX_IO_ADDRESS
fdee8764947cde1e6933e7d981ce5b9de00e83e6 Merge current mainline tree into linux-omap tree
5061bcd119547453b32c847d2b9490a052bc1755 Merge mainline v2.6.27-rc2 tree into linux-omap tree
2d46b9c984d1c862f2525b4d0cabcb092f77ac64 CBUS: A workaround for ADC S/H HW bug: always keep ch 8 selected when S/H is used
648f41f57c2bfa7152f0760ca29a1e9dac566ca4 USB: Change omap USB code to use omap_read/write instead of __REG for multi-omap
d305c615bb7f85d49788a4ed28cb6aace2317ab7 ARM: OMAP: Misc compile fixes
bfbd53fcc738ff33ebcf91bc3ef25ae637cc4175 CBUS: Checkpatch.pl fixes for retu-wdt.c
2d28be5848928fbb17952e8eb5295fb506e0c40e CBUS: Fix retu mutex handling
7faa6dd4ae4db44f9c3142484266e17080314d79 CBUS: Fix retu-headset driver by not using removed input_dev->private field
8964c7d13133723ef2fe6a2b798a3fd336b15f4e ARM: OMAP: Add return value check for input_register_device()
2cf7bc8a039d6a6b4558c8c3a319ea15eccab60c CBUS: Fix retu-headset driver by not using removed input_dev->cdev field
97b705ad835f1481270c4b67b402d6e37fa8ad15 ARM: OMAP: Misc compile fixes after syncing with mainline
488de021a75771df95473c85bfaa9c8f1c9db659 tahvo-usb: compile fix usb/gadget.h
d079a1c74ea46f75cc406838c45652b97205e6be CBUS: Do not BUG_ON in retu-headset in case of spurious release event
074e3419440ba83e659be554f827e928826b512d CBUS: Fix reentrant issues in retu-headset driver
9afd4b705891e8afd505ecabec25539b22416d7a CBUS: Manage bias voltage in retu-headset suspend/resume code
0de1ae4b1cee28514dec435bf58c4b5960dfb4e1 CBUS: Cleanup retu-headset driver
dff99b718dffb5c041c99eebb3607f411d377f4d ARM: OMAP: Misc compile fixes after updating to current mainline tree
e0f2c271e0e3feaab8f8190b39876683099d3f6a ARM: OMAP: Fix inconsistency of completion in retu-rtc
6cda72c73944cc50250b3ae959174b6778d5e19f ARM: OMAP: Fix USB compilation for N770 defconfig
d041f80e997ff7c21b14fdee920a034e576aa226 CBUS: Add driver for Retu/Vilma headset detection
699d8412c1bf505f24d1a2048b49b8ffd8fe1d00 ARM: OMAP: Clean up bitrot to sync with mainline
ba9ca80b6468c5500a84a5c5e84383a6925a0bc3 ARM: OMAP: Convert driver interrupt flags SA_* to IRQF_*
7adeaaa4390dff8dcd4e44e6bcb144befcc2816f ARM: OMAP: Workqueue changes for retu-rtc
708739a058a59b76f72062bda81fb961e05d61e8 ARM: OMAP: Workqueue changes for tahvo-usb
995dda5fa21c77d337fa2fc07914ecb15cd08e54 ARM: OMAP: Fix warnings in N770 build
e2f0b012fd0fc16899dcdabc0b43fabdfdadcd8c ARM: OMAP: Fix broken N770 build (tahvo-usb)
d5c772f519236d8683b460e5da37f4a943ca4aae Fix some pt_regs users
229b59cdb41742aa4aee3628962af6ef2c4d944a Sync with mainline: Get rid of unnecessary pt_regs
b983452be56be4169233c34be1134e8030be674b Sync with mainline: Get rid of <#include linux/config.h>
77845293a4eb6cfea806ecc74ea9988c044a76bc CBUS: Retu: add atomic set and clear register bits function
d2db44bd92af99576cdf976f7dfc95f54884b14d CBUS: Tahvo: add atomic set and clear register bits function
e19cba0ecf9dd2d9adfdba175e335aebe973023a CBUS: Enable suspend wakeup for Retu IRQ
8c81aa40bea255769f13449dfb7699552ddb8438 Merge source.mvista.com:/home/git/linux-omap-2.6
1230366a669d16c7a292586adc7ab0725395f5b4 Manual merge to make things compile after updating to 2.6.18-rc4
6b411907432fe97bce3e6a253f6b98ab6c105efc CBUS: turn off tahvo-usb OTG idle mode during enabling
e3b2a7b6c6bcb4d6e839695fdac3e23b86046f98 CBUS: Make Retu RTC and Tahvo USB drivers use sysfs_notify
fe3702054f6412aea04373ceb9d27a4a417ff3f0 OMAP: Fix USB on Nokia 770
9c926661738080ee298bc3a51240dd102973fa61 [PATCH] ARM: OMAP: tahvo_user: sem2mutex conversion
ea90ef431139e4ac40b1d08726f45283f98d50ef [PATCH] ARM: OMAP: tahvo usb: sem2mutex conversion
06563a863d399ab6a3a5c104ddf086030f33b6f6 [PATCH] ARM: OMAP: retu-user: sem2mutex conversion
72a222f41989a4b8ad8cddf62c47608ad2e9e358 [PATCH] ARM: OMAP: retu-rtc: sem2mutex conversion
7508d984603f5ce3cb6883c229c97ed0a35d24c6 [PATCH] CBUS: Fix tahvo-usb omap_otg_remove
07f4f04763e2ff4333d44bec438d4bacbea0b4ae CBUS: Convert Retu power button driver to use input_allocate_device()
c604ff0bb1bbd3c6bf14bb9e5cae67c5a89e4ece cbus: Update tahvo-usb for kernel API changes.
f5c9432bb9bd44968cb785e3bb8aad95d6af3431 [PATCH] ARM: OMAP: gpio-switch and retu-rtc kobject_uevent() fixes
517df76f9295ac1865494476e8b531c65232dc5a ARM: OMAP: Replace clock.h with clk.h
93cb1e87df6ac03d315c0408634831e7db898a77 ARM: OMAP: Support for new Retu chips
480a299b3f3a5302f068fb7e3c68069ab3d355a5 ARM: OMAP: Support for 7-bit backlight register on new Tahvo chips
19deb6846965d9fdd5a87cae3593a953ccfea778 ARM: OMAP: Add CBUS support
Tony Lindgren [Mon, 19 Oct 2009 22:48:23 +0000 (15:48 -0700)]
ehci: Search and replace plat headers to match linux-omap changes
Search and replace plat headers to match linux-omap changes
Note that this patch will break compile against mainline
until the related linux-omap changes are merged.
Signed-off-by: Tony Lindgren <tony@atomide.com>
Tony Lindgren [Mon, 19 Oct 2009 22:48:22 +0000 (15:48 -0700)]
omap3: ehci: trivial fix of a debug print
omap3: ehci: trivial fix of a debug print
We're interested in uhh_hostconfig, not uhh_base. While we
are actually printing the former, we're calling it the latter.
Signed-off-by: Anand Gadiyar <gadiyar@ti.com>
Acked-by: Felipe Balbi <felipe.balbi@nokia.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Ajay Kumar Gupta [Mon, 19 Oct 2009 22:48:22 +0000 (15:48 -0700)]
ehci: fix port connect status programming
Current programming takes the default vaule of HSUSB port status
from UHH_HOSTCONFIG and write back the same to UHH_HOSTCONFIG
without updating.
This patch updates the port status based on board configuration.
Without this patch EHCI port becomes unusable on OMAP3EVM when a
USB HDD is connected to it through a HS HUB and we get below
error message,
"hub 1-0:1.0: Cannot enable port 1. Maybe the USB cable is bad?"
Signed-off-by: Ajay Kumar Gupta <ajay.gupta@ti.com>
Signed-off-by: Anand Gadiyar <gadiyar@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Anand Gadiyar [Mon, 19 Oct 2009 22:48:22 +0000 (15:48 -0700)]
omap3: ehci build-fix
omap3: ehci build-fix
Commit
b5d4fdd9 (omap: ehci: remove chargepump hack) by me
introduced a build error.
Fix this.
Signed-off-by: Anand Gadiyar <gadiyar@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Anand Gadiyar [Mon, 19 Oct 2009 22:48:21 +0000 (15:48 -0700)]
omap: ehci: remove DPLL5 programming
DPLL5 programming should be taken care of by the clock framework.
The driver should not need to worry about programming this
explicitly.
Also, the DPLL5 m and n values used were valid only for a
specific value of the system clock. So they would not work
correctly for other input frequencies anyway.
Signed-off-by: Anand Gadiyar <gadiyar@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Anand Gadiyar [Mon, 19 Oct 2009 22:48:21 +0000 (15:48 -0700)]
omap: ehci: remove chargepump hack
This hack was for a very early development board that is no longer
in use. Remove it. No board should require it.
Signed-off-by: Anand Gadiyar <gadiyar@ti.com>
Acked-by: Felipe Balbi <felipe.balbi@nokia.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Koen Kooi [Mon, 19 Oct 2009 22:48:20 +0000 (15:48 -0700)]
ARM: OMAP: Fix beagleboard EHCI setup
The EHCI configuration in the beagleboard board file was copy/pasted
from the sdp one and hence wrong. The beagleboard only used one port
and lacks a charge pump.
Tested on revision C1D and C3 boards
Signed-off-by: Koen Kooi <koen@beagleboard.org>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Ajay Kumar Gupta [Mon, 19 Oct 2009 22:48:19 +0000 (15:48 -0700)]
ehci: Support for ES3.x
OMAP ES3.x supports portwise PHY or TLL mode of operation whereas
in ES2.x all the three ports can either be in PHY mode or in TLL
mode.Port3 can not be configured in PHY mode.
Port mode must be defined either PHY, TLL or UNKNOWN in platform
files.Be careful of the scenario where one port is set as PHY and
other in TLL but the OMAP silicon version is 2.x or earlier where
this scenario is *not* supported.
Changes are :
- Setup all the bypass configuration in omap_start_ehc()
based on ES version.
- Remove UHH_HOSTCONFIG programming for bypass settings
in omap_usb_utmi_init()
Signed-off-by: Ajay Kumar Gupta <ajay.gupta@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Olof Johansson [Mon, 19 Oct 2009 22:48:19 +0000 (15:48 -0700)]
[v2] omap2: ehci: Make Overo compile again
Overo needs the same changes as the other platforms do for the ehci changes.
Also, roll in the corresponding change from Steve Sakoman fixing the
port setup (removing the redundant GPIO setup and switching to port 2).
Signed-off-by: Olof Johansson <olof@lixom.net>
Acked-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Ajay Kumar Gupta [Mon, 19 Oct 2009 22:48:18 +0000 (15:48 -0700)]
ehci: update driver with another generic change
Update the OMAP EHCI driver in accordance with below patch
introduced in generic EHCI driver.
commit
914b701280a76f96890ad63eb0fa99bf204b961c
USB: EHCI: use the new clear_tt_buffer interface
Without this EHCI becomes unusable when a compound device
DELL USB keyboard)is connected and disconnected.
Signed-off-by: Ajay Kumar Gupta <ajay.gupta@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Ajay Kumar Gupta [Mon, 19 Oct 2009 22:48:17 +0000 (15:48 -0700)]
ehci: fix kernel panic in ehci_probe
hcd_priv_size has to be sizeof(struct ehci_hcd).
- .hcd_priv_size = sizeof(struct ehci_hcd_omap),
+ .hcd_priv_size = sizeof(struct ehci_hcd),
Without this kernel panic is observed in probe function.
Signed-off-by: Ajay Kumar Gupta <ajay.gupta@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Olof Johansson [Mon, 19 Oct 2009 22:48:16 +0000 (15:48 -0700)]
EHCI USB: Don't use generic shutdown function
The OMAP EHCI glue code has a layer of driver state struct between
the platform_device and usb_hcd. So it can't use the generic
usb_hcd_platform_shutdown.
This fixes a panic at reboot time.
Signed-off-by: Olof Johansson <olof@lixom.net>
Acked-by: Felipe Balbi <felipe.balbi@nokia.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Ajay Kumar Gupta [Mon, 19 Oct 2009 22:48:14 +0000 (15:48 -0700)]
ehci: portwise configurations
OMAP3 EHCI has three ports and we can configure port modes
(PHY/TLL) on per port basis in silicon version ES3.0 onwards.
This patch modifies the existing EHCI driver to accomodate
portwise mode configuration.
Changes being done:
- Pass platform_data pointer as parameter to usb_ehci_init()
to avoid multiple parameters.
- Use platform_data pointer in usb-ehci.c as platform_data
directly without copying it to another *pdata*.
- Initializing platform_data in all platform files with
platform specific ehci parameters.
- Added port_mode[OMAP_HS_USB_PORTS]in platform_data
structures.This allows to setup mux pins on per port basis.
- Added phy_reset_gpio[OMAP_HS_USB_PORTS].
Signed-off-by: Ajay Kumar Gupta <ajay.gupta@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Ajay Kumar Gupta [Mon, 19 Oct 2009 22:48:12 +0000 (15:48 -0700)]
ehci: increase timeout to fix ehci failure
Sometime during TLL reset and waiting loop for TLL reset timeouts and thus
ehci init fails. Fixing this by increasing timeout value.
Signed-off-by: Ajay Kumar Gupta <ajay.gupta@ti.com>
Signed-off-by: Felipe Balbi <felipe.balbi@nokia.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Ajay Kumar Gupta [Mon, 19 Oct 2009 22:48:10 +0000 (15:48 -0700)]
ehci: fix phy_reset init in ehci probe
phy_reset is not getting updated from platform_data.
Signed-off-by: Ajay Kumar Gupta <ajay.gupta@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Ajay Kumar Gupta [Mon, 19 Oct 2009 22:48:09 +0000 (15:48 -0700)]
ehci: correct EHCI init parameters on OMAP3EVM
Multimedia Daughter card on OMAP3EVM uses port2 as EHCI port.
Other ports (port1 and port3)are not used.
GPIO135 has been used as EHCI phy reset pin so the mux config
is also setup.
Signed-off-by: Ajay Kumar Gupta <ajay.gupta@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Ajay Kumar Gupta [Mon, 19 Oct 2009 22:48:07 +0000 (15:48 -0700)]
ehci: update driver with generic change
Update the OMAP EHCI driver in accordance with below patch
introduced in generic EHCI driver.
commit:
b18ffd49e86102a9ed0a1cc83fdafe3891e844e5
USB: EHCI: update toggle state for linked QHs
Signed-off-by: Ajay Kumar Gupta <ajay.gupta@ti.com>
Ajay Kumar Gupta [Mon, 19 Oct 2009 22:48:05 +0000 (15:48 -0700)]
ehci: fix ehci pin mux init
EHCI pin mux init fucntion is still using old #ifdef
which are not defined anymore.This causes pin mux init to
always set TLL settings and thus EHCI PHY mode doesn't work.
Fixing this issue by using phy_mode parameter to initialize
mux settings.
Signed-off-by: Ajay Kumar Gupta <ajay.gupta@ti.com>
Acked-by: Felipe Balbi <felipe.balbi@nokia.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Felipe Balbi [Mon, 19 Oct 2009 22:48:05 +0000 (15:48 -0700)]
usb: host: introduce ehci-omap driver
This patch introduces ehci support for omap hardware.
Signed-off-by: Felipe Balbi <me@felipebalbi.com>
Vikram Pandita [Mon, 19 Oct 2009 22:48:03 +0000 (15:48 -0700)]
USB: Add OMAP EHCI glue layer
Add OMAP EHCI glue layer
Signed-off-by: Vikram Pandita <vikram.pandita@ti.com>
Acked-by: Kamat, Nishant <nskamat@ti.com>
Nishanth Menon [Mon, 19 Oct 2009 22:25:56 +0000 (15:25 -0700)]
omap: Introduce OMAP3630
OMAP3630 is the latest in the family of OMAP3 devices
and among the changes it introduces are:
New OPP levels for new voltage and frequency levels. a bunch of
Bug fixes to various modules feature additions, notably with ISP,
sDMA etc.
Details about the chip is available here:
http://focus.ti.com/general/docs/wtbu/wtbuproductcontent.tsp?templateId=6123&navigationId=12836&contentId=52606
Strategy used:
Strategy to introduce this device into Linux was discussed here:
Ref: http://marc.info/?t=
125343303400003&r=1&w=2
Two approaches were available:
a) Consider 3630 generation of devices as a new family of silicon
b) Consider 3630 as an offshoot of 3430 family of devices
As a common consensus, (b) seems to be more valid for 3630 as:
* There are changes which are easily handled by using "FEATURES"
infrastructure.
For details how to do this, see thread:
http://marc.info/?t=
125050998500001&r=1&w=2
* Most of existing 34xx infrastructure can be reused(almost 90%+)
- so no ugly if (cpu_is_omap34xx() || cpu_is_omap36xx())
all over the place
- lesser chance of bugs due to reuse of proven code flow
- 36xx specific handling can still be done where required
within the existing infrastructure
NOTE:
* If additional 34xx series are added, OMAP3430_REV_ESXXXX can be
added on top of the existing 3630 ones are renumbered
This patch was tested on SDP3430, boot tested on 3630 platform using
3430sdp defconfig
Signed-off-by: Madhusudhan Chikkature Rajashekar <madhu.cr@ti.com>
Signed-off-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Vikram Pandita <vikram.pandita@ti.com>
Cc: Allen Pais <allen.pais@ti.com>
Cc: Anand Gadiyar <gadiyar@ti.com>
Cc: Benoit Cousson <b-cousson@ti.com>
Cc: Felipe Balbi <felipe.balbi@nokia.com>
Cc: Kevin Hilman <khilman@deeprootsystems.com>
Cc: Sanjeev Premi <premi@ti.com>
Cc: Santosh Shilimkar <santosh.shilimkar@ti.com>
Cc: Sergio Alberto Aguirre Rodriguez <saaguirre@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Sanjeev Premi [Mon, 19 Oct 2009 22:25:56 +0000 (15:25 -0700)]
omap: Runtime detection of OMAP35x devices
Add runtime check for these OMAP35x variations
based on the detected Si features:
OMAP3503, OMAP3515, OMAP3525 and OMA3530.
Also, delayed the call to pr_info() into actual
variant is detected in omap3_cpuinfo()
Signed-off-by: Sanjeev Premi <premi@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Sanjeev Premi [Mon, 19 Oct 2009 22:25:56 +0000 (15:25 -0700)]
omap: Runtime detection of Si features
The OMAP35x family has multiple variants differing
in the HW features. This patch detects these features
at runtime and prints information during the boot.
Since most of the code seemed repetitive, macros
have been used for readability.
Signed-off-by: Sanjeev Premi <premi@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Alexander Shishkin [Mon, 19 Oct 2009 22:25:55 +0000 (15:25 -0700)]
omap: Eliminate OMAP_MAX_NR_PORTS
Eliminate OMAP_MAX_NR_PORTS
Note that also the null terminator entry for omap1
serial_platform_data needs to be now removed to avoid
oopsing.
Signed-off-by: Alexander Shishkin <virtuoso@slind.org>
Acked-by: Kevin Hilman <khilman@deeprootsystems.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Tony Lindgren [Mon, 19 Oct 2009 22:25:55 +0000 (15:25 -0700)]
omap: headers: Move remaining headers from include/mach to include/plat
Move the remaining headers under plat-omap/include/mach
to plat-omap/include/plat. Also search and replace the
files using these headers to include using the right path.
This was done with:
#!/bin/bash
mach_dir_old="arch/arm/plat-omap/include/mach"
plat_dir_new="arch/arm/plat-omap/include/plat"
headers=$(cd $mach_dir_old && ls *.h)
omap_dirs="arch/arm/*omap*/ \
drivers/video/omap \
sound/soc/omap"
other_files="drivers/leds/leds-ams-delta.c \
drivers/mfd/menelaus.c \
drivers/mfd/twl4030-core.c \
drivers/mtd/nand/ams-delta.c"
for header in $headers; do
old="#include <mach\/$header"
new="#include <plat\/$header"
for dir in $omap_dirs; do
find $dir -type f -name \*.[chS] | \
xargs sed -i "s/$old/$new/"
done
find drivers/ -type f -name \*omap*.[chS] | \
xargs sed -i "s/$old/$new/"
for file in $other_files; do
sed -i "s/$old/$new/" $file
done
done
for header in $(ls $mach_dir_old/*.h); do
git mv $header $plat_dir_new/
done
Signed-off-by: Tony Lindgren <tony@atomide.com>
Tony Lindgren [Mon, 19 Oct 2009 22:25:54 +0000 (15:25 -0700)]
omap: headers: Create headers necessary for compile under mach-omap1 and mach-omap2
Create the headers needed for compiling under
mach-omap1/include/mach and mach-omap2/include/mach.
This was done with the following script:
#!/bin/bash
mach_files="clkdev.h gpio.h hardware.h io.h irqs.h memory.h \
smp.h system.h timex.h uncompress.h vmalloc.h"
omaps="mach-omap1 mach-omap2"
mach_dir_old="arch/arm/plat-omap/include/mach"
plat_dir_new="arch/arm/plat-omap/include/plat"
mkdir -p $plat_dir_new
git add $plat_dir_new
for dir in $omaps; do
mach_dir_new="arch/arm/$dir/include/mach"
for header in $mach_files; do
file="$mach_dir_new/$header"
echo -ne "/*\n * $file\n */\n\n#include <plat/$header>\n" > $file
git add $file
if [ ! -f $plat_dir_new/$header ]; then
git mv $mach_dir_old/$header $plat_dir_new/$header
fi
done
done
Signed-off-by: Tony Lindgren <tony@atomide.com>
Tony Lindgren [Mon, 19 Oct 2009 22:25:54 +0000 (15:25 -0700)]
omap: headers: Move mtd-xip.h to be mach-omap1 specific
These registers are omap1 specific.
Signed-off-by: Tony Lindgren <tony@atomide.com>
Tony Lindgren [Mon, 19 Oct 2009 22:25:53 +0000 (15:25 -0700)]
omap: headers: Split entry-macro.S for mach-omap1 and mach-omap2
Split entry-macro.S for mach-omap1 and mach-omap2
Signed-off-by: Tony Lindgren <tony@atomide.com>
Tony Lindgren [Mon, 19 Oct 2009 22:25:53 +0000 (15:25 -0700)]
omap: headers: Split debug-macro.S for mach-omap1 and mach-omap2
This also creates the include/mach subdirectories under
mach-omap1 and mach-omap2.
Signed-off-by: Tony Lindgren <tony@atomide.com>
Tony Lindgren [Mon, 19 Oct 2009 22:25:52 +0000 (15:25 -0700)]
omap: headers: Add mach path to include files
This is to prepare for moving hardware.h to live under plat
instead of mach.
Signed-off-by: Tony Lindgren <tony@atomide.com>
Santosh Shilimkar [Mon, 19 Oct 2009 22:25:52 +0000 (15:25 -0700)]
omap: Add OMAP4 L3 and L4 peripherals.
This patch adds few necessary peripherals for OMAP4.
Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Santosh Shilimkar [Mon, 19 Oct 2009 22:25:52 +0000 (15:25 -0700)]
omap: Fix DEBUG_LL UART io address
This patch fixes the low level debug UART io address as per this series.
The change is essential to have CONFIG_DEBUG_LL working.
Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Santosh Shilimkar [Mon, 19 Oct 2009 22:25:52 +0000 (15:25 -0700)]
omap: Move SRAM map to claim more io space
This patch moves SRAM map to free up more kernel address io space.
Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Santosh Shilimkar [Mon, 19 Oct 2009 22:25:49 +0000 (15:25 -0700)]
omap: Remap L3, L4 to get more kernel io address space
This patch remap L3 and L4 io space to get more kernel address space.
With this patch, 512 MB of IO space is reclaimed.
Some more combinations are possible but to make it uniform across
OMAP24XX, OMAP34XX and OMAP4430, these io combinations are chosen
Once this is reviewed and tested sufficiently, a documentation entry can
be created to ease up reading and debugging.
Like "Documentation/arm/omap/io_map.txt"
Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Santosh Shilimkar [Mon, 19 Oct 2009 22:25:31 +0000 (15:25 -0700)]
omap: Split OMAP2_IO_ADDRESS to L3 and L4
This patch splits OMAP2_IO_ADDRESS to OMAP2_L3_IO_ADDRESS and
OMAP2_L4_IO_ADDRESS to reclaim more IO space.
The omap_read*() and omap_write*() functions will work only over
L4 address space. Current omap kernel stack uses these functions
only to access registers over L4 io address space
Note that these macros should only be used when ioremap does
not work. Please use ioremap instead in all new code.
Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Tony Lindgren [Mon, 19 Oct 2009 22:25:28 +0000 (15:25 -0700)]
omap: Use ioremap in dispc.c
Use ioremap in dispc.c
Cc: Imre Deak <imre.deak@nokia.com>
Cc: Tomi Valkeinen <tomi.valkeinen@nokia.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Tony Lindgren [Mon, 19 Oct 2009 22:25:26 +0000 (15:25 -0700)]
omap: Use ioremap for omap4 L4 code
Use ioremap for omap4 L4 code
Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Tony Lindgren [Mon, 19 Oct 2009 22:25:24 +0000 (15:25 -0700)]
omap: Use getnstimeofday for omap_device
Use getnstimeofday for omap_device
Acked-by: Paul Walmsley <paul@pwsan.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Tony Lindgren [Mon, 19 Oct 2009 22:25:22 +0000 (15:25 -0700)]
omap: Use ioremap in omap_hwmod.c
Use ioremap in omap_hwmod.c
Acked-by: Paul Walmsley <paul@pwsan.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Tony Lindgren [Mon, 19 Oct 2009 22:25:20 +0000 (15:25 -0700)]
omap: Use ioremap in gpio.c
Use ioremap in gpio.c
Signed-off-by: Tony Lindgren <tony@atomide.com>
Tony Lindgren [Mon, 19 Oct 2009 22:25:18 +0000 (15:25 -0700)]
omap: Use ioremap in dmtimer.c
Use ioremap in dmtimer.c
Signed-off-by: Tony Lindgren <tony@atomide.com>
Tony Lindgren [Mon, 19 Oct 2009 22:25:15 +0000 (15:25 -0700)]
omap: Use ioremap in dma.c
Use ioremap in dma.c
Signed-off-by: Tony Lindgren <tony@atomide.com>
Tony Lindgren [Mon, 19 Oct 2009 22:25:13 +0000 (15:25 -0700)]
omap: Use ioremap in irq.c
Use ioremap in irq.c
Signed-off-by: Tony Lindgren <tony@atomide.com>
Santosh Shilimkar [Mon, 19 Oct 2009 17:28:51 +0000 (10:28 -0700)]
omap: Fix UART4 platform data on omap4
This patch removes the unnecessary UART4 platform which is under
data is wrong because of this
There is a separate platform structure for UART4
Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
Reviewed-By: Kevin Hilman <khilman@deeprootsystems.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Santosh Shilimkar [Mon, 19 Oct 2009 17:25:45 +0000 (10:25 -0700)]
omap: Allow omap_serial_early_init() for OMAP4430 board
This patch enables omap_serial_early_init() function for OMAP4430
SDP. Without this the bootup would throw oops in omap_serial_init().
Note that the ifndef CONFIG_ARCH_OMAP4 is split into two sections
to enable omap_serial_early_init(). This ifndef cannot be removed
until omap4 clock framework is implemented.
Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
Reviewed-By: Tony Lindgren <tony@atomide.com>
Reviewed-By: Kevin Hilman <khilman@deeprootsystems.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Tony Lindgren [Mon, 19 Oct 2009 17:07:05 +0000 (10:07 -0700)]
Fix typo in 4430 ioremap changes
The last patch had a typo
Signed-off-by: Tony Lindgren <tony@atomide.com>
Santosh Shilimkar [Mon, 19 Oct 2009 00:27:22 +0000 (17:27 -0700)]
omap: ioremap fixes for omap4
This patch fixes the below ioremap for omap4 patch.
http://patchwork.kernel.org/patch/54457/
Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Tony Lindgren [Sat, 17 Oct 2009 00:11:19 +0000 (17:11 -0700)]
Linux omap got rebuilt from scratch
$ git checkout -b tmp-rebuild-
1255738174 linus
$ git merge -m "Merge cbus" cbus
$ git merge -m "Merge ehci" ehci
$ git merge -m "Merge omap-fixes" omap-fixes
$ git merge -m "Merge omap-testing" omap-testing
$ git merge -m "Merge for-next" for-next
$ git merge -s ours master
$ git checkout master
$ git merge tmp-rebuild-
1255738174
To view the changes since the last rebuild, please do
$ git diff
274c94b29ee7c53609a756acca974e4742c59559..
9813a20643b37bb1b27bc4d312a48bf8c840776f arch/arm/*omap*/
Merge branch 'master' into tmp-rebuild-
1255738174
Tony Lindgren [Sat, 17 Oct 2009 00:11:13 +0000 (17:11 -0700)]
Merge for-next
Merge branch 'for-next' into tmp-rebuild-
1255738174
Tony Lindgren [Sat, 17 Oct 2009 00:11:11 +0000 (17:11 -0700)]
Merge omap-testing
Merge branch 'omap-testing' into tmp-rebuild-
1255738174
Tony Lindgren [Sat, 17 Oct 2009 00:11:07 +0000 (17:11 -0700)]
Merge omap-fixes
Merge branch 'omap-fixes' into tmp-rebuild-
1255738174
Tony Lindgren [Sat, 17 Oct 2009 00:11:05 +0000 (17:11 -0700)]
Merge ehci
Merge branch 'ehci' into tmp-rebuild-
1255738174
Nishanth Menon [Sat, 17 Oct 2009 00:07:18 +0000 (17:07 -0700)]
omap: Introduce OMAP3630
OMAP3630 is the latest in the family of OMAP3 devices
and among the changes it introduces are:
New OPP levels for new voltage and frequency levels. a bunch of
Bug fixes to various modules feature additions, notably with ISP,
sDMA etc.
Details about the chip is available here:
http://focus.ti.com/general/docs/wtbu/wtbuproductcontent.tsp?templateId=6123&navigationId=12836&contentId=52606
Strategy used:
Strategy to introduce this device into Linux was discussed here:
Ref: http://marc.info/?t=
125343303400003&r=1&w=2
Two approaches were available:
a) Consider 3630 generation of devices as a new family of silicon
b) Consider 3630 as an offshoot of 3430 family of devices
As a common consensus, (b) seems to be more valid for 3630 as:
* There are changes which are easily handled by using "FEATURES"
infrastructure.
For details how to do this, see thread:
http://marc.info/?t=
125050998500001&r=1&w=2
* Most of existing 34xx infrastructure can be reused(almost 90%+)
- so no ugly if (cpu_is_omap34xx() || cpu_is_omap36xx())
all over the place
- lesser chance of bugs due to reuse of proven code flow
- 36xx specific handling can still be done where required
within the existing infrastructure
NOTE:
* If additional 34xx series are added, OMAP3430_REV_ESXXXX can be
added on top of the existing 3630 ones are renumbered
This patch was tested on SDP3430, boot tested on 3630 platform using
3430sdp defconfig
Signed-off-by: Madhusudhan Chikkature Rajashekar <madhu.cr@ti.com>
Signed-off-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Vikram Pandita <vikram.pandita@ti.com>
Cc: Allen Pais <allen.pais@ti.com>
Cc: Anand Gadiyar <gadiyar@ti.com>
Cc: Benoit Cousson <b-cousson@ti.com>
Cc: Felipe Balbi <felipe.balbi@nokia.com>
Cc: Kevin Hilman <khilman@deeprootsystems.com>
Cc: Sanjeev Premi <premi@ti.com>
Cc: Santosh Shilimkar <santosh.shilimkar@ti.com>
Cc: Sergio Alberto Aguirre Rodriguez <saaguirre@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Sanjeev Premi [Sat, 17 Oct 2009 00:07:17 +0000 (17:07 -0700)]
omap: Runtime detection of OMAP35x devices
Add runtime check for these OMAP35x variations
based on the detected Si features:
OMAP3503, OMAP3515, OMAP3525 and OMA3530.
Also, delayed the call to pr_info() into actual
variant is detected in omap3_cpuinfo()
Signed-off-by: Sanjeev Premi <premi@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Tony Lindgren [Sat, 17 Oct 2009 00:07:16 +0000 (17:07 -0700)]
omap: Include bitops from cpu.h
Otherwise we need to include bitops.h everywhere where we
test the omap_rev.
Signed-off-by: Tony Lindgren <tony@atomide.com>
Sanjeev Premi [Sat, 17 Oct 2009 00:07:15 +0000 (17:07 -0700)]
omap: Runtime detection of Si features
The OMAP35x family has multiple variants differing
in the HW features. This patch detects these features
at runtime and prints information during the boot.
Since most of the code seemed repetitive, macros
have been used for readability.
Signed-off-by: Sanjeev Premi <premi@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Alexander Shishkin [Fri, 16 Oct 2009 23:34:10 +0000 (16:34 -0700)]
omap: Eliminate OMAP_MAX_NR_PORTS
Eliminate OMAP_MAX_NR_PORTS
Note that also the null terminator entry for omap1
serial_platform_data needs to be now removed to avoid
oopsing.
Signed-off-by: Alexander Shishkin <virtuoso@slind.org>
Acked-by: Kevin Hilman <khilman@deeprootsystems.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Santosh Shilimkar [Fri, 16 Oct 2009 23:34:09 +0000 (16:34 -0700)]
omap: Add OMAP4 L3 and L4 peripherals.
This patch adds few necessary peripherals for OMAP4.
Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Santosh Shilimkar [Fri, 16 Oct 2009 23:34:09 +0000 (16:34 -0700)]
omap: Fix DEBUG_LL UART io address
This patch fixes the low level debug UART io address as per this series.
The change is essential to have CONFIG_DEBUG_LL working.
Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Santosh Shilimkar [Fri, 16 Oct 2009 23:34:09 +0000 (16:34 -0700)]
omap: Move SRAM map to claim more io space
This patch moves SRAM map to free up more kernel address io space.
Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Santosh Shilimkar [Fri, 16 Oct 2009 23:34:08 +0000 (16:34 -0700)]
omap: Remap L3, L4 to get more kernel io address space
This patch remap L3 and L4 io space to get more kernel address space.
With this patch, 512 MB of IO space is reclaimed.
Some more combinations are possible but to make it uniform across
OMAP24XX, OMAP34XX and OMAP4430, these io combinations are chosen
Once this is reviewed and tested sufficiently, a documentation entry can
be created to ease up reading and debugging.
Like "Documentation/arm/omap/io_map.txt"
Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Santosh Shilimkar [Fri, 16 Oct 2009 23:30:17 +0000 (16:30 -0700)]
omap: Split OMAP2_IO_ADDRESS to L3 and L4
This patch splits OMAP2_IO_ADDRESS to OMAP2_L3_IO_ADDRESS and
OMAP2_L4_IO_ADDRESS to reclaim more IO space.
The omap_read*() and omap_write*() functions will work only over
L4 address space. Current omap kernel stack uses these functions
only to access registers over L4 io address space
Note that these macros should only be used when ioremap does
not work. Please use ioremap instead in all new code.
Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Tony Lindgren [Fri, 16 Oct 2009 23:30:17 +0000 (16:30 -0700)]
omap: Use ioremap in dispc.c
Use ioremap in dispc.c
Cc: Imre Deak <imre.deak@nokia.com>
Cc: Tomi Valkeinen <tomi.valkeinen@nokia.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Tony Lindgren [Fri, 16 Oct 2009 22:57:23 +0000 (15:57 -0700)]
omap: Use ioremap for omap4 L4 code
Use ioremap for omap4 L4 code
Cc: Santosh Shilimkar <santosh.shilimkar@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Tony Lindgren [Fri, 16 Oct 2009 22:57:06 +0000 (15:57 -0700)]
omap: Use getnstimeofday for omap_device
Use getnstimeofday for omap_device
Acked-by: Paul Walmsley <paul@pwsan.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Tony Lindgren [Fri, 16 Oct 2009 22:56:54 +0000 (15:56 -0700)]
omap: Use ioremap in omap_hwmod.c
Use ioremap in omap_hwmod.c
Acked-by: Paul Walmsley <paul@pwsan.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Tony Lindgren [Fri, 16 Oct 2009 22:55:09 +0000 (15:55 -0700)]
omap: Use ioremap in gpio.c
Use ioremap in gpio.c
Signed-off-by: Tony Lindgren <tony@atomide.com>
Tony Lindgren [Fri, 16 Oct 2009 22:54:16 +0000 (15:54 -0700)]
omap: Use ioremap in dmtimer.c
Use ioremap in dmtimer.c
Signed-off-by: Tony Lindgren <tony@atomide.com>
Tony Lindgren [Fri, 16 Oct 2009 22:52:10 +0000 (15:52 -0700)]
omap: Use ioremap in dma.c
Use ioremap in dma.c
Signed-off-by: Tony Lindgren <tony@atomide.com>
Tony Lindgren [Fri, 16 Oct 2009 22:51:04 +0000 (15:51 -0700)]
omap: Use ioremap in irq.c
Use ioremap in irq.c
Signed-off-by: Tony Lindgren <tony@atomide.com>
Tony Lindgren [Fri, 16 Oct 2009 16:53:00 +0000 (09:53 -0700)]
omap: Change low-level serial init to use ioremap
Change low-level serial init to use ioremap
Signed-off-by: Tony Lindgren <tony@atomide.com>
Tony Lindgren [Fri, 16 Oct 2009 16:53:00 +0000 (09:53 -0700)]
omap: Change low-level serial init to use ioremap
Change low-level serial init to use ioremap
Signed-off-by: Tony Lindgren <tony@atomide.com>
Tony Lindgren [Fri, 16 Oct 2009 01:18:25 +0000 (18:18 -0700)]
Linux omap got rebuilt from scratch
$ git checkout -b tmp-rebuild-
1255655897 linus
$ git merge -m "Merge cbus" cbus
$ git merge -m "Merge ehci" ehci
$ git merge -m "Merge omap-fixes" omap-fixes
$ git merge -m "Merge omap-testing" omap-testing
$ git merge -m "Merge for-next" for-next
$ git merge -s ours master
$ git checkout master
$ git merge tmp-rebuild-
1255655897
To view the changes since the last rebuild, please do
$ git diff
f856f168bcbc5f49253dd12a4d8452857a785f1c..
f9535282ad25a1f823bf2688df491d1dedc73939 arch/arm/*omap*/
Merge branch 'master' into tmp-rebuild-
1255655897
Tony Lindgren [Fri, 16 Oct 2009 01:18:21 +0000 (18:18 -0700)]
Merge for-next
Merge branch 'for-next' into tmp-rebuild-
1255655897
Tony Lindgren [Fri, 16 Oct 2009 01:18:20 +0000 (18:18 -0700)]
Merge omap-testing
Merge branch 'omap-testing' into tmp-rebuild-
1255655897
Tony Lindgren [Fri, 16 Oct 2009 01:18:19 +0000 (18:18 -0700)]
Merge omap-fixes
Merge branch 'omap-fixes' into tmp-rebuild-
1255655897
Tony Lindgren [Fri, 16 Oct 2009 01:18:18 +0000 (18:18 -0700)]
Merge ehci
Merge branch 'ehci' into tmp-rebuild-
1255655897
Nishanth Menon [Fri, 16 Oct 2009 01:16:39 +0000 (18:16 -0700)]
omap: Introduce OMAP3630
OMAP3630 is the latest in the family of OMAP3 devices
and among the changes it introduces are:
New OPP levels for new voltage and frequency levels. a bunch of
Bug fixes to various modules feature additions, notably with ISP,
sDMA etc.
Details about the chip is available here:
http://focus.ti.com/general/docs/wtbu/wtbuproductcontent.tsp?templateId=6123&navigationId=12836&contentId=52606
Strategy used:
Strategy to introduce this device into Linux was discussed here:
Ref: http://marc.info/?t=
125343303400003&r=1&w=2
Two approaches were available:
a) Consider 3630 generation of devices as a new family of silicon
b) Consider 3630 as an offshoot of 3430 family of devices
As a common consensus, (b) seems to be more valid for 3630 as:
* There are changes which are easily handled by using "FEATURES"
infrastructure.
For details how to do this, see thread:
http://marc.info/?t=
125050998500001&r=1&w=2
* Most of existing 34xx infrastructure can be reused(almost 90%+)
- so no ugly if (cpu_is_omap34xx() || cpu_is_omap36xx())
all over the place
- lesser chance of bugs due to reuse of proven code flow
- 36xx specific handling can still be done where required
within the existing infrastructure
NOTE:
* If additional 34xx series are added, OMAP3430_REV_ESXXXX can be
added on top of the existing 3630 ones are renumbered
This patch was tested on SDP3430, boot tested on 3630 platform using
3430sdp defconfig
Signed-off-by: Madhusudhan Chikkature Rajashekar <madhu.cr@ti.com>
Signed-off-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Vikram Pandita <vikram.pandita@ti.com>
Cc: Allen Pais <allen.pais@ti.com>
Cc: Anand Gadiyar <gadiyar@ti.com>
Cc: Benoit Cousson <b-cousson@ti.com>
Cc: Felipe Balbi <felipe.balbi@nokia.com>
Cc: Kevin Hilman <khilman@deeprootsystems.com>
Cc: Sanjeev Premi <premi@ti.com>
Cc: Santosh Shilimkar <santosh.shilimkar@ti.com>
Cc: Sergio Alberto Aguirre Rodriguez <saaguirre@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Sanjeev Premi [Fri, 16 Oct 2009 01:16:38 +0000 (18:16 -0700)]
omap: Runtime detection of OMAP35x devices
Add runtime check for these OMAP35x variations
based on the detected Si features:
OMAP3503, OMAP3515, OMAP3525 and OMA3530.
Also, delayed the call to pr_info() into actual
variant is detected in omap3_cpuinfo()
Signed-off-by: Sanjeev Premi <premi@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Tony Lindgren [Fri, 16 Oct 2009 01:16:38 +0000 (18:16 -0700)]
omap: Include bitops from cpu.h
Otherwise we need to include bitops.h everywhere where we
test the omap_rev.
Signed-off-by: Tony Lindgren <tony@atomide.com>
Sanjeev Premi [Fri, 16 Oct 2009 01:16:37 +0000 (18:16 -0700)]
omap: Runtime detection of Si features
The OMAP35x family has multiple variants differing
in the HW features. This patch detects these features
at runtime and prints information during the boot.
Since most of the code seemed repetitive, macros
have been used for readability.
Signed-off-by: Sanjeev Premi <premi@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Alexander Shishkin [Fri, 16 Oct 2009 01:16:36 +0000 (18:16 -0700)]
omap: Eliminate OMAP_MAX_NR_PORTS
Eliminate OMAP_MAX_NR_PORTS
Signed-off-by: Alexander Shishkin <virtuoso@slind.org>
Acked-by: Kevin Hilman <khilman@deeprootsystems.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Tony Lindgren [Fri, 16 Oct 2009 01:16:36 +0000 (18:16 -0700)]
omap: Use getnstimeofday for omap_device
Otherwise we cannot remove OMAP2_IO_ADDRESS.
Signed-off-by: Tony Lindgren <tony@atomide.com>
Tony Lindgren [Fri, 16 Oct 2009 01:16:35 +0000 (18:16 -0700)]
omap: Use ioremap for omap_hwmod instead of OMAP2_IO_ADDRESS
Otherwise we cannot get rid of OMAP2_IO_ADDRESS.
Signed-off-by: Tony Lindgren <tony@atomide.com>
Tony Lindgren [Fri, 16 Oct 2009 01:16:34 +0000 (18:16 -0700)]
omap: Use OMAP2_L4_IO_ADDRESS instead of OMAP2_IO_ADDRESS
Otherwise we cannot remove OMAP2_IO_ADDRESS.
Signed-off-by: Tony Lindgren <tony@atomide.com>
Santosh Shilimkar [Fri, 16 Oct 2009 01:16:34 +0000 (18:16 -0700)]
omap: Add OMAP4 L3 and L4 peripherals.
This patch adds few necessary peripherals for OMAP4.
Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Santosh Shilimkar [Fri, 16 Oct 2009 01:16:33 +0000 (18:16 -0700)]
omap: Fix DEBUG_LL UART io address
This patch fixes the low level debug UART io address as per this series.
The change is essential to have CONFIG_DEBUG_LL working.
Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>