9
0
Fork 0
Commit Graph

750 Commits

Author SHA1 Message Date
Sascha Hauer 6ec2780419 Merge branch 'for-next/imx'
Conflicts:
	arch/arm/configs/tx25stk5_defconfig
2014-06-04 21:01:40 +02:00
Sascha Hauer bb662e2474 ARM: i.MX: iim: Add regulator support
The voltage for programming the fuses is external to the SoC and
on some boards this is controllable with a regulator, so add regulator
support to the iim driver.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-06-04 20:57:28 +02:00
Sascha Hauer cf32bf77de ARM: i.MX: iim: provide a MAC address convenience variable
Allow to read/write the registered MAC addresses in the iim
module directly via a device parameter.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-06-04 20:57:28 +02:00
Sascha Hauer f321ec1699 ARM: i.MX: iim: make fuse blowing work on i.MX5
The i.MX5 iim has an additional bit in the CCM module which
enables the supply. Add support for it.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-06-04 20:57:28 +02:00
Sascha Hauer e315ea6f7d ARM: i.MX: iim: don't make detour over cdev API
imx_iim_read is a iim internal function, so access the
internal functions rather than using the cdev API.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-06-04 20:57:28 +02:00
Sascha Hauer 310c20d927 ARM: i.MX: iim: move static variables into driver struct
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-06-04 20:57:28 +02:00
Sascha Hauer c9f2e96c61 ARM: i.MX: iim: use dev_* for messages
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-06-04 20:57:28 +02:00
Sascha Hauer d3feff68e2 ARM: i.MX: iim: pass private data struct to imx_iim_fuse_sense
To make all struct members available and to reduce the argument
count.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-06-04 20:57:27 +02:00
Sascha Hauer bb9e3842b2 ARM: i.MX: iim: pass private data struct to imx_iim_fuse_blow
To make all struct members available and to reduce the argument
count.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-06-04 20:57:27 +02:00
Sascha Hauer eec34f2a08 ARM: i.MX: iim: register iim device
With devicetree devicenames start with numbers. Parameters on these
devices are not accessible since variables can't start with numbers.
Register a logical 'iim' device which makes the permanent_write_enable
and explicit_sense_enable parameters accessible again.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-06-04 20:57:27 +02:00
Sascha Hauer fd56e95b18 ARM: i.MX: iim: Add namespace to functions
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-06-04 20:57:27 +02:00
Sascha Hauer c50bdcf71e ARM: i.MX: iim: introduce private data struct
Instead of duplicating data shared between the banks in a bank
specific struct, use a iim struct and a bank struct.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-06-04 20:57:24 +02:00
Sascha Hauer 579dce92c8 ARM: i.MX: iim: Check result of dev_request_mem_region
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-05-16 09:13:55 +02:00
Sascha Hauer 4540f5e26e ARM: i.MX: Phytec-phyCARD-i.MX27: Switch to multi-image support
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-05-10 18:30:01 +02:00
Sascha Hauer 505a1b4e7e ARM: i.MX5: ccm: combine initcalls and drop ifdefs
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-05-10 18:29:58 +02:00
Sascha Hauer 311d656f1e ARM: i.MX5: Add IPU clocks
Add the clocks for the IPU on i.MX5. Since these are many only
add them when the driver is enabled.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-05-09 17:41:46 +02:00
Sascha Hauer 104219616f ARM: i.MX: implement pllv2 set/round_rate support
Code straight from the kernel.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-05-09 17:41:45 +02:00
Sascha Hauer 1f0db00f81 ARM: i.MX53: Add pwm support
Aliases and clocks are needed to support the i.MX53 PWMs.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-05-09 17:41:45 +02:00
Sascha Hauer a10023c0db ARM: i.MX53: Use clock number defines from dt-bindings
i.MX5 has clock number defines in dt-bindings, use them rather
then manually keeping the clock enums in sync.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-05-09 17:41:45 +02:00
Sascha Hauer d238e3ace5 ARM: i.MX: bbu: remove dcd arguments from bbu registration
The i.MX barebox update handlers take an optional dcd table as argument.
This can be used to add the correct dcd data to the image before flashing
it.
This mechanism is quite complicated and largely unused, so remove it. With
this it is only possible to flash the exact image passed to barebox_update,
which is what is mostly done anyway.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-05-09 17:41:41 +02:00
Lucas Stach 15db8b76c6 ARM: imx: move malloc area to upper memory bank by default
If we have two discontinuous memory banks we want to move
the malloc area into the upper bank by default to leave as
much free space in the lower bank, where we have to place
kernel, oftree and initrd.

Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-05-05 15:09:09 +02:00
Lucas Stach 4f381b1aaa ARM: change signature of barebox_arm_entry
Mostly to make it clear that boarddata needs to be
something we can dereference.

