Displaying 20 results from an estimated 45 matches for "cio_dma_pool".
2019 Apr 09
0
[RFC PATCH 04/12] s390/cio: introduce cio DMA pool
...nt things?
>
> mutex_init(&css->mutex);
> css->cssid = chsc_get_cssid(nr);
> @@ -1018,6 +1025,55 @@ static struct notifier_block css_power_notifier = {
> .notifier_call = css_power_event,
> };
>
> +#define POOL_INIT_PAGES 1
> +static struct gen_pool *cio_dma_pool;
> +/* Currently cio supports only a single css */
> +static struct device *cio_dma_css;
That global variable feels wrong, especially if you plan to support
MCSS-E in the future. (Do you? :) If yes, should the dma pool be global
or per-css? As css0 currently is the root device for the channe...
2019 May 27
3
[PATCH v2 2/8] s390/cio: introduce DMA pools to cio
...++++++++++++++++++++++++++++++++++++++++++++
> 3 files changed, 122 insertions(+)
>
(...)
> @@ -1018,6 +1024,109 @@ static struct notifier_block css_power_notifier = {
> .notifier_call = css_power_event,
> };
>
> +#define POOL_INIT_PAGES 1
> +static struct gen_pool *cio_dma_pool;
> +/* Currently cio supports only a single css */
This comment looks misplaced.
> +#define CIO_DMA_GFP (GFP_KERNEL | __GFP_ZERO)
> +
> +
> +struct device *cio_get_dma_css_dev(void)
> +{
> + return &channel_subsystems[0]->device;
> +}
> +
> +struct gen_pool *...
2019 May 27
3
[PATCH v2 2/8] s390/cio: introduce DMA pools to cio
...++++++++++++++++++++++++++++++++++++++++++++
> 3 files changed, 122 insertions(+)
>
(...)
> @@ -1018,6 +1024,109 @@ static struct notifier_block css_power_notifier = {
> .notifier_call = css_power_event,
> };
>
> +#define POOL_INIT_PAGES 1
> +static struct gen_pool *cio_dma_pool;
> +/* Currently cio supports only a single css */
This comment looks misplaced.
> +#define CIO_DMA_GFP (GFP_KERNEL | __GFP_ZERO)
> +
> +
> +struct device *cio_get_dma_css_dev(void)
> +{
> + return &channel_subsystems[0]->device;
> +}
> +
> +struct gen_pool *...
2019 May 10
3
[PATCH 05/10] s390/cio: introduce DMA pools to cio
...om> wrote:
> >
> > > > > @@ -1063,6 +1163,7 @@ static int __init css_bus_init(void)
> > > > > unregister_reboot_notifier(&css_reboot_notifier);
> > > > > goto out_unregister;
> > > > > }
> > > > > + cio_dma_pool_init();
> > > >
> > > > This is too late for early devices (ccw console!).
> > >
> > > You have already raised concern about this last time (thanks). I think,
> > > I've addressed this issue: tje cio_dma_pool is only used by the air...
2019 May 10
3
[PATCH 05/10] s390/cio: introduce DMA pools to cio
...om> wrote:
> >
> > > > > @@ -1063,6 +1163,7 @@ static int __init css_bus_init(void)
> > > > > unregister_reboot_notifier(&css_reboot_notifier);
> > > > > goto out_unregister;
> > > > > }
> > > > > + cio_dma_pool_init();
> > > >
> > > > This is too late for early devices (ccw console!).
> > >
> > > You have already raised concern about this last time (thanks). I think,
> > > I've addressed this issue: tje cio_dma_pool is only used by the air...
2019 Apr 09
0
[RFC PATCH 04/12] s390/cio: introduce cio DMA pool
...t; css->cssid = chsc_get_cssid(nr);
> > > @@ -1018,6 +1025,55 @@ static struct notifier_block css_power_notifier = {
> > > .notifier_call = css_power_event,
> > > };
> > >
> > > +#define POOL_INIT_PAGES 1
> > > +static struct gen_pool *cio_dma_pool;
> > > +/* Currently cio supports only a single css */
> > > +static struct device *cio_dma_css;
> >
> > That global variable feels wrong, especially if you plan to support
> > MCSS-E in the future. (Do you? :)
>
> Not that I'm aware of any plans...
2019 Jun 12
0
[PATCH v5 2/8] s390/cio: introduce DMA pools to cio
...;css->device.coherent_dma_mask;
mutex_init(&css->mutex);
css->cssid = chsc_get_cssid(nr);
@@ -1018,6 +1033,111 @@ static struct notifier_block css_power_notifier = {
.notifier_call = css_power_event,
};
+#define CIO_DMA_GFP (GFP_KERNEL | __GFP_ZERO)
+static struct gen_pool *cio_dma_pool;
+
+/* Currently cio supports only a single css */
+struct device *cio_get_dma_css_dev(void)
+{
+ return &channel_subsystems[0]->device;
+}
+
+struct gen_pool *cio_gp_dma_create(struct device *dma_dev, int nr_pages)
+{
+ struct gen_pool *gp_dma;
+ void *cpu_addr;
+ dma_addr_t dma_addr;
+ int...
2019 May 13
2
[PATCH 05/10] s390/cio: introduce DMA pools to cio
...gt; > > @@ -1063,6 +1163,7 @@ static int __init css_bus_init(void)
> > > > > > > unregister_reboot_notifier(&css_reboot_notifier);
> > > > > > > goto out_unregister;
> > > > > > > }
> > > > > > > + cio_dma_pool_init();
> > > > > >
> > > > > > This is too late for early devices (ccw console!).
> > > > >
> > > > > You have already raised concern about this last time (thanks). I think,
> > > > > I've addresse...
2019 May 13
2
[PATCH 05/10] s390/cio: introduce DMA pools to cio
...gt; > > @@ -1063,6 +1163,7 @@ static int __init css_bus_init(void)
> > > > > > > unregister_reboot_notifier(&css_reboot_notifier);
> > > > > > > goto out_unregister;
> > > > > > > }
> > > > > > > + cio_dma_pool_init();
> > > > > >
> > > > > > This is too late for early devices (ccw console!).
> > > > >
> > > > > You have already raised concern about this last time (thanks). I think,
> > > > > I've addresse...
2019 May 29
0
[PATCH v3 2/8] s390/cio: introduce DMA pools to cio
...;css->device.coherent_dma_mask;
mutex_init(&css->mutex);
css->cssid = chsc_get_cssid(nr);
@@ -1018,6 +1024,109 @@ static struct notifier_block css_power_notifier = {
.notifier_call = css_power_event,
};
+#define CIO_DMA_GFP (GFP_KERNEL | __GFP_ZERO)
+static struct gen_pool *cio_dma_pool;
+
+/* Currently cio supports only a single css */
+struct device *cio_get_dma_css_dev(void)
+{
+ return &channel_subsystems[0]->device;
+}
+
+struct gen_pool *cio_gp_dma_create(struct device *dma_dev, int nr_pages)
+{
+ struct gen_pool *gp_dma;
+ void *cpu_addr;
+ dma_addr_t dma_addr;
+ int...
2019 May 12
0
[PATCH 05/10] s390/cio: introduce DMA pools to cio
...> > > > > > @@ -1063,6 +1163,7 @@ static int __init css_bus_init(void)
> > > > > > unregister_reboot_notifier(&css_reboot_notifier);
> > > > > > goto out_unregister;
> > > > > > }
> > > > > > + cio_dma_pool_init();
> > > > >
> > > > > This is too late for early devices (ccw console!).
> > > >
> > > > You have already raised concern about this last time (thanks). I think,
> > > > I've addressed this issue: the cio_dma_poo...
2019 Jun 06
0
[PATCH v4 2/8] s390/cio: introduce DMA pools to cio
...;css->device.coherent_dma_mask;
mutex_init(&css->mutex);
css->cssid = chsc_get_cssid(nr);
@@ -1018,6 +1033,109 @@ static struct notifier_block css_power_notifier = {
.notifier_call = css_power_event,
};
+#define CIO_DMA_GFP (GFP_KERNEL | __GFP_ZERO)
+static struct gen_pool *cio_dma_pool;
+
+/* Currently cio supports only a single css */
+struct device *cio_get_dma_css_dev(void)
+{
+ return &channel_subsystems[0]->device;
+}
+
+struct gen_pool *cio_gp_dma_create(struct device *dma_dev, int nr_pages)
+{
+ struct gen_pool *gp_dma;
+ void *cpu_addr;
+ dma_addr_t dma_addr;
+ int...
2019 May 08
4
[PATCH 05/10] s390/cio: introduce DMA pools to cio
...> + sch->dev.dma_mask = &sch->dma_mask;
> + sch->dev.coherent_dma_mask = sch->dma_mask;
Could we do:
sch->dev.dma_mask = &sch->dev.coherent_dma_mask;
sch->dev.coherent_dma_mask = css_dev_dma_mask;
?
> +#define POOL_INIT_PAGES 1
> +static struct gen_pool *cio_dma_pool;
> +/* Currently cio supports only a single css */
> +#define CIO_DMA_GFP (GFP_KERNEL | __GFP_ZERO)
__GFP_ZERO has no meaning with the dma api (since all implementations do
an implicit zero initialization) but let's keep it for the sake of
documentation.
We need GFP_DMA here (which wil...
2019 May 08
4
[PATCH 05/10] s390/cio: introduce DMA pools to cio
...> + sch->dev.dma_mask = &sch->dma_mask;
> + sch->dev.coherent_dma_mask = sch->dma_mask;
Could we do:
sch->dev.dma_mask = &sch->dev.coherent_dma_mask;
sch->dev.coherent_dma_mask = css_dev_dma_mask;
?
> +#define POOL_INIT_PAGES 1
> +static struct gen_pool *cio_dma_pool;
> +/* Currently cio supports only a single css */
> +#define CIO_DMA_GFP (GFP_KERNEL | __GFP_ZERO)
__GFP_ZERO has no meaning with the dma api (since all implementations do
an implicit zero initialization) but let's keep it for the sake of
documentation.
We need GFP_DMA here (which wil...
2019 May 23
0
[PATCH v2 2/8] s390/cio: introduce DMA pools to cio
...evice.dma_mask = &css->device.coherent_dma_mask;
mutex_init(&css->mutex);
css->cssid = chsc_get_cssid(nr);
@@ -1018,6 +1024,109 @@ static struct notifier_block css_power_notifier = {
.notifier_call = css_power_event,
};
+#define POOL_INIT_PAGES 1
+static struct gen_pool *cio_dma_pool;
+/* Currently cio supports only a single css */
+#define CIO_DMA_GFP (GFP_KERNEL | __GFP_ZERO)
+
+
+struct device *cio_get_dma_css_dev(void)
+{
+ return &channel_subsystems[0]->device;
+}
+
+struct gen_pool *cio_gp_dma_create(struct device *dma_dev, int nr_pages)
+{
+ struct gen_pool *gp_d...
2019 Apr 26
0
[PATCH 05/10] s390/cio: introduce DMA pools to cio
...mask,
+ css->device.dma_mask = &css_dev_dma_mask;
mutex_init(&css->mutex);
css->cssid = chsc_get_cssid(nr);
@@ -1018,6 +1028,96 @@ static struct notifier_block css_power_notifier = {
.notifier_call = css_power_event,
};
+#define POOL_INIT_PAGES 1
+static struct gen_pool *cio_dma_pool;
+/* Currently cio supports only a single css */
+#define CIO_DMA_GFP (GFP_KERNEL | __GFP_ZERO)
+
+
+struct device *cio_get_dma_css_dev(void)
+{
+ return &channel_subsystems[0]->device;
+}
+
+struct gen_pool *cio_gp_dma_create(struct device *dma_dev, int nr_pages)
+{
+ struct gen_pool *gp_d...
2019 May 15
0
[PATCH 05/10] s390/cio: introduce DMA pools to cio
...63,6 +1163,7 @@ static int __init css_bus_init(void)
> > > > > > > > unregister_reboot_notifier(&css_reboot_notifier);
> > > > > > > > goto out_unregister;
> > > > > > > > }
> > > > > > > > + cio_dma_pool_init();
> > > > > > >
> > > > > > > This is too late for early devices (ccw console!).
> > > > > >
> > > > > > You have already raised concern about this last time (thanks). I think,
> > > > &g...
2019 May 09
2
[PATCH 05/10] s390/cio: introduce DMA pools to cio
...:18:10 +0200 (CEST)
> Sebastian Ott <sebott at linux.ibm.com> wrote:
> > > @@ -1063,6 +1163,7 @@ static int __init css_bus_init(void)
> > > unregister_reboot_notifier(&css_reboot_notifier);
> > > goto out_unregister;
> > > }
> > > + cio_dma_pool_init();
> >
> > This is too late for early devices (ccw console!).
>
> You have already raised concern about this last time (thanks). I think,
> I've addressed this issue: tje cio_dma_pool is only used by the airq
> stuff. I don't think the ccw console needs...
2019 May 09
2
[PATCH 05/10] s390/cio: introduce DMA pools to cio
...:18:10 +0200 (CEST)
> Sebastian Ott <sebott at linux.ibm.com> wrote:
> > > @@ -1063,6 +1163,7 @@ static int __init css_bus_init(void)
> > > unregister_reboot_notifier(&css_reboot_notifier);
> > > goto out_unregister;
> > > }
> > > + cio_dma_pool_init();
> >
> > This is too late for early devices (ccw console!).
>
> You have already raised concern about this last time (thanks). I think,
> I've addressed this issue: tje cio_dma_pool is only used by the airq
> stuff. I don't think the ccw console needs...
2019 May 27
0
[PATCH v2 2/8] s390/cio: introduce DMA pools to cio
...3 files changed, 122 insertions(+)
> >
>
> (...)
>
> > @@ -1018,6 +1024,109 @@ static struct notifier_block css_power_notifier = {
> > .notifier_call = css_power_event,
> > };
> >
> > +#define POOL_INIT_PAGES 1
> > +static struct gen_pool *cio_dma_pool;
> > +/* Currently cio supports only a single css */
>
> This comment looks misplaced.
Right! Move to ...
>
> > +#define CIO_DMA_GFP (GFP_KERNEL | __GFP_ZERO)
> > +
> > +
... here?
> > +struct device *cio_get_dma_css_dev(void)
> > +{
> > + r...