[PATCH v2 2/3] ARM: dts: DRA72-EVM: Add regulator-allow-bypass property for ldo1 and ldo2
Add regulator-allow-bypass property for ldo1 and ldo2. Signed-off-by: Keerthy --- arch/arm/boot/dts/dra72-evm.dts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/arch/arm/boot/dts/dra72-evm.dts b/arch/arm/boot/dts/dra72-evm.dts index d6104d5..4e2824b 100644 --- a/arch/arm/boot/dts/dra72-evm.dts +++ b/arch/arm/boot/dts/dra72-evm.dts @@ -373,6 +373,7 @@ regulator-max-microvolt = <330>; regulator-always-on; regulator-boot-on; + regulator-allow-bypass; }; ldo2_reg: ldo2 { @@ -380,6 +381,7 @@ regulator-name = "ldo2"; regulator-min-microvolt = <180>; regulator-max-microvolt = <330>; + regulator-allow-bypass; }; ldo3_reg: ldo3 { -- 1.9.1 -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
[PATCH v2 1/3] regulator: tps65917/palmas: Add bypass ops for LDOs with bypass capability
set/get_bypass ops were missing for ldo1/ldo2 on tps65917 and ldo9 on palmas/tps659038 which support bypass mode. Adding the bypass ops helps consumers configure these ldos in bypass mode or remove bypass mode if need be. Signed-off-by: Keerthy Reported-by: Kishon Vijay Abraham I --- Changes in v2: * Added palmas/tps659038 ldo9 bypass ops. drivers/regulator/palmas-regulator.c | 39 1 file changed, 39 insertions(+) diff --git a/drivers/regulator/palmas-regulator.c b/drivers/regulator/palmas-regulator.c index 8217613..6efc7ee 100644 --- a/drivers/regulator/palmas-regulator.c +++ b/drivers/regulator/palmas-regulator.c @@ -612,6 +612,18 @@ static struct regulator_ops palmas_ops_ldo = { .map_voltage= regulator_map_voltage_linear, }; +static struct regulator_ops palmas_ops_ldo9 = { + .is_enabled = palmas_is_enabled_ldo, + .enable = regulator_enable_regmap, + .disable= regulator_disable_regmap, + .get_voltage_sel= regulator_get_voltage_sel_regmap, + .set_voltage_sel= regulator_set_voltage_sel_regmap, + .list_voltage = regulator_list_voltage_linear, + .map_voltage= regulator_map_voltage_linear, + .set_bypass = regulator_set_bypass_regmap, + .get_bypass = regulator_get_bypass_regmap, +}; + static struct regulator_ops palmas_ops_ext_control_ldo = { .get_voltage_sel= regulator_get_voltage_sel_regmap, .set_voltage_sel= regulator_set_voltage_sel_regmap, @@ -639,6 +651,19 @@ static struct regulator_ops tps65917_ops_ldo = { .set_voltage_time_sel = regulator_set_voltage_time_sel, }; +static struct regulator_ops tps65917_ops_ldo_1_2 = { + .is_enabled = palmas_is_enabled_ldo, + .enable = regulator_enable_regmap, + .disable= regulator_disable_regmap, + .get_voltage_sel= regulator_get_voltage_sel_regmap, + .set_voltage_sel= regulator_set_voltage_sel_regmap, + .list_voltage = regulator_list_voltage_linear, + .map_voltage= regulator_map_voltage_linear, + .set_voltage_time_sel = regulator_set_voltage_time_sel, + .set_bypass = regulator_set_bypass_regmap, + .get_bypass = regulator_get_bypass_regmap, +}; + static int palmas_regulator_config_external(struct palmas *palmas, int id, struct palmas_reg_init *reg_init) { @@ -915,6 +940,13 @@ static int palmas_ldo_registration(struct palmas_pmic *pmic, if (pdata && pdata->ldo6_vibrator && (id == PALMAS_REG_LDO6)) desc->enable_time = 2000; + + if (id == PALMAS_REG_LDO9) { + desc->ops = &palmas_ops_ldo9; + desc->bypass_reg = desc->enable_reg; + desc->bypass_mask = + PALMAS_LDO9_CTRL_LDO_BYPASS_EN; + } } else { if (!ddata->has_regen3 && id == PALMAS_REG_REGEN3) continue; @@ -1019,6 +1051,13 @@ static int tps65917_ldo_registration(struct palmas_pmic *pmic, * It is of the order of ~60mV/uS. */ desc->ramp_delay = 2500; + if (id == TPS65917_REG_LDO1 || + id == TPS65917_REG_LDO2) { + desc->ops = &tps65917_ops_ldo_1_2; + desc->bypass_reg = desc->enable_reg; + desc->bypass_mask = + TPS65917_LDO1_CTRL_BYPASS_EN; + } } else { desc->n_voltages = 1; if (reg_init && reg_init->roof_floor) -- 1.9.1 -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
[PATCH v2 3/3] ARM: dts: DRA7-EVM: Add regulator-allow-bypass property for ldo9
Add regulator-allow-bypass property for ldo9. Signed-off-by: Keerthy --- arch/arm/boot/dts/dra7-evm.dts | 1 + 1 file changed, 1 insertion(+) diff --git a/arch/arm/boot/dts/dra7-evm.dts b/arch/arm/boot/dts/dra7-evm.dts index 864f600..620e1b2 100644 --- a/arch/arm/boot/dts/dra7-evm.dts +++ b/arch/arm/boot/dts/dra7-evm.dts @@ -504,6 +504,7 @@ regulator-max-microvolt = <105>; regulator-always-on; regulator-boot-on; + regulator-allow-bypass; }; ldoln_reg: ldoln { -- 1.9.1 -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
[PATCH v2 0/3] regulator: TPS65917/palmas: Add bypass enabling/disabling support
ldo9 in palmas/tps659038 and ldo1,ldo2 in tps65917 have bypass capability. Adding the ops for the same. Boot tested on DRA7-EVM and DRA72-EVM. Keerthy (3): regulator: tps65917/palmas: Add bypass ops for LDOs ARM: dts: DRA72-EVM: Add regulator-allow-bypass property for ldo1 and ldo2 ARM: dts: DRA7-EVM: Add regulator-allow-bypass property for ldo9 arch/arm/boot/dts/dra7-evm.dts | 1 + arch/arm/boot/dts/dra72-evm.dts | 2 ++ drivers/regulator/palmas-regulator.c | 39 3 files changed, 42 insertions(+) -- 1.9.1 -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH 1/2] regulator: tps65917: Add bypass ops for ldo1 and ldo2 regulators
On Friday 11 December 2015 10:17 PM, Nishanth Menon wrote: On 12/11/2015 12:28 AM, Keerthy wrote: set/get_bypass ops were missing for ldo1/ldo2 regulators which support bypass mode. Adding the bypass ops for ldo1 and ldo2. This helps consumers configure ldo1 and ldo2 in bypass mode or remove bypass mode if need be. Signed-off-by: Keerthy Reported-by: Kishon Vijay Abraham I --- drivers/regulator/palmas-regulator.c | 20 1 file changed, 20 insertions(+) diff --git a/drivers/regulator/palmas-regulator.c b/drivers/regulator/palmas-regulator.c index 8217613..776b59a 100644 --- a/drivers/regulator/palmas-regulator.c +++ b/drivers/regulator/palmas-regulator.c @@ -389,6 +389,7 @@ static unsigned int palmas_smps_ramp_delay[4] = {0, 1, 5000, 2500}; #define SMPS10_BOOST_EN (1<<2) #define SMPS10_BYPASS_EN (1<<1) #define SMPS10_SWITCH_EN (1<<0) +#define TPS65917_LDO_1_2_BYPASS_EN BIT(6) This also applies to TWL6035/37, TPS659038 LDO9 as well. why not do it for all? considering the bit definition is the same as well? I will send a patch on top of this. #define REGULATOR_SLAVE 0 @@ -639,6 +640,19 @@ static struct regulator_ops tps65917_ops_ldo = { .set_voltage_time_sel = regulator_set_voltage_time_sel, }; +static struct regulator_ops tps65917_ops_ldo_1_2 = { + .is_enabled = palmas_is_enabled_ldo, + .enable = regulator_enable_regmap, + .disable= regulator_disable_regmap, + .get_voltage_sel= regulator_get_voltage_sel_regmap, + .set_voltage_sel= regulator_set_voltage_sel_regmap, + .list_voltage = regulator_list_voltage_linear, + .map_voltage= regulator_map_voltage_linear, + .set_voltage_time_sel = regulator_set_voltage_time_sel, + .set_bypass = regulator_set_bypass_regmap, + .get_bypass = regulator_get_bypass_regmap, +}; + static int palmas_regulator_config_external(struct palmas *palmas, int id, struct palmas_reg_init *reg_init) { @@ -1019,6 +1033,12 @@ static int tps65917_ldo_registration(struct palmas_pmic *pmic, * It is of the order of ~60mV/uS. */ desc->ramp_delay = 2500; + if (id == TPS65917_REG_LDO1 || + id == TPS65917_REG_LDO2) { + desc->ops = &tps65917_ops_ldo_1_2; + desc->bypass_reg = desc->enable_reg; + desc->bypass_mask = TPS65917_LDO_1_2_BYPASS_EN; + } } else { desc->n_voltages = 1; if (reg_init && reg_init->roof_floor) -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH 004/182] gpio: generic: factor into gpio_chip struct
On Wed, Dec 9, 2015 at 5:12 AM, Linus Walleij wrote: > The separate struct bgpio_chip has been a pain to handle, both > by being confusingly similar in name to struct gpio_chip and > for being contained inside a struct so that struct gpio_chip > is contained in a struct contained in a struct, making several > steps of dereferencing necessary. > > Make things simpler: include the fields directly into > , #ifdef:ed for CONFIG_GENERIC_GPIO, and > get rid of the altogether. Prefix > some of the member variables with bgpio_* and add proper > kerneldoc while we're at it. > > Modify all users to handle the change and use a struct > gpio_chip directly. And while we're at it: replace all > container_of() dereferencing by gpiochip_get_data() and > registering the gpio_chip with gpiochip_add_data(). > > Cc: a...@kernel.org > Cc: Lee Jones > Cc: Alexander Shiyan > Cc: Shawn Guo > Cc: Sascha Hauer > Cc: Tony Lindgren > Cc: Kukjin Kim > Cc: Krzysztof Kozlowski > Cc: Alexandre Courbot > Cc: Gregory Fong > Cc: Brian Norris > Cc: Florian Fainelli > Cc: Liviu Dudau > Cc: Sudeep Holla > Cc: Lorenzo Pieralisi > Cc: Nicolas Pitre > Cc: Olof Johansson > Cc: Vladimir Zapolskiy > Cc: Rabin Vincent > Cc: linux-arm-ker...@lists.infradead.org > Cc: linux-omap@vger.kernel.org > Cc: linux-samsung-...@vger.kernel.org > Cc: bcm-kernel-feedback-l...@broadcom.com > Signed-off-by: Linus Walleij > --- > ARM SoC folks and Lee: it would be great if you could > ACK the few lines hitting arch/arm/* and drivers/mfd/* in this > so I can take it through the GPIO tree. > --- [...] > drivers/gpio/gpio-brcmstb.c | 80 - For brcmstb: Acked-by: Gregory Fong -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH 2/5] ARM: dts: cm-t335: add support for SBC-T335
On Sun, Dec 13, 2015 at 10:55:36AM +0200, Uri Mashiach wrote: > Add basic support for the SBC-T335. > > CompuLab SBC-T335 is a single baseboard computer. > The SBC-T335 is based on the Texas Instruments Cortex-A8 Sitara AM3354 > SoC. > > Signed-off-by: Uri Mashiach > Acked-by: Igor Grinberg Acked-by: Rob Herring > --- > Documentation/devicetree/bindings/arm/omap/omap.txt | 3 +++ > arch/arm/boot/dts/Makefile | 1 + > arch/arm/boot/dts/am335x-sbc-t335.dts | 16 > 3 files changed, 20 insertions(+) > create mode 100644 arch/arm/boot/dts/am335x-sbc-t335.dts > > diff --git a/Documentation/devicetree/bindings/arm/omap/omap.txt > b/Documentation/devicetree/bindings/arm/omap/omap.txt > index 2154f97..358e87e 100644 > --- a/Documentation/devicetree/bindings/arm/omap/omap.txt > +++ b/Documentation/devicetree/bindings/arm/omap/omap.txt > @@ -141,6 +141,9 @@ Boards: > - AM335X CM-T335 : System On Module, built around the Sitara AM3352/4 >compatible = "compulab,cm-t335", "ti,am33xx" > > +- AM335X SBC-T335 : single board computer, built around the Sitara AM3352/4 > + compatible = "compulab,sbc-t335", "compulab,cm-t335", "ti,am33xx" > + > - OMAP5 EVM : Evaluation Module >compatible = "ti,omap5-evm", "ti,omap5" > > diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile > index 15411bc..d82ea97 100644 > --- a/arch/arm/boot/dts/Makefile > +++ b/arch/arm/boot/dts/Makefile > @@ -466,6 +466,7 @@ dtb-$(CONFIG_SOC_AM33XX) += \ > am335x-lxm.dtb \ > am335x-nano.dtb \ > am335x-pepper.dtb \ > + am335x-sbc-t335.dtb \ > am335x-sl50.dtb \ > am335x-wega-rdk.dtb > dtb-$(CONFIG_ARCH_OMAP4) += \ > diff --git a/arch/arm/boot/dts/am335x-sbc-t335.dts > b/arch/arm/boot/dts/am335x-sbc-t335.dts > new file mode 100644 > index 000..9e98445 > --- /dev/null > +++ b/arch/arm/boot/dts/am335x-sbc-t335.dts > @@ -0,0 +1,16 @@ > +/* > + * am335x-sbc-t335.dts - Device Tree file for Compulab SBC-T335 > + * > + * Copyright (C) 2014 - 2015 CompuLab Ltd. - http://www.compulab.co.il/ > + * > + * 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. > + */ > + > +#include "am335x-cm-t335.dts" > + > +/ { > + model = "CompuLab CM-T335 on SB-T335"; > + compatible = "compulab,sbc-t335", "compulab,cm-t335", "ti,am33xx"; > +}; > -- > 2.5.0 > -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH 004/182] gpio: generic: factor into gpio_chip struct
On Thu, Dec 10, 2015 at 12:08 AM, Michael Welling wrote: > On Wed, Dec 09, 2015 at 02:12:40PM +0100, Linus Walleij wrote: > ... >> - ret = gpiochip_add(&bgc->gc); >> + ret = gpiochip_add_data(gc, NULL); >> if (ret) { > > gpiochip_add is still mentioned in the dev_err below. I explicitly left text string updates aside, I am anyways going to have to go over all drivers for a second refactoring with gpiodev_alloc() etc. Yours, Linus Walleij -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH 1/2] video:omap2:dss: fix timings for VENC to match what omapdrm expects
Hi Tomi, Am 09.12.2015 um 09:18 schrieb Tomi Valkeinen : > > On 13/11/15 12:29, H. Nikolaus Schaller wrote: >> Otherwise check_timings fails and we get a "has no modes" message >> from xrandr. >> >> This fix makes the venc assume PAL and NTSC timings that match the >> timings synthetized by copy_timings_drm_to_omap() from omapdrm >> mode settings so that check_timings() succeeds. >> >> Tested on: BeagleBoard XM, GTA04 and OpenPandora >> >> Signed-off-by: H. Nikolaus Schaller >> --- >> drivers/video/fbdev/omap2/dss/venc.c | 12 >> 1 file changed, 12 insertions(+) > > I've picked this up. Thanks! > > With this patch and the one below I can get tv-out working on my very old > beagleboard, and it seems to work with X also. It doesn't start automatically > as the connection state is unknown, but doing "xrandr --output None-1 --auto" > was all I needed to enable it. Great that you did find the real reason of the problem. I have tested it on the GTA04 and it also works. Will the patches arrive in 4.5? So thanks a lot, Nikolaus > > Tomi > > From a4274600a5a67256b91266b0d2624b9c9028909b Mon Sep 17 00:00:00 2001 > From: Tomi Valkeinen > Date: Tue, 8 Dec 2015 18:32:14 +0200 > Subject: [PATCH] drm/omap: fix fbdev pix format to support all platforms > > omap_fbdev always creates a framebuffer with ARGB pixel format. On > OMAP3 we have VIDEO1 overlay that does not support ARGB, and on > OMAP2 none of the overlays support ARGB888. > > This patch changes the omap_fbdev's fb to XRGB, which is supported > by all platforms. > > Signed-off-by: Tomi Valkeinen > > diff --git a/drivers/gpu/drm/omapdrm/omap_fbdev.c > b/drivers/gpu/drm/omapdrm/omap_fbdev.c > index b8e4cdec28c3..24f92bea39c7 100644 > --- a/drivers/gpu/drm/omapdrm/omap_fbdev.c > +++ b/drivers/gpu/drm/omapdrm/omap_fbdev.c > @@ -112,11 +112,8 @@ static int omap_fbdev_create(struct drm_fb_helper > *helper, > dma_addr_t paddr; > int ret; > > - /* only doing ARGB32 since this is what is needed to alpha-blend > - * with video overlays: > - */ > sizes->surface_bpp = 32; > - sizes->surface_depth = 32; > + sizes->surface_depth = 24; > > DBG("create fbdev: %dx%d@%d (%dx%d)", sizes->surface_width, > sizes->surface_height, sizes->surface_bpp, > -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
[PATCH 2/5] ARM: dts: cm-t335: add support for SBC-T335
Add basic support for the SBC-T335. CompuLab SBC-T335 is a single baseboard computer. The SBC-T335 is based on the Texas Instruments Cortex-A8 Sitara AM3354 SoC. Signed-off-by: Uri Mashiach Acked-by: Igor Grinberg --- Documentation/devicetree/bindings/arm/omap/omap.txt | 3 +++ arch/arm/boot/dts/Makefile | 1 + arch/arm/boot/dts/am335x-sbc-t335.dts | 16 3 files changed, 20 insertions(+) create mode 100644 arch/arm/boot/dts/am335x-sbc-t335.dts diff --git a/Documentation/devicetree/bindings/arm/omap/omap.txt b/Documentation/devicetree/bindings/arm/omap/omap.txt index 2154f97..358e87e 100644 --- a/Documentation/devicetree/bindings/arm/omap/omap.txt +++ b/Documentation/devicetree/bindings/arm/omap/omap.txt @@ -141,6 +141,9 @@ Boards: - AM335X CM-T335 : System On Module, built around the Sitara AM3352/4 compatible = "compulab,cm-t335", "ti,am33xx" +- AM335X SBC-T335 : single board computer, built around the Sitara AM3352/4 + compatible = "compulab,sbc-t335", "compulab,cm-t335", "ti,am33xx" + - OMAP5 EVM : Evaluation Module compatible = "ti,omap5-evm", "ti,omap5" diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile index 15411bc..d82ea97 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile @@ -466,6 +466,7 @@ dtb-$(CONFIG_SOC_AM33XX) += \ am335x-lxm.dtb \ am335x-nano.dtb \ am335x-pepper.dtb \ + am335x-sbc-t335.dtb \ am335x-sl50.dtb \ am335x-wega-rdk.dtb dtb-$(CONFIG_ARCH_OMAP4) += \ diff --git a/arch/arm/boot/dts/am335x-sbc-t335.dts b/arch/arm/boot/dts/am335x-sbc-t335.dts new file mode 100644 index 000..9e98445 --- /dev/null +++ b/arch/arm/boot/dts/am335x-sbc-t335.dts @@ -0,0 +1,16 @@ +/* + * am335x-sbc-t335.dts - Device Tree file for Compulab SBC-T335 + * + * Copyright (C) 2014 - 2015 CompuLab Ltd. - http://www.compulab.co.il/ + * + * 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. + */ + +#include "am335x-cm-t335.dts" + +/ { + model = "CompuLab CM-T335 on SB-T335"; + compatible = "compulab,sbc-t335", "compulab,cm-t335", "ti,am33xx"; +}; -- 2.5.0 -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
[PATCH 3/5] ARM: dts: cm-t335: add support for I2C GPIO expander
The I2C GPIO expander (PCA9555) adds 16 GPIOs to the module. Signed-off-by: Uri Mashiach Acked-by: Igor Grinberg --- arch/arm/boot/dts/am335x-sbc-t335.dts | 11 +++ 1 file changed, 11 insertions(+) diff --git a/arch/arm/boot/dts/am335x-sbc-t335.dts b/arch/arm/boot/dts/am335x-sbc-t335.dts index 9e98445..4a5177e 100644 --- a/arch/arm/boot/dts/am335x-sbc-t335.dts +++ b/arch/arm/boot/dts/am335x-sbc-t335.dts @@ -14,3 +14,14 @@ model = "CompuLab CM-T335 on SB-T335"; compatible = "compulab,sbc-t335", "compulab,cm-t335", "ti,am33xx"; }; + +&i2c0 { + /* GPIO extender */ + gpio_ext: pca9555@26 { + compatible = "nxp,pca9555"; + pinctrl-names = "default"; + gpio-controller; + #gpio-cells = <2>; + reg = <0x26>; + }; +}; -- 2.5.0 -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
[PATCH 0/5] ARM: dts: cm-t335: add peripheral support
Add support for the following CM-T335 module peripherals: USB, I2C controller, LCD/DVI, bluetooth Ilya Ledvich (1): ARM: dts: cm-t335: add support for USB0 Uri Mashiach (4): ARM: dts: cm-t335: add support for SBC-T335 ARM: dts: cm-t335: add support for I2C GPIO expander ARM: dts: cm-t335: add support for DVI/LCD ARM: dts: cm-t335: add support for bluetooth .../devicetree/bindings/arm/omap/omap.txt | 3 + arch/arm/boot/dts/Makefile | 1 + arch/arm/boot/dts/am335x-cm-t335.dts | 51 - arch/arm/boot/dts/am335x-sbc-t335.dts | 219 + 4 files changed, 273 insertions(+), 1 deletion(-) create mode 100644 arch/arm/boot/dts/am335x-sbc-t335.dts -- 2.5.0 -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
[PATCH 4/5] ARM: dts: cm-t335: add support for DVI/LCD
Add pinmux configuration for DVI/LCD. Add DRM display driver node with timing configurations for DVI and LCD. Add I2C GPIOs configurations for DVI and LCD enable. Signed-off-by: Uri Mashiach Acked-by: Igor Grinberg --- arch/arm/boot/dts/am335x-sbc-t335.dts | 192 ++ 1 file changed, 192 insertions(+) diff --git a/arch/arm/boot/dts/am335x-sbc-t335.dts b/arch/arm/boot/dts/am335x-sbc-t335.dts index 4a5177e..917d7cc 100644 --- a/arch/arm/boot/dts/am335x-sbc-t335.dts +++ b/arch/arm/boot/dts/am335x-sbc-t335.dts @@ -13,6 +13,181 @@ / { model = "CompuLab CM-T335 on SB-T335"; compatible = "compulab,sbc-t335", "compulab,cm-t335", "ti,am33xx"; + + /* DRM display driver */ + panel { + compatible = "ti,tilcdc,panel"; + status = "okay"; + pinctrl-names = "default", "sleep"; + pinctrl-0 = <&lcd_pins_default>; + pinctrl-1 = <&lcd_pins_sleep>; + + panel-info { + ac-bias = <255>; + ac-bias-intrpt= <0>; + dma-burst-sz = <16>; + bpp = <32>; + fdd = <0x80>; + sync-edge = <0>; + sync-ctrl = <1>; + raster-order = <0>; + fifo-th = <0>; + }; + display-timings { + /* Timing selection performed by U-Boot */ + timing0: lcd {/* 800x480p62 */ + clock-frequency = <3000>; + hactive = <800>; + vactive = <480>; + hfront-porch = <39>; + hback-porch = <39>; + hsync-len = <47>; + vback-porch = <29>; + vfront-porch = <13>; + vsync-len = <2>; + hsync-active = <1>; + vsync-active = <1>; + }; + timing1: dvi { /* 1024x768p60 */ + clock-frequency = <6500>; + hactive = <1024>; + hfront-porch = <24>; + hback-porch = <160>; + hsync-len = <136>; + vactive = <768>; + vfront-porch = <3>; + vback-porch = <29>; + vsync-len = <6>; + hsync-active = <0>; + vsync-active = <0>; + }; + }; + }; +}; + +&am33xx_pinmux { + /* Display */ + lcd_pins_default: lcd_pins_default { + pinctrl-single,pins = < + /* gpmc_ad8.lcd_data23 */ + AM33XX_IOPAD(0x820, PIN_OUTPUT | MUX_MODE1) + /* gpmc_ad9.lcd_data22 */ + AM33XX_IOPAD(0x824, PIN_OUTPUT | MUX_MODE1) + /* gpmc_ad10.lcd_data21 */ + AM33XX_IOPAD(0x828, PIN_OUTPUT | MUX_MODE1) + /* gpmc_ad11.lcd_data20 */ + AM33XX_IOPAD(0x82c, PIN_OUTPUT | MUX_MODE1) + /* gpmc_ad12.lcd_data19 */ + AM33XX_IOPAD(0x830, PIN_OUTPUT | MUX_MODE1) + /* gpmc_ad13.lcd_data18 */ + AM33XX_IOPAD(0x834, PIN_OUTPUT | MUX_MODE1) + /* gpmc_ad14.lcd_data17 */ + AM33XX_IOPAD(0x838, PIN_OUTPUT | MUX_MODE1) + /* gpmc_ad15.lcd_data16 */ + AM33XX_IOPAD(0x83c, PIN_OUTPUT | MUX_MODE1) + /* lcd_data0.lcd_data0 */ + AM33XX_IOPAD(0x8a0, PIN_OUTPUT | MUX_MODE0) + /* lcd_data1.lcd_data1 */ + AM33XX_IOPAD(0x8a4, PIN_OUTPUT | MUX_MODE0) + /* lcd_data2.lcd_data2 */ + AM33XX_IOPAD(0x8a8, PIN_OUTPUT | MUX_MODE0) + /* lcd_data3.lcd_data3 */ + AM33XX_IOPAD(0x8ac, PIN_OUTPUT | MUX_MODE0) + /* lcd_data4.lcd_data4 */ + AM33XX_IOPAD(0x8b0, PIN_OUTPUT | MUX_MODE0) + /* lcd_data5.lcd_data5 */ + AM33XX_IOPAD(0x8b4, PIN_OUTPUT | MUX_MODE0) + /* lcd_data6.lcd_data6 */ + AM33XX_IOPAD(0x8b8, PIN_OUTPUT | MUX_MODE0) + /* lcd_data7.lcd_data7 */ + AM33XX_IOPAD(0x8bc, PIN_OUTPUT | MUX_MODE0) + /* lcd_data8.lcd_data8 */ +
[PATCH 5/5] ARM: dts: cm-t335: add support for bluetooth
bluetooth HW is WLS1271 chip connected to UART1. Device tree modifications: - Pinmux for UART1. - Pinmux for bluetooth enable GPIO. Bluetooth enable GPIO is set to enable during startup by setting the relevant pinmux pin to pull-up. Signed-off-by: Uri Mashiach Acked-by: Igor Grinberg --- arch/arm/boot/dts/am335x-cm-t335.dts | 31 ++- 1 file changed, 30 insertions(+), 1 deletion(-) diff --git a/arch/arm/boot/dts/am335x-cm-t335.dts b/arch/arm/boot/dts/am335x-cm-t335.dts index ae2366e..42e9b66 100644 --- a/arch/arm/boot/dts/am335x-cm-t335.dts +++ b/arch/arm/boot/dts/am335x-cm-t335.dts @@ -50,7 +50,7 @@ &am33xx_pinmux { pinctrl-names = "default"; - pinctrl-0 = <>; + pinctrl-0 = <&bluetooth_pins>; i2c0_pins: pinmux_i2c0_pins { pinctrl-single,pins = < @@ -121,6 +121,19 @@ >; }; + uart1_pins: pinmux_uart1_pins { + pinctrl-single,pins = < + /* uart1_ctsn.uart1_ctsn */ + AM33XX_IOPAD(0x978, PIN_INPUT | MUX_MODE0) + /* uart1_rtsn.uart1_rtsn */ + AM33XX_IOPAD(0x97C, PIN_OUTPUT_PULLDOWN | MUX_MODE0) + /* uart1_rxd.uart1_rxd */ + AM33XX_IOPAD(0x980, PIN_INPUT_PULLUP | MUX_MODE0) + /* uart1_txd.uart1_txd */ + AM33XX_IOPAD(0x984, PIN_OUTPUT_PULLDOWN | MUX_MODE0) + >; + }; + ecap0_pins: pinmux_ecap0_pins { pinctrl-single,pins = < /* eCAP0_in_PWM0_out.eCAP0_in_PWM0_out MODE0 */ @@ -209,6 +222,14 @@ AM33XX_IOPAD(0x904, PIN_INPUT_PULLUP | MUX_MODE0) >; }; + + /* wl1271 bluetooth */ + bluetooth_pins: pinmux_bluetooth_pins { + pinctrl-single,pins = < + /* XDMA_EVENT_INTR0.gpio0_19 - bluetooth enable */ + AM33XX_IOPAD(0x9b0, PIN_OUTPUT_PULLUP | MUX_MODE7) + >; + }; }; &uart0 { @@ -218,6 +239,14 @@ status = "okay"; }; +/* WLS1271 bluetooth */ +&uart1 { + pinctrl-names = "default"; + pinctrl-0 = <&uart1_pins>; + +status = "okay"; +}; + &i2c0 { pinctrl-names = "default"; pinctrl-0 = <&i2c0_pins>; -- 2.5.0 -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
[PATCH 1/5] ARM: dts: cm-t335: add support for USB0
From: Ilya Ledvich Enable USB0. Signed-off-by: Ilya Ledvich Signed-off-by: Uri Mashiach Acked-by: Igor Grinberg --- arch/arm/boot/dts/am335x-cm-t335.dts | 20 1 file changed, 20 insertions(+) diff --git a/arch/arm/boot/dts/am335x-cm-t335.dts b/arch/arm/boot/dts/am335x-cm-t335.dts index 31ff1aa..ae2366e 100644 --- a/arch/arm/boot/dts/am335x-cm-t335.dts +++ b/arch/arm/boot/dts/am335x-cm-t335.dts @@ -237,6 +237,26 @@ }; }; +&usb { + status = "okay"; +}; + +&usb_ctrl_mod { + status = "okay"; +}; + +&usb0_phy { + status = "okay"; +}; + +&usb0 { + status = "okay"; +}; + +&cppi41dma { + status = "okay"; +}; + &epwmss0 { status = "okay"; -- 2.5.0 -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html