As this is a pretty invasive change, use the opportunity
to make the signature 64bit safe.

Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-05-05 15:09:09 +02:00
Sascha Hauer cdfca5dccb Merge branch 'for-next/rockchip' 2014-05-05 13:33:09 +02:00
Sascha Hauer b568687bc3 Merge branch 'for-next/imx' 2014-05-05 11:05:51 +02:00
Uladzimir Bely 825fca396f imx6: ocotp: Add On-Chip OTP registers write support
FUSEs (OTP registers) can be written via /dev/imx-ocotp character device.

For example, writing MAC 12:34:56:78:9A:BC can be performed as
    > mw -l -d /dev/imx-ocotp 0x8c 0x00001234
    > mw -l -d /dev/imx-ocotp 0x88 0x56789ABC
and reading as
    > md -l -s /dev/imx-ocotp 0x88+8
    00000088: 56789ABC 00001234
, where 0x88 (0x22*4) and 0x8C (0x23*4) are offsets of MAC OTP registers.

Notice: FUSEs are PROM, so "0" (unprogrammed) bits
can be replaced with "1" (but not vice versa) only once.

Also, for MAC there are convinient parameters:
    > ocotp0.permanent_write_enable=1
    > ocotp0.mac_addr=12:34:56:78:9A:BC
    imx_ocotp 21bc000.ocotp: reloading shadow registers...
    imx_ocotp 21bc000.ocotp: reloading shadow registers...
    > echo $ocotp0.mac_addr
    12:34:56:78:9A:BC

Signed-off-by: Uladzimir Bely <u.bely@sam-solutions.net>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-05-05 09:35:05 +02:00
Christian Hemp e0afbe3f84 imx:mmdc:Move imx6-reg include to imx6-mmdc header
Move the imx6-reg.h include to the imx6-mmdc header.

Signed-off-by: Christian Hemp <c.hemp@phytec.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-05-05 09:02:10 +02:00
Christian Hemp 3e571c1f86 imx6: Add support for phyCARD-i.MX6
Add support for Phytec phyCARD-i.MX6.
	- 1GB RAM on two banks
	- 1GB RAM on one bank
	- 2GB RAM on two banks

Signed-off-by: Christian Hemp <c.hemp@phytec.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-04-30 19:45:11 +02:00
Eric Bénard ccc4eac632 RiOTboard: add new board
this board is produced by Embest/Element 14 and is based on i.MX6 Solo
The following features are tested :
- UART2 (console)
- eMMC
- SDCard
- uSDCard
- Ethernet
- USB Host (through 4 ports hub)
- I2C 1/2/3
- 2 LEDs

Boot on eMMC and through USB loader are tested.

For more informations on this board : http://www.riotboard.org/

Signed-off-by: Eric Bénard <eric@eukrea.com>
Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-04-29 09:12:35 +02:00
Beniamino Galvani 32a2a673c6 clk: gate: add flags argument to clock gate constructor
This adds a clk_gate_flags argument to clock gate creation functions
to allow the introduction of new clock gate modifiers.

Signed-off-by: Beniamino Galvani <b.galvani@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-04-29 08:15:24 +02:00
Christian Hemp 724ea7e6c3 imx6: read back memory size
To reduce the devicetree files for one board with different memory sizes the
memory size can be read back from i.MX6.

Signed-off-by: Christian Hemp <c.hemp@phytec.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-04-28 12:02:55 +02:00
Christian Hemp 3858b933b5 imx6:mmdc: Move register defines to header file
Move mmdc register defines to mmdc header file.

