Commit Graph

1563 Commits

Author SHA1 Message Date
黄涛
88c809fe6e rk3188: initial support 2013-01-09 11:08:02 +08:00
kfx
8deea53642 i2c: check_idle: gpio_free 2013-01-08 17:18:46 +08:00
kfx
1d5b1aa60c i2c: use new iomux api 2013-01-08 17:05:59 +08:00
kfx
02541026a1 i2c: i2c_master_reg8_direct_recv 2012-12-07 16:05:54 +08:00
kfx
0e04d68a4c i2c: fix warning: 'warning: 'p' may be used uninitialized in this function [-Wmaybe-uninitialized]' 2012-11-14 14:23:59 +08:00
kfx
1821ff5f32 i2c: warning if rk610 is exist
e.g.
*************** WARNING ****************
i2c i2c-0: rk610 is exist, clients:
client: rk610_ctl, addr: 0x40
client: rk610_tvout, addr: 0x42
client: rk610_hdmi, addr: 0x46
client: rk610_i2c_codec, addr: 0x60
client: wm8326, addr: 0x34
****************************************
2012-11-13 11:53:27 +08:00
kfx
659ddbb7e3 i2c: support 'client device register in module load stage' 2012-09-28 12:31:24 +08:00
黄涛
45dd8ad03d i2c-rk30: remove idle wake lock 2012-09-26 14:38:18 +08:00
kfx
259b1a311e i2c transfer: udelay(instead of wait_event_timeout) if system is in atomic state 2012-08-31 10:45:32 +08:00
kfx
069d46d7f4 i2c: rk2928&rk3066b: add check_idle 2012-08-23 18:50:44 +08:00
kfx
7462246e4e rk2928: i2c: add check_idle && Not select i2c3 if hdmi is enable 2012-08-23 11:20:04 +08:00
黄涛
4d93acfd39 rk3066b: rename rk31 to rk3066b 2012-08-22 21:21:56 +08:00
黄涛
b2be450f10 Merge remote-tracking branch 'origin/develop-3.0' into develop-3.0-jb
Conflicts:
	include/net/cfg80211.h
2012-08-21 14:14:24 +08:00
黄涛
d7fb2169b6 Merge remote-tracking branch 'origin/develop-3.0-rk2928' into develop-3.0
Conflicts:
	arch/arm/mach-rk30/include/mach/rk30_camera.h
	arch/arm/plat-rk/include/plat/rk_camera.h
	drivers/gpio/gpio-tps65910.c
	drivers/media/video/rk30_camera_oneframe.c
	drivers/mmc/host/rk29_sdmmc.c
	drivers/net/wireless/Kconfig
	drivers/net/wireless/Makefile
	drivers/net/wireless/wifi_sys/rkwifi_sys_iface.c
	drivers/regulator/rk30-pwm-regulator.c
	drivers/usb/dwc_otg/dwc_otg_driver.c
	drivers/usb/dwc_otg/dwc_otg_hcd.c
	drivers/usb/dwc_otg/dwc_otg_pcd.c
	sound/soc/codecs/Makefile
	sound/soc/rk29/Kconfig
2012-08-17 21:48:20 +08:00
黄涛
bbc68b65d9 i2c: rk: only rk29/rk30 need idle lock 2012-08-16 09:22:16 +08:00
黄涛
71ee502281 Merge remote-tracking branch 'origin/develop-3.0' into develop-3.0-jb 2012-07-31 10:15:18 +08:00
kfx
37aaf072da i2c: fix bug: 'the transmission may be abnormal, if send the stop signal immediately after timeout' 2012-07-28 10:09:59 +08:00
黄涛
3145fc703e rk31: add initial support 2012-07-17 14:47:33 +08:00
黄涛
a2ad9f9801 Merge remote-tracking branch 'stable/linux-3.0.y' into develop-3.0-jb
Conflicts:
	drivers/net/usb/asix.c
	drivers/net/wireless/iwlwifi/iwl-agn-rs.c
	drivers/usb/serial/option.c
