summaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-imx/clk-imx25.c
Commit message (Collapse)AuthorAgeFilesLines
* ARM: i.MX25: clk: parent per5_clk to AHB clockSteffen Trumtrar2013-02-051-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | The mxc-timer on the imx25 needs to be derived from the AHB clock. If a bootloader reparents this clock to the ipg_clk_highfreq, which according to the datasheet is a valid operation, the system can/will produce lockups/ freezes after some time [1]. This can be forced with code like while(1) syscall(SYS_clock_gettime, CLOCK_REALTIME, &tp); This was already fixed with the commit "i.MX25 GPT clock fix: ensure correct the clock source" [2], for 3.1-rc2, but was lost, when i.MX was converted to the common clock framework ("ARM i.MX25: implement clocks using common clock framework") [3] [1]: http://lists.arm.linux.org.uk/lurker/message/20130129.161230.229bda17.en.html [2]: 2012d9ca2a1381ae3e733330a7f0d1d2f1988bba [3]: 6bbaec5676e4f475b0d78743cbd4c70a8804ce14 Signed-off-by: Steffen Trumtrar <s.trumtrar@pengutronix.de> Cc: stable@vger.kernel.org # v3.5+ Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: i.MX clock: Change the connection-id for fsl-usb2-udcPeter Chen2013-01-181-3/+3
| | | | | | | | | As we use platform_device_id for fsl-usb2-udc driver, it needs to change clk connection-id, or the related devm_clk_get will be failed. Signed-off-by: Peter Chen <peter.chen@freescale.com> Acked-by: Shawn Guo <shawn.guo@linaro.org> Signed-off-by: Felipe Balbi <balbi@ti.com>
* ARM i.MX25: Add devicetree supportSascha Hauer2012-11-121-4/+52
| | | | | | | | This adds a i.MX25 dt machine descriptor and changes the clock support to optionally initialize from dt. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de> Acked-by: Shawn Guo <shawn.guo@linaro.org>
* ARM i.MX25: Add missing clock gatesSascha Hauer2012-11-121-8/+55
| | | | | | | | | | | This completes the list of clock gates on the i.MX25. There are several clocks marked as reserved in the datasheet, but nevertheless used in the Freescale kernel. Add some comments to their positions and add 'reservedx' entries to the clk enum. This way we can replace them with the real names should we need them later. Adding the reserved entry names will help us keeping the clk numbers when moving to devicetree. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* Merge remote-tracking branch 'arm-soc/imx/multiplatform' into imx25-dtSascha Hauer2012-11-121-13/+13
|\
| * ARM: imx: include hardware.h rather than mach/hardware.hShawn Guo2012-10-151-3/+2
| | | | | | | | | | | | | | | | | | | | | | It moves a bunch of header files included in hardware.h and itself from mach-imx/include/mach to mach-imx, and updates users to include hardware.h rather than mach/hardware.h. The files in mach-imx/devices will need to include "../hardware.h". Signed-off-by: Shawn Guo <shawn.guo@linaro.org> Acked-by: Sascha Hauer <s.hauer@pengutronix.de> Acked-by: Arnd Bergmann <arnd@arndb.de>
| * video: imxfb: remove cpu_is_xxx by using platform_device_idShawn Guo2012-10-151-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | It changes the driver to use platform_device_id rather than cpu_is_xxx to determine the controller type, and updates the platform code accordingly. As the result, mach/hardware.h inclusion gets removed from the driver. Signed-off-by: Shawn Guo <shawn.guo@linaro.org> Acked-by: Sascha Hauer <s.hauer@pengutronix.de> Acked-by: Arnd Bergmann <arnd@arndb.de> Cc: Florian Tobias Schandinat <FlorianSchandinat@gmx.de> Cc: linux-fbdev@vger.kernel.org
| * media: mx2_camera: remove cpu_is_xxx by using platform_device_idShawn Guo2012-10-151-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It changes the driver to use platform_device_id rather than cpu_is_xxx to determine the controller type, and updates the platform code accordingly. As the result, mach/hardware.h inclusion gets removed from the driver. Signed-off-by: Shawn Guo <shawn.guo@linaro.org> Acked-by: Sascha Hauer <s.hauer@pengutronix.de> Acked-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Tested-by: Javier Martin <javier.martin@vista-silicon.com> Cc: linux-media@vger.kernel.org
| * mtd: mxc_nand: remove cpu_is_xxx by using platform_device_idShawn Guo2012-10-151-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | It changes the driver to use platform_device_id rather than cpu_is_xxx to determine the controller type, and updates the platform code accordingly. As the result, mach/hardware.h inclusion gets removed from the driver. Signed-off-by: Shawn Guo <shawn.guo@linaro.org> Acked-by: Sascha Hauer <s.hauer@pengutronix.de> Acked-by: Arnd Bergmann <arnd@arndb.de> Cc: Artem Bityutskiy <artem.bityutskiy@linux.intel.com> Cc: linux-mtd@lists.infradead.org
| * i2c: imx: remove cpu_is_xxx by using platform_device_idShawn Guo2012-10-151-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is some amount of work left/forgot from device tree conversion. Instead of checking cpu_is_xxx to determine the controller type, the driver should use platform_device_id, which should match the device tree compatible string. The patch changes the driver to use platform_device_id rather than cpu_is_xxx to determine the controller type/version. It also updates the platform code and device tree source accordingly. As the result, mach/hardware.h inclusion gets removed from the driver. Signed-off-by: Shawn Guo <shawn.guo@linaro.org> Acked-by: Sascha Hauer <s.hauer@pengutronix.de> Acked-by: Arnd Bergmann <arnd@arndb.de> Cc: Wolfram Sang <w.sang@pengutronix.de> Cc: linux-i2c@vger.kernel.org
| * ARM: imx: include common.h rather than mach/common.hShawn Guo2012-10-151-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | Rename mach-imx/include/mach/common.h to mach-imx/common.h and update all users to include common.h rather than mach/common.h. It also removes an unneeded inclusion to common.h in mach-imx/devices/devices.c. Signed-off-by: Shawn Guo <shawn.guo@linaro.org> Acked-by: Sascha Hauer <s.hauer@pengutronix.de> Acked-by: Arnd Bergmann <arnd@arndb.de>
* | Revert "ARM i.MX25: Fix PWM per clock lookups"Arnd Bergmann2012-10-271-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 92063cee118655d25b50d04eb77b012f3287357a, it was applied prematurely, causing this build error for imx_v4_v5_defconfig: arch/arm/mach-imx/clk-imx25.c: In function 'mx25_clocks_init': arch/arm/mach-imx/clk-imx25.c:206:26: error: 'pwm_ipg_per' undeclared (first use in this function) arch/arm/mach-imx/clk-imx25.c:206:26: note: each undeclared identifier is reported only once for each function it appears in Sascha Hauer explains: > There are several gates missing in clk-imx25.c. I have a patch which > adds support for them and I seem to have missed that the above depends > on it. Signed-off-by: Arnd Bergmann <arnd@arndb.de>
* | ARM i.MX25: Fix PWM per clock lookupsSascha Hauer2012-10-101-4/+4
| | | | | | | | | | | | They are behind the gate pwm_ipg_per, not directly behind per10. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* | ARM i.MX25 clk: Fix nfc_ipg_per parentSascha Hauer2012-10-101-1/+1
| | | | | | | | | | | | It's per8, there is no ipg_per clk. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* | ARM i.MX25: Fix lcdc_ipg_per parent clockSascha Hauer2012-10-101-1/+1
|/ | | | | | It's per7, not per6. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM i.MX25: Make timer irq work againSascha Hauer2012-09-181-1/+1
| | | | | | | | | | | | | | | | | | | Since i.MX has SPARSE_IRQ enabled the i.MX25 timer is broken. This is because the internal irqs now start at an offset of NR_IRQS_LEGACY. The patch fixed this up, but missed the i.MX25 timer which used a hardcoded value instead of a define. This patch introduces a define for the timer irq and uses it. This is broken since introduced with 3.6-rc1: | commit 8842a9e2869cae14bbb8184004a42fc3070587fb | Author: Shawn Guo <shawn.guo@linaro.org> | Date: Thu Jun 14 11:16:14 2012 +0800 | | ARM: imx: enable SPARSE_IRQ for imx platform Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de> Acked-by: Shawn Guo <shawn.guo@linaro.org>
* ARM: clk-imx25: Fix SSI clock registrationFabio Estevam2012-09-111-4/+2
| | | | | | | | | | | | | | | | SSI block has two types of clock: ipg: bus clock, the clock needed for accessing registers. per: peripheral clock, the clock needed for generating the bit rate. Currently SSI driver only supports slave mode and only need to handle the ipg clock, because the peripheral clock comes from the master codec. Only register the ipg clock and do not register the peripheral clock for ssi. Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de> Cc: stable@vger.kernel.org
* ARM i.MX: remove now unnecessary argument from mxc_timer_initSascha Hauer2012-05-161-1/+1
| | | | | | | | As the timer code now does a clk_get to get its clock we don't need the struct clk argument anymore. This also changes the alternative EPIT timer to do a clk_get. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM i.MX25: implement clocks using common clock frameworkSascha Hauer2012-05-021-0/+248
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de> Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
OpenPOWER on IntegriCloud