aboutsummaryrefslogtreecommitdiff
path: root/drivers
AgeCommit message (Collapse)Author
2013-04-07Merge remote-tracking branch 'origin/lcd-m2' into m2-candidate-0407Guodong Xu
2013-04-07Merge remote-tracking branch 'origin/i2c_workaround' into m2-candidate-0407Guodong Xu
2013-04-07ARM: Hi3620: Fix first parameter of dev_errLiXin
Fix first parameter of dev_err in k3_keypad.c Signed-off-by: LiXin <li.xin@linaro.org>
2013-04-04pwm: add hi3620 supportHaojian Zhuang
Support pwm driver of Hisilicon Hi3620 SoC. Signed-off-by: Haojian Zhuang <haojian.zhuang@linaro.org>
2013-04-04clk: hi3xxx: add mipi dsi driverHaojian Zhuang
It's used to calculate & set mipi dsi PLL rate. Signed-off-by: Haojian Zhuang <haojian.zhuang@linaro.org>
2013-04-04fb: append hi3620 driverHaojian Zhuang
Add Hisilicon Hi3620 framebuffer driver. Signed-off-by: Haojian Zhuang <haojian.zhuang@linaro.org>
2013-04-04fb: append flags of de and pixdataHaojian Zhuang
Since there're DATA ENABLE & PIXDATA postive/negative flags in data flags of display_timing structure, they should be copied into fb_videomode structure too. Signed-off-by: Haojian Zhuang <haojian.zhuang@linaro.org>
2013-04-04fbmon: add of_videomode helpersSteffen Trumtrar
Add helper to get fb_videomode from devicetree. Signed-off-by: Steffen Trumtrar <s.trumtrar@pengutronix.de> Reviewed-by: Thierry Reding <thierry.reding@avionic-design.de> Acked-by: Thierry Reding <thierry.reding@avionic-design.de> Tested-by: Thierry Reding <thierry.reding@avionic-design.de> Tested-by: Philipp Zabel <p.zabel@pengutronix.de> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Tested-by: Afzal Mohammed <Afzal@ti.com> Tested-by: Rob Clark <robclark@gmail.com> Tested-by: Leela Krishna Amudala <leelakrishna.a@gmail.com>
2013-04-04fbmon: add videomode helpersSteffen Trumtrar
Add a function to convert from the generic videomode to a fb_videomode. Signed-off-by: Steffen Trumtrar <s.trumtrar@pengutronix.de> Reviewed-by: Thierry Reding <thierry.reding@avionic-design.de> Acked-by: Thierry Reding <thierry.reding@avionic-design.de> Tested-by: Thierry Reding <thierry.reding@avionic-design.de> Tested-by: Philipp Zabel <p.zabel@pengutronix.de> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Tested-by: Afzal Mohammed <Afzal@ti.com> Tested-by: Rob Clark <robclark@gmail.com> Tested-by: Leela Krishna Amudala <leelakrishna.a@gmail.com>
2013-04-04video: add of helper for display timings/videomodeSteffen Trumtrar
This adds support for reading display timings from DT into a struct display_timings. The of_display_timing implementation supports multiple subnodes. All children are read into an array, that can be queried. If no native mode is specified, the first subnode will be used. For cases where the graphics driver knows there can be only one mode description or where the driver only supports one mode, a helper function of_get_videomode is added, that gets a struct videomode from DT. Signed-off-by: Steffen Trumtrar <s.trumtrar@pengutronix.de> Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de> Acked-by: Stephen Warren <swarren@nvidia.com> Reviewed-by: Thierry Reding <thierry.reding@avionic-design.de> Acked-by: Thierry Reding <thierry.reding@avionic-design.de> Tested-by: Thierry Reding <thierry.reding@avionic-design.de> Tested-by: Philipp Zabel <p.zabel@pengutronix.de> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Tested-by: Afzal Mohammed <Afzal@ti.com> Tested-by: Rob Clark <robclark@gmail.com> Tested-by: Leela Krishna Amudala <leelakrishna.a@gmail.com>
2013-04-04video: add display_timing and videomodeSteffen Trumtrar
Add display_timing structure and the according helper functions. This allows the description of a display via its supported timing parameters. Also, add helper functions to convert from display timings to a generic videomode structure. The struct display_timing specifies all needed parameters to describe the signal properties of a display in one mode. This includes - ranges for signals that may have min-, max- and typical values - single integers for signals that can be on, off or are ignored - booleans for signals that are either on or off As a display may support multiple modes like this, a struct display_timings is added, that holds all given struct display_timing pointers and declares the native mode of the display. Although a display may state that a signal can be in a range, it is driven with fixed values that indicate a videomode. Therefore graphic drivers don't need all the information of struct display_timing, but would generate a videomode from the given set of supported signal timings and work with that. The video subsystems all define their own structs that describe a mode and work with that (e.g. fb_videomode or drm_display_mode). To slowly replace all those various structures and allow code reuse across those subsystems, add struct videomode as a generic description. This patch only includes the most basic fields in struct videomode. All missing fields that are needed to have a really generic video mode description can be added at a later stage. Signed-off-by: Steffen Trumtrar <s.trumtrar@pengutronix.de> Reviewed-by: Thierry Reding <thierry.reding@avionic-design.de> Acked-by: Thierry Reding <thierry.reding@avionic-design.de> Tested-by: Thierry Reding <thierry.reding@avionic-design.de> Tested-by: Philipp Zabel <p.zabel@pengutronix.de> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Tested-by: Afzal Mohammed <Afzal@ti.com> Tested-by: Rob Clark <robclark@gmail.com> Tested-by: Leela Krishna Amudala <leelakrishna.a@gmail.com>
2013-04-04clk: hi3xxx: not disable clock for clkgate prepareHaojian Zhuang
If hi3xxx clock gate is disabled in prepare stage, the uart console can't output anything until it's enabled. It makes debugging kernel harder in kernel boot stage. Signed-off-by: Haojian Zhuang <haojian.zhuang@linaro.org>
2013-04-03clk: hi3xxx: support clocks in EDC domainHaojian Zhuang
Some hw clocks are defined in EDC register domain. And the operations on those clocks are same with other hi3xxx clocks. So append the support in clk-hi3xxx driver. Signed-off-by: Haojian Zhuang <haojian.zhuang@linaro.org>
2013-04-03clk: hi3xxx: move driver into hisilicon directoryHaojian Zhuang
Since more code will be appended, creating a directory is better. Signed-off-by: Haojian Zhuang <haojian.zhuang@linaro.org>
2013-04-03clk: hi3xxx: remove sctrl in clk opsHaojian Zhuang
Avoid to reference sctrl in clk ops. Make hs_init_clocks() always return register base address. It could make code more portable for more silicons. Signed-off-by: Haojian Zhuang <haojian.zhuang@linaro.org>
2013-04-03clk: hi3xxx: set clkgate reset as optionalHaojian Zhuang
There are not reset registers for all Hi3620 clock gate. So set reset registers as optional. Signed-off-by: Haojian Zhuang <haojian.zhuang@linaro.org>
2013-04-03clk: sync hi3xxx clk driver with 3.10Haojian Zhuang
Signed-off-by: Haojian Zhuang <haojian.zhuang@linaro.org>
2013-04-03clk: add common of_clk_init() functionPrashant Gaikwad
Modify of_clk_init function so that it will determine which driver to initialize based on device tree instead of each driver registering to it. Based on a similar patch for drivers/irqchip by Thomas Petazzoni and drivers/clocksource by Stephen Warren. Signed-off-by: Prashant Gaikwad <pgaikwad@nvidia.com> Tested-by: Tony Prisk <linux@prisktech.co.nz> Tested-by: Pawel Moll <pawel.moll@arm.com> Tested-by: Rob Herring <rob.herring@calxeda.com> Tested-by: Josh Cartwright <josh.cartwright@ni.com> Reviewed-by: Josh Cartwright <josh.cartwright@ni.com> Acked-by: Maxime Ripard <maxime.ripard@anandra.org> Signed-off-by: Mike Turquette <mturquette@linaro.org> [mturquette@linaro.org: merge conflict from missing CLKSRC_OF_TABLES()] Signed-off-by: Mike Turquette <mturquette@linaro.org>
2013-04-03clk: Deduplicate exit code in clk_set_rateNestor Ovroy
On non-out case 'return ret;' is equivalent to 'return 0;' as the ret variable is initialized at 0 and never changed. Signed-off-by: Nestor Ovroy <novroy@riseup.net>
2013-04-03clk: beautify MakefileMike Turquette
The list of common clock types was getting a bit unmanageable. This patch puts only one file on each line and reorders the object files alphabetically. Also a newline is added to separate the sections. Reported-by: Stephen Boyd <sboyd@codeaurora.org> Cc: Prashant Gaikwad <pgaikwad@nvidia.com> Signed-off-by: Mike Turquette <mturquette@linaro.org>
2013-04-03clk-divider: fix macrosJames Hogan
The macro is_power_of_two() in clk-divider.c was defined as !(i & ~i) which is always true. Instead use is_power_of_2() from log2.h. Also add brackets around the macro arguments in div_mask to avoid any future operator precedence problems. Signed-off-by: James Hogan <james.hogan@imgtec.com> Cc: Joe Perches <joe@perches.com> Signed-off-by: Mike Turquette <mturquette@linaro.org> [mturquette@linaro.org: use log2.h per Joe Perches; update changelog]
2013-04-03clk: remove exported function from __init sectionDenis Efremov
The symbol of_fixed_clk_setup is exported and annotated __init. This looks like section mismatch. Fix this by removing the __init annotation of of_fixed_clk_setup. Signed-off-by: Denis Efremov <yefremov.denis@gmail.com> Signed-off-by: Mike Turquette <mturquette@linaro.org>
2013-04-03clk: JSON debugfs clock tree summaryPrashant Gaikwad
Clock information is dumped in JSON format which is easy for machines to parse. Each clock is represented as an object which has same name as clock and following properties - enable_count - prepare_count - rate Output is verified using online JSON editor. Signed-off-by: Prashant Gaikwad <pgaikwad@nvidia.com> Signed-off-by: Mike Turquette <mturquette@linaro.org>
2013-04-03clk: human-readable debugfs clock tree summaryPrashant Gaikwad
Adds debug file "clk_summary" in /sys/kernel/debug/clk dir. It helps to view all the clock registered in human-readable format. For example: clock enable_cnt prepare_cnt rate --------------------------------------------------------------------- i2s0_sync 0 0 24000000 spdif_in_sync 0 0 24000000 spdif_mux 0 0 24000000 spdif 0 0 24000000 spdif_doubler 0 0 48000000 spdif_div 0 0 48000000 spdif_2x 0 0 48000000 clk_32k 2 2 32768 blink_override 1 1 32768 blink 1 1 32768 clk_m 2 2 12000000 clk_out_3_mux 0 0 12000000 clk_out_3 0 0 12000000 pll_ref 3 3 12000000 pll_e_mux 0 0 12000000 pll_e 0 0 100000000 cml0 0 0 100000000 cml1 0 0 100000000 pciex 0 0 100000000 pll_d2 0 0 1000000 pll_d2_out0 0 0 500000 pll_d 0 0 1000000 pll_d_out0 0 0 500000 dsib_mux 0 0 500000 dsib 0 0 500000 dsia 0 0 500000 Signed-off-by: Prashant Gaikwad <pgaikwad@nvidia.com> Signed-off-by: Mike Turquette <mturquette@linaro.org>
2013-04-03clk: export __clk_get_name for re-use in imx-ipu-v3 and othersNiels de Vos
This fixes the following error when building for arm-imx: > ERROR: "__clk_get_name" [drivers/staging/imx-drm/ipu-v3/imx-ipu-v3.ko] undefined! > make[1]: *** [__modpost] Error 1 > make: *** [modules] Error 2 There are valid usecases to get the name of a clock, be it for debugging purposes or to register a children of a clock like done in this IPU driver. Therefore exporting __clk_get_name() and make it available for others makes sense. Reported-by: Peter Robinson <pbrobinson@gmail.com> CC: Sascha Hauer <s.hauer@pengutronix.de> CC: Mike Turquette <mturquette@linaro.org> Signed-off-by: Niels de Vos <ndevos@redhat.com> Signed-off-by: Mike Turquette <mturquette@linaro.org> [mturquette@linaro.org: removal of inline made redundant by 65800b2]
2013-04-03clk: Don't mark shared helper functions as inlineRuss Dill
The helper functions that access the opaque struct clk should not be marked inline since they are contained in clk.c, but expected to be used by other compilation units. This causes compile errors under gcc-4.7 In file included from arch/arm/mach-omap2/clockdomain.c:25:0: arch/arm/mach-omap2/clockdomain.c: In function ‘clkdm_clk_disable’: include/linux/clk-provider.h:338:12: error: inlining failed in call to always_inline ‘__clk_get_enable_count’: function body not available arch/arm/mach-omap2/clockdomain.c:1001:28: error: called from here make[1]: *** [arch/arm/mach-omap2/clockdomain.o] Error 1 make: *** [arch/arm/mach-omap2] Error 2 Signed-off-by: Russ Dill <Russ.Dill@ti.com> Signed-off-by: Mike Turquette <mturquette@linaro.org> [mturquette@linaro.org: removed fixes made redundant by commit 93532c8a] [mturquette@linaro.org: improved $SUBJECT]
2013-04-03i2c: designware-hs: add i2c delay 300ns workaroundZhangfei Gao
Signed-off-by: Zhangfei Gao <zhangfei.gao@linaro.org>
2013-04-03ARM: Hi3620: Fix some coding style warningsLiXin
Fix some warnings and errors regarding checkpatch.pl Signed-off-by: LiXin <li.xin@linaro.org>
2013-04-03ARM: Hi3620: Add keypad driver to Hi3620LiXin
Add Keypad Driver to Hi3620 platform. Signed-off-by: LiXin <li.xin@linaro.org>
2013-03-28Input: enable touch atmel_mXT224EZhangfei Gao
touchscreen: Device Drivers ---> Input device support ---> [*] Touchscreens ---> [*] Atmel mXT224E based touchscreens Signed-off-by: Zhangfei Gao <zhangfei.gao@linaro.org>
2013-03-25Merge remote-tracking branch 'origin/topic-hi6421-rtc' into ↵Guodong Xu
integration-linux-mainline
2013-03-25Revert "yaffs2: add yaffs2 filesystem support"Guodong Xu
This reverts commit 6e6d98df841c9c297585be3168dfd6141924f272.
2013-03-25rtc: add hi6421 rtcHaojian Zhuang
Support hi6421 rtc function. Signed-off-by: Haojian Zhuang <haojian.zhuang@linaro.org>
2013-03-25mfd: hi6421: avoid to call irq handler with lockHaojian Zhuang
While hi6421 SoC interrupt occurs, it always locks spinlock even calling child irq handler. If child irq handler accesses pmic registers, it will be dead lock since accessing function also uses spinlock. Signed-off-by: Haojian Zhuang <haojian.zhuang@linaro.org>
2013-03-25mfd: hi6421: fix bug of hi6421_pmic_rmwZhangfei Gao
Introduced by commit dd7229d3e5c7bff0a9501632755c5b6b209381ff Caused sd card init fail Signed-off-by: Zhangfei Gao <zhangfei.gao@linaro.org>
2013-03-22Merge remote-tracking branch 'origin/nand_branch' into ↵Guodong Xu
integration-linux-mainline
2013-03-22Merge branch 'origin/mmc_branch' into integration-linux-mainlineGuodong Xu
2013-03-19i2c: designware: change pinctrl funcZhangfei Gao
Use devm_pinctrl_get_select_default to set default pinctrl Signed-off-by: Zhangfei Gao <zhangfei.gao@linaro.org>
2013-03-19mmc: dw_mmc-hisilicon: change pinctrl funcZhangfei Gao
Use devm_pinctrl_get_select_default to set default pinctrl Signed-off-by: Zhangfei Gao <zhangfei.gao@linaro.org>
2013-03-19mmc: dw-mmc-hisilicon add workaroundZhangfei Gao
to be reverted Since clk driver still can not choose parent accordingly, add testsdclk and access register directly for simplicity The patch can be reverted if clk driver is enhanced Signed-off-by: Zhangfei Gao <zhangfei.gao@linaro.org>
2013-03-19mmc: add dw-mmc-hisiliconZhangfei Gao
Support sd/emmc make menuconfig Device Drivers ---> [*] MMC/SD/SDIO card support ---> [*] Internal DMAC interface [*] Hisilicon specific extensions for Synopsys DW Memory Card Interface (32) Number of minors per block device File system -> extX, vfat, msdos, lanuguage support Notes: 1, emmc has to work under DMA mode, pio not work 2, emmc SDMMC_FIFOTH (0x04c) can not provide correct value, fifo-depth should be provided in dts Signed-off-by: Zhangfei Gao <zhangfei.gao@linaro.org>
2013-03-19mmc: dw_mmc: change definition of get_cdZhangfei Gao
int (*get_cd)(struct dw_mci *host, u32 slot_id) Add host info to pass priv, where contains cd pin Signed-off-by: Zhangfei Gao <zhangfei.gao@linaro.org>
2013-03-19mmc: dw_mmc: remove exit_pZhangfei Gao
Remove __exit_p, which also requires change static func Signed-off-by: Zhangfei Gao <zhangfei.gao@linaro.org>
2013-03-18yaffs2: add yaffs2 filesystem supportMingjun Zhang
add yaffs2 filesystem support, also config auto select yaffs2 when using hisilicon nfc driver. Signed-off-by: Mingjun Zhang <zhang.mingjun@linaro.org>
2013-03-18mtd: nand: hs nfc: support hisilicon nand flash controllerMingjun Zhang
Hisilicon nfc is a powerful nand flash controller with dma and hardware ecc functions. This driver supports some non-standard nand chips, included in the driver's nand ids table. Signed-off-by: Mingjun Zhang <zhang.mingjun@linaro.org>
2013-03-15input: misc: clean code on hi6421 onkeyHaojian Zhuang
Signed-off-by: Haojian Zhuang <haojian.zhuang@linaro.org>
2013-03-15input: misc: add hi6421 onkey driverHaojian Zhuang
Support Hi6421 PMIC powerkey driver. Signed-off-by: Haojian Zhuang <haojian.zhuang@linaro.org>
2013-03-15mfd: hi6421: add irq supportHaojian Zhuang
Support PMIC irq handling. Signed-off-by: Haojian Zhuang <haojian.zhuang@linaro.org>
2013-03-15gpio: pl061: sync with 3.10Haojian Zhuang
Sync code with 3.10 to pull irqdomain code. Signed-off-by: Haojian Zhuang <haojian.zhuang@linaro.org>
2013-03-14mfd: hi6421: use spin lockHaojian Zhuang
Avoid to use mutex lock in rmw operation. Use spin lock with irq disabled instead. Since irq handler also accesses pmic register, we should avoid resource conflict between irq context and kernel context. And append spin lock operation in pmic read/write too. Signed-off-by: Haojian Zhuang <haojian.zhuang@linaro.org>