Re: [PATCH v3 00/13] sunxi spi fixes
On 29 July 2016 at 22:22, Maxime Ripardwrote: > On Mon, Jul 25, 2016 at 10:03:14AM +0200, Michal Suchanek wrote: >> Hello, >> >> On 25 July 2016 at 09:32, Maxime Ripard >> wrote: >> > On Fri, Jun 17, 2016 at 12:34:44PM +0200, Michal Suchanek wrote: >> >> Hello, >> >> >> >> On 13 June 2016 at 21:57, Maxime Ripard >> >> wrote: >> >> > On Mon, Jun 13, 2016 at 05:46:48PM -, Michal Suchanek wrote: >> >> >> Hello, >> >> >> >> >> >> This is update of the sunxi spi patches that should give full-featured >> >> >> SPI >> >> >> driver. >> >> >> >> >> >> First three patches fix issues with the current driver and can be of >> >> >> use for >> >> >> stable kernels so adding cc for those. >> >> >> >> >> >> I merged the sun4i and sun6i driver because there several issues that >> >> >> need to >> >> >> be fixed in both separately and they are even out of sync wrt some >> >> >> fixes. >> >> >> I guess some of the merge patches can be squashed. >> >> >> >> >> >> I tested this with A10s Olinuxino Micro. I have no sun6i device so I >> >> >> cannot >> >> >> tell if that side was broken by this patchset - especially the last >> >> >> patch that >> >> >> adds DMA was afaik never tested on sun6i. >> >> > >> >> > >> >> > For the record, I'm still very much opposed to such a merge. >> >> >> >> What is the reason against the merge? I did not find the original >> >> discussion. >> > >> > I really prefer some code that is concise and clear but a little >> > duplicated over some code that shares every possible lines of code but >> > is a giant mess impossible to understand. >> >> Yes, it's been tried. In the case of this driver there is more duplication >> than differences. Also bitrot due to different variants receiving different >> updates and fixes crept in already. >> >> Adding the remap layer certainly does not make the driver easier to >> understand but it's not becoming giant mess either. > > Well, when you say that you're not quite fond of using your structure > all over the place because "it makes your eyes bleed", I wouldn't call > that a good sales pitch. That's why put dereferencing it inside the read function. It reduces the noise throughout the code and make it easier to add checks or change the remap implementation. > > But again, reg_field seems like a good solution for that. I will look at reg_field. I saw some drivers using remap layers that are way more heavyweight than looking up an integer in a table so I wanted to avoid that. Thanks Michal
Re: [PATCH v3 00/13] sunxi spi fixes
On 29 July 2016 at 22:22, Maxime Ripard wrote: > On Mon, Jul 25, 2016 at 10:03:14AM +0200, Michal Suchanek wrote: >> Hello, >> >> On 25 July 2016 at 09:32, Maxime Ripard >> wrote: >> > On Fri, Jun 17, 2016 at 12:34:44PM +0200, Michal Suchanek wrote: >> >> Hello, >> >> >> >> On 13 June 2016 at 21:57, Maxime Ripard >> >> wrote: >> >> > On Mon, Jun 13, 2016 at 05:46:48PM -, Michal Suchanek wrote: >> >> >> Hello, >> >> >> >> >> >> This is update of the sunxi spi patches that should give full-featured >> >> >> SPI >> >> >> driver. >> >> >> >> >> >> First three patches fix issues with the current driver and can be of >> >> >> use for >> >> >> stable kernels so adding cc for those. >> >> >> >> >> >> I merged the sun4i and sun6i driver because there several issues that >> >> >> need to >> >> >> be fixed in both separately and they are even out of sync wrt some >> >> >> fixes. >> >> >> I guess some of the merge patches can be squashed. >> >> >> >> >> >> I tested this with A10s Olinuxino Micro. I have no sun6i device so I >> >> >> cannot >> >> >> tell if that side was broken by this patchset - especially the last >> >> >> patch that >> >> >> adds DMA was afaik never tested on sun6i. >> >> > >> >> > >> >> > For the record, I'm still very much opposed to such a merge. >> >> >> >> What is the reason against the merge? I did not find the original >> >> discussion. >> > >> > I really prefer some code that is concise and clear but a little >> > duplicated over some code that shares every possible lines of code but >> > is a giant mess impossible to understand. >> >> Yes, it's been tried. In the case of this driver there is more duplication >> than differences. Also bitrot due to different variants receiving different >> updates and fixes crept in already. >> >> Adding the remap layer certainly does not make the driver easier to >> understand but it's not becoming giant mess either. > > Well, when you say that you're not quite fond of using your structure > all over the place because "it makes your eyes bleed", I wouldn't call > that a good sales pitch. That's why put dereferencing it inside the read function. It reduces the noise throughout the code and make it easier to add checks or change the remap implementation. > > But again, reg_field seems like a good solution for that. I will look at reg_field. I saw some drivers using remap layers that are way more heavyweight than looking up an integer in a table so I wanted to avoid that. Thanks Michal
Re: [PATCH v3 00/13] sunxi spi fixes
On Mon, Jul 25, 2016 at 10:03:14AM +0200, Michal Suchanek wrote: > Hello, > > On 25 July 2016 at 09:32, Maxime Ripard >wrote: > > On Fri, Jun 17, 2016 at 12:34:44PM +0200, Michal Suchanek wrote: > >> Hello, > >> > >> On 13 June 2016 at 21:57, Maxime Ripard > >> wrote: > >> > On Mon, Jun 13, 2016 at 05:46:48PM -, Michal Suchanek wrote: > >> >> Hello, > >> >> > >> >> This is update of the sunxi spi patches that should give full-featured > >> >> SPI > >> >> driver. > >> >> > >> >> First three patches fix issues with the current driver and can be of > >> >> use for > >> >> stable kernels so adding cc for those. > >> >> > >> >> I merged the sun4i and sun6i driver because there several issues that > >> >> need to > >> >> be fixed in both separately and they are even out of sync wrt some > >> >> fixes. > >> >> I guess some of the merge patches can be squashed. > >> >> > >> >> I tested this with A10s Olinuxino Micro. I have no sun6i device so I > >> >> cannot > >> >> tell if that side was broken by this patchset - especially the last > >> >> patch that > >> >> adds DMA was afaik never tested on sun6i. > >> > > >> > > >> > For the record, I'm still very much opposed to such a merge. > >> > >> What is the reason against the merge? I did not find the original > >> discussion. > > > > I really prefer some code that is concise and clear but a little > > duplicated over some code that shares every possible lines of code but > > is a giant mess impossible to understand. > > Yes, it's been tried. In the case of this driver there is more duplication > than differences. Also bitrot due to different variants receiving different > updates and fixes crept in already. > > Adding the remap layer certainly does not make the driver easier to > understand but it's not becoming giant mess either. Well, when you say that you're not quite fond of using your structure all over the place because "it makes your eyes bleed", I wouldn't call that a good sales pitch. But again, reg_field seems like a good solution for that. Maxime -- Maxime Ripard, Free Electrons Embedded Linux and Kernel engineering http://free-electrons.com signature.asc Description: PGP signature
Re: [PATCH v3 00/13] sunxi spi fixes
On Mon, Jul 25, 2016 at 10:03:14AM +0200, Michal Suchanek wrote: > Hello, > > On 25 July 2016 at 09:32, Maxime Ripard > wrote: > > On Fri, Jun 17, 2016 at 12:34:44PM +0200, Michal Suchanek wrote: > >> Hello, > >> > >> On 13 June 2016 at 21:57, Maxime Ripard > >> wrote: > >> > On Mon, Jun 13, 2016 at 05:46:48PM -, Michal Suchanek wrote: > >> >> Hello, > >> >> > >> >> This is update of the sunxi spi patches that should give full-featured > >> >> SPI > >> >> driver. > >> >> > >> >> First three patches fix issues with the current driver and can be of > >> >> use for > >> >> stable kernels so adding cc for those. > >> >> > >> >> I merged the sun4i and sun6i driver because there several issues that > >> >> need to > >> >> be fixed in both separately and they are even out of sync wrt some > >> >> fixes. > >> >> I guess some of the merge patches can be squashed. > >> >> > >> >> I tested this with A10s Olinuxino Micro. I have no sun6i device so I > >> >> cannot > >> >> tell if that side was broken by this patchset - especially the last > >> >> patch that > >> >> adds DMA was afaik never tested on sun6i. > >> > > >> > > >> > For the record, I'm still very much opposed to such a merge. > >> > >> What is the reason against the merge? I did not find the original > >> discussion. > > > > I really prefer some code that is concise and clear but a little > > duplicated over some code that shares every possible lines of code but > > is a giant mess impossible to understand. > > Yes, it's been tried. In the case of this driver there is more duplication > than differences. Also bitrot due to different variants receiving different > updates and fixes crept in already. > > Adding the remap layer certainly does not make the driver easier to > understand but it's not becoming giant mess either. Well, when you say that you're not quite fond of using your structure all over the place because "it makes your eyes bleed", I wouldn't call that a good sales pitch. But again, reg_field seems like a good solution for that. Maxime -- Maxime Ripard, Free Electrons Embedded Linux and Kernel engineering http://free-electrons.com signature.asc Description: PGP signature
Re: [PATCH v3 00/13] sunxi spi fixes
Hello, On 25 July 2016 at 09:32, Maxime Ripardwrote: > On Fri, Jun 17, 2016 at 12:34:44PM +0200, Michal Suchanek wrote: >> Hello, >> >> On 13 June 2016 at 21:57, Maxime Ripard >> wrote: >> > On Mon, Jun 13, 2016 at 05:46:48PM -, Michal Suchanek wrote: >> >> Hello, >> >> >> >> This is update of the sunxi spi patches that should give full-featured SPI >> >> driver. >> >> >> >> First three patches fix issues with the current driver and can be of use >> >> for >> >> stable kernels so adding cc for those. >> >> >> >> I merged the sun4i and sun6i driver because there several issues that >> >> need to >> >> be fixed in both separately and they are even out of sync wrt some fixes. >> >> I guess some of the merge patches can be squashed. >> >> >> >> I tested this with A10s Olinuxino Micro. I have no sun6i device so I >> >> cannot >> >> tell if that side was broken by this patchset - especially the last patch >> >> that >> >> adds DMA was afaik never tested on sun6i. >> > >> > >> > For the record, I'm still very much opposed to such a merge. >> >> What is the reason against the merge? I did not find the original >> discussion. > > I really prefer some code that is concise and clear but a little > duplicated over some code that shares every possible lines of code but > is a giant mess impossible to understand. Yes, it's been tried. In the case of this driver there is more duplication than differences. Also bitrot due to different variants receiving different updates and fixes crept in already. Adding the remap layer certainly does not make the driver easier to understand but it's not becoming giant mess either. > > I just came across the reg_field stuff in regmap that would allow to > partially address that problem though, there's still the bit indices > issue to overcome though. > >> I tried to rename everything in the drivers from sun4i and sun6i to >> sunxi to look at a clean diff and found about 5 differences 2 of which >> look like a bug. > > It's hard to tell without testing. I tested the merged (and separate) driver on a H3 board and found a type bug in the remap layer. I also found I can transfer at most 68 bytes without DMA although the manuals claim 128 byte FIFO. DMA transfers weren't very reliable which may or may not be a wiring issue. I have seen similar issues intermittently with SPI on A10s. Thanks Michal
Re: [PATCH v3 00/13] sunxi spi fixes
Hello, On 25 July 2016 at 09:32, Maxime Ripard wrote: > On Fri, Jun 17, 2016 at 12:34:44PM +0200, Michal Suchanek wrote: >> Hello, >> >> On 13 June 2016 at 21:57, Maxime Ripard >> wrote: >> > On Mon, Jun 13, 2016 at 05:46:48PM -, Michal Suchanek wrote: >> >> Hello, >> >> >> >> This is update of the sunxi spi patches that should give full-featured SPI >> >> driver. >> >> >> >> First three patches fix issues with the current driver and can be of use >> >> for >> >> stable kernels so adding cc for those. >> >> >> >> I merged the sun4i and sun6i driver because there several issues that >> >> need to >> >> be fixed in both separately and they are even out of sync wrt some fixes. >> >> I guess some of the merge patches can be squashed. >> >> >> >> I tested this with A10s Olinuxino Micro. I have no sun6i device so I >> >> cannot >> >> tell if that side was broken by this patchset - especially the last patch >> >> that >> >> adds DMA was afaik never tested on sun6i. >> > >> > >> > For the record, I'm still very much opposed to such a merge. >> >> What is the reason against the merge? I did not find the original >> discussion. > > I really prefer some code that is concise and clear but a little > duplicated over some code that shares every possible lines of code but > is a giant mess impossible to understand. Yes, it's been tried. In the case of this driver there is more duplication than differences. Also bitrot due to different variants receiving different updates and fixes crept in already. Adding the remap layer certainly does not make the driver easier to understand but it's not becoming giant mess either. > > I just came across the reg_field stuff in regmap that would allow to > partially address that problem though, there's still the bit indices > issue to overcome though. > >> I tried to rename everything in the drivers from sun4i and sun6i to >> sunxi to look at a clean diff and found about 5 differences 2 of which >> look like a bug. > > It's hard to tell without testing. I tested the merged (and separate) driver on a H3 board and found a type bug in the remap layer. I also found I can transfer at most 68 bytes without DMA although the manuals claim 128 byte FIFO. DMA transfers weren't very reliable which may or may not be a wiring issue. I have seen similar issues intermittently with SPI on A10s. Thanks Michal
Re: [PATCH v3 00/13] sunxi spi fixes
On Fri, Jun 17, 2016 at 12:34:44PM +0200, Michal Suchanek wrote: > Hello, > > On 13 June 2016 at 21:57, Maxime Ripard >wrote: > > On Mon, Jun 13, 2016 at 05:46:48PM -, Michal Suchanek wrote: > >> Hello, > >> > >> This is update of the sunxi spi patches that should give full-featured SPI > >> driver. > >> > >> First three patches fix issues with the current driver and can be of use > >> for > >> stable kernels so adding cc for those. > >> > >> I merged the sun4i and sun6i driver because there several issues that need > >> to > >> be fixed in both separately and they are even out of sync wrt some fixes. > >> I guess some of the merge patches can be squashed. > >> > >> I tested this with A10s Olinuxino Micro. I have no sun6i device so I cannot > >> tell if that side was broken by this patchset - especially the last patch > >> that > >> adds DMA was afaik never tested on sun6i. > > > > > > For the record, I'm still very much opposed to such a merge. > > What is the reason against the merge? I did not find the original > discussion. I really prefer some code that is concise and clear but a little duplicated over some code that shares every possible lines of code but is a giant mess impossible to understand. I just came across the reg_field stuff in regmap that would allow to partially address that problem though, there's still the bit indices issue to overcome though. > I tried to rename everything in the drivers from sun4i and sun6i to > sunxi to look at a clean diff and found about 5 differences 2 of which > look like a bug. It's hard to tell without testing. Maxime -- Maxime Ripard, Free Electrons Embedded Linux and Kernel engineering http://free-electrons.com signature.asc Description: PGP signature
Re: [PATCH v3 00/13] sunxi spi fixes
On Fri, Jun 17, 2016 at 12:34:44PM +0200, Michal Suchanek wrote: > Hello, > > On 13 June 2016 at 21:57, Maxime Ripard > wrote: > > On Mon, Jun 13, 2016 at 05:46:48PM -, Michal Suchanek wrote: > >> Hello, > >> > >> This is update of the sunxi spi patches that should give full-featured SPI > >> driver. > >> > >> First three patches fix issues with the current driver and can be of use > >> for > >> stable kernels so adding cc for those. > >> > >> I merged the sun4i and sun6i driver because there several issues that need > >> to > >> be fixed in both separately and they are even out of sync wrt some fixes. > >> I guess some of the merge patches can be squashed. > >> > >> I tested this with A10s Olinuxino Micro. I have no sun6i device so I cannot > >> tell if that side was broken by this patchset - especially the last patch > >> that > >> adds DMA was afaik never tested on sun6i. > > > > > > For the record, I'm still very much opposed to such a merge. > > What is the reason against the merge? I did not find the original > discussion. I really prefer some code that is concise and clear but a little duplicated over some code that shares every possible lines of code but is a giant mess impossible to understand. I just came across the reg_field stuff in regmap that would allow to partially address that problem though, there's still the bit indices issue to overcome though. > I tried to rename everything in the drivers from sun4i and sun6i to > sunxi to look at a clean diff and found about 5 differences 2 of which > look like a bug. It's hard to tell without testing. Maxime -- Maxime Ripard, Free Electrons Embedded Linux and Kernel engineering http://free-electrons.com signature.asc Description: PGP signature
Re: [PATCH v3 00/13] sunxi spi fixes
Hello, On 13 June 2016 at 21:57, Maxime Ripardwrote: > On Mon, Jun 13, 2016 at 05:46:48PM -, Michal Suchanek wrote: >> Hello, >> >> This is update of the sunxi spi patches that should give full-featured SPI >> driver. >> >> First three patches fix issues with the current driver and can be of use for >> stable kernels so adding cc for those. >> >> I merged the sun4i and sun6i driver because there several issues that need to >> be fixed in both separately and they are even out of sync wrt some fixes. >> I guess some of the merge patches can be squashed. >> >> I tested this with A10s Olinuxino Micro. I have no sun6i device so I cannot >> tell if that side was broken by this patchset - especially the last patch >> that >> adds DMA was afaik never tested on sun6i. > > > For the record, I'm still very much opposed to such a merge. > What is the reason against the merge? I did not find the original discussion. I tried to rename everything in the drivers from sun4i and sun6i to sunxi to look at a clean diff and found about 5 differences 2 of which look like a bug. Thanks Michal
Re: [PATCH v3 00/13] sunxi spi fixes
Hello, On 13 June 2016 at 21:57, Maxime Ripard wrote: > On Mon, Jun 13, 2016 at 05:46:48PM -, Michal Suchanek wrote: >> Hello, >> >> This is update of the sunxi spi patches that should give full-featured SPI >> driver. >> >> First three patches fix issues with the current driver and can be of use for >> stable kernels so adding cc for those. >> >> I merged the sun4i and sun6i driver because there several issues that need to >> be fixed in both separately and they are even out of sync wrt some fixes. >> I guess some of the merge patches can be squashed. >> >> I tested this with A10s Olinuxino Micro. I have no sun6i device so I cannot >> tell if that side was broken by this patchset - especially the last patch >> that >> adds DMA was afaik never tested on sun6i. > > > For the record, I'm still very much opposed to such a merge. > What is the reason against the merge? I did not find the original discussion. I tried to rename everything in the drivers from sun4i and sun6i to sunxi to look at a clean diff and found about 5 differences 2 of which look like a bug. Thanks Michal
Re: [PATCH v3 00/13] sunxi spi fixes
Hello, On 13 June 2016 at 21:57, Maxime Ripardwrote: > On Mon, Jun 13, 2016 at 05:46:48PM -, Michal Suchanek wrote: >> Hello, >> >> This is update of the sunxi spi patches that should give full-featured SPI >> driver. >> >> First three patches fix issues with the current driver and can be of use for >> stable kernels so adding cc for those. >> >> I merged the sun4i and sun6i driver because there several issues that need to >> be fixed in both separately and they are even out of sync wrt some fixes. >> I guess some of the merge patches can be squashed. >> >> I tested this with A10s Olinuxino Micro. I have no sun6i device so I cannot >> tell if that side was broken by this patchset - especially the last patch >> that >> adds DMA was afaik never tested on sun6i. > > So, you didn't run that code through checkpatch and you rewrite the > whole thing entirely without even testing it... Awesome. Aside from the DMA part this is not a rewrite. And I did run the code through checkpatch. It still gives some warnings about BUG_ON and overly long lines, sure. II don't think those are that serious or that fixing them would improve the code. Thanks Michal
Re: [PATCH v3 00/13] sunxi spi fixes
Hello, On 13 June 2016 at 21:57, Maxime Ripard wrote: > On Mon, Jun 13, 2016 at 05:46:48PM -, Michal Suchanek wrote: >> Hello, >> >> This is update of the sunxi spi patches that should give full-featured SPI >> driver. >> >> First three patches fix issues with the current driver and can be of use for >> stable kernels so adding cc for those. >> >> I merged the sun4i and sun6i driver because there several issues that need to >> be fixed in both separately and they are even out of sync wrt some fixes. >> I guess some of the merge patches can be squashed. >> >> I tested this with A10s Olinuxino Micro. I have no sun6i device so I cannot >> tell if that side was broken by this patchset - especially the last patch >> that >> adds DMA was afaik never tested on sun6i. > > So, you didn't run that code through checkpatch and you rewrite the > whole thing entirely without even testing it... Awesome. Aside from the DMA part this is not a rewrite. And I did run the code through checkpatch. It still gives some warnings about BUG_ON and overly long lines, sure. II don't think those are that serious or that fixing them would improve the code. Thanks Michal
Re: [PATCH v3 00/13] sunxi spi fixes
On Mon, Jun 13, 2016 at 05:46:48PM -, Michal Suchanek wrote: > Hello, > > This is update of the sunxi spi patches that should give full-featured SPI > driver. > > First three patches fix issues with the current driver and can be of use for > stable kernels so adding cc for those. > > I merged the sun4i and sun6i driver because there several issues that need to > be fixed in both separately and they are even out of sync wrt some fixes. > I guess some of the merge patches can be squashed. > > I tested this with A10s Olinuxino Micro. I have no sun6i device so I cannot > tell if that side was broken by this patchset - especially the last patch that > adds DMA was afaik never tested on sun6i. So, you didn't run that code through checkpatch and you rewrite the whole thing entirely without even testing it... Awesome. For the record, I'm still very much opposed to such a merge. The first fixes are very welcome though, can and should go in. Maxime -- Maxime Ripard, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com signature.asc Description: PGP signature
Re: [PATCH v3 00/13] sunxi spi fixes
On Mon, Jun 13, 2016 at 05:46:48PM -, Michal Suchanek wrote: > Hello, > > This is update of the sunxi spi patches that should give full-featured SPI > driver. > > First three patches fix issues with the current driver and can be of use for > stable kernels so adding cc for those. > > I merged the sun4i and sun6i driver because there several issues that need to > be fixed in both separately and they are even out of sync wrt some fixes. > I guess some of the merge patches can be squashed. > > I tested this with A10s Olinuxino Micro. I have no sun6i device so I cannot > tell if that side was broken by this patchset - especially the last patch that > adds DMA was afaik never tested on sun6i. So, you didn't run that code through checkpatch and you rewrite the whole thing entirely without even testing it... Awesome. For the record, I'm still very much opposed to such a merge. The first fixes are very welcome though, can and should go in. Maxime -- Maxime Ripard, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com signature.asc Description: PGP signature