From: "Artur Świgoń" <a.swigon@samsung.com> To: Chanwoo Choi <cw00.choi@samsung.com>, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-samsung-soc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-pm@vger.kernel.org, dri-devel@lists.freedesktop.org Cc: "Artur Świgoń" <a.swigon@samsung.com>, myungjoo.ham@samsung.com, inki.dae@samsung.com, sw0312.kim@samsung.com, georgi.djakov@linaro.org, leonard.crestez@nxp.com, m.szyprowski@samsung.com, b.zolnierkie@samsung.com, krzk@kernel.org Subject: Re: [RFC PATCH v2 01/11] devfreq: exynos-bus: Extract exynos_bus_profile_init() Date: Wed, 25 Sep 2019 07:44:35 +0200 [thread overview] Message-ID: <f51aac4cacb7a0196ab6919b110ad9fcf4009c88.camel@samsung.com> (raw) In-Reply-To: <2e49bd2c-e074-038b-f8a2-7dd8dea4a9af@samsung.com> Hi, On Fri, 2019-09-20 at 11:15 +0900, Chanwoo Choi wrote: > Hi, > > As I already replied on v1, patch1/2/3 clean-up code > for readability without any behavior changes. > > I think that you better to merge patch1/2/3 to one patch. Yes, when writing the cover letter I think I forgot to explain why I decided not to merge these patches. Basically, none of the diff algorithms available in git (I've got v2.17.1) is able to produce a readable patch with these changes combined together into a single patch (functions are intermixed together in the output, git thinks that 'exynos_bus_probe' is a new function). Please take a look at the diff at the bottom of this message to see how patches 01..03 look when combined. If such patch looks acceptable to you, I can merge. > On 19. 9. 19. 오후 11:22, Artur Świgoń wrote: > > From: Artur Świgoń <a.swigon@partner.samsung.com> > > > > This patch adds a new static function, exynos_bus_profile_init(), extracted > > from exynos_bus_probe(). > > > > Signed-off-by: Artur Świgoń <a.swigon@partner.samsung.com> > > --- > > drivers/devfreq/exynos-bus.c | 92 +++++++++++++++++++++--------------- > > 1 file changed, 53 insertions(+), 39 deletions(-) > > > > diff --git a/drivers/devfreq/exynos-bus.c b/drivers/devfreq/exynos-bus.c > > index 29f422469960..78f38b7fb596 100644 > > --- a/drivers/devfreq/exynos-bus.c > > +++ b/drivers/devfreq/exynos-bus.c > > @@ -287,12 +287,62 @@ static int exynos_bus_parse_of(struct device_node *np, > > return ret; > > } > > > > +static int exynos_bus_profile_init(struct exynos_bus *bus, > > + struct devfreq_dev_profile *profile) > > +{ > > + struct device *dev = bus->dev; > > + struct devfreq_simple_ondemand_data *ondemand_data; > > + int ret; > > + > > + /* Initialize the struct profile and governor data for parent device */ > > + profile->polling_ms = 50; > > + profile->target = exynos_bus_target; > > + profile->get_dev_status = exynos_bus_get_dev_status; > > + profile->exit = exynos_bus_exit; > > + > > + ondemand_data = devm_kzalloc(dev, sizeof(*ondemand_data), GFP_KERNEL); > > + if (!ondemand_data) { > > + ret = -ENOMEM; > > + goto err; > > + } > > + ondemand_data->upthreshold = 40; > > + ondemand_data->downdifferential = 5; > > + > > + /* Add devfreq device to monitor and handle the exynos bus */ > > + bus->devfreq = devm_devfreq_add_device(dev, profile, > > + DEVFREQ_GOV_SIMPLE_ONDEMAND, > > + ondemand_data); > > + if (IS_ERR(bus->devfreq)) { > > + dev_err(dev, "failed to add devfreq device\n"); > > + ret = PTR_ERR(bus->devfreq); > > + goto err; > > + } > > + > > + /* > > + * Enable devfreq-event to get raw data which is used to determine > > + * current bus load. > > + */ > > + ret = exynos_bus_enable_edev(bus); > > + if (ret < 0) { > > + dev_err(dev, "failed to enable devfreq-event devices\n"); > > + goto err; > > + } > > + > > + ret = exynos_bus_set_event(bus); > > + if (ret < 0) { > > + dev_err(dev, "failed to set event to devfreq-event devices\n"); > > + goto err; > > + } > > + > > +err: > > + return ret; > > +} > > + > > static int exynos_bus_probe(struct platform_device *pdev) > > { > > struct device *dev = &pdev->dev; > > struct device_node *np = dev->of_node, *node; > > struct devfreq_dev_profile *profile; > > - struct devfreq_simple_ondemand_data *ondemand_data; > > struct devfreq_passive_data *passive_data; > > struct devfreq *parent_devfreq; > > struct exynos_bus *bus; > > @@ -334,45 +384,9 @@ static int exynos_bus_probe(struct platform_device *pdev) > > if (passive) > > goto passive; > > > > - /* Initialize the struct profile and governor data for parent device */ > > - profile->polling_ms = 50; > > - profile->target = exynos_bus_target; > > - profile->get_dev_status = exynos_bus_get_dev_status; > > - profile->exit = exynos_bus_exit; > > - > > - ondemand_data = devm_kzalloc(dev, sizeof(*ondemand_data), GFP_KERNEL); > > - if (!ondemand_data) { > > - ret = -ENOMEM; > > + ret = exynos_bus_profile_init(bus, profile); > > + if (ret < 0) > > goto err; > > - } > > - ondemand_data->upthreshold = 40; > > - ondemand_data->downdifferential = 5; > > - > > - /* Add devfreq device to monitor and handle the exynos bus */ > > - bus->devfreq = devm_devfreq_add_device(dev, profile, > > - DEVFREQ_GOV_SIMPLE_ONDEMAND, > > - ondemand_data); > > - if (IS_ERR(bus->devfreq)) { > > - dev_err(dev, "failed to add devfreq device\n"); > > - ret = PTR_ERR(bus->devfreq); > > - goto err; > > - } > > - > > - /* > > - * Enable devfreq-event to get raw data which is used to determine > > - * current bus load. > > - */ > > - ret = exynos_bus_enable_edev(bus); > > - if (ret < 0) { > > - dev_err(dev, "failed to enable devfreq-event devices\n"); > > - goto err; > > - } > > - > > - ret = exynos_bus_set_event(bus); > > - if (ret < 0) { > > - dev_err(dev, "failed to set event to devfreq-event devices\n"); > > - goto err; > > - } > > > > goto out; > > passive: commit cacf8e4ea0e111908d11779977c81e29d6418801 Author: Artur Świgoń <a.swigon@partner.samsung.com> Date: Tue Aug 27 13:17:28 2019 +0200 tmp: merge patches 01-03 Signed-off-by: Artur Świgoń <a.swigon@partner.samsung.com> diff --git a/drivers/devfreq/exynos-bus.c b/drivers/devfreq/exynos-bus.c index 29f422469960..60ad4319fd80 100644 --- a/drivers/devfreq/exynos-bus.c +++ b/drivers/devfreq/exynos-bus.c @@ -287,52 +287,12 @@ static int exynos_bus_parse_of(struct device_node *np, return ret; } -static int exynos_bus_probe(struct platform_device *pdev) +static int exynos_bus_profile_init(struct exynos_bus *bus, + struct devfreq_dev_profile *profile) { - struct device *dev = &pdev->dev; - struct device_node *np = dev->of_node, *node; - struct devfreq_dev_profile *profile; + struct device *dev = bus->dev; struct devfreq_simple_ondemand_data *ondemand_data; - struct devfreq_passive_data *passive_data; - struct devfreq *parent_devfreq; - struct exynos_bus *bus; - int ret, max_state; - unsigned long min_freq, max_freq; - bool passive = false; - - if (!np) { - dev_err(dev, "failed to find devicetree node\n"); - return -EINVAL; - } - - bus = devm_kzalloc(&pdev->dev, sizeof(*bus), GFP_KERNEL); - if (!bus) - return -ENOMEM; - mutex_init(&bus->lock); - bus->dev = &pdev->dev; - platform_set_drvdata(pdev, bus); - - profile = devm_kzalloc(dev, sizeof(*profile), GFP_KERNEL); - if (!profile) - return -ENOMEM; - - node = of_parse_phandle(dev->of_node, "devfreq", 0); - if (node) { - of_node_put(node); - passive = true; - } else { - ret = exynos_bus_parent_parse_of(np, bus); - if (ret < 0) - return ret; - } - - /* Parse the device-tree to get the resource information */ - ret = exynos_bus_parse_of(np, bus); - if (ret < 0) - goto err_reg; - - if (passive) - goto passive; + int ret; /* Initialize the struct profile and governor data for parent device */ profile->polling_ms = 50; @@ -374,8 +334,18 @@ static int exynos_bus_probe(struct platform_device *pdev) goto err; } - goto out; -passive: +err: + return ret; +} + +static int exynos_bus_profile_init_passive(struct exynos_bus *bus, + struct devfreq_dev_profile *profile) +{ + struct device *dev = bus->dev; + struct devfreq_passive_data *passive_data; + struct devfreq *parent_devfreq; + int ret = 0; + /* Initialize the struct profile and governor data for passive device */ profile->target = exynos_bus_target; profile->exit = exynos_bus_passive_exit; @@ -404,7 +374,59 @@ static int exynos_bus_probe(struct platform_device *pdev) goto err; } -out: +err: + return ret; +} + +static int exynos_bus_probe(struct platform_device *pdev) +{ + struct device *dev = &pdev->dev; + struct device_node *np = dev->of_node, *node; + struct devfreq_dev_profile *profile; + struct exynos_bus *bus; + int ret, max_state; + unsigned long min_freq, max_freq; + bool passive = false; + + if (!np) { + dev_err(dev, "failed to find devicetree node\n"); + return -EINVAL; + } + + bus = devm_kzalloc(&pdev->dev, sizeof(*bus), GFP_KERNEL); + if (!bus) + return -ENOMEM; + mutex_init(&bus->lock); + bus->dev = &pdev->dev; + platform_set_drvdata(pdev, bus); + + profile = devm_kzalloc(dev, sizeof(*profile), GFP_KERNEL); + if (!profile) + return -ENOMEM; + + node = of_parse_phandle(dev->of_node, "devfreq", 0); + if (node) { + of_node_put(node); + passive = true; + } else { + ret = exynos_bus_parent_parse_of(np, bus); + if (ret < 0) + return ret; + } + + /* Parse the device-tree to get the resource information */ + ret = exynos_bus_parse_of(np, bus); + if (ret < 0) + goto err_reg; + + if (passive) + ret = exynos_bus_profile_init_passive(bus, profile); + else + ret = exynos_bus_profile_init(bus, profile); + + if (ret < 0) + goto err; + max_state = bus->devfreq->profile->max_state; min_freq = (bus->devfreq->profile->freq_table[0] / 1000); max_freq = (bus->devfreq->profile->freq_table[max_state - 1] / 1000);
WARNING: multiple messages have this Message-ID (diff)
From: "Artur Świgoń" <a.swigon@samsung.com> To: Chanwoo Choi <cw00.choi@samsung.com>, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-samsung-soc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-pm@vger.kernel.org, dri-devel@lists.freedesktop.org Cc: b.zolnierkie@samsung.com, sw0312.kim@samsung.com, "Artur Świgoń" <a.swigon@samsung.com>, krzk@kernel.org, inki.dae@samsung.com, myungjoo.ham@samsung.com, leonard.crestez@nxp.com, georgi.djakov@linaro.org, m.szyprowski@samsung.com Subject: Re: [RFC PATCH v2 01/11] devfreq: exynos-bus: Extract exynos_bus_profile_init() Date: Wed, 25 Sep 2019 07:44:35 +0200 [thread overview] Message-ID: <f51aac4cacb7a0196ab6919b110ad9fcf4009c88.camel@samsung.com> (raw) In-Reply-To: <2e49bd2c-e074-038b-f8a2-7dd8dea4a9af@samsung.com> Hi, On Fri, 2019-09-20 at 11:15 +0900, Chanwoo Choi wrote: > Hi, > > As I already replied on v1, patch1/2/3 clean-up code > for readability without any behavior changes. > > I think that you better to merge patch1/2/3 to one patch. Yes, when writing the cover letter I think I forgot to explain why I decided not to merge these patches. Basically, none of the diff algorithms available in git (I've got v2.17.1) is able to produce a readable patch with these changes combined together into a single patch (functions are intermixed together in the output, git thinks that 'exynos_bus_probe' is a new function). Please take a look at the diff at the bottom of this message to see how patches 01..03 look when combined. If such patch looks acceptable to you, I can merge. > On 19. 9. 19. 오후 11:22, Artur Świgoń wrote: > > From: Artur Świgoń <a.swigon@partner.samsung.com> > > > > This patch adds a new static function, exynos_bus_profile_init(), extracted > > from exynos_bus_probe(). > > > > Signed-off-by: Artur Świgoń <a.swigon@partner.samsung.com> > > --- > > drivers/devfreq/exynos-bus.c | 92 +++++++++++++++++++++--------------- > > 1 file changed, 53 insertions(+), 39 deletions(-) > > > > diff --git a/drivers/devfreq/exynos-bus.c b/drivers/devfreq/exynos-bus.c > > index 29f422469960..78f38b7fb596 100644 > > --- a/drivers/devfreq/exynos-bus.c > > +++ b/drivers/devfreq/exynos-bus.c > > @@ -287,12 +287,62 @@ static int exynos_bus_parse_of(struct device_node *np, > > return ret; > > } > > > > +static int exynos_bus_profile_init(struct exynos_bus *bus, > > + struct devfreq_dev_profile *profile) > > +{ > > + struct device *dev = bus->dev; > > + struct devfreq_simple_ondemand_data *ondemand_data; > > + int ret; > > + > > + /* Initialize the struct profile and governor data for parent device */ > > + profile->polling_ms = 50; > > + profile->target = exynos_bus_target; > > + profile->get_dev_status = exynos_bus_get_dev_status; > > + profile->exit = exynos_bus_exit; > > + > > + ondemand_data = devm_kzalloc(dev, sizeof(*ondemand_data), GFP_KERNEL); > > + if (!ondemand_data) { > > + ret = -ENOMEM; > > + goto err; > > + } > > + ondemand_data->upthreshold = 40; > > + ondemand_data->downdifferential = 5; > > + > > + /* Add devfreq device to monitor and handle the exynos bus */ > > + bus->devfreq = devm_devfreq_add_device(dev, profile, > > + DEVFREQ_GOV_SIMPLE_ONDEMAND, > > + ondemand_data); > > + if (IS_ERR(bus->devfreq)) { > > + dev_err(dev, "failed to add devfreq device\n"); > > + ret = PTR_ERR(bus->devfreq); > > + goto err; > > + } > > + > > + /* > > + * Enable devfreq-event to get raw data which is used to determine > > + * current bus load. > > + */ > > + ret = exynos_bus_enable_edev(bus); > > + if (ret < 0) { > > + dev_err(dev, "failed to enable devfreq-event devices\n"); > > + goto err; > > + } > > + > > + ret = exynos_bus_set_event(bus); > > + if (ret < 0) { > > + dev_err(dev, "failed to set event to devfreq-event devices\n"); > > + goto err; > > + } > > + > > +err: > > + return ret; > > +} > > + > > static int exynos_bus_probe(struct platform_device *pdev) > > { > > struct device *dev = &pdev->dev; > > struct device_node *np = dev->of_node, *node; > > struct devfreq_dev_profile *profile; > > - struct devfreq_simple_ondemand_data *ondemand_data; > > struct devfreq_passive_data *passive_data; > > struct devfreq *parent_devfreq; > > struct exynos_bus *bus; > > @@ -334,45 +384,9 @@ static int exynos_bus_probe(struct platform_device *pdev) > > if (passive) > > goto passive; > > > > - /* Initialize the struct profile and governor data for parent device */ > > - profile->polling_ms = 50; > > - profile->target = exynos_bus_target; > > - profile->get_dev_status = exynos_bus_get_dev_status; > > - profile->exit = exynos_bus_exit; > > - > > - ondemand_data = devm_kzalloc(dev, sizeof(*ondemand_data), GFP_KERNEL); > > - if (!ondemand_data) { > > - ret = -ENOMEM; > > + ret = exynos_bus_profile_init(bus, profile); > > + if (ret < 0) > > goto err; > > - } > > - ondemand_data->upthreshold = 40; > > - ondemand_data->downdifferential = 5; > > - > > - /* Add devfreq device to monitor and handle the exynos bus */ > > - bus->devfreq = devm_devfreq_add_device(dev, profile, > > - DEVFREQ_GOV_SIMPLE_ONDEMAND, > > - ondemand_data); > > - if (IS_ERR(bus->devfreq)) { > > - dev_err(dev, "failed to add devfreq device\n"); > > - ret = PTR_ERR(bus->devfreq); > > - goto err; > > - } > > - > > - /* > > - * Enable devfreq-event to get raw data which is used to determine > > - * current bus load. > > - */ > > - ret = exynos_bus_enable_edev(bus); > > - if (ret < 0) { > > - dev_err(dev, "failed to enable devfreq-event devices\n"); > > - goto err; > > - } > > - > > - ret = exynos_bus_set_event(bus); > > - if (ret < 0) { > > - dev_err(dev, "failed to set event to devfreq-event devices\n"); > > - goto err; > > - } > > > > goto out; > > passive: commit cacf8e4ea0e111908d11779977c81e29d6418801 Author: Artur Świgoń <a.swigon@partner.samsung.com> Date: Tue Aug 27 13:17:28 2019 +0200 tmp: merge patches 01-03 Signed-off-by: Artur Świgoń <a.swigon@partner.samsung.com> diff --git a/drivers/devfreq/exynos-bus.c b/drivers/devfreq/exynos-bus.c index 29f422469960..60ad4319fd80 100644 --- a/drivers/devfreq/exynos-bus.c +++ b/drivers/devfreq/exynos-bus.c @@ -287,52 +287,12 @@ static int exynos_bus_parse_of(struct device_node *np, return ret; } -static int exynos_bus_probe(struct platform_device *pdev) +static int exynos_bus_profile_init(struct exynos_bus *bus, + struct devfreq_dev_profile *profile) { - struct device *dev = &pdev->dev; - struct device_node *np = dev->of_node, *node; - struct devfreq_dev_profile *profile; + struct device *dev = bus->dev; struct devfreq_simple_ondemand_data *ondemand_data; - struct devfreq_passive_data *passive_data; - struct devfreq *parent_devfreq; - struct exynos_bus *bus; - int ret, max_state; - unsigned long min_freq, max_freq; - bool passive = false; - - if (!np) { - dev_err(dev, "failed to find devicetree node\n"); - return -EINVAL; - } - - bus = devm_kzalloc(&pdev->dev, sizeof(*bus), GFP_KERNEL); - if (!bus) - return -ENOMEM; - mutex_init(&bus->lock); - bus->dev = &pdev->dev; - platform_set_drvdata(pdev, bus); - - profile = devm_kzalloc(dev, sizeof(*profile), GFP_KERNEL); - if (!profile) - return -ENOMEM; - - node = of_parse_phandle(dev->of_node, "devfreq", 0); - if (node) { - of_node_put(node); - passive = true; - } else { - ret = exynos_bus_parent_parse_of(np, bus); - if (ret < 0) - return ret; - } - - /* Parse the device-tree to get the resource information */ - ret = exynos_bus_parse_of(np, bus); - if (ret < 0) - goto err_reg; - - if (passive) - goto passive; + int ret; /* Initialize the struct profile and governor data for parent device */ profile->polling_ms = 50; @@ -374,8 +334,18 @@ static int exynos_bus_probe(struct platform_device *pdev) goto err; } - goto out; -passive: +err: + return ret; +} + +static int exynos_bus_profile_init_passive(struct exynos_bus *bus, + struct devfreq_dev_profile *profile) +{ + struct device *dev = bus->dev; + struct devfreq_passive_data *passive_data; + struct devfreq *parent_devfreq; + int ret = 0; + /* Initialize the struct profile and governor data for passive device */ profile->target = exynos_bus_target; profile->exit = exynos_bus_passive_exit; @@ -404,7 +374,59 @@ static int exynos_bus_probe(struct platform_device *pdev) goto err; } -out: +err: + return ret; +} + +static int exynos_bus_probe(struct platform_device *pdev) +{ + struct device *dev = &pdev->dev; + struct device_node *np = dev->of_node, *node; + struct devfreq_dev_profile *profile; + struct exynos_bus *bus; + int ret, max_state; + unsigned long min_freq, max_freq; + bool passive = false; + + if (!np) { + dev_err(dev, "failed to find devicetree node\n"); + return -EINVAL; + } + + bus = devm_kzalloc(&pdev->dev, sizeof(*bus), GFP_KERNEL); + if (!bus) + return -ENOMEM; + mutex_init(&bus->lock); + bus->dev = &pdev->dev; + platform_set_drvdata(pdev, bus); + + profile = devm_kzalloc(dev, sizeof(*profile), GFP_KERNEL); + if (!profile) + return -ENOMEM; + + node = of_parse_phandle(dev->of_node, "devfreq", 0); + if (node) { + of_node_put(node); + passive = true; + } else { + ret = exynos_bus_parent_parse_of(np, bus); + if (ret < 0) + return ret; + } + + /* Parse the device-tree to get the resource information */ + ret = exynos_bus_parse_of(np, bus); + if (ret < 0) + goto err_reg; + + if (passive) + ret = exynos_bus_profile_init_passive(bus, profile); + else + ret = exynos_bus_profile_init(bus, profile); + + if (ret < 0) + goto err; + max_state = bus->devfreq->profile->max_state; min_freq = (bus->devfreq->profile->freq_table[0] / 1000); max_freq = (bus->devfreq->profile->freq_table[max_state - 1] / 1000); _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2019-09-25 5:44 UTC|newest] Thread overview: 99+ messages / expand[flat|nested] mbox.gz Atom feed top [not found] <CGME20190919142321eucas1p164c2591ad402427cb71fd00c348a29ec@eucas1p1.samsung.com> 2019-09-19 14:22 ` [RFC PATCH v2 00/11] Simple QoS for exynos-bus driver using interconnect Artur Świgoń 2019-09-19 14:22 ` Artur Świgoń [not found] ` <CGME20190919142322eucas1p24bc477ee6e1bcd65546c305d55af097d@eucas1p2.samsung.com> 2019-09-19 14:22 ` [RFC PATCH v2 01/11] devfreq: exynos-bus: Extract exynos_bus_profile_init() Artur Świgoń 2019-09-19 14:22 ` Artur Świgoń 2019-09-20 2:15 ` Chanwoo Choi 2019-09-20 2:15 ` Chanwoo Choi 2019-09-25 5:44 ` Artur Świgoń [this message] 2019-09-25 5:44 ` Artur Świgoń 2019-09-25 6:37 ` Chanwoo Choi 2019-09-25 6:37 ` Chanwoo Choi 2019-09-25 6:41 ` Artur Świgoń 2019-09-25 6:41 ` Artur Świgoń [not found] ` <CGME20190919142322eucas1p1949ad95468af26698c4c5addc060ce00@eucas1p1.samsung.com> 2019-09-19 14:22 ` [RFC PATCH v2 02/11] devfreq: exynos-bus: Extract exynos_bus_profile_init_passive() Artur Świgoń 2019-09-19 14:22 ` Artur Świgoń [not found] ` <CGME20190919142323eucas1p2fc73a765389432f880fa28945fd28975@eucas1p2.samsung.com> 2019-09-19 14:22 ` [RFC PATCH v2 03/11] devfreq: exynos-bus: Change goto-based logic to if-else logic Artur Świgoń 2019-09-19 14:22 ` Artur Świgoń [not found] ` <CGME20190919142324eucas1p1638cec2aafbfcaf03cfdfa7d0189143a@eucas1p1.samsung.com> 2019-09-19 14:22 ` [RFC PATCH v2 04/11] devfreq: exynos-bus: Clean up code Artur Świgoń 2019-09-19 14:22 ` Artur Świgoń 2019-09-20 2:22 ` Chanwoo Choi 2019-09-20 2:22 ` Chanwoo Choi 2019-10-03 8:10 ` Artur Świgoń 2019-10-03 8:10 ` Artur Świgoń 2019-10-03 8:10 ` Artur Świgoń [not found] ` <CGME20190919142325eucas1p28102446c22b1e1c61aae0bad46d079b0@eucas1p2.samsung.com> 2019-09-19 14:22 ` [RFC PATCH v2 05/11] interconnect: Export of_icc_get_from_provider() Artur Świgoń 2019-09-19 14:22 ` Artur Świgoń 2019-12-16 0:57 ` Chanwoo Choi 2019-12-16 0:57 ` Chanwoo Choi 2019-12-16 0:57 ` Chanwoo Choi [not found] ` <CGME20190919142326eucas1p204819014fe85716b47e2de4af9102cd5@eucas1p2.samsung.com> 2019-09-19 14:22 ` [RFC PATCH v2 06/11] interconnect: Relax requirement in of_icc_get_from_provider() Artur Świgoń 2019-09-19 14:22 ` Artur Świgoń [not found] ` <CGME20190919142327eucas1p183470eede07b50c1e3acda58f2af1eba@eucas1p1.samsung.com> 2019-09-19 14:22 ` [RFC PATCH v2 07/11] interconnect: Relax condition in apply_constraints() Artur Świgoń 2019-09-19 14:22 ` Artur Świgoń [not found] ` <CGME20190919142329eucas1p299762f99dd55a5d625633ceec84219f9@eucas1p2.samsung.com> 2019-09-19 14:22 ` [RFC PATCH v2 08/11] arm: dts: exynos: Add parents and #interconnect-cells to Exynos4412 Artur Świgoń 2019-09-19 14:22 ` Artur Świgoń 2019-12-16 0:51 ` Chanwoo Choi 2019-12-16 0:51 ` Chanwoo Choi 2019-12-16 0:51 ` Chanwoo Choi 2019-12-16 2:59 ` Chanwoo Choi 2019-12-16 2:59 ` Chanwoo Choi 2019-12-16 2:59 ` Chanwoo Choi 2019-12-18 10:17 ` Artur Świgoń 2019-12-18 10:17 ` Artur Świgoń 2019-12-18 10:17 ` Artur Świgoń 2019-12-18 10:29 ` Chanwoo Choi 2019-12-18 10:29 ` Chanwoo Choi 2019-12-18 10:29 ` Chanwoo Choi 2019-12-18 10:41 ` Artur Świgoń 2019-12-18 10:41 ` Artur Świgoń 2019-12-18 10:41 ` Artur Świgoń 2019-12-16 0:55 ` Chanwoo Choi 2019-12-16 0:55 ` Chanwoo Choi 2019-12-16 0:55 ` Chanwoo Choi 2019-12-16 0:57 ` Chanwoo Choi 2019-12-16 0:57 ` Chanwoo Choi 2019-12-16 0:57 ` Chanwoo Choi [not found] ` <CGME20190919142329eucas1p2e53992eab9ec6b404f716f955b3c228e@eucas1p2.samsung.com> 2019-09-19 14:22 ` [RFC PATCH v2 09/11] devfreq: exynos-bus: Add interconnect functionality to exynos-bus Artur Świgoń 2019-09-19 14:22 ` Artur Świgoń 2019-09-25 7:03 ` Chanwoo Choi 2019-09-25 7:03 ` Chanwoo Choi 2019-09-25 7:03 ` Chanwoo Choi 2019-09-25 7:12 ` Artur Świgoń 2019-09-25 7:12 ` Artur Świgoń 2019-12-02 17:05 ` Artur Świgoń 2019-12-02 17:05 ` Artur Świgoń 2019-12-02 17:05 ` Artur Świgoń 2019-12-05 2:36 ` Chanwoo Choi 2019-12-05 2:36 ` Chanwoo Choi 2019-12-05 2:36 ` Chanwoo Choi 2019-12-16 0:44 ` Chanwoo Choi 2019-12-16 0:44 ` Chanwoo Choi 2019-12-16 0:44 ` Chanwoo Choi 2019-12-18 10:18 ` Artur Świgoń 2019-12-18 10:18 ` Artur Świgoń 2019-12-18 10:18 ` Artur Świgoń 2019-12-18 10:39 ` Chanwoo Choi 2019-12-18 10:39 ` Chanwoo Choi 2019-12-18 10:39 ` Chanwoo Choi 2019-12-18 10:48 ` Artur Świgoń 2019-12-18 10:48 ` Artur Świgoń 2019-12-18 10:48 ` Artur Świgoń 2019-12-18 11:08 ` Chanwoo Choi 2019-12-18 11:08 ` Chanwoo Choi 2019-12-18 11:08 ` Chanwoo Choi [not found] ` <CGME20190919142330eucas1p1eceae78b148a03f2af71657b7cdd6694@eucas1p1.samsung.com> 2019-09-19 14:22 ` [RFC PATCH v2 10/11] arm: dts: exynos: Add interconnects to Exynos4412 mixer Artur Świgoń 2019-09-19 14:22 ` Artur Świgoń [not found] ` <CGME20190919142331eucas1p2107a7cb9ce8b3817ed171c21a8ad5b00@eucas1p2.samsung.com> 2019-09-19 14:22 ` [RFC PATCH v2 11/11] drm: exynos: mixer: Add interconnect support Artur Świgoń 2019-09-19 14:22 ` Artur Świgoń 2019-09-20 1:07 ` [RFC PATCH v2 00/11] Simple QoS for exynos-bus driver using interconnect Chanwoo Choi 2019-09-20 1:07 ` Chanwoo Choi 2019-09-20 2:14 ` Chanwoo Choi 2019-09-20 2:14 ` Chanwoo Choi 2019-09-25 5:47 ` Artur Świgoń 2019-09-25 5:47 ` Artur Świgoń 2019-09-25 6:12 ` Chanwoo Choi 2019-09-25 6:12 ` Chanwoo Choi 2019-09-25 6:37 ` Artur Świgoń 2019-09-25 6:37 ` Artur Świgoń 2019-09-25 6:48 ` Chanwoo Choi 2019-09-25 6:48 ` Chanwoo Choi
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=f51aac4cacb7a0196ab6919b110ad9fcf4009c88.camel@samsung.com \ --to=a.swigon@samsung.com \ --cc=b.zolnierkie@samsung.com \ --cc=cw00.choi@samsung.com \ --cc=devicetree@vger.kernel.org \ --cc=dri-devel@lists.freedesktop.org \ --cc=georgi.djakov@linaro.org \ --cc=inki.dae@samsung.com \ --cc=krzk@kernel.org \ --cc=leonard.crestez@nxp.com \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-pm@vger.kernel.org \ --cc=linux-samsung-soc@vger.kernel.org \ --cc=m.szyprowski@samsung.com \ --cc=myungjoo.ham@samsung.com \ --cc=sw0312.kim@samsung.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.