From: Boris BREZILLON <boris.brezillon@free-electrons.com> To: Samuel Ortiz <sameo@linux.intel.com>, Lee Jones <lee.jones@linaro.org>, Thierry Reding <thierry.reding@gmail.com>, linux-pwm@vger.kernel.org, David Airlie <airlied@linux.ie>, dri-devel@lists.freedesktop.org, Nicolas Ferre <nicolas.ferre@atmel.com>, Jean-Christophe Plagniol-Villard <plagnioj@jcrosoft.com>, Alexandre Belloni <alexandre.belloni@free-electrons.com>, Andrew Victor <linux@maxim.org.za> Cc: Jean-Jacques Hiblot <jjhiblot@traphandler.com>, Laurent Pinchart <laurent.pinchart@ideasonboard.com>, Rob Herring <robh+dt@kernel.org>, Pawel Moll <pawel.moll@arm.com>, Mark Rutland <mark.rutland@arm.com>, Ian Campbell <ijc+devicetree@hellion.org.uk>, Kumar Gala <galak@codeaurora.org>, devicetree@vger.kernel.org, Bo Shen <voice.shen@atmel.com>, Thomas Petazzoni <thomas.petazzoni@free-electrons.com>, linux-arm-kernel@lists.infradead.org, Robert Nelson <robertcnelson@gmail.com>, Tim Niemeyer <tim.niemeyer@corscience.de>, Boris BREZILLON <boris.brezillon@free-electrons.com> Subject: [RESEND PATCH v3 01/11] mfd: add atmel-hlcdc driver Date: Mon, 7 Jul 2014 18:42:54 +0200 [thread overview] Message-ID: <1404751384-5077-2-git-send-email-boris.brezillon@free-electrons.com> (raw) In-Reply-To: <1404751384-5077-1-git-send-email-boris.brezillon@free-electrons.com> The HLCDC IP available on some Atmel SoCs (i.e. at91sam9n12, at91sam9x5 family or sama5d3 family) exposes 2 subdevices: - a display controller (controlled by a DRM driver) - a PWM chip The MFD device provides a regmap and several clocks (those connected to this hardware block) to its subdevices. This way concurrent accesses to the iomem range are handled by the regmap framework, and each subdevice can safely access HLCDC registers. Signed-off-by: Boris BREZILLON <boris.brezillon@free-electrons.com> --- drivers/mfd/Kconfig | 12 ++++ drivers/mfd/Makefile | 1 + drivers/mfd/atmel-hlcdc.c | 119 ++++++++++++++++++++++++++++++++++++++++ include/linux/mfd/atmel-hlcdc.h | 78 ++++++++++++++++++++++++++ 4 files changed, 210 insertions(+) create mode 100644 drivers/mfd/atmel-hlcdc.c create mode 100644 include/linux/mfd/atmel-hlcdc.h diff --git a/drivers/mfd/Kconfig b/drivers/mfd/Kconfig index ee8204c..75e674f 100644 --- a/drivers/mfd/Kconfig +++ b/drivers/mfd/Kconfig @@ -59,6 +59,18 @@ config MFD_AAT2870_CORE additional drivers must be enabled in order to use the functionality of the device. +config MFD_ATMEL_HLCDC + tristate "Atmel HLCDC (HLCD Controller)" + select MFD_CORE + select REGMAP_MMIO + depends on OF + help + Choose this option if you have an ATMEL SoC with an HLCDC (HLCD + Controller) IP (i.e. at91sam9n12, at91sam9x5 family or sama5d3 + family). + This MFD device exposes two subdevices: a PWM chip and a Display + Controller. + config MFD_BCM590XX tristate "Broadcom BCM590xx PMUs" select MFD_CORE diff --git a/drivers/mfd/Makefile b/drivers/mfd/Makefile index 8afedba..5f25b0d 100644 --- a/drivers/mfd/Makefile +++ b/drivers/mfd/Makefile @@ -156,6 +156,7 @@ obj-$(CONFIG_MFD_PM8921_CORE) += pm8921-core.o ssbi.o obj-$(CONFIG_TPS65911_COMPARATOR) += tps65911-comparator.o obj-$(CONFIG_MFD_TPS65090) += tps65090.o obj-$(CONFIG_MFD_AAT2870_CORE) += aat2870-core.o +obj-$(CONFIG_MFD_ATMEL_HLCDC) += atmel-hlcdc.o obj-$(CONFIG_MFD_INTEL_MSIC) += intel_msic.o obj-$(CONFIG_MFD_PALMAS) += palmas.o obj-$(CONFIG_MFD_VIPERBOARD) += viperboard.o diff --git a/drivers/mfd/atmel-hlcdc.c b/drivers/mfd/atmel-hlcdc.c new file mode 100644 index 0000000..381dd06 --- /dev/null +++ b/drivers/mfd/atmel-hlcdc.c @@ -0,0 +1,119 @@ +/* + * Copyright (C) 2014 Free Electrons + * Copyright (C) 2014 Atmel + * + * Author: Boris BREZILLON <boris.brezillon@free-electrons.com> + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 as published by + * the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program. If not, see <http://www.gnu.org/licenses/>. + */ + +#include <linux/clk.h> +#include <linux/mfd/atmel-hlcdc.h> +#include <linux/mfd/core.h> +#include <linux/module.h> +#include <linux/platform_device.h> +#include <linux/regmap.h> + +#define ATMEL_HLCDC_REG_MAX (0x4000 - 0x4) + +static const struct mfd_cell atmel_hlcdc_cells[] = { + { + .name = "atmel-hlcdc-pwm", + .of_compatible = "atmel,hlcdc-pwm", + }, + { + .name = "atmel-hlcdc-dc", + .of_compatible = "atmel,hlcdc-dc", + }, +}; + +static const struct regmap_config atmel_hlcdc_regmap_config = { + .reg_bits = 32, + .val_bits = 32, + .reg_stride = 4, + .max_register = ATMEL_HLCDC_REG_MAX, +}; + +static int atmel_hlcdc_probe(struct platform_device *pdev) +{ + struct device *dev = &pdev->dev; + struct atmel_hlcdc *hlcdc; + struct resource *res; + void __iomem *regs; + + hlcdc = devm_kzalloc(dev, sizeof(*hlcdc), GFP_KERNEL); + if (!hlcdc) + return -ENOMEM; + + res = platform_get_resource(pdev, IORESOURCE_MEM, 0); + regs = devm_ioremap_resource(dev, res); + if (IS_ERR(regs)) + return PTR_ERR(regs); + + hlcdc->periph_clk = devm_clk_get(dev, "periph_clk"); + if (IS_ERR(hlcdc->periph_clk)) { + dev_err(dev, "failed to get peripheral clock\n"); + return PTR_ERR(hlcdc->periph_clk); + } + + hlcdc->sys_clk = devm_clk_get(dev, "sys_clk"); + if (IS_ERR(hlcdc->sys_clk)) { + dev_err(dev, "failed to get system clock\n"); + return PTR_ERR(hlcdc->sys_clk); + } + + hlcdc->slow_clk = devm_clk_get(dev, "slow_clk"); + if (IS_ERR(hlcdc->slow_clk)) { + dev_err(dev, "failed to get slow clock\n"); + return PTR_ERR(hlcdc->slow_clk); + } + + hlcdc->regmap = devm_regmap_init_mmio(dev, regs, + &atmel_hlcdc_regmap_config); + if (IS_ERR(hlcdc->regmap)) + return PTR_ERR(hlcdc->regmap); + + dev_set_drvdata(dev, hlcdc); + + return mfd_add_devices(dev, -1, atmel_hlcdc_cells, + ARRAY_SIZE(atmel_hlcdc_cells), + NULL, 0, NULL); +} + +static int atmel_hlcdc_remove(struct platform_device *pdev) +{ + mfd_remove_devices(&pdev->dev); + + return 0; +} + +static const struct of_device_id atmel_hlcdc_match[] = { + { .compatible = "atmel,sama5d3-hlcdc" }, + { /* sentinel */ }, +}; + +static struct platform_driver atmel_hlcdc_driver = { + .probe = atmel_hlcdc_probe, + .remove = atmel_hlcdc_remove, + .driver = { + .name = "atmel-hlcdc", + .owner = THIS_MODULE, + .of_match_table = atmel_hlcdc_match, + }, +}; +module_platform_driver(atmel_hlcdc_driver); + +MODULE_ALIAS("platform:atmel-hlcdc"); +MODULE_AUTHOR("Boris Brezillon <boris.brezillon@free-electrons.com>"); +MODULE_DESCRIPTION("Atmel HLCDC driver"); +MODULE_LICENSE("GPL"); diff --git a/include/linux/mfd/atmel-hlcdc.h b/include/linux/mfd/atmel-hlcdc.h new file mode 100644 index 0000000..e9a503d --- /dev/null +++ b/include/linux/mfd/atmel-hlcdc.h @@ -0,0 +1,78 @@ +/* + * Copyright (C) 2014 Free Electrons + * Copyright (C) 2014 Atmel + * + * Author: Boris BREZILLON <boris.brezillon@free-electrons.com> + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 as published by + * the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program. If not, see <http://www.gnu.org/licenses/>. + */ + +#ifndef __LINUX_MFD_HLCDC_H +#define __LINUX_MFD_HLCDC_H + +#include <linux/clk.h> +#include <linux/regmap.h> + +#define ATMEL_HLCDC_CFG(i) ((i) * 0x4) +#define ATMEL_HLCDC_SIG_CFG LCDCFG(5) +#define ATMEL_HLCDC_HSPOL BIT(0) +#define ATMEL_HLCDC_VSPOL BIT(1) +#define ATMEL_HLCDC_VSPDLYS BIT(2) +#define ATMEL_HLCDC_VSPDLYE BIT(3) +#define ATMEL_HLCDC_DISPPOL BIT(4) +#define ATMEL_HLCDC_DITHER BIT(6) +#define ATMEL_HLCDC_DISPDLY BIT(7) +#define ATMEL_HLCDC_MODE_MASK GENMASK(9, 8) +#define ATMEL_HLCDC_PP BIT(10) +#define ATMEL_HLCDC_VSPSU BIT(12) +#define ATMEL_HLCDC_VSPHO BIT(13) +#define ATMEL_HLCDC_GUARDTIME_MASK GENMASK(20, 16) + +#define ATMEL_HLCDC_EN 0x20 +#define ATMEL_HLCDC_DIS 0x24 +#define ATMEL_HLCDC_SR 0x28 +#define ATMEL_HLCDC_IER 0x2c +#define ATMEL_HLCDC_IDR 0x30 +#define ATMEL_HLCDC_IMR 0x34 +#define ATMEL_HLCDC_ISR 0x38 + +#define ATMEL_HLCDC_CLKPOL BIT(0) +#define ATMEL_HLCDC_CLKSEL BIT(2) +#define ATMEL_HLCDC_CLKPWMSEL BIT(3) +#define ATMEL_HLCDC_CGDIS(i) BIT(8 + (i)) +#define ATMEL_HLCDC_CLKDIV_SHFT 16 +#define ATMEL_HLCDC_CLKDIV_MASK GENMASK(23, 16) +#define ATMEL_HLCDC_CLKDIV(div) ((div - 2) << ATMEL_HLCDC_CLKDIV_SHFT) + +#define ATMEL_HLCDC_PIXEL_CLK BIT(0) +#define ATMEL_HLCDC_SYNC BIT(1) +#define ATMEL_HLCDC_DISP BIT(2) +#define ATMEL_HLCDC_PWM BIT(3) +#define ATMEL_HLCDC_SIP BIT(4) + +/** + * Structure shared by the MFD device and its subdevices. + * + * @regmap: register map used to access HLCDC IP registers + * @periph_clk: the hlcdc peripheral clock + * @sys_clk: the hlcdc system clock + * @slow_clk: the system slow clk + */ +struct atmel_hlcdc { + struct regmap *regmap; + struct clk *periph_clk; + struct clk *sys_clk; + struct clk *slow_clk; +}; + +#endif /* __LINUX_MFD_HLCDC_H */ -- 1.8.3.2
WARNING: multiple messages have this Message-ID (diff)
From: boris.brezillon@free-electrons.com (Boris BREZILLON) To: linux-arm-kernel@lists.infradead.org Subject: [RESEND PATCH v3 01/11] mfd: add atmel-hlcdc driver Date: Mon, 7 Jul 2014 18:42:54 +0200 [thread overview] Message-ID: <1404751384-5077-2-git-send-email-boris.brezillon@free-electrons.com> (raw) In-Reply-To: <1404751384-5077-1-git-send-email-boris.brezillon@free-electrons.com> The HLCDC IP available on some Atmel SoCs (i.e. at91sam9n12, at91sam9x5 family or sama5d3 family) exposes 2 subdevices: - a display controller (controlled by a DRM driver) - a PWM chip The MFD device provides a regmap and several clocks (those connected to this hardware block) to its subdevices. This way concurrent accesses to the iomem range are handled by the regmap framework, and each subdevice can safely access HLCDC registers. Signed-off-by: Boris BREZILLON <boris.brezillon@free-electrons.com> --- drivers/mfd/Kconfig | 12 ++++ drivers/mfd/Makefile | 1 + drivers/mfd/atmel-hlcdc.c | 119 ++++++++++++++++++++++++++++++++++++++++ include/linux/mfd/atmel-hlcdc.h | 78 ++++++++++++++++++++++++++ 4 files changed, 210 insertions(+) create mode 100644 drivers/mfd/atmel-hlcdc.c create mode 100644 include/linux/mfd/atmel-hlcdc.h diff --git a/drivers/mfd/Kconfig b/drivers/mfd/Kconfig index ee8204c..75e674f 100644 --- a/drivers/mfd/Kconfig +++ b/drivers/mfd/Kconfig @@ -59,6 +59,18 @@ config MFD_AAT2870_CORE additional drivers must be enabled in order to use the functionality of the device. +config MFD_ATMEL_HLCDC + tristate "Atmel HLCDC (HLCD Controller)" + select MFD_CORE + select REGMAP_MMIO + depends on OF + help + Choose this option if you have an ATMEL SoC with an HLCDC (HLCD + Controller) IP (i.e. at91sam9n12, at91sam9x5 family or sama5d3 + family). + This MFD device exposes two subdevices: a PWM chip and a Display + Controller. + config MFD_BCM590XX tristate "Broadcom BCM590xx PMUs" select MFD_CORE diff --git a/drivers/mfd/Makefile b/drivers/mfd/Makefile index 8afedba..5f25b0d 100644 --- a/drivers/mfd/Makefile +++ b/drivers/mfd/Makefile @@ -156,6 +156,7 @@ obj-$(CONFIG_MFD_PM8921_CORE) += pm8921-core.o ssbi.o obj-$(CONFIG_TPS65911_COMPARATOR) += tps65911-comparator.o obj-$(CONFIG_MFD_TPS65090) += tps65090.o obj-$(CONFIG_MFD_AAT2870_CORE) += aat2870-core.o +obj-$(CONFIG_MFD_ATMEL_HLCDC) += atmel-hlcdc.o obj-$(CONFIG_MFD_INTEL_MSIC) += intel_msic.o obj-$(CONFIG_MFD_PALMAS) += palmas.o obj-$(CONFIG_MFD_VIPERBOARD) += viperboard.o diff --git a/drivers/mfd/atmel-hlcdc.c b/drivers/mfd/atmel-hlcdc.c new file mode 100644 index 0000000..381dd06 --- /dev/null +++ b/drivers/mfd/atmel-hlcdc.c @@ -0,0 +1,119 @@ +/* + * Copyright (C) 2014 Free Electrons + * Copyright (C) 2014 Atmel + * + * Author: Boris BREZILLON <boris.brezillon@free-electrons.com> + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 as published by + * the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program. If not, see <http://www.gnu.org/licenses/>. + */ + +#include <linux/clk.h> +#include <linux/mfd/atmel-hlcdc.h> +#include <linux/mfd/core.h> +#include <linux/module.h> +#include <linux/platform_device.h> +#include <linux/regmap.h> + +#define ATMEL_HLCDC_REG_MAX (0x4000 - 0x4) + +static const struct mfd_cell atmel_hlcdc_cells[] = { + { + .name = "atmel-hlcdc-pwm", + .of_compatible = "atmel,hlcdc-pwm", + }, + { + .name = "atmel-hlcdc-dc", + .of_compatible = "atmel,hlcdc-dc", + }, +}; + +static const struct regmap_config atmel_hlcdc_regmap_config = { + .reg_bits = 32, + .val_bits = 32, + .reg_stride = 4, + .max_register = ATMEL_HLCDC_REG_MAX, +}; + +static int atmel_hlcdc_probe(struct platform_device *pdev) +{ + struct device *dev = &pdev->dev; + struct atmel_hlcdc *hlcdc; + struct resource *res; + void __iomem *regs; + + hlcdc = devm_kzalloc(dev, sizeof(*hlcdc), GFP_KERNEL); + if (!hlcdc) + return -ENOMEM; + + res = platform_get_resource(pdev, IORESOURCE_MEM, 0); + regs = devm_ioremap_resource(dev, res); + if (IS_ERR(regs)) + return PTR_ERR(regs); + + hlcdc->periph_clk = devm_clk_get(dev, "periph_clk"); + if (IS_ERR(hlcdc->periph_clk)) { + dev_err(dev, "failed to get peripheral clock\n"); + return PTR_ERR(hlcdc->periph_clk); + } + + hlcdc->sys_clk = devm_clk_get(dev, "sys_clk"); + if (IS_ERR(hlcdc->sys_clk)) { + dev_err(dev, "failed to get system clock\n"); + return PTR_ERR(hlcdc->sys_clk); + } + + hlcdc->slow_clk = devm_clk_get(dev, "slow_clk"); + if (IS_ERR(hlcdc->slow_clk)) { + dev_err(dev, "failed to get slow clock\n"); + return PTR_ERR(hlcdc->slow_clk); + } + + hlcdc->regmap = devm_regmap_init_mmio(dev, regs, + &atmel_hlcdc_regmap_config); + if (IS_ERR(hlcdc->regmap)) + return PTR_ERR(hlcdc->regmap); + + dev_set_drvdata(dev, hlcdc); + + return mfd_add_devices(dev, -1, atmel_hlcdc_cells, + ARRAY_SIZE(atmel_hlcdc_cells), + NULL, 0, NULL); +} + +static int atmel_hlcdc_remove(struct platform_device *pdev) +{ + mfd_remove_devices(&pdev->dev); + + return 0; +} + +static const struct of_device_id atmel_hlcdc_match[] = { + { .compatible = "atmel,sama5d3-hlcdc" }, + { /* sentinel */ }, +}; + +static struct platform_driver atmel_hlcdc_driver = { + .probe = atmel_hlcdc_probe, + .remove = atmel_hlcdc_remove, + .driver = { + .name = "atmel-hlcdc", + .owner = THIS_MODULE, + .of_match_table = atmel_hlcdc_match, + }, +}; +module_platform_driver(atmel_hlcdc_driver); + +MODULE_ALIAS("platform:atmel-hlcdc"); +MODULE_AUTHOR("Boris Brezillon <boris.brezillon@free-electrons.com>"); +MODULE_DESCRIPTION("Atmel HLCDC driver"); +MODULE_LICENSE("GPL"); diff --git a/include/linux/mfd/atmel-hlcdc.h b/include/linux/mfd/atmel-hlcdc.h new file mode 100644 index 0000000..e9a503d --- /dev/null +++ b/include/linux/mfd/atmel-hlcdc.h @@ -0,0 +1,78 @@ +/* + * Copyright (C) 2014 Free Electrons + * Copyright (C) 2014 Atmel + * + * Author: Boris BREZILLON <boris.brezillon@free-electrons.com> + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 as published by + * the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program. If not, see <http://www.gnu.org/licenses/>. + */ + +#ifndef __LINUX_MFD_HLCDC_H +#define __LINUX_MFD_HLCDC_H + +#include <linux/clk.h> +#include <linux/regmap.h> + +#define ATMEL_HLCDC_CFG(i) ((i) * 0x4) +#define ATMEL_HLCDC_SIG_CFG LCDCFG(5) +#define ATMEL_HLCDC_HSPOL BIT(0) +#define ATMEL_HLCDC_VSPOL BIT(1) +#define ATMEL_HLCDC_VSPDLYS BIT(2) +#define ATMEL_HLCDC_VSPDLYE BIT(3) +#define ATMEL_HLCDC_DISPPOL BIT(4) +#define ATMEL_HLCDC_DITHER BIT(6) +#define ATMEL_HLCDC_DISPDLY BIT(7) +#define ATMEL_HLCDC_MODE_MASK GENMASK(9, 8) +#define ATMEL_HLCDC_PP BIT(10) +#define ATMEL_HLCDC_VSPSU BIT(12) +#define ATMEL_HLCDC_VSPHO BIT(13) +#define ATMEL_HLCDC_GUARDTIME_MASK GENMASK(20, 16) + +#define ATMEL_HLCDC_EN 0x20 +#define ATMEL_HLCDC_DIS 0x24 +#define ATMEL_HLCDC_SR 0x28 +#define ATMEL_HLCDC_IER 0x2c +#define ATMEL_HLCDC_IDR 0x30 +#define ATMEL_HLCDC_IMR 0x34 +#define ATMEL_HLCDC_ISR 0x38 + +#define ATMEL_HLCDC_CLKPOL BIT(0) +#define ATMEL_HLCDC_CLKSEL BIT(2) +#define ATMEL_HLCDC_CLKPWMSEL BIT(3) +#define ATMEL_HLCDC_CGDIS(i) BIT(8 + (i)) +#define ATMEL_HLCDC_CLKDIV_SHFT 16 +#define ATMEL_HLCDC_CLKDIV_MASK GENMASK(23, 16) +#define ATMEL_HLCDC_CLKDIV(div) ((div - 2) << ATMEL_HLCDC_CLKDIV_SHFT) + +#define ATMEL_HLCDC_PIXEL_CLK BIT(0) +#define ATMEL_HLCDC_SYNC BIT(1) +#define ATMEL_HLCDC_DISP BIT(2) +#define ATMEL_HLCDC_PWM BIT(3) +#define ATMEL_HLCDC_SIP BIT(4) + +/** + * Structure shared by the MFD device and its subdevices. + * + * @regmap: register map used to access HLCDC IP registers + * @periph_clk: the hlcdc peripheral clock + * @sys_clk: the hlcdc system clock + * @slow_clk: the system slow clk + */ +struct atmel_hlcdc { + struct regmap *regmap; + struct clk *periph_clk; + struct clk *sys_clk; + struct clk *slow_clk; +}; + +#endif /* __LINUX_MFD_HLCDC_H */ -- 1.8.3.2
next prev parent reply other threads:[~2014-07-07 16:42 UTC|newest] Thread overview: 149+ messages / expand[flat|nested] mbox.gz Atom feed top 2014-07-07 16:42 [RESEND PATCH v3 00/11] drm: add support for Atmel HLCDC Display Controller Boris BREZILLON 2014-07-07 16:42 ` Boris BREZILLON 2014-07-07 16:42 ` Boris BREZILLON [this message] 2014-07-07 16:42 ` [RESEND PATCH v3 01/11] mfd: add atmel-hlcdc driver Boris BREZILLON 2014-07-07 16:42 ` [RESEND PATCH v3 02/11] mfd: add documentation for atmel-hlcdc DT bindings Boris BREZILLON 2014-07-07 16:42 ` Boris BREZILLON 2014-07-07 16:42 ` [RESEND PATCH v3 03/11] pwm: add support for atmel-hlcdc-pwm device Boris BREZILLON 2014-07-07 16:42 ` Boris BREZILLON 2014-07-07 16:42 ` [RESEND PATCH v3 04/11] pwm: add DT bindings documentation for atmel-hlcdc-pwm driver Boris BREZILLON 2014-07-07 16:42 ` Boris BREZILLON 2014-07-07 16:42 ` [RESEND PATCH v3 05/11] drm: add Atmel HLCDC Display Controller support Boris BREZILLON 2014-07-07 16:42 ` Boris BREZILLON 2014-07-08 3:45 ` Rob Clark 2014-07-08 7:23 ` Boris BREZILLON 2014-07-08 7:23 ` Boris BREZILLON 2014-07-08 12:49 ` Rob Clark 2014-07-08 12:49 ` Rob Clark 2014-07-08 14:37 ` Boris BREZILLON 2014-07-08 14:37 ` Boris BREZILLON 2014-07-08 15:41 ` Rob Clark 2014-07-08 15:41 ` Rob Clark 2014-07-08 17:08 ` Boris BREZILLON 2014-07-08 17:08 ` Boris BREZILLON 2014-07-08 23:51 ` Matt Roper 2014-07-08 23:51 ` Matt Roper 2014-07-09 7:14 ` Boris BREZILLON 2014-07-09 7:14 ` Boris BREZILLON 2014-07-09 14:02 ` Daniel Vetter 2014-07-09 14:02 ` Daniel Vetter 2014-07-09 8:18 ` Boris BREZILLON 2014-07-09 8:18 ` Boris BREZILLON 2014-07-09 11:53 ` Rob Clark 2014-07-09 11:53 ` Rob Clark 2014-07-11 15:17 ` [RFC PATCH] drm: rework flip-work helpers to avoid calling func when the FIFO is full Boris BREZILLON 2014-07-11 15:41 ` Rob Clark 2014-07-11 15:47 ` Boris BREZILLON 2014-07-11 15:57 ` Boris BREZILLON 2014-07-11 16:05 ` Rob Clark 2014-07-12 18:16 ` [RESEND PATCH v3 05/11] drm: add Atmel HLCDC Display Controller support Boris BREZILLON 2014-07-12 18:16 ` Boris BREZILLON 2014-07-12 18:37 ` Rob Clark 2014-07-12 18:37 ` Rob Clark 2014-07-15 11:26 ` Boris BREZILLON 2014-07-15 11:26 ` Boris BREZILLON 2014-07-07 16:42 ` [RESEND PATCH v3 06/11] drm: add DT bindings documentation for atmel-hlcdc-dc driver Boris BREZILLON 2014-07-07 16:42 ` Boris BREZILLON 2014-07-10 11:16 ` Laurent Pinchart 2014-07-10 11:16 ` Laurent Pinchart 2014-07-10 12:56 ` Boris BREZILLON 2014-07-10 12:56 ` Boris BREZILLON 2014-07-11 10:37 ` Laurent Pinchart 2014-07-11 10:37 ` Laurent Pinchart 2014-07-11 12:00 ` Boris BREZILLON 2014-07-11 12:00 ` Boris BREZILLON 2014-07-11 12:19 ` Boris BREZILLON 2014-07-11 12:19 ` Boris BREZILLON 2014-07-14 10:18 ` Thierry Reding 2014-07-14 10:18 ` Thierry Reding 2014-07-15 11:45 ` Boris BREZILLON 2014-07-15 11:45 ` Boris BREZILLON 2014-07-14 10:05 ` Thierry Reding 2014-07-14 10:05 ` Thierry Reding 2014-07-15 10:06 ` Boris BREZILLON 2014-07-15 10:06 ` Boris BREZILLON 2014-07-15 10:20 ` Laurent Pinchart 2014-07-15 10:20 ` Laurent Pinchart 2014-07-15 10:37 ` Thierry Reding 2014-07-15 10:37 ` Thierry Reding 2014-07-15 10:43 ` Laurent Pinchart 2014-07-15 10:43 ` Laurent Pinchart 2014-07-15 10:52 ` Thierry Reding 2014-07-15 10:52 ` Thierry Reding 2014-07-15 11:07 ` Laurent Pinchart 2014-07-15 11:07 ` Laurent Pinchart 2014-07-16 13:05 ` Boris BREZILLON 2014-07-16 13:05 ` Boris BREZILLON 2014-07-16 13:20 ` Laurent Pinchart 2014-07-16 13:20 ` Laurent Pinchart 2014-07-16 13:20 ` Laurent Pinchart 2014-07-16 13:44 ` Boris BREZILLON 2014-07-16 13:44 ` Boris BREZILLON 2014-07-15 12:14 ` Boris BREZILLON 2014-07-15 12:14 ` Boris BREZILLON 2014-07-15 10:31 ` Thierry Reding 2014-07-15 10:31 ` Thierry Reding 2014-07-18 14:51 ` Boris BREZILLON 2014-07-18 14:51 ` Boris BREZILLON 2014-07-18 15:43 ` Boris BREZILLON 2014-07-18 15:43 ` Boris BREZILLON 2014-07-21 8:59 ` Thierry Reding 2014-07-21 8:59 ` Thierry Reding 2014-07-21 9:24 ` Boris BREZILLON 2014-07-21 9:24 ` Boris BREZILLON 2014-07-21 9:32 ` Laurent Pinchart 2014-07-21 9:32 ` Laurent Pinchart 2014-07-21 9:57 ` Boris BREZILLON 2014-07-21 9:57 ` Boris BREZILLON 2014-07-21 12:12 ` Thierry Reding 2014-07-21 12:12 ` Thierry Reding 2014-07-21 12:16 ` Laurent Pinchart 2014-07-21 12:16 ` Laurent Pinchart 2014-07-21 12:34 ` Boris BREZILLON 2014-07-21 12:34 ` Boris BREZILLON 2014-07-21 12:55 ` Thierry Reding 2014-07-21 12:55 ` Thierry Reding 2014-07-21 13:22 ` Laurent Pinchart 2014-07-21 13:22 ` Laurent Pinchart 2014-07-21 13:30 ` Thierry Reding 2014-07-21 13:30 ` Thierry Reding 2014-07-21 13:43 ` Boris BREZILLON 2014-07-21 13:43 ` Boris BREZILLON 2014-07-21 13:47 ` Laurent Pinchart 2014-07-21 13:47 ` Laurent Pinchart 2014-07-21 13:54 ` Thierry Reding 2014-07-21 13:54 ` Thierry Reding 2014-07-21 14:21 ` Boris BREZILLON 2014-07-21 14:21 ` Boris BREZILLON 2014-07-21 18:30 ` Laurent Pinchart 2014-07-21 18:30 ` Laurent Pinchart 2014-07-21 22:04 ` Thierry Reding 2014-07-21 22:04 ` Thierry Reding 2014-07-21 14:18 ` Boris BREZILLON 2014-07-21 14:18 ` Boris BREZILLON 2014-07-21 18:32 ` Laurent Pinchart 2014-07-21 18:32 ` Laurent Pinchart 2014-07-21 17:06 ` Russell King - ARM Linux 2014-07-21 17:06 ` Russell King - ARM Linux 2014-07-21 22:17 ` Thierry Reding 2014-07-21 22:17 ` Thierry Reding 2014-07-21 12:15 ` Thierry Reding 2014-07-21 12:15 ` Thierry Reding 2014-07-21 12:33 ` Boris BREZILLON 2014-07-21 12:33 ` Boris BREZILLON 2014-07-21 12:56 ` Thierry Reding 2014-07-21 12:56 ` Thierry Reding 2014-07-21 13:26 ` Laurent Pinchart 2014-07-21 13:26 ` Laurent Pinchart 2014-07-21 13:33 ` Thierry Reding 2014-07-21 13:33 ` Thierry Reding 2014-07-07 16:43 ` [RESEND PATCH v3 07/11] ARM: AT91/dt: split sama5d3 lcd pin definitions to match RGB mode configs Boris BREZILLON 2014-07-07 16:43 ` Boris BREZILLON 2014-07-07 16:43 ` [RESEND PATCH v3 08/11] ARM: AT91/dt: add alternative pin muxing for sama5d3 lcd pins Boris BREZILLON 2014-07-07 16:43 ` Boris BREZILLON 2014-07-07 16:43 ` [RESEND PATCH v3 09/11] ARM: at91/dt: define the HLCDC node available on sama5d3 SoCs Boris BREZILLON 2014-07-07 16:43 ` Boris BREZILLON 2014-07-07 16:43 ` [RESEND PATCH v3 10/11] ARM: at91/dt: add LCD panel description to sama5d3xdm.dtsi Boris BREZILLON 2014-07-07 16:43 ` Boris BREZILLON 2014-07-07 16:43 ` [RESEND PATCH v3 11/11] ARM: at91/dt: enable the LCD panel on sama5d3xek boards Boris BREZILLON 2014-07-07 16:43 ` Boris BREZILLON
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=1404751384-5077-2-git-send-email-boris.brezillon@free-electrons.com \ --to=boris.brezillon@free-electrons.com \ --cc=airlied@linux.ie \ --cc=alexandre.belloni@free-electrons.com \ --cc=devicetree@vger.kernel.org \ --cc=dri-devel@lists.freedesktop.org \ --cc=galak@codeaurora.org \ --cc=ijc+devicetree@hellion.org.uk \ --cc=jjhiblot@traphandler.com \ --cc=laurent.pinchart@ideasonboard.com \ --cc=lee.jones@linaro.org \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-pwm@vger.kernel.org \ --cc=linux@maxim.org.za \ --cc=mark.rutland@arm.com \ --cc=nicolas.ferre@atmel.com \ --cc=pawel.moll@arm.com \ --cc=plagnioj@jcrosoft.com \ --cc=robertcnelson@gmail.com \ --cc=robh+dt@kernel.org \ --cc=sameo@linux.intel.com \ --cc=thierry.reding@gmail.com \ --cc=thomas.petazzoni@free-electrons.com \ --cc=tim.niemeyer@corscience.de \ --cc=voice.shen@atmel.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.