Signed-off-by: Christian Hemp <c.hemp@phytec.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-04-28 08:09:31 +02:00
Lucas Stach 9c63e92baa treewide: fix signedness mixups in printf format specifiers
This most likely doesn't fix any real bugs, but it's the
right thing to do and reduces the noise level with static
checkers.

Signed-off-by: Lucas Stach <dev@lynxeye.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-04-23 09:05:51 +02:00
Wjatscheslaw Stoljarski 158050e1cf imx53: add imx53_add_cspi
Signed-off-by: Wjatscheslaw Stoljarski <wjatscheslaw.stoljarski@kiwigrid.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-04-05 18:28:27 +02:00
Sascha Hauer 3753efa427 Merge branch 'for-next/imx-phyflex'
Conflicts:
	arch/arm/boards/phytec-phyflex-imx6/board.c
2014-04-04 10:06:20 +02:00
Sascha Hauer 4997646b20 Merge branch 'for-next/imx' 2014-04-04 10:06:14 +02:00
Sascha Hauer 964966be6a ARM: i.MX6: Add Nand boot bbu handler
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-04-03 07:56:25 +02:00
Sascha Hauer 09821fba06 ARM i.MX6q: Mark VPU and IPU AXI transfers as cacheable, increase IPU priority
This is needed so that the IPU framebuffer scanout cannot be
starved by VPU or GPU activity.
Some boards like the SabreLite and SabreSD seem to set this in
the DCD already, but the documented register reset values do not
contain the necessary settings.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-03-29 07:57:53 +01:00
Sascha Hauer ce6755ca1c ARM: i.MX6: Add video clocks
This adds the IPU, LVDS and HDMI clocks. As these are many, depend
on the IPU driver being compiled in.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-03-28 21:03:15 +01:00
Sascha Hauer 6d610de61c ARM: i.MX: introduce clk parent rate changes
Let dividers and gates change the parent rates.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-03-28 21:03:15 +01:00
Sascha Hauer 3e9a71f78d clk: clk-divider: pass flags to initializers
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-03-28 21:03:14 +01:00
Sascha Hauer 82163afcf0 clk: clk-fixed-factor: pass flags to initializers
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-03-28 21:03:14 +01:00
Sascha Hauer f4c7536514 clk: clk-gate: pass flags to initializers
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-03-28 21:03:02 +01:00
Sascha Hauer b33e5ba246 clk: clk-mux: pass clk flags from initializers
struct clk has a flags field, let the clk-mux initializers set this
field.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-03-28 10:51:30 +01:00
Sascha Hauer b34eed098b ARM: i.MX6: Add initial variscite VAR-SOM-MX6 CPU support
The VAR-SOM-MX6 is a System on module from Variscite, see:

http://www.variscite.com/products/system-on-module-som/cortex-a9/var-som-mx6-cpu-freescale-imx6

This adds support for this module on the VAR-MX6CustomBoard baseboard.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-03-28 08:45:10 +01:00
Christian Hemp 286314915a ARM: pfla02: Add support for DualLite and Solo core
Signed-off-by: Christian Hemp <c.hemp@phytec.de>
Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
2014-03-26 21:07:53 +01:00
Sascha Hauer 3d551bce2b Merge branch 'for-next/spi' 2014-03-07 09:25:56 +01:00
Sascha Hauer 23a8d93c52 Merge branch 'for-next/pwm' 2014-03-07 09:25:56 +01:00
Sascha Hauer 9c2aa61703 Merge branch 'for-next/imx-image'
Conflicts:
	arch/arm/dts/Makefile
2014-03-07 09:24:46 +01:00
Philippe Rétornaz 325d844aaa ARM: i.MX31: Add support for mx31moboard board
The mx31moboard is used on the marXbot, Eyebot and Footbot robot.

Signed-off-by: Philippe Rétornaz <philippe.retornaz@epfl.ch>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-03-03 09:09:22 +01:00
Philipp Zabel 82e69edac7 ARM i.MX6: Gate clocks to graphics processing units
This patch gates the clocks to GPU, IPU, and VPU units by default,
significantly reducing the VDDSOC power draw while barebox is running.

Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-02-24 09:29:49 +01:00