From: Jean-Christophe PLAGNIOL-VILLARD <plagnioj-sclMFOaUSTBWk0Htik3J/w@public.gmane.org> To: linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org Cc: devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org Subject: [PATCH 1/5 v5] i2c/gpio: add DT support Date: Thu, 15 Mar 2012 16:56:12 +0100 [thread overview] Message-ID: <1331826972-14386-1-git-send-email-plagnioj@jcrosoft.com> (raw) In-Reply-To: <1331642024-19869-1-git-send-email-plagnioj-sclMFOaUSTBWk0Htik3J/w@public.gmane.org> To achieve DT support, we need to populate a custom platform_data in a private struct from DT information. To simplify code, the adapter and algorithm are also put into the private struct. Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj-sclMFOaUSTBWk0Htik3J/w@public.gmane.org> Acked-by: Grant Likely <grant.likely-s3s/WqlpOiPyB63q8FvJNQ@public.gmane.org> Acked-by: Rob Herring <rob.herring-bsGFqQB8/DxBDgjK7y7TUQ@public.gmane.org> Acked-by: Wolfram Sang <w.sang-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org> Cc: Nicolas Ferre <nicolas.ferre-AIFe0yeh4nAAvxtiuMwx3w@public.gmane.org> --- .../devicetree/bindings/gpio/gpio_i2c.txt | 32 +++++++ drivers/i2c/busses/i2c-gpio.c | 94 +++++++++++++++---- 2 files changed, 106 insertions(+), 20 deletions(-) create mode 100644 Documentation/devicetree/bindings/gpio/gpio_i2c.txt diff --git a/Documentation/devicetree/bindings/gpio/gpio_i2c.txt b/Documentation/devicetree/bindings/gpio/gpio_i2c.txt new file mode 100644 index 0000000..4f8ec94 --- /dev/null +++ b/Documentation/devicetree/bindings/gpio/gpio_i2c.txt @@ -0,0 +1,32 @@ +Device-Tree bindings for i2c gpio driver + +Required properties: + - compatible = "i2c-gpio"; + - gpios: sda and scl gpio + + +Optional properties: + - i2c-gpio,sda-open-drain: sda as open drain + - i2c-gpio,scl-open-drain: scl as open drain + - i2c-gpio,scl-output-only: scl as output only + - i2c-gpio,delay-us: delay between GPIO operations (may depend on each platform) + - i2c-gpio,timeout-ms: timeout to get data + +Example nodes: + +i2c@0 { + compatible = "i2c-gpio"; + gpios = <&pioA 23 0 /* sda */ + &pioA 24 0 /* scl */ + >; + i2c-gpio,sda-open-drain; + i2c-gpio,scl-open-drain; + i2c-gpio,delay-us = <2>; /* ~100 kHz */ + #address-cells = <1>; + #size-cells = <0>; + + rv3029c2@56 { + compatible = "rv3029c2"; + reg = <0x56>; + }; +}; diff --git a/drivers/i2c/busses/i2c-gpio.c b/drivers/i2c/busses/i2c-gpio.c index a651779..c0330a4 100644 --- a/drivers/i2c/busses/i2c-gpio.c +++ b/drivers/i2c/busses/i2c-gpio.c @@ -14,8 +14,15 @@ #include <linux/module.h> #include <linux/slab.h> #include <linux/platform_device.h> +#include <linux/gpio.h> +#include <linux/of_gpio.h> +#include <linux/of_i2c.h> -#include <asm/gpio.h> +struct i2c_gpio_private_data { + struct i2c_adapter adap; + struct i2c_algo_bit_data bit_data; + struct i2c_gpio_platform_data pdata; +}; /* Toggle SDA by changing the direction of the pin */ static void i2c_gpio_setsda_dir(void *data, int state) @@ -78,24 +85,62 @@ static int i2c_gpio_getscl(void *data) return gpio_get_value(pdata->scl_pin); } +static int __devinit of_i2c_gpio_probe(struct device_node *np, + struct i2c_gpio_platform_data *pdata) +{ + u32 reg; + + if (of_gpio_count(np) < 2) + return -ENODEV; + + pdata->sda_pin = of_get_gpio(np, 0); + pdata->scl_pin = of_get_gpio(np, 1); + + if (!gpio_is_valid(pdata->sda_pin) || !gpio_is_valid(pdata->scl_pin)) { + pr_err("%s: invalid GPIO pins, sda=%d/scl=%d\n", + np->full_name, pdata->sda_pin, pdata->scl_pin); + return -ENODEV; + } + + of_property_read_u32(np, "i2c-gpio,delay-us", &pdata->udelay); + + if (!of_property_read_u32(np, "i2c-gpio,timeout-ms", ®)) + pdata->timeout = msecs_to_jiffies(reg); + + pdata->sda_is_open_drain = + of_property_read_bool(np, "i2c-gpio,sda-open-drain"); + pdata->scl_is_open_drain = + of_property_read_bool(np, "i2c-gpio,scl-open-drain"); + pdata->scl_is_output_only = + of_property_read_bool(np, "i2c-gpio,scl-output-only"); + + return 0; +} + static int __devinit i2c_gpio_probe(struct platform_device *pdev) { + struct i2c_gpio_private_data *priv; struct i2c_gpio_platform_data *pdata; struct i2c_algo_bit_data *bit_data; struct i2c_adapter *adap; int ret; - pdata = pdev->dev.platform_data; - if (!pdata) - return -ENXIO; + priv = devm_kzalloc(&pdev->dev, sizeof(*priv), GFP_KERNEL); + if (!priv) + return -ENOMEM; + adap = &priv->adap; + bit_data = &priv->bit_data; + pdata = &priv->pdata; - ret = -ENOMEM; - adap = kzalloc(sizeof(struct i2c_adapter), GFP_KERNEL); - if (!adap) - goto err_alloc_adap; - bit_data = kzalloc(sizeof(struct i2c_algo_bit_data), GFP_KERNEL); - if (!bit_data) - goto err_alloc_bit_data; + if (pdev->dev.of_node) { + ret = of_i2c_gpio_probe(pdev->dev.of_node, pdata); + if (ret) + return ret; + } else { + if (!pdev->dev.platform_data) + return -ENXIO; + memcpy(pdata, pdev->dev.platform_data, sizeof(*pdata)); + } ret = gpio_request(pdata->sda_pin, "sda"); if (ret) @@ -143,6 +188,7 @@ static int __devinit i2c_gpio_probe(struct platform_device *pdev) adap->algo_data = bit_data; adap->class = I2C_CLASS_HWMON | I2C_CLASS_SPD; adap->dev.parent = &pdev->dev; + adap->dev.of_node = pdev->dev.of_node; /* * If "dev->id" is negative we consider it as zero. @@ -154,7 +200,9 @@ static int __devinit i2c_gpio_probe(struct platform_device *pdev) if (ret) goto err_add_bus; - platform_set_drvdata(pdev, adap); + of_i2c_register_devices(adap); + + platform_set_drvdata(pdev, priv); dev_info(&pdev->dev, "using pins %u (SDA) and %u (SCL%s)\n", pdata->sda_pin, pdata->scl_pin, @@ -168,34 +216,40 @@ err_add_bus: err_request_scl: gpio_free(pdata->sda_pin); err_request_sda: - kfree(bit_data); -err_alloc_bit_data: - kfree(adap); -err_alloc_adap: return ret; } static int __devexit i2c_gpio_remove(struct platform_device *pdev) { + struct i2c_gpio_private_data *priv; struct i2c_gpio_platform_data *pdata; struct i2c_adapter *adap; - adap = platform_get_drvdata(pdev); - pdata = pdev->dev.platform_data; + priv = platform_get_drvdata(pdev); + adap = &priv->adap; + pdata = &priv->pdata; i2c_del_adapter(adap); gpio_free(pdata->scl_pin); gpio_free(pdata->sda_pin); - kfree(adap->algo_data); - kfree(adap); return 0; } +#if defined(CONFIG_OF) +static const struct of_device_id i2c_gpio_dt_ids[] = { + { .compatible = "i2c-gpio", }, + { /* sentinel */ } +}; + +MODULE_DEVICE_TABLE(of, i2c_gpio_dt_ids); +#endif + static struct platform_driver i2c_gpio_driver = { .driver = { .name = "i2c-gpio", .owner = THIS_MODULE, + .of_match_table = of_match_ptr(i2c_gpio_dt_ids), }, .probe = i2c_gpio_probe, .remove = __devexit_p(i2c_gpio_remove), -- 1.7.7
WARNING: multiple messages have this Message-ID (diff)
From: plagnioj@jcrosoft.com (Jean-Christophe PLAGNIOL-VILLARD) To: linux-arm-kernel@lists.infradead.org Subject: [PATCH 1/5 v5] i2c/gpio: add DT support Date: Thu, 15 Mar 2012 16:56:12 +0100 [thread overview] Message-ID: <1331826972-14386-1-git-send-email-plagnioj@jcrosoft.com> (raw) In-Reply-To: <1331642024-19869-1-git-send-email-plagnioj@jcrosoft.com> To achieve DT support, we need to populate a custom platform_data in a private struct from DT information. To simplify code, the adapter and algorithm are also put into the private struct. Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com> Acked-by: Grant Likely <grant.likely@secretlab.ca> Acked-by: Rob Herring <rob.herring@calxeda.com> Acked-by: Wolfram Sang <w.sang@pengutronix.de> Cc: Nicolas Ferre <nicolas.ferre@atmel.com> --- .../devicetree/bindings/gpio/gpio_i2c.txt | 32 +++++++ drivers/i2c/busses/i2c-gpio.c | 94 +++++++++++++++---- 2 files changed, 106 insertions(+), 20 deletions(-) create mode 100644 Documentation/devicetree/bindings/gpio/gpio_i2c.txt diff --git a/Documentation/devicetree/bindings/gpio/gpio_i2c.txt b/Documentation/devicetree/bindings/gpio/gpio_i2c.txt new file mode 100644 index 0000000..4f8ec94 --- /dev/null +++ b/Documentation/devicetree/bindings/gpio/gpio_i2c.txt @@ -0,0 +1,32 @@ +Device-Tree bindings for i2c gpio driver + +Required properties: + - compatible = "i2c-gpio"; + - gpios: sda and scl gpio + + +Optional properties: + - i2c-gpio,sda-open-drain: sda as open drain + - i2c-gpio,scl-open-drain: scl as open drain + - i2c-gpio,scl-output-only: scl as output only + - i2c-gpio,delay-us: delay between GPIO operations (may depend on each platform) + - i2c-gpio,timeout-ms: timeout to get data + +Example nodes: + +i2c at 0 { + compatible = "i2c-gpio"; + gpios = <&pioA 23 0 /* sda */ + &pioA 24 0 /* scl */ + >; + i2c-gpio,sda-open-drain; + i2c-gpio,scl-open-drain; + i2c-gpio,delay-us = <2>; /* ~100 kHz */ + #address-cells = <1>; + #size-cells = <0>; + + rv3029c2 at 56 { + compatible = "rv3029c2"; + reg = <0x56>; + }; +}; diff --git a/drivers/i2c/busses/i2c-gpio.c b/drivers/i2c/busses/i2c-gpio.c index a651779..c0330a4 100644 --- a/drivers/i2c/busses/i2c-gpio.c +++ b/drivers/i2c/busses/i2c-gpio.c @@ -14,8 +14,15 @@ #include <linux/module.h> #include <linux/slab.h> #include <linux/platform_device.h> +#include <linux/gpio.h> +#include <linux/of_gpio.h> +#include <linux/of_i2c.h> -#include <asm/gpio.h> +struct i2c_gpio_private_data { + struct i2c_adapter adap; + struct i2c_algo_bit_data bit_data; + struct i2c_gpio_platform_data pdata; +}; /* Toggle SDA by changing the direction of the pin */ static void i2c_gpio_setsda_dir(void *data, int state) @@ -78,24 +85,62 @@ static int i2c_gpio_getscl(void *data) return gpio_get_value(pdata->scl_pin); } +static int __devinit of_i2c_gpio_probe(struct device_node *np, + struct i2c_gpio_platform_data *pdata) +{ + u32 reg; + + if (of_gpio_count(np) < 2) + return -ENODEV; + + pdata->sda_pin = of_get_gpio(np, 0); + pdata->scl_pin = of_get_gpio(np, 1); + + if (!gpio_is_valid(pdata->sda_pin) || !gpio_is_valid(pdata->scl_pin)) { + pr_err("%s: invalid GPIO pins, sda=%d/scl=%d\n", + np->full_name, pdata->sda_pin, pdata->scl_pin); + return -ENODEV; + } + + of_property_read_u32(np, "i2c-gpio,delay-us", &pdata->udelay); + + if (!of_property_read_u32(np, "i2c-gpio,timeout-ms", ®)) + pdata->timeout = msecs_to_jiffies(reg); + + pdata->sda_is_open_drain = + of_property_read_bool(np, "i2c-gpio,sda-open-drain"); + pdata->scl_is_open_drain = + of_property_read_bool(np, "i2c-gpio,scl-open-drain"); + pdata->scl_is_output_only = + of_property_read_bool(np, "i2c-gpio,scl-output-only"); + + return 0; +} + static int __devinit i2c_gpio_probe(struct platform_device *pdev) { + struct i2c_gpio_private_data *priv; struct i2c_gpio_platform_data *pdata; struct i2c_algo_bit_data *bit_data; struct i2c_adapter *adap; int ret; - pdata = pdev->dev.platform_data; - if (!pdata) - return -ENXIO; + priv = devm_kzalloc(&pdev->dev, sizeof(*priv), GFP_KERNEL); + if (!priv) + return -ENOMEM; + adap = &priv->adap; + bit_data = &priv->bit_data; + pdata = &priv->pdata; - ret = -ENOMEM; - adap = kzalloc(sizeof(struct i2c_adapter), GFP_KERNEL); - if (!adap) - goto err_alloc_adap; - bit_data = kzalloc(sizeof(struct i2c_algo_bit_data), GFP_KERNEL); - if (!bit_data) - goto err_alloc_bit_data; + if (pdev->dev.of_node) { + ret = of_i2c_gpio_probe(pdev->dev.of_node, pdata); + if (ret) + return ret; + } else { + if (!pdev->dev.platform_data) + return -ENXIO; + memcpy(pdata, pdev->dev.platform_data, sizeof(*pdata)); + } ret = gpio_request(pdata->sda_pin, "sda"); if (ret) @@ -143,6 +188,7 @@ static int __devinit i2c_gpio_probe(struct platform_device *pdev) adap->algo_data = bit_data; adap->class = I2C_CLASS_HWMON | I2C_CLASS_SPD; adap->dev.parent = &pdev->dev; + adap->dev.of_node = pdev->dev.of_node; /* * If "dev->id" is negative we consider it as zero. @@ -154,7 +200,9 @@ static int __devinit i2c_gpio_probe(struct platform_device *pdev) if (ret) goto err_add_bus; - platform_set_drvdata(pdev, adap); + of_i2c_register_devices(adap); + + platform_set_drvdata(pdev, priv); dev_info(&pdev->dev, "using pins %u (SDA) and %u (SCL%s)\n", pdata->sda_pin, pdata->scl_pin, @@ -168,34 +216,40 @@ err_add_bus: err_request_scl: gpio_free(pdata->sda_pin); err_request_sda: - kfree(bit_data); -err_alloc_bit_data: - kfree(adap); -err_alloc_adap: return ret; } static int __devexit i2c_gpio_remove(struct platform_device *pdev) { + struct i2c_gpio_private_data *priv; struct i2c_gpio_platform_data *pdata; struct i2c_adapter *adap; - adap = platform_get_drvdata(pdev); - pdata = pdev->dev.platform_data; + priv = platform_get_drvdata(pdev); + adap = &priv->adap; + pdata = &priv->pdata; i2c_del_adapter(adap); gpio_free(pdata->scl_pin); gpio_free(pdata->sda_pin); - kfree(adap->algo_data); - kfree(adap); return 0; } +#if defined(CONFIG_OF) +static const struct of_device_id i2c_gpio_dt_ids[] = { + { .compatible = "i2c-gpio", }, + { /* sentinel */ } +}; + +MODULE_DEVICE_TABLE(of, i2c_gpio_dt_ids); +#endif + static struct platform_driver i2c_gpio_driver = { .driver = { .name = "i2c-gpio", .owner = THIS_MODULE, + .of_match_table = of_match_ptr(i2c_gpio_dt_ids), }, .probe = i2c_gpio_probe, .remove = __devexit_p(i2c_gpio_remove), -- 1.7.7
next prev parent reply other threads:[~2012-03-15 15:56 UTC|newest] Thread overview: 343+ messages / expand[flat|nested] mbox.gz Atom feed top [not found] <a> 2011-04-19 11:43 ` [PATCH 0/3 V3] Introduce strtobool (previously usr_strtobool) Jonathan Cameron 2011-04-19 11:43 ` [PATCH 1/3] Add a strtobool function matching semantics of existing in kernel equivalents Jonathan Cameron 2011-04-19 20:28 ` Ryan Mallon 2011-04-19 11:43 ` [PATCH 2/3] debugfs: move to new strtobool Jonathan Cameron 2011-04-19 20:30 ` Ryan Mallon 2011-04-20 9:33 ` Jonathan Cameron 2011-04-25 22:54 ` Greg KH 2011-04-25 23:11 ` Ryan Mallon 2011-04-19 11:43 ` [PATCH 3/3] params.c: Use new strtobool function to process boolean inputs Jonathan Cameron 2011-11-22 15:54 ` [PATCH v7 0/3] ARM: mxs: add recording support for saif Dong Aisheng 2011-11-22 15:54 ` Dong Aisheng 2011-11-24 7:36 ` Shawn Guo 2011-11-24 7:36 ` Shawn Guo 2011-11-24 7:46 ` Shawn Guo 2011-11-24 7:46 ` Shawn Guo 2011-11-24 7:41 ` Uwe Kleine-König 2011-11-24 7:41 ` Uwe Kleine-König 2011-11-24 7:49 ` Wolfram Sang 2011-11-24 7:49 ` Wolfram Sang 2011-11-24 8:23 ` Shawn Guo 2011-11-24 8:23 ` Shawn Guo 2011-11-24 10:46 ` Wolfram Sang 2011-11-24 10:46 ` Wolfram Sang 2011-11-22 15:54 ` [PATCH v7 1/3] ARM: mxs: add saif clkmux functions Dong Aisheng 2011-11-22 15:54 ` Dong Aisheng 2011-11-22 15:54 ` [PATCH v7 2/3] ARM: mx28evk: add platform data for saif Dong Aisheng 2011-11-22 15:54 ` Dong Aisheng 2011-11-22 15:54 ` [PATCH v7 3/3] ARM: mx28evk: set a initial clock rate " Dong Aisheng 2011-11-22 15:54 ` Dong Aisheng 2011-11-30 8:16 ` [meta-efl 00/11] efl upgrade Martin Jansa 2011-11-30 8:16 ` [meta-efl 01/11] elsa: add sessreg xauth to RDEPENDS Martin Jansa 2011-11-30 8:16 ` [meta-efl 02/11] elsa: add elsa.conf to CONFFILES Martin Jansa 2011-11-30 8:16 ` [meta-efl 03/11] elsa: use common-* instead of system-auth in pam config Martin Jansa 2011-11-30 8:16 ` [meta-efl 04/11] e-base: bump EFL_SRCREV for 1.1.0 alpha versions Martin Jansa 2011-11-30 8:16 ` [meta-efl 05/11] efl.bbclass: don't remove STAGING_LIBDIR STAGING_INCDIR from efl pkgconfig files Martin Jansa 2011-11-30 8:16 ` [meta-efl 06/11] epdf: drop upstream applied patch and ewl is gone too Martin Jansa 2011-11-30 8:16 ` [meta-efl 07/11] eeze: pass /bin/true instead of eject which is not available Martin Jansa 2011-11-30 9:27 ` Koen Kooi 2011-12-01 9:00 ` Martin Jansa 2011-11-30 8:16 ` [meta-efl 08/11] edje: fix license metadata Martin Jansa 2011-11-30 8:16 ` [meta-efl 09/11] elementary: " Martin Jansa 2011-11-30 8:16 ` [meta-efl 10/11] elementary: add gettextize patch Martin Jansa 2011-11-30 8:16 ` [meta-efl 11/11] elementary: disable web support Martin Jansa 2011-11-30 9:28 ` Koen Kooi 2011-11-30 10:34 ` Martin Jansa 2012-02-19 14:24 ` [Qemu-devel] [PATCH 2/2] qemu-io: fix segment fault when the image format is qed zwu.kernel 2012-02-19 21:24 ` Christoph Hellwig 2012-02-20 6:22 ` Zhi Yong Wu 2012-03-13 12:33 ` [PATCH 1/5 v4] i2c/gpio: add DT support Jean-Christophe PLAGNIOL-VILLARD 2012-03-13 12:33 ` Jean-Christophe PLAGNIOL-VILLARD [not found] ` <1331642024-19869-1-git-send-email-plagnioj-sclMFOaUSTBWk0Htik3J/w@public.gmane.org> 2012-03-13 14:08 ` Wolfram Sang 2012-03-13 14:08 ` Wolfram Sang [not found] ` <20120313140822.GD2488-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org> 2012-03-13 16:47 ` Jean-Christophe PLAGNIOL-VILLARD 2012-03-13 16:47 ` Jean-Christophe PLAGNIOL-VILLARD [not found] ` <20120313164756.GF18320-RQcB7r2h9QmfDR2tN2SG5Ni2O/JbrIOy@public.gmane.org> 2012-03-13 19:46 ` Wolfram Sang 2012-03-13 19:46 ` Wolfram Sang 2012-03-15 15:56 ` Jean-Christophe PLAGNIOL-VILLARD [this message] 2012-03-15 15:56 ` [PATCH 1/5 v5] " Jean-Christophe PLAGNIOL-VILLARD 2012-03-13 12:33 ` [PATCH 2/5 v4] ARM: at91: sam9g20 add i2c " Jean-Christophe PLAGNIOL-VILLARD 2012-03-13 12:33 ` Jean-Christophe PLAGNIOL-VILLARD 2012-03-13 12:33 ` [PATCH 3/5 v4] ARM: at91: usb_a9g20 add DT i2c support Jean-Christophe PLAGNIOL-VILLARD 2012-03-13 12:33 ` Jean-Christophe PLAGNIOL-VILLARD 2012-03-13 12:33 ` [PATCH 4/5 v4] ARM: at91: sam9g45 add i2c DT support Jean-Christophe PLAGNIOL-VILLARD 2012-03-13 12:33 ` Jean-Christophe PLAGNIOL-VILLARD 2012-03-13 12:33 ` [PATCH 5/5 v4] ARM: at91: sam9x5 " Jean-Christophe PLAGNIOL-VILLARD 2012-03-13 12:33 ` Jean-Christophe PLAGNIOL-VILLARD 2012-07-05 6:28 ` [PATCH] mm/memcg: replace inexistence move_lock_page_cgroup() by move_lock_mem_cgroup() in comment Wanpeng Li 2012-07-05 6:28 ` Wanpeng Li 2012-07-09 4:37 ` Kamezawa Hiroyuki 2012-07-09 4:37 ` Kamezawa Hiroyuki 2012-07-11 13:24 ` [PATCH RFC] mm/memcg: calculate max hierarchy limit number instead of min Wanpeng Li 2012-07-11 13:24 ` Wanpeng Li 2012-07-11 13:47 ` Michal Hocko 2012-07-11 13:47 ` Michal Hocko 2012-07-12 9:32 ` Wanpeng Li 2012-07-12 9:32 ` Wanpeng Li 2012-07-12 9:32 ` Wanpeng Li 2012-07-12 10:18 ` Michal Hocko 2012-07-12 10:18 ` Michal Hocko 2012-07-12 10:18 ` Michal Hocko 2012-07-19 6:07 ` Kamezawa Hiroyuki 2012-07-19 6:07 ` Kamezawa Hiroyuki 2012-07-19 6:30 ` Wanpeng Li 2012-07-19 6:30 ` Wanpeng Li 2012-07-19 6:30 ` Wanpeng Li 2012-07-17 16:00 ` [PATCH V2 0/3] Update connman to v1.3, fix dependencies and runtime Andrei Gherzan 2012-07-17 16:03 ` [PATCH V2 1/3] connman: Update to version 1.3 Andrei Gherzan 2012-07-17 16:03 ` [PATCH V2 2/3] connman.inc: Add missing dependencies needed by some tests Andrei Gherzan 2012-07-17 16:03 ` [PATCH V2 3/3] connman: Add patches to fix connman on fs with no d_type support Andrei Gherzan 2012-07-18 3:05 ` [PATCH] mm/memcg: wrap mem_cgroup_from_css function Wanpeng Li 2012-07-18 3:05 ` Wanpeng Li 2012-07-18 21:36 ` Andrew Morton 2012-07-18 21:36 ` Andrew Morton 2012-07-19 1:31 ` Wanpeng Li 2012-07-19 1:31 ` Wanpeng Li 2012-07-19 9:14 ` Kirill A. Shutemov 2012-07-19 9:14 ` Kirill A. Shutemov 2012-07-19 9:23 ` Wanpeng Li 2012-07-19 9:23 ` Wanpeng Li 2012-07-19 9:29 ` Kirill A. Shutemov 2012-07-19 9:29 ` Kirill A. Shutemov 2012-07-19 9:38 ` Gavin Shan 2012-07-19 9:45 ` Kirill A. Shutemov 2012-07-19 9:45 ` Kirill A. Shutemov 2012-07-19 10:19 ` Wanpeng Li 2012-07-19 10:19 ` Wanpeng Li 2012-07-19 9:38 ` Gavin Shan 2012-09-05 12:04 ` [PATCH] drm: use %*ph to dump small buffers Andy Shevchenko 2012-09-23 19:24 ` [PATCH 1/6] xfstest: add fio git submodule Dmitry Monakhov 2012-09-23 19:24 ` Dmitry Monakhov 2012-09-23 19:24 ` [PATCH 2/6] xfstest: add configurable load factors Dmitry Monakhov 2012-09-23 19:24 ` Dmitry Monakhov 2012-09-23 19:24 ` [PATCH 3/6] xfstest: allow fsstress to use load factor where appropriate Dmitry Monakhov 2012-09-23 19:24 ` Dmitry Monakhov 2012-09-23 19:24 ` [PATCH 4/6] xfstest add fallocate/truncate vs AIO/DIO stress test Dmitry Monakhov 2012-09-23 19:24 ` Dmitry Monakhov 2012-09-23 19:24 ` [PATCH 5/6] xfstest: add fallocate/punch_hole " Dmitry Monakhov 2012-09-23 19:24 ` Dmitry Monakhov 2012-09-23 19:24 ` [PATCH 6/6] xfstest: add defragmentation stress test for ext4 Dmitry Monakhov 2012-09-23 19:24 ` Dmitry Monakhov 2012-09-24 3:16 ` [PATCH 1/6] xfstest: add fio git submodule Eric Sandeen 2012-09-24 3:16 ` Eric Sandeen 2012-09-24 10:03 ` Dmitry Monakhov 2012-09-24 10:03 ` Dmitry Monakhov 2012-09-24 11:37 ` Dave Chinner 2012-09-24 11:37 ` Dave Chinner 2012-09-24 12:38 ` Dmitry Monakhov 2012-09-24 12:38 ` Dmitry Monakhov 2012-09-24 13:53 ` Dave Chinner 2012-09-24 13:53 ` Dave Chinner 2012-09-24 12:23 ` Greg Freemyer 2012-09-24 12:23 ` Greg Freemyer 2012-09-24 12:41 ` Dmitry Monakhov 2012-09-24 12:41 ` Dmitry Monakhov 2012-11-05 19:53 ` [PATCH] can: ti_hecc: WIP: fix out-of-order problem - CANMIN Version Marc Kleine-Budde 2012-11-07 12:10 ` AnilKumar, Chimata 2012-11-07 12:27 ` Marc Kleine-Budde 2012-11-07 13:56 ` AnilKumar, Chimata 2012-11-07 14:16 ` Marc Kleine-Budde 2013-02-14 8:36 ` [PATCH 1/4] powerpc: Make VSID_BITS* dependency explicit Aneesh Kumar K.V 2013-02-14 8:36 ` [PATCH 2/4] powerpc: Update kernel VSID range Aneesh Kumar K.V 2013-02-14 17:21 ` Aneesh Kumar K.V 2013-02-15 4:42 ` Paul Mackerras 2013-02-14 8:36 ` [PATCH 3/4] powerpc: Don't update r10 early in the call Aneesh Kumar K.V 2013-02-14 8:36 ` [PATCH 4/4] powerpc: Add vm debug code to catch errors Aneesh Kumar K.V 2013-02-15 4:46 ` Paul Mackerras 2013-08-13 13:31 ` [PATCH V2 00/35] CPUFreq: Implement light weight ->target(): for 3.13 Viresh Kumar 2013-08-13 13:43 ` Viresh Kumar 2013-08-13 13:31 ` Viresh Kumar 2013-08-13 13:32 ` [PATCH V2 01/35] cpufreq: Implement light weight ->target_index() routine Viresh Kumar 2013-08-13 13:44 ` Viresh Kumar 2013-08-13 13:32 ` Viresh Kumar 2013-08-18 10:41 ` amit daniel kachhap 2013-08-18 10:53 ` amit daniel kachhap 2013-08-18 10:41 ` amit daniel kachhap 2013-08-18 10:41 ` amit daniel kachhap 2013-08-19 4:37 ` Viresh Kumar 2013-08-19 4:37 ` Viresh Kumar 2013-08-19 6:16 ` amit daniel kachhap 2013-08-19 6:16 ` amit daniel kachhap 2013-08-19 6:19 ` Viresh Kumar 2013-08-19 6:19 ` Viresh Kumar 2013-08-19 6:46 ` amit daniel kachhap 2013-08-19 6:46 ` amit daniel kachhap 2013-08-19 6:49 ` Viresh Kumar 2013-08-19 6:49 ` Viresh Kumar 2013-08-13 13:32 ` [PATCH V2 02/35] cpufreq: remove CONFIG_CPU_FREQ_TABLE Viresh Kumar 2013-08-13 13:32 ` Viresh Kumar 2013-08-13 13:32 ` [PATCH V2 03/35] cpufreq: acpi: Covert to light weight ->target_index() routine Viresh Kumar 2013-08-13 13:32 ` Viresh Kumar 2013-08-13 13:32 ` [PATCH V2 04/35] cpufreq: arm_big_little: " Viresh Kumar 2013-08-13 13:32 ` Viresh Kumar 2013-08-13 13:32 ` Viresh Kumar 2013-08-13 13:32 ` [PATCH V2 05/35] cpufreq: at32ap: " Viresh Kumar 2013-08-13 13:32 ` Viresh Kumar 2013-08-14 8:00 ` Hans-Christian Egtvedt 2013-08-14 8:00 ` Hans-Christian Egtvedt 2013-08-13 13:32 ` [PATCH V2 06/35] cpufreq: blackfin: " Viresh Kumar 2013-08-13 13:32 ` Viresh Kumar 2013-08-13 13:32 ` [PATCH V2 07/35] cpufreq: cpu0: " Viresh Kumar 2013-08-13 13:32 ` Viresh Kumar 2013-08-13 13:32 ` [PATCH V2 08/35] cpufreq: cris: " Viresh Kumar 2013-08-13 13:32 ` Viresh Kumar 2013-08-13 13:32 ` [PATCH V2 09/35] cpufreq: davinci: " Viresh Kumar 2013-08-13 13:32 ` Viresh Kumar 2013-08-13 13:32 ` [PATCH V2 10/35] cpufreq: dbx500: " Viresh Kumar 2013-08-13 13:32 ` Viresh Kumar 2013-08-13 13:32 ` [PATCH V2 11/35] cpufreq: e_powersaver: " Viresh Kumar 2013-08-13 13:32 ` Viresh Kumar 2013-08-13 13:32 ` [PATCH V2 12/35] cpufreq: elanfreq: " Viresh Kumar 2013-08-13 13:32 ` Viresh Kumar 2013-08-13 13:32 ` [PATCH V2 13/35] cpufreq: exynos: " Viresh Kumar 2013-08-13 13:32 ` Viresh Kumar 2013-08-13 13:32 ` [PATCH V2 14/35] cpufreq: ia64: " Viresh Kumar 2013-08-13 13:32 ` Viresh Kumar 2013-08-13 13:32 ` [PATCH V2 15/35] cpufreq: imx6q: " Viresh Kumar 2013-08-13 13:32 ` Viresh Kumar 2013-08-13 13:32 ` [PATCH V2 16/35] cpufreq: kirkwood: " Viresh Kumar 2013-08-13 13:32 ` Viresh Kumar 2013-08-13 13:32 ` [PATCH V2 17/35] cpufreq: longhaul: " Viresh Kumar 2013-08-13 13:32 ` Viresh Kumar 2013-08-13 13:32 ` [PATCH V2 18/35] cpufreq: loongson2: " Viresh Kumar 2013-08-13 13:32 ` Viresh Kumar 2013-08-13 13:32 ` [PATCH V2 19/35] cpufreq: maple: " Viresh Kumar 2013-08-13 13:32 ` Viresh Kumar 2013-08-13 13:32 ` [PATCH V2 20/35] cpufreq: omap: " Viresh Kumar 2013-08-13 13:32 ` Viresh Kumar 2013-08-13 13:32 ` [PATCH V2 21/35] cpufreq: p4: " Viresh Kumar 2013-08-13 13:32 ` Viresh Kumar 2013-08-13 13:32 ` [PATCH V2 22/35] cpufreq: pasemi: " Viresh Kumar 2013-08-13 13:32 ` Viresh Kumar 2013-08-13 13:32 ` [PATCH V2 23/35] cpufreq: pmac32: " Viresh Kumar 2013-08-13 13:32 ` Viresh Kumar 2013-08-13 13:32 ` [PATCH V2 24/35] cpufreq: powernow: " Viresh Kumar 2013-08-13 13:32 ` Viresh Kumar 2013-08-13 13:32 ` [PATCH V2 25/35] cpufreq: ppc: " Viresh Kumar 2013-08-13 13:32 ` Viresh Kumar 2013-08-13 13:32 ` [PATCH V2 26/35] cpufreq: pxa: " Viresh Kumar 2013-08-13 13:32 ` Viresh Kumar 2013-08-13 13:32 ` [PATCH V2 27/35] cpufreq: s3c2416: " Viresh Kumar 2013-08-13 13:32 ` Viresh Kumar 2013-08-13 13:32 ` [PATCH V2 28/35] cpufreq: s3c64xx: " Viresh Kumar 2013-08-13 13:32 ` Viresh Kumar 2013-08-13 13:32 ` [PATCH V2 29/35] cpufreq: s5pv210: " Viresh Kumar 2013-08-13 13:32 ` Viresh Kumar 2013-08-13 13:32 ` [PATCH V2 30/35] cpufreq: sa11x0: " Viresh Kumar 2013-08-13 13:32 ` Viresh Kumar 2013-08-13 13:32 ` [PATCH V2 31/35] cpufreq: sc520: " Viresh Kumar 2013-08-13 13:32 ` Viresh Kumar 2013-08-13 13:32 ` [PATCH V2 32/35] cpufreq: sparc: " Viresh Kumar 2013-08-13 13:44 ` Viresh Kumar 2013-08-13 13:32 ` Viresh Kumar 2013-08-13 13:32 ` [PATCH V2 33/35] cpufreq: SPEAr: " Viresh Kumar 2013-08-13 13:32 ` Viresh Kumar 2013-08-13 13:32 ` [PATCH V2 34/35] cpufreq: speedstep: " Viresh Kumar 2013-08-13 13:32 ` Viresh Kumar 2013-08-13 13:32 ` [PATCH V2 35/35] cpufreq: tegra: " Viresh Kumar 2013-08-13 13:32 ` Viresh Kumar 2013-08-13 13:46 ` [PATCH V2 00/35] CPUFreq: Implement light weight ->target(): for 3.13 Viresh Kumar 2013-08-13 13:58 ` Viresh Kumar 2013-08-13 13:46 ` Viresh Kumar 2013-08-14 5:29 ` Viresh Kumar 2013-08-14 5:29 ` Viresh Kumar 2013-11-06 0:11 ` [PATCH v4 1/5] iio: hid-sensors: accelerometer: Add sensitivity Srinivas Pandruvada 2013-11-06 0:11 ` [PATCH v4 2/5] iio: hid-sensors: gyro : " Srinivas Pandruvada 2013-11-06 0:11 ` [PATCH v4 3/5] iio: hid-sensors: light/als " Srinivas Pandruvada 2013-11-06 0:11 ` [PATCH v4 4/5] iio: hid-sensors: magnetometer " Srinivas Pandruvada 2013-11-09 11:56 ` Jonathan Cameron 2013-11-06 0:11 ` [PATCH v4 5/5] iio: hid-sensors: Added Inclinometer 3D Srinivas Pandruvada 2013-11-09 12:11 ` Jonathan Cameron 2013-12-03 20:37 ` Jonathan Cameron 2014-01-03 3:01 ` [PATCH 0/3] mtd: gpmi: add subpage read support Huang Shijie 2014-01-03 3:01 ` Huang Shijie 2014-02-21 6:51 ` Huang Shijie 2014-02-21 6:51 ` Huang Shijie 2014-03-07 7:27 ` Brian Norris 2014-03-07 7:27 ` Brian Norris 2014-03-07 7:32 ` Huang Shijie 2014-03-07 7:32 ` Huang Shijie 2014-03-07 7:34 ` Brian Norris 2014-03-07 7:34 ` Brian Norris 2014-01-03 3:01 ` [PATCH 1/3] mtd: nand: add "page" argument for read_subpage hook Huang Shijie 2014-01-03 3:01 ` Huang Shijie 2014-01-03 3:01 ` [PATCH 2/3] mtd: gpmi: do not use the mtd->writesize Huang Shijie 2014-01-03 3:01 ` Huang Shijie 2014-01-03 3:01 ` [PATCH 3/3] mtd: gpmi: add subpage read support Huang Shijie 2014-01-03 3:01 ` Huang Shijie 2014-04-23 10:16 ` [PATCH v1 0/7] mtd: spi-nor: Add the DDR quad " Huang Shijie 2014-04-23 10:16 ` Huang Shijie 2014-04-23 10:16 ` Huang Shijie 2014-04-23 10:16 ` Huang Shijie 2014-04-23 10:16 ` [PATCH v1 1/7] mtd: spi-nor: fix the wrong dummy value Huang Shijie 2014-04-23 10:16 ` Huang Shijie 2014-04-23 10:16 ` Huang Shijie 2014-04-23 10:16 ` Huang Shijie 2014-04-23 19:41 ` Marek Vasut 2014-04-23 19:41 ` Marek Vasut 2014-04-23 19:41 ` Marek Vasut [not found] ` <201404232141.27005.marex-ynQEQJNshbs@public.gmane.org> 2014-04-24 4:50 ` Huang Shijie 2014-04-24 4:50 ` Huang Shijie 2014-04-24 4:50 ` Huang Shijie 2014-04-24 4:50 ` Huang Shijie 2014-04-24 13:45 ` Marek Vasut 2014-04-24 13:45 ` Marek Vasut 2014-04-24 13:45 ` Marek Vasut 2014-04-23 10:16 ` [PATCH v1 2/7] mtd: spi-nor: add DDR quad read support Huang Shijie 2014-04-23 10:16 ` Huang Shijie 2014-04-23 10:16 ` Huang Shijie 2014-04-23 10:16 ` Huang Shijie [not found] ` <1398248215-26768-3-git-send-email-b32955-KZfg59tc24xl57MIdRCFDg@public.gmane.org> 2014-04-23 19:45 ` Marek Vasut 2014-04-23 19:45 ` Marek Vasut 2014-04-23 19:45 ` Marek Vasut 2014-04-24 4:53 ` Huang Shijie 2014-04-24 4:53 ` Huang Shijie 2014-04-24 4:53 ` Huang Shijie 2014-04-24 4:53 ` Huang Shijie 2014-04-24 13:43 ` Marek Vasut 2014-04-24 13:43 ` Marek Vasut 2014-04-24 13:43 ` Marek Vasut [not found] ` <201404241543.51752.marex-ynQEQJNshbs@public.gmane.org> 2014-04-24 14:26 ` Huang Shijie 2014-04-24 14:26 ` Huang Shijie 2014-04-24 14:26 ` Huang Shijie 2014-04-23 10:16 ` [PATCH v1 3/7] Documentation: mtd: add a new document for SPI NOR flash Huang Shijie 2014-04-23 10:16 ` Huang Shijie 2014-04-23 10:16 ` Huang Shijie 2014-04-23 10:16 ` [PATCH v1 4/7] Documentation: fsl-quadspi: update the document Huang Shijie 2014-04-23 10:16 ` Huang Shijie 2014-04-23 10:16 ` Huang Shijie 2014-04-23 10:16 ` Huang Shijie 2014-04-23 10:16 ` [PATCH v1 5/7] mtd: fsl-quadspi: get the dummy cycles for DDR Quad read from the DT property Huang Shijie 2014-04-23 10:16 ` Huang Shijie 2014-04-23 10:16 ` Huang Shijie 2014-04-23 10:16 ` Huang Shijie 2014-04-23 19:48 ` Marek Vasut 2014-04-23 19:48 ` Marek Vasut 2014-04-23 19:48 ` Marek Vasut [not found] ` <201404232148.51034.marex-ynQEQJNshbs@public.gmane.org> 2014-04-24 4:58 ` Huang Shijie 2014-04-24 4:58 ` Huang Shijie 2014-04-24 4:58 ` Huang Shijie 2014-04-24 4:58 ` Huang Shijie 2014-04-24 13:41 ` Marek Vasut 2014-04-24 13:41 ` Marek Vasut 2014-04-24 13:41 ` Marek Vasut 2014-04-24 14:27 ` Huang Shijie 2014-04-24 14:27 ` Huang Shijie 2014-04-24 14:27 ` Huang Shijie 2014-04-23 10:16 ` [PATCH v1 6/7] mtd: fsl-quadspi: use the information stored in spi-nor{} Huang Shijie 2014-04-23 10:16 ` Huang Shijie 2014-04-23 10:16 ` Huang Shijie 2014-04-23 10:16 ` Huang Shijie 2014-04-23 10:16 ` [PATCH v1 7/7] mtd: fsl-quadspi: add the DDR quad read support Huang Shijie 2014-04-23 10:16 ` Huang Shijie 2014-04-23 10:16 ` Huang Shijie 2014-04-23 10:16 ` Huang Shijie 2014-09-12 11:21 ` [Qemu-devel] [PATCHv2 0/4] introduce max_transfer_length Peter Lieven 2014-09-12 11:21 ` [Qemu-devel] [PATCHv2 1/4] BlockLimits: " Peter Lieven 2014-09-12 11:21 ` [Qemu-devel] [PATCHv2 2/4] block: immediately cancel oversized read/write requests Peter Lieven 2014-09-12 11:21 ` [Qemu-devel] [PATCHv2 3/4] block/iscsi: set max_transfer_length Peter Lieven 2014-09-12 11:21 ` [Qemu-devel] [PATCHv2 4/4] block: avoid creating oversized writes in multiwrite_merge Peter Lieven 2015-12-17 13:35 ` [PATCH net 0/2] Mellanox mlx4 driver fixes Or Gerlitz 2015-12-17 13:35 ` [PATCH net 1/2] net/mlx4_en: Remove dependency between timestamping capability and service_task Or Gerlitz 2015-12-17 13:35 ` [PATCH net 2/2] net/mlx4_en: Fix HW timestamp init issue upon system startup Or Gerlitz 2015-12-18 19:48 ` [PATCH net 0/2] Mellanox mlx4 driver fixes David Miller
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=1331826972-14386-1-git-send-email-plagnioj@jcrosoft.com \ --to=plagnioj-sclmfoaustbwk0htik3j/w@public.gmane.org \ --cc=devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org \ --cc=linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org \ /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.