2012-07-12 18:46:41 +08:00
黄涛
30be6d7972 Merge remote-tracking branch 'common/android-3.0' into develop-3.0-jb
Conflicts:
	drivers/cpufreq/cpufreq_interactive.c
	drivers/misc/pmem.c
	drivers/net/usb/asix.c
	drivers/net/wireless/ath/ath9k/ani.c
	drivers/net/wireless/ath/ath9k/ar5008_phy.c
	drivers/net/wireless/ath/ath9k/ar9002_hw.c
	drivers/net/wireless/ath/ath9k/ar9003_calib.c
	drivers/net/wireless/ath/ath9k/ar9003_mac.c
	drivers/net/wireless/ath/ath9k/ar9003_phy.h
	drivers/net/wireless/ath/ath9k/calib.c
	drivers/net/wireless/ath/ath9k/hif_usb.c
	drivers/net/wireless/ath/ath9k/hw.c
	drivers/net/wireless/ath/ath9k/hw.h
	drivers/net/wireless/ath/ath9k/main.c
	drivers/net/wireless/ath/ath9k/rc.c
	drivers/net/wireless/ath/ath9k/recv.c
	drivers/net/wireless/b43/main.c
	drivers/net/wireless/bcm4319/aiutils.c
	drivers/net/wireless/bcm4319/bcmsdh.c
	drivers/net/wireless/bcm4319/bcmsdh_linux.c
	drivers/net/wireless/bcm4319/bcmsdh_sdmmc.c
	drivers/net/wireless/bcm4319/bcmsdh_sdmmc_linux.c
	drivers/net/wireless/bcm4319/bcmutils.c
	drivers/net/wireless/bcm4319/dhd_common.c
	drivers/net/wireless/bcm4319/dhd_proto.h
	drivers/net/wireless/bcm4319/dhd_sdio.c
	drivers/net/wireless/bcm4319/hndpmu.c
	drivers/net/wireless/bcm4319/include/aidmp.h
	drivers/net/wireless/bcm4319/include/bcmcdc.h
	drivers/net/wireless/bcm4319/include/bcmdefs.h
	drivers/net/wireless/bcm4319/include/bcmdevs.h
	drivers/net/wireless/bcm4319/include/bcmendian.h
	drivers/net/wireless/bcm4319/include/bcmpcispi.h
	drivers/net/wireless/bcm4319/include/bcmperf.h
	drivers/net/wireless/bcm4319/include/bcmsdbus.h
	drivers/net/wireless/bcm4319/include/bcmsdh.h
	drivers/net/wireless/bcm4319/include/bcmsdh_sdmmc.h
	drivers/net/wireless/bcm4319/include/bcmsdpcm.h
	drivers/net/wireless/bcm4319/include/bcmsdspi.h
	drivers/net/wireless/bcm4319/include/bcmsdstd.h
	drivers/net/wireless/bcm4319/include/bcmspi.h
	drivers/net/wireless/bcm4319/include/bcmutils.h
	drivers/net/wireless/bcm4319/include/bcmwifi.h
	drivers/net/wireless/bcm4319/include/dhdioctl.h
	drivers/net/wireless/bcm4319/include/epivers.h
	drivers/net/wireless/bcm4319/include/hndpmu.h
	drivers/net/wireless/bcm4319/include/hndrte_armtrap.h
	drivers/net/wireless/bcm4319/include/hndrte_cons.h
	drivers/net/wireless/bcm4319/include/hndsoc.h
	drivers/net/wireless/bcm4319/include/linux_osl.h
	drivers/net/wireless/bcm4319/include/linuxver.h
	drivers/net/wireless/bcm4319/include/miniopt.h
	drivers/net/wireless/bcm4319/include/msgtrace.h
	drivers/net/wireless/bcm4319/include/osl.h
	drivers/net/wireless/bcm4319/include/packed_section_end.h
	drivers/net/wireless/bcm4319/include/packed_section_start.h
	drivers/net/wireless/bcm4319/include/pcicfg.h
	drivers/net/wireless/bcm4319/include/proto/802.11e.h
	drivers/net/wireless/bcm4319/include/proto/802.1d.h
	drivers/net/wireless/bcm4319/include/proto/bcmeth.h
	drivers/net/wireless/bcm4319/include/proto/bcmevent.h
	drivers/net/wireless/bcm4319/include/proto/bcmip.h
	drivers/net/wireless/bcm4319/include/proto/eapol.h
	drivers/net/wireless/bcm4319/include/proto/ethernet.h
	drivers/net/wireless/bcm4319/include/proto/sdspi.h
	drivers/net/wireless/bcm4319/include/proto/vlan.h
	drivers/net/wireless/bcm4319/include/proto/wpa.h
	drivers/net/wireless/bcm4319/include/sbchipc.h
	drivers/net/wireless/bcm4319/include/sbconfig.h
	drivers/net/wireless/bcm4319/include/sbhnddma.h
	drivers/net/wireless/bcm4319/include/sbpcmcia.h
	drivers/net/wireless/bcm4319/include/sbsdio.h
	drivers/net/wireless/bcm4319/include/sbsdpcmdev.h
	drivers/net/wireless/bcm4319/include/sbsocram.h
	drivers/net/wireless/bcm4319/include/sdio.h
	drivers/net/wireless/bcm4319/include/sdioh.h
	drivers/net/wireless/bcm4319/include/sdiovar.h
	drivers/net/wireless/bcm4319/include/siutils.h
	drivers/net/wireless/bcm4319/include/trxhdr.h
	drivers/net/wireless/bcm4319/include/typedefs.h
	drivers/net/wireless/bcm4319/siutils.c
	drivers/net/wireless/bcm4319/wl_iw.c
	drivers/net/wireless/bcm4319/wl_iw.h
	drivers/net/wireless/bcmdhd/Kconfig
	drivers/net/wireless/bcmdhd/Makefile
	drivers/net/wireless/bcmdhd/bcmevent.c
	drivers/net/wireless/bcmdhd/dhd.h
	drivers/net/wireless/bcmdhd/dhd_cdc.c
	drivers/net/wireless/bcmdhd/dhd_linux.c
	drivers/net/wireless/bcmdhd/dhd_wlfc.h
	drivers/net/wireless/bcmdhd/include/Makefile
	drivers/net/wireless/bcmdhd/include/htsf.h
	drivers/net/wireless/bcmdhd/include/proto/802.11.h
	drivers/net/wireless/bcmdhd/include/proto/802.11_bta.h
	drivers/net/wireless/bcmdhd/include/proto/bt_amp_hci.h
	drivers/net/wireless/bcmdhd/include/proto/p2p.h
	drivers/net/wireless/bcmdhd/include/wlfc_proto.h
	drivers/net/wireless/bcmdhd/include/wlioctl.h
	drivers/net/wireless/bcmdhd/linux_osl.c
	drivers/net/wireless/bcmdhd/wl_android.c
	drivers/net/wireless/bcmdhd/wl_android.h
	drivers/net/wireless/bcmdhd/wl_cfg80211.c
	drivers/net/wireless/bcmdhd/wl_cfg80211.h
	drivers/net/wireless/bcmdhd/wl_cfgp2p.c
	drivers/net/wireless/bcmdhd/wl_cfgp2p.h
	drivers/net/wireless/bcmdhd/wl_linux_mon.c
	drivers/net/wireless/bcmdhd/wldev_common.c
	drivers/net/wireless/bcmdhd/wldev_common.h
	drivers/net/wireless/ipw2x00/ipw2200.c
	drivers/net/wireless/iwlwifi/iwl-agn-lib.c
	drivers/net/wireless/iwlwifi/iwl-agn-tx.c
	drivers/net/wireless/iwlwifi/iwl-agn-ucode.c
	drivers/net/wireless/iwlwifi/iwl-agn.c
	drivers/net/wireless/iwlwifi/iwl-agn.h
	drivers/net/wireless/iwlwifi/iwl-core.c
	drivers/net/wireless/iwlwifi/iwl-hcmd.c
	drivers/net/wireless/iwlwifi/iwl-rx.c
	drivers/net/wireless/iwlwifi/iwl-tx.c
	drivers/net/wireless/libertas/if_spi.c
	drivers/net/wireless/p54/p54spi.c
	drivers/net/wireless/rt2x00/rt2800lib.c
	drivers/net/wireless/rt2x00/rt2800pci.c
	drivers/net/wireless/rt2x00/rt2800usb.c
	drivers/net/wireless/rt2x00/rt2x00.h
	drivers/net/wireless/rt2x00/rt2x00dev.c
	drivers/net/wireless/rt2x00/rt2x00mac.c
	drivers/net/wireless/rt2x00/rt2x00queue.c
	drivers/usb/serial/option.c
