From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Subject: [RFC,v2,05/15] usb:cdns3: Added DRD support From: Roger Quadros Message-Id: <5BFD343C.3010407@ti.com> Date: Tue, 27 Nov 2018 14:10:36 +0200 To: Pawel Laszczak , "devicetree@vger.kernel.org" Cc: "gregkh@linuxfoundation.org" , "linux-usb@vger.kernel.org" , "linux-kernel@vger.kernel.org" , Alan Douglas , "jbergsagel@ti.com" , "nsekhar@ti.com" , "nm@ti.com" , Suresh Punnoose , "peter.chen@nxp.com" , Pawel Jez , Rahul Kumar List-ID: UGF3ZWwsCgpPbiAyNy8xMS8xOCAxMzoyOSwgUGF3ZWwgTGFzemN6YWsgd3JvdGU6Cj4gSGkgUm9n ZXIKPiAKPj4+PiBQYXRjaCBhZGRzIHN1cHBvcnRzIGZvciBkZXRlY3RpbmcgSG9zdC9EZXZpY2Ug bW9kZS4KPj4+PiArCj4+Pj4gK3N0YXRpYyBpbnQgY2RuczNfb3RnX2dldF9pZChzdHJ1Y3QgY2Ru czMgKmNkbnMpCj4+Pj4gK3sKPj4+PiArCWludCBpZDsKPj4+PiArCj4+Pj4gKwlpZCA9IHJlYWRs KCZjZG5zLT5vdGdfcmVncy0+c3RzKSAmIE9UR1NUU19JRF9WQUxVRTsKPj4+PiArCWRldl9kYmco Y2Rucy0+ZGV2LCAiT1RHIElEOiAlZCIsIGlkKTsKPj4+PiArCXJldHVybiBpZDsKPj4+PiArfQo+ Pj4+ICsKPj4+PiAraW50IGNkbnMzX2lzX2hvc3Qoc3RydWN0IGNkbnMzICpjZG5zKQo+Pj4+ICt7 Cj4+Pj4gKwlpZiAoY2Rucy0+Y3VycmVudF9kcl9tb2RlID09IFVTQl9EUl9NT0RFX0hPU1QpCj4+ Pj4gKwkJcmV0dXJuIDE7Cj4+Pgo+Pj4gV2h5IGRvIHlvdSBuZWVkIHRoaXM/Cj4+Cj4+IEkgYXNz dW1lZCB0aGF0IHNvbWUgU29DIGNvdWxkIGhhdmUgY3V0IERSRCAvT1RHIGFuZCBEZXZpY2Ugb3Ig SG9zdCBwYXJ0Lgo+PiBJbiBzdWNoIGNhc2UgdGhlIGRyaXZlciBjYW5ub3QgYmUgYmFzZWQgb24g SUQgcGluLgo+PiBGb3Igb25seSBIT1NUIGl0J3Mgbm90IGEgcHJvYmxlbSBiZWNhdXNlCj4+IHRo ZSBzdGFuZGFyZCBYSENJIGRyaXZlciB3aWxsIGJlIHVzZWQuICBQcm9iYWJseSBJIHdpbGwgcmVt b3ZlIHRoaXMgZnJhZ21lbnQuCj4gCj4gSSd2ZSByZW1vdmVkIHRoaXMgY29uZGl0aW9uIGJ1dCBp dCBpcyBuZWNlc3NhcnkgYW5kIEkndmUgIHJlc3RvcmVkIGl0IGFnYWluLiAKPiBXaGVuIGRyaXZl ciB3b3JrcyBpbiBvbmx5IEhPU1QgbW9kZSB0aGVuIElEIGlzIGFsd2F5cyAwLiAKPiBGb3IgY3Vy cmVudF9kcl9tb2RlID09IFVTQl9EUl9NT0RFX0hPU1QgZHJpdmVyIGhhcyB0byBqdXN0IHNpbXBs ZSAKPiByZXR1cm5zIDEuICAKPiBjdXJyZW50X2RyX21vZGUgIGNhbiBiZSBjaGFuZ2VkIGZyb20g dXNlciBzcGFjZSBkZXBlbmRpbmcgb24gZHJfbW9kZSBmaWVsZC4gCgpPSy4KCj4gCj4gSSBoYXZl IHRoZSBhZGRpdGlvbmFsIHF1ZXN0aW9uLiBCZWNhdXNlIEkgaGF2ZSBtYW55IGNoYW5nZXMgaW4g c291cmNlIGNvZGUgaWYgSSBzaG91bGQgCj4gcG9zdCB0aGUgbmV4dCBSRkMgUEFUQ0ggdjMgb3Ig c2hvdWxkIEkgd2FpdCBmb3IgY29tbWVudHMgZm9yIHJlc3QgcGF0Y2hlcyA/CgpJIHdpbGwgbmVl ZCBhIGRheSB0byByZXZpZXcgdGhlIHJlbWFpbmluZyBwYXRjaGVzLiBTbyBtYXliZSBpdCBpcyBi ZXR0ZXIgdG8gd2FpdD8KCj4gCj4+Pgo+Pj4+ICsJZWxzZSBpZiAoY2Rucy0+Y3VycmVudF9kcl9t b2RlID09IFVTQl9EUl9NT0RFX09URykKPj4+PiArCQlpZiAoIWNkbnMzX290Z19nZXRfaWQoY2Ru cykpCj4+Pj4gKwkJCXJldHVybiAxOwo+Pj4+ICsKPj4+PiArCXJldHVybiAwOwo+Pj4+ICt9Cj4+ Pj4gKwo+IFRoYW5rcywKPiBDaGVlcnMsCj4gUGF3ZWwKPiAKCmNoZWVycywKLXJvZ2VyCg== From mboxrd@z Thu Jan 1 00:00:00 1970 From: Roger Quadros Subject: Re: [RFC PATCH v2 05/15] usb:cdns3: Added DRD support Date: Tue, 27 Nov 2018 14:10:36 +0200 Message-ID: <5BFD343C.3010407@ti.com> References: <1542535751-16079-1-git-send-email-pawell@cadence.com> <1542535751-16079-6-git-send-email-pawell@cadence.com> <5BF8140C.7000605@ti.com> Mime-Version: 1.0 Content-Type: text/plain; charset="windows-1252" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: Sender: linux-kernel-owner@vger.kernel.org To: Pawel Laszczak , "devicetree@vger.kernel.org" Cc: "gregkh@linuxfoundation.org" , "linux-usb@vger.kernel.org" , "linux-kernel@vger.kernel.org" , Alan Douglas , "jbergsagel@ti.com" , "nsekhar@ti.com" , "nm@ti.com" , Suresh Punnoose , "peter.chen@nxp.com" , Pawel Jez , Rahul Kumar List-Id: devicetree@vger.kernel.org Pawel, On 27/11/18 13:29, Pawel Laszczak wrote: > Hi Roger > >>>> Patch adds supports for detecting Host/Device mode. >>>> + >>>> +static int cdns3_otg_get_id(struct cdns3 *cdns) >>>> +{ >>>> + int id; >>>> + >>>> + id = readl(&cdns->otg_regs->sts) & OTGSTS_ID_VALUE; >>>> + dev_dbg(cdns->dev, "OTG ID: %d", id); >>>> + return id; >>>> +} >>>> + >>>> +int cdns3_is_host(struct cdns3 *cdns) >>>> +{ >>>> + if (cdns->current_dr_mode == USB_DR_MODE_HOST) >>>> + return 1; >>> >>> Why do you need this? >> >> I assumed that some SoC could have cut DRD /OTG and Device or Host part. >> In such case the driver cannot be based on ID pin. >> For only HOST it's not a problem because >> the standard XHCI driver will be used. Probably I will remove this fragment. > > I've removed this condition but it is necessary and I've restored it again. > When driver works in only HOST mode then ID is always 0. > For current_dr_mode == USB_DR_MODE_HOST driver has to just simple > returns 1. > current_dr_mode can be changed from user space depending on dr_mode field. OK. > > I have the additional question. Because I have many changes in source code if I should > post the next RFC PATCH v3 or should I wait for comments for rest patches ? I will need a day to review the remaining patches. So maybe it is better to wait? > >>> >>>> + else if (cdns->current_dr_mode == USB_DR_MODE_OTG) >>>> + if (!cdns3_otg_get_id(cdns)) >>>> + return 1; >>>> + >>>> + return 0; >>>> +} >>>> + > Thanks, > Cheers, > Pawel > cheers, -roger -- Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki. Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki