From mboxrd@z Thu Jan 1 00:00:00 1970 From: Eugeniy.Paltsev@synopsys.com (Eugeniy Paltsev) Date: Wed, 16 Aug 2017 15:26:30 +0000 Subject: [PATCH] earlycon: initialise baud field of earlycon device structure In-Reply-To: References: <20170815172141.29115-1-Eugeniy.Paltsev@synopsys.com> <1502884362.2586.32.camel@synopsys.com> List-ID: Message-ID: <1502897189.2586.37.camel@synopsys.com> To: linux-snps-arc@lists.infradead.org On Wed, 2017-08-16@08:46 -0500, Rob Herring wrote: > On Wed, Aug 16, 2017 at 6:52 AM, Eugeniy Paltsev > wrote: > > Hi Rob, > > > > On Tue, 2017-08-15@14:26 -0500, Rob Herring wrote: > > > On Tue, Aug 15, 2017 at 12:21 PM, Eugeniy Paltsev > > > wrote: > > > > [snip] > > > > @@ -282,7 +283,15 @@ int __init of_setup_earlycon(const struct > > > > earlycon_id *match, > > > > ????????????????} > > > > ????????} > > > > > > > > +???????val = of_get_flat_dt_prop(node, "baud", NULL); > > > > > > No, we already have a defined way to set the baud, we don't need > > > a > > > property in addition. Plus you didn't document it. > > > > I guess by defined way to set the baud you mean setting baud after > > device alias > > in stdout-path property (like stdout-path = "serial:115200n8"), > > right? > > > > The idea was to reuse "baud" property from serial node to set the > > earlycon baud: > > > > chosen { > > ????... > > ????stdout-path = &serial; > > }; > > > > serial: uart at ... { > > ????... > > ????baud = <115200>;???/* Get baud from here */ > > "current-speed" is already defined for this purpose. If you want to > add that, that's fine. Ok, I'll add "current-speed". > > }; > > > > > > +???????if (val) > > > > +???????????????early_console_dev.baud = be32_to_cpu(*val); > > > > + > > > > ????????if (options) { > > > > +???????????????err = kstrtoul(options, 10, &baud); > > > > +???????????????if (!err) > > > > +???????????????????????early_console_dev.baud = baud; > > > > > > This seems fine to do here, but then we should also parse the > > > other > > > standard options here too. And we should make sure we're not > > > doing it > > > twice. > > > > I added only baud parsing here because we parse only baud from > > standard > > options > > when register_earlycon is used. (see parse_options function which > > is > > called > > from register_earlycon) > > > > But I can add other standard options parsing here (probably using > > uart_parse_options + uart_set_options). > > What do you think? > > That seems fine as long as consoles can still have their own options. Ok. Should I also add standard options parsing to register_earlycon? (as we parse only baud from standard options in register_earlycon) > Rob -- ?Eugeniy Paltsev From mboxrd@z Thu Jan 1 00:00:00 1970 From: Eugeniy Paltsev Subject: Re: [PATCH] earlycon: initialise baud field of earlycon device structure Date: Wed, 16 Aug 2017 15:26:30 +0000 Message-ID: <1502897189.2586.37.camel@synopsys.com> References: <20170815172141.29115-1-Eugeniy.Paltsev@synopsys.com> <1502884362.2586.32.camel@synopsys.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: Content-Language: en-US Content-ID: <042C22D12E394A4AA4EEE4F60B3C0DE8@internal.synopsys.com> Sender: linux-kernel-owner@vger.kernel.org To: "robherring2@gmail.com" Cc: "linux-serial@vger.kernel.org" , "linux-kernel@vger.kernel.org" , "jslaby@suse.com" , "Eugeniy.Paltsev@synopsys.com" , "gregkh@linuxfoundation.org" , "linux-snps-arc@lists.infradead.org" List-Id: linux-serial@vger.kernel.org T24gV2VkLCAyMDE3LTA4LTE2IGF0IDA4OjQ2IC0wNTAwLCBSb2IgSGVycmluZyB3cm90ZToNCj4g T24gV2VkLCBBdWcgMTYsIDIwMTcgYXQgNjo1MiBBTSwgRXVnZW5peSBQYWx0c2V2DQo+IDxFdWdl bml5LlBhbHRzZXZAc3lub3BzeXMuY29tPiB3cm90ZToNCj4gPiBIaSBSb2IsDQo+ID4gDQo+ID4g T24gVHVlLCAyMDE3LTA4LTE1IGF0IDE0OjI2IC0wNTAwLCBSb2IgSGVycmluZyB3cm90ZToNCj4g PiA+IE9uIFR1ZSwgQXVnIDE1LCAyMDE3IGF0IDEyOjIxIFBNLCBFdWdlbml5IFBhbHRzZXYNCj4g PiA+IDxFdWdlbml5LlBhbHRzZXZAc3lub3BzeXMuY29tPiB3cm90ZToNCj4gPiA+ID4gW3NuaXBd DQo+ID4gPiA+IEBAIC0yODIsNyArMjgzLDE1IEBAIGludCBfX2luaXQgb2Zfc2V0dXBfZWFybHlj b24oY29uc3Qgc3RydWN0DQo+ID4gPiA+IGVhcmx5Y29uX2lkICptYXRjaCwNCj4gPiA+ID4gwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqB9DQo+ID4gPiA+IMKgwqDCoMKgwqDCoMKgwqB9 DQo+ID4gPiA+IA0KPiA+ID4gPiArwqDCoMKgwqDCoMKgwqB2YWwgPSBvZl9nZXRfZmxhdF9kdF9w cm9wKG5vZGUsICJiYXVkIiwgTlVMTCk7DQo+ID4gPiANCj4gPiA+IE5vLCB3ZSBhbHJlYWR5IGhh dmUgYSBkZWZpbmVkIHdheSB0byBzZXQgdGhlIGJhdWQsIHdlIGRvbid0IG5lZWQNCj4gPiA+IGEN Cj4gPiA+IHByb3BlcnR5IGluIGFkZGl0aW9uLiBQbHVzIHlvdSBkaWRuJ3QgZG9jdW1lbnQgaXQu DQo+ID4gDQo+ID4gSSBndWVzcyBieSBkZWZpbmVkIHdheSB0byBzZXQgdGhlIGJhdWQgeW91IG1l YW4gc2V0dGluZyBiYXVkIGFmdGVyDQo+ID4gZGV2aWNlIGFsaWFzDQo+ID4gaW4gc3Rkb3V0LXBh dGggcHJvcGVydHkgKGxpa2Ugc3Rkb3V0LXBhdGggPSAic2VyaWFsOjExNTIwMG44IiksDQo+ID4g cmlnaHQ/DQo+ID4gDQo+ID4gVGhlIGlkZWEgd2FzIHRvIHJldXNlICJiYXVkIiBwcm9wZXJ0eSBm cm9tIHNlcmlhbCBub2RlIHRvIHNldCB0aGUNCj4gPiBlYXJseWNvbiBiYXVkOg0KPiA+IA0KPiA+ IGNob3NlbiB7DQo+ID4gwqDCoMKgwqAuLi4NCj4gPiDCoMKgwqDCoHN0ZG91dC1wYXRoID0gJnNl cmlhbDsNCj4gPiB9Ow0KPiA+IA0KPiA+IHNlcmlhbDogdWFydEAuLi4gew0KPiA+IMKgwqDCoMKg Li4uDQo+ID4gwqDCoMKgwqBiYXVkID0gPDExNTIwMD47wqDCoMKgLyogR2V0IGJhdWQgZnJvbSBo ZXJlICovDQo+IA0KPiAiY3VycmVudC1zcGVlZCIgaXMgYWxyZWFkeSBkZWZpbmVkIGZvciB0aGlz IHB1cnBvc2UuIElmIHlvdSB3YW50IHRvDQo+IGFkZCB0aGF0LCB0aGF0J3MgZmluZS4NCk9rLCBJ J2xsIGFkZCAiY3VycmVudC1zcGVlZCIuDQoNCj4gPiB9Ow0KPiA+IA0KPiA+ID4gPiArwqDCoMKg wqDCoMKgwqBpZiAodmFsKQ0KPiA+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg ZWFybHlfY29uc29sZV9kZXYuYmF1ZCA9IGJlMzJfdG9fY3B1KCp2YWwpOw0KPiA+ID4gPiArDQo+ ID4gPiA+IMKgwqDCoMKgwqDCoMKgwqBpZiAob3B0aW9ucykgew0KPiA+ID4gPiArwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgZXJyID0ga3N0cnRvdWwob3B0aW9ucywgMTAsICZiYXVkKTsN Cj4gPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoGlmICghZXJyKQ0KPiA+ID4g PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoGVhcmx5X2Nv bnNvbGVfZGV2LmJhdWQgPSBiYXVkOw0KPiA+ID4gDQo+ID4gPiBUaGlzIHNlZW1zIGZpbmUgdG8g ZG8gaGVyZSwgYnV0IHRoZW4gd2Ugc2hvdWxkIGFsc28gcGFyc2UgdGhlDQo+ID4gPiBvdGhlcg0K PiA+ID4gc3RhbmRhcmQgb3B0aW9ucyBoZXJlIHRvby4gQW5kIHdlIHNob3VsZCBtYWtlIHN1cmUg d2UncmUgbm90DQo+ID4gPiBkb2luZyBpdA0KPiA+ID4gdHdpY2UuDQo+ID4gDQo+ID4gSSBhZGRl ZCBvbmx5IGJhdWQgcGFyc2luZyBoZXJlIGJlY2F1c2Ugd2UgcGFyc2Ugb25seSBiYXVkIGZyb20N Cj4gPiBzdGFuZGFyZA0KPiA+IG9wdGlvbnMNCj4gPiB3aGVuIHJlZ2lzdGVyX2Vhcmx5Y29uIGlz IHVzZWQuIChzZWUgcGFyc2Vfb3B0aW9ucyBmdW5jdGlvbiB3aGljaA0KPiA+IGlzDQo+ID4gY2Fs bGVkDQo+ID4gZnJvbSByZWdpc3Rlcl9lYXJseWNvbikNCj4gPiANCj4gPiBCdXQgSSBjYW4gYWRk IG90aGVyIHN0YW5kYXJkIG9wdGlvbnMgcGFyc2luZyBoZXJlIChwcm9iYWJseSB1c2luZw0KPiA+ IHVhcnRfcGFyc2Vfb3B0aW9ucyArIHVhcnRfc2V0X29wdGlvbnMpLg0KPiA+IFdoYXQgZG8geW91 IHRoaW5rPw0KPiANCj4gVGhhdCBzZWVtcyBmaW5lIGFzIGxvbmcgYXMgY29uc29sZXMgY2FuIHN0 aWxsIGhhdmUgdGhlaXIgb3duIG9wdGlvbnMuDQpPay4NCg0KU2hvdWxkIEkgYWxzbyBhZGQgc3Rh bmRhcmQgb3B0aW9ucyBwYXJzaW5nIHRvIHJlZ2lzdGVyX2Vhcmx5Y29uPw0KKGFzIHdlIHBhcnNl IG9ubHkgYmF1ZCBmcm9tIHN0YW5kYXJkIG9wdGlvbnMgaW4gcmVnaXN0ZXJfZWFybHljb24pDQoN Cj4gUm9iDQotLSANCsKgRXVnZW5peSBQYWx0c2V2