2012-07-12 18:08:01 +08:00
kfx
02b33dc94f rk2928: i2c init 2012-07-11 16:38:16 +08:00
kfx
fdf7df16f3 i2c: 'move rk30_i2c_platform_data from mach-rk30 to plat-rk' and 'disable i2c4 select on rk2928' 2012-07-10 14:55:11 +08:00
kfx
3759a9dd51 rk30: i2c: fix warning about clk_disable 2012-06-06 18:59:15 +08:00
kfx
05965ceb8b rk30: i2c: clk_disable(i2c->clk) when i2c-x is in idle state 2012-06-06 15:39:58 +08:00
Marcus Folkesson
d19adfe6ca i2c: davinci: Free requested IRQ in remove
commit 9868a060cc upstream.

The freed IRQ is not necessary the one requested in probe.
Even if it was, with two or more i2c-controllers it will fails anyway.

Signed-off-by: Marcus Folkesson <marcus.folkesson@gmail.com>
Signed-off-by: Wolfram Sang <w.sang@pengutronix.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-06-01 15:13:01 +08:00
kfx
693e20b9f6 i2c-dev: struct i2c_msg: be compatible with standard interface 2012-05-21 10:39:03 +08:00
kfx
ca36d91718 rk30: i2c: add log information 2012-05-08 09:13:31 +08:00
Roland Stigge
b476e58a83 i2c: pnx: Disable clk in suspend
commit 6c557cfee0 upstream.

In the driver's suspend function, clk_enable() was used instead of
clk_disable(). This is corrected with this patch.

Signed-off-by: Roland Stigge <stigge@antcom.de>
Reviewed-by: Arnd Bergmann <arnd@arndb.de>
[wsa: reworded commit header slightly]
Signed-off-by: Wolfram Sang <w.sang@pengutronix.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-05-07 08:56:39 -07:00
kfx
fd04a8bcc4 rk30: i2c: Adjust the print information in the order 2012-04-23 09:43:45 +08:00
kfx
13484d6e9e rk30: i2c: update i2c drivers and add slave detect interface 2012-04-21 14:00:09 +08:00
kfx
55b11681fa rk30: i2c: gpio i2c support 2012-04-13 11:14:32 +08:00
黄涛
25ec3f1f28 i2c: rk30: fix idle lock name alloced on stack 2012-03-30 20:57:17 +08:00
黄涛
c1e1f2cd55 i2c: fix rk change for i2c gpio 2012-03-30 19:55:53 +08:00
kfx
8eb9d81478 rk30: i2c: modify 'controller switch' 2012-03-28 11:39:43 +08:00
kfx
c80a4df97f rk30: i2c: update driver for 'rx only' mode 2012-03-28 11:03:35 +08:00
kfx
3a9de8d913 rk30: i2c drivers: remove some debug info 2012-03-27 15:33:31 +08:00
kfx
ca6ba6d21f rk30: i2c drivers: writel/readl --> wirtel_relaxed/readl_relaxed 2012-03-26 11:34:12 +08:00
黄涛
e153fabd0b Merge remote-tracking branch 'origin/develop-3.0-rk30' into develop-3.0
Conflicts:
	arch/arm/mach-rk29/Makefile
	arch/arm/mach-rk29/include/mach/rk29_camera.h
	drivers/gpu/ion/ion.c
	drivers/gpu/ion/ion_carveout_heap.c
	drivers/gpu/ion/ion_priv.h
	drivers/media/video/gc0307.c
	drivers/media/video/gc0308.c
	drivers/media/video/gc0309.c
	drivers/media/video/gc2015.c
	drivers/media/video/gt2005.c
	drivers/media/video/mt9d112.c
	drivers/media/video/mt9d113.c
	drivers/media/video/mt9p111.c
	drivers/media/video/mt9t111.c
	drivers/media/video/ov2640_rk.c
	drivers/media/video/ov2655.c
	drivers/media/video/ov2659.c
	drivers/media/video/ov5640.c
	drivers/media/video/ov5642.c
	drivers/media/video/ov7675.c
	drivers/media/video/rk29_camera.c
	drivers/media/video/sid130B.c
	drivers/media/video/siv120b.c
	drivers/mmc/host/rk29_sdmmc.c
	include/linux/ion.h
2012-03-25 15:16:37 +08:00
kfx
33fa279154 rk30: i2c: update i2c drivers for touch screen 2012-03-24 18:06:46 +08:00
kfx
d74bc51fba rk30: i2c: update i2c drivers 2012-03-23 23:22:21 +08:00
Ville Syrjala
35f68010b4 i2c-algo-bit: Fix spurious SCL timeouts under heavy load
commit 8ee161ce5e upstream.

When the system is under heavy load, there can be a significant delay
between the getscl() and time_after() calls inside sclhi(). That delay
may cause the time_after() check to trigger after SCL has gone high,
causing sclhi() to return -ETIMEDOUT.

To fix the problem, double check that SCL is still low after the
timeout has been reached, before deciding to return -ETIMEDOUT.

Signed-off-by: Ville Syrjala <syrjala@sci.fi>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-03-19 08:57:59 -07:00
Wolfram Sang
58cc48d37c i2c: mxs: only flag completion when queue is completely done
commit 844990daa2 upstream.

The hardware generates an interrupt for every completed command in the
queue while the code assumed that it will only generate one interrupt
when the queue is empty. So, explicitly check if the queue is really
empty. This patch fixed problems which occurred due to high traffic on
the bus. While we are here, move the completion-initialization after the
parameter error checking.

Signed-off-by: Wolfram Sang <w.sang@pengutronix.de>
Cc: Shawn Guo <shawn.guo@linaro.org>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Lothar Waßmann <LW@KARO-electronics.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-03-12 10:32:40 -07:00
kfx
e0dd106efa update i2c driver: for compile error 2012-02-24 17:20:13 +08:00
kfx
e96ed2d0c8 update i2c driver for 'no ack' 2012-02-16 12:49:04 +08:00
kfx
cb383d1c2e RK30 I2C drivers: new adapter(rk30) support 2012-02-15 20:17:42 +08:00
kfx
fbbf4f7a37 I2C: if received nak when send address, retry 3 times 2012-02-14 10:59:34 +08:00
kfx
e36ecd020a update i2c drivers 2012-02-09 10:43:35 +08:00
kfx
8e579254f1 add rk30 i2c drvier 2012-02-07 18:06:57 +08:00
Toshiharu Okada
a6007c036e i2c-eg20t: modified the setting of transfer rate.
commit ff35e8b189 upstream.

This patch modified the setting value of
I2C Bus Transfer Rate Setting Counter regisrer.

Signed-off-by: Toshiharu Okada <toshiharu-linux@dsn.okisemi.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2012-01-25 17:25:03 -08:00
Alexander Aring
6c8e76e158 I2C: OMAP: correct SYSC register offset for OMAP4
commit 2727b17539 upstream.

Correct OMAP_I2C_SYSC_REG offset in omap4 register map.
Offset 0x20 is reserved and OMAP_I2C_SYSC_REG has 0x10 as offset.

Signed-off-by: Alexander Aring <a.aring@phytec.de>
[khilman@ti.com: minor changelog edits]
Signed-off-by: Kevin Hilman <khilman@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2012-01-25 17:25:01 -08:00