Message ID | 1393093008-19667-1-git-send-email-shc_work@mail.ru (mailing list archive) |
---|---|
State | Rejected |
Delegated to: | Vinod Koul |
Headers | show |
T24gU2F0LCAyMDE0LTAyLTIyIGF0IDIyOjE2ICswNDAwLCBBbGV4YW5kZXIgU2hpeWFuIHdyb3Rl Og0KDQpEZXNjcmlwdGlvbj8NCg0KPiBTaWduZWQtb2ZmLWJ5OiBBbGV4YW5kZXIgU2hpeWFuIDxz aGNfd29ya0BtYWlsLnJ1Pg0KPiAtLS0NCj4gIGRyaXZlcnMvZG1hL2lteC1kbWEuYyB8IDcgKysr KystLQ0KPiAgMSBmaWxlIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkN Cj4gDQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2RtYS9pbXgtZG1hLmMgYi9kcml2ZXJzL2RtYS9p bXgtZG1hLmMNCj4gaW5kZXggNmY5YWMyMC4uN2VmMTZlOCAxMDA2NDQNCj4gLS0tIGEvZHJpdmVy cy9kbWEvaW14LWRtYS5jDQo+ICsrKyBiL2RyaXZlcnMvZG1hL2lteC1kbWEuYw0KPiBAQCAtMTY3 LDYgKzE2Nyw3IEBAIHN0cnVjdCBpbXhkbWFfY2hhbm5lbCB7DQo+ICAJdTMyCQkJCWNjcl90b19k ZXZpY2U7DQo+ICAJYm9vbAkJCQllbmFibGVkXzJkOw0KPiAgCWludAkJCQlzbG90XzJkOw0KPiAr CWNoYXIJCQkJbmFtZVs2XTsNCg0KV2lsbCB5b3UgZ28gdG8gdXNlIHRoaXMgZnVydGhlcj8NCkF0 IGxlYXN0IEkgZGlkbid0IHNlZSBpbiB0aGlzIHBhdGNoIHNlcmllcy4NCg0KSWYgeWVzLCB0aGFu IGF0dGFjaCBjb3JyZXNwb25kaW5nIHBhdGNoIHRvIHRoZSBzZXJpZXMgb3IgZXhwbGFpbiB0aGlz IGluDQp0aGUgY29tbWl0IG1lc3NhZ2UuDQoNCk90aGVyd2lzZSwgcGxlYXNlLCB1c2UgbG9jYWwg dmFyaWFibGVzLg0KDQo+ICB9Ow0KPiAgDQo+ICBlbnVtIGlteF9kbWFfdHlwZSB7DQo+IEBAIC0x MTExLDcgKzExMTIsNyBAQCBzdGF0aWMgaW50IF9faW5pdCBpbXhkbWFfcHJvYmUoc3RydWN0IHBs YXRmb3JtX2RldmljZSAqcGRldikNCj4gIAkJfQ0KPiAgDQo+ICAJCXJldCA9IGRldm1fcmVxdWVz dF9pcnEoJnBkZXYtPmRldiwgaXJxX2VyciwNCj4gLQkJCQkgICAgICAgaW14ZG1hX2Vycl9oYW5k bGVyLCAwLCAiRE1BIiwgaW14ZG1hKTsNCj4gKwkJCQkgICAgICAgaW14ZG1hX2Vycl9oYW5kbGVy LCAwLCAiRE1BRVJSIiwgaW14ZG1hKTsNCj4gIAkJaWYgKHJldCkgew0KPiAgCQkJZGV2X3dhcm4o aW14ZG1hLT5kZXYsICJDYW4ndCByZWdpc3RlciBFUlJJUlEgZm9yIERNQVxuIik7DQo+ICAJCQln b3RvIGVycjsNCj4gQEAgLTExNDUsOCArMTE0NiwxMCBAQCBzdGF0aWMgaW50IF9faW5pdCBpbXhk bWFfcHJvYmUoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldikNCj4gIAkJc3RydWN0IGlteGRt YV9jaGFubmVsICppbXhkbWFjID0gJmlteGRtYS0+Y2hhbm5lbFtpXTsNCj4gIA0KPiAgCQlpZiAo IWlzX2lteDFfZG1hKGlteGRtYSkpIHsNCj4gKwkJCXNwcmludGYoaW14ZG1hYy0+bmFtZSwgIkRN QSVpIiwgaSk7DQo+ICAJCQlyZXQgPSBkZXZtX3JlcXVlc3RfaXJxKCZwZGV2LT5kZXYsIGlycSAr IGksDQo+IC0JCQkJCWRtYV9pcnFfaGFuZGxlciwgMCwgIkRNQSIsIGlteGRtYSk7DQo+ICsJCQkJ CSAgICAgICBkbWFfaXJxX2hhbmRsZXIsIDAsDQo+ICsJCQkJCSAgICAgICBpbXhkbWFjLT5uYW1l LCBpbXhkbWEpOw0KDQpJcyBpdCBuZWNlc3NhcnkgYXQgYWxsPyBBcyBJIGNhbiBzZWUgdGhlIGlu dGVycnVwdHMgZ28gaW4gc2VxdWVuY2UuIFdoYXQNCmtpbmQgb2YgaGVscCBvZiB0aG9zZSBudW1i ZXIgYXR0YWNoZWQ/IERlc2NyaWJlIGluIHRoZSBjb21taXQgbWVzc2FnZS4gDQoNCj4gIAkJCWlm IChyZXQpIHsNCj4gIAkJCQlkZXZfd2FybihpbXhkbWEtPmRldiwgIkNhbid0IHJlZ2lzdGVyIElS USAlZCAiDQo+ICAJCQkJCSAiZm9yIERNQSBjaGFubmVsICVkXG4iLA0KDQoNCi0tIA0KQW5keSBT aGV2Y2hlbmtvIDxhbmRyaXkuc2hldmNoZW5rb0BpbnRlbC5jb20+DQpJbnRlbCBGaW5sYW5kIE95 DQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0KSW50ZWwgRmlubGFuZCBPeQpSZWdpc3RlcmVkIEFkZHJlc3M6IFBMIDI4 MSwgMDAxODEgSGVsc2lua2kgCkJ1c2luZXNzIElkZW50aXR5IENvZGU6IDAzNTc2MDYgLSA0IApE b21pY2lsZWQgaW4gSGVsc2lua2kgCgpUaGlzIGUtbWFpbCBhbmQgYW55IGF0dGFjaG1lbnRzIG1h eSBjb250YWluIGNvbmZpZGVudGlhbCBtYXRlcmlhbCBmb3IKdGhlIHNvbGUgdXNlIG9mIHRoZSBp bnRlbmRlZCByZWNpcGllbnQocykuIEFueSByZXZpZXcgb3IgZGlzdHJpYnV0aW9uCmJ5IG90aGVy cyBpcyBzdHJpY3RseSBwcm9oaWJpdGVkLiBJZiB5b3UgYXJlIG5vdCB0aGUgaW50ZW5kZWQKcmVj aXBpZW50LCBwbGVhc2UgY29udGFjdCB0aGUgc2VuZGVyIGFuZCBkZWxldGUgYWxsIGNvcGllcy4K -- To unsubscribe from this list: send the line "unsubscribe dmaengine" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Sat, Feb 22, 2014 at 10:16:45PM +0400, Alexander Shiyan wrote: > Signed-off-by: Alexander Shiyan <shc_work@mail.ru> > --- > drivers/dma/imx-dma.c | 7 +++++-- > 1 file changed, 5 insertions(+), 2 deletions(-) > > diff --git a/drivers/dma/imx-dma.c b/drivers/dma/imx-dma.c > index 6f9ac20..7ef16e8 100644 > --- a/drivers/dma/imx-dma.c > +++ b/drivers/dma/imx-dma.c > @@ -167,6 +167,7 @@ struct imxdma_channel { > u32 ccr_to_device; > bool enabled_2d; > int slot_2d; > + char name[6]; and this seems unused, so can you give motivation for this change?
???????, 6 ????? 2014, 20:47 +05:30 ?? Vinod Koul <vinod.koul@intel.com>: > On Sat, Feb 22, 2014 at 10:16:45PM +0400, Alexander Shiyan wrote: > > Signed-off-by: Alexander Shiyan <shc_work@mail.ru> > > --- > > drivers/dma/imx-dma.c | 7 +++++-- > > 1 file changed, 5 insertions(+), 2 deletions(-) > > > > diff --git a/drivers/dma/imx-dma.c b/drivers/dma/imx-dma.c > > index 6f9ac20..7ef16e8 100644 > > --- a/drivers/dma/imx-dma.c > > +++ b/drivers/dma/imx-dma.c > > @@ -167,6 +167,7 @@ struct imxdma_channel { > > u32 ccr_to_device; > > bool enabled_2d; > > int slot_2d; > > + char name[6]; > and this seems unused, so can you give motivation for this change? This is used by devm_request_irq() in the code a bit below. Currently IRQ statistics shows like: # cat /proc/interrupts ... 48: 1 mxc-avic 32 DMA 49: 0 mxc-avic 33 DMA 50: 0 mxc-avic 34 DMA 51: 0 mxc-avic 35 DMA 52: 0 mxc-avic 36 DMA 53: 0 mxc-avic 37 DMA 54: 0 mxc-avic 38 DMA 55: 0 mxc-avic 39 DMA 56: 0 mxc-avic 40 DMA 57: 0 mxc-avic 41 DMA 58: 0 mxc-avic 42 DMA 59: 0 mxc-avic 43 DMA 60: 0 mxc-avic 44 DMA 61: 0 mxc-avic 45 DMA 62: 0 mxc-avic 46 DMA 63: 0 mxc-avic 47 DMA ... > > enum imx_dma_type { > > @@ -1111,7 +1112,7 @@ static int __init imxdma_probe(struct platform_device *pdev) > > } > > > > ret = devm_request_irq(&pdev->dev, irq_err, > > - imxdma_err_handler, 0, "DMA", imxdma); > > + imxdma_err_handler, 0, "DMAERR", imxdma); > > if (ret) { > > dev_warn(imxdma->dev, "Can't register ERRIRQ for DMA\n"); > > goto err; > > @@ -1145,8 +1146,10 @@ static int __init imxdma_probe(struct platform_device *pdev) > > struct imxdma_channel *imxdmac = &imxdma->channel[i]; > > > > if (!is_imx1_dma(imxdma)) { > > + sprintf(imxdmac->name, "DMA%i", i); > > ret = devm_request_irq(&pdev->dev, irq + i, > > - dma_irq_handler, 0, "DMA", imxdma); > > + dma_irq_handler, 0, > > + imxdmac->name, imxdma); Here. So, as a result this change, we could distinguish DMA channels. > > if (ret) { > > dev_warn(imxdma->dev, "Can't register IRQ %d " > > "for DMA channel %d\n", > > -- ---
On Thu, Mar 06, 2014 at 07:33:32PM +0400, Alexander Shiyan wrote: > ???????, 6 ????? 2014, 20:47 +05:30 ?? Vinod Koul <vinod.koul@intel.com>: > > On Sat, Feb 22, 2014 at 10:16:45PM +0400, Alexander Shiyan wrote: > > > Signed-off-by: Alexander Shiyan <shc_work@mail.ru> > > > --- > > > drivers/dma/imx-dma.c | 7 +++++-- > > > 1 file changed, 5 insertions(+), 2 deletions(-) > > > > > > diff --git a/drivers/dma/imx-dma.c b/drivers/dma/imx-dma.c > > > index 6f9ac20..7ef16e8 100644 > > > --- a/drivers/dma/imx-dma.c > > > +++ b/drivers/dma/imx-dma.c > > > @@ -167,6 +167,7 @@ struct imxdma_channel { > > > u32 ccr_to_device; > > > bool enabled_2d; > > > int slot_2d; > > > + char name[6]; > > and this seems unused, so can you give motivation for this change? > > This is used by devm_request_irq() in the code a bit below. > Currently IRQ statistics shows like: > > # cat /proc/interrupts > ... > 48: 1 mxc-avic 32 DMA > 49: 0 mxc-avic 33 DMA > 50: 0 mxc-avic 34 DMA > 51: 0 mxc-avic 35 DMA > 52: 0 mxc-avic 36 DMA > 53: 0 mxc-avic 37 DMA > 54: 0 mxc-avic 38 DMA > 55: 0 mxc-avic 39 DMA > 56: 0 mxc-avic 40 DMA > 57: 0 mxc-avic 41 DMA > 58: 0 mxc-avic 42 DMA > 59: 0 mxc-avic 43 DMA > 60: 0 mxc-avic 44 DMA > 61: 0 mxc-avic 45 DMA > 62: 0 mxc-avic 46 DMA > 63: 0 mxc-avic 47 DMA > > ... > > > enum imx_dma_type { > > > @@ -1111,7 +1112,7 @@ static int __init imxdma_probe(struct platform_device *pdev) > > > } > > > > > > ret = devm_request_irq(&pdev->dev, irq_err, > > > - imxdma_err_handler, 0, "DMA", imxdma); > > > + imxdma_err_handler, 0, "DMAERR", imxdma); > > > if (ret) { > > > dev_warn(imxdma->dev, "Can't register ERRIRQ for DMA\n"); > > > goto err; > > > @@ -1145,8 +1146,10 @@ static int __init imxdma_probe(struct platform_device *pdev) > > > struct imxdma_channel *imxdmac = &imxdma->channel[i]; > > > > > > if (!is_imx1_dma(imxdma)) { > > > + sprintf(imxdmac->name, "DMA%i", i); > > > ret = devm_request_irq(&pdev->dev, irq + i, > > > - dma_irq_handler, 0, "DMA", imxdma); > > > + dma_irq_handler, 0, > > > + imxdmac->name, imxdma); > > Here. > So, as a result this change, we could distinguish DMA channels. > > > > if (ret) { > > > dev_warn(imxdma->dev, "Can't register IRQ %d " > > > "for DMA channel %d\n", > > > -- > > --- well this should be part of changelog too. 6 months down the line you wouldn't remember why you did this, so changelog would help :)
diff --git a/drivers/dma/imx-dma.c b/drivers/dma/imx-dma.c index 6f9ac20..7ef16e8 100644 --- a/drivers/dma/imx-dma.c +++ b/drivers/dma/imx-dma.c @@ -167,6 +167,7 @@ struct imxdma_channel { u32 ccr_to_device; bool enabled_2d; int slot_2d; + char name[6]; }; enum imx_dma_type { @@ -1111,7 +1112,7 @@ static int __init imxdma_probe(struct platform_device *pdev) } ret = devm_request_irq(&pdev->dev, irq_err, - imxdma_err_handler, 0, "DMA", imxdma); + imxdma_err_handler, 0, "DMAERR", imxdma); if (ret) { dev_warn(imxdma->dev, "Can't register ERRIRQ for DMA\n"); goto err; @@ -1145,8 +1146,10 @@ static int __init imxdma_probe(struct platform_device *pdev) struct imxdma_channel *imxdmac = &imxdma->channel[i]; if (!is_imx1_dma(imxdma)) { + sprintf(imxdmac->name, "DMA%i", i); ret = devm_request_irq(&pdev->dev, irq + i, - dma_irq_handler, 0, "DMA", imxdma); + dma_irq_handler, 0, + imxdmac->name, imxdma); if (ret) { dev_warn(imxdma->dev, "Can't register IRQ %d " "for DMA channel %d\n",
Signed-off-by: Alexander Shiyan <shc_work@mail.ru> --- drivers/dma/imx-dma.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-)