* RE: fsl-dcu not works on latest "drm-next" [not found] <HE1PR04MB105158F9CB2CEC73E6B5F5E9EC7A0@HE1PR04MB1051.eurprd04.prod.outlook.com> @ 2016-05-25 2:14 ` Meng Yi 2016-05-25 6:20 ` Stefan Agner 2016-05-25 9:18 ` Mark Brown 0 siblings, 2 replies; 22+ messages in thread From: Meng Yi @ 2016-05-25 2:14 UTC (permalink / raw) To: dri-devel, David Airlie, Stefan Agner, airlied, linux-kernel, Mark Brown I found that its regmap endianness issue, so I want to replace the "regmap". Hi Stefan, Do you have any idea about this? Hi Mark, Regmap endianness issue had caused some other drivers not work, like SPI etc. Or this is fixed and I just don't know? Thanks, Meng --------------------------------------------------------------------- From: Meng Yi Sent: Tuesday, May 03, 2016 5:27 PM To: 'dri-devel@lists.freedesktop.org' <dri-devel@lists.freedesktop.org>; David Airlie <airlied@linux.ie>; 'Stefan Agner' <stefan@agner.ch>; 'airlied@redhat.com' <airlied@redhat.com> Subject: fsl-dcu not works on latest "drm-next" Hi, I just tested the latest drm-next branch on Freescale/NXP ls1021a-twr, and got some log below. And fsl-dcu not works. Since "drm-next" merged some branch , use git bisect had some problem , so I manually checked out that "fsl-dcu" works at d761701c55a99598477f3cb25c03d939a7711e74 And not works now. some log below: -------------------------------------------------------------------- [drm] Initialized drm 1.1.0 20060810 panel supply power not found, using dummy regulator [drm] Supports vblank timestamp caching Rev 2 (21.10.2013). [drm] No driver support for vblank timestamp query. ------------[ cut here ]------------ WARNING: CPU: 0 PID: 1 at drivers/gpu/drm/drm_atomic_helper.c:1106 drm_atomic_helper_wait_for_vblanks+0xff/0x124 [CRTC:24] vblank wait timed out Modules linked in: CPU: 0 PID: 1 Comm: swapper/0 Not tainted 4.6.0-rc3+ #189 Hardware name: Freescale LS1021A [<80209a7b>] (unwind_backtrace) from [<8020755f>] (show_stack+0xb/0xc) [<8020755f>] (show_stack) from [<803676a3>] (dump_stack+0x5b/0x74) [<803676a3>] (dump_stack) from [<80211a37>] (__warn+0x87/0xb0) [<80211a37>] (__warn) from [<80211a7f>] (warn_slowpath_fmt+0x1f/0x28) [<80211a7f>] (warn_slowpath_fmt) from [<803ca887>] (drm_atomic_helper_wait_for_vblanks+0xff/0x124) [<803ca887>] (drm_atomic_helper_wait_for_vblanks) from [<803cb307>] (drm_atomic_helper_commit+0x43/0x5c) [<803cb307>] (drm_atomic_helper_commit) from [<803cbe51>] (restore_fbdev_mode+0xad/0x16e) [<803cbe51>] (restore_fbdev_mode) from [<803ccf4d>] (drm_fb_helper_restore_fbdev_mode_unlocked+0x19/0x44) [<803ccf4d>] (drm_fb_helper_restore_fbdev_mode_unlocked) from [<803ccf9d>] (drm_fb_helper_set_par+0x25/0x38) [<803ccf9d>] (drm_fb_helper_set_par) from [<80397451>] (fbcon_init+0x1fd/0x2c0) [<80397451>] (fbcon_init) from [<803b6051>] (visual_init+0x71/0xb4) [<803b6051>] (visual_init) from [<803b6f95>] (do_bind_con_driver+0x105/0x1e4) [<803b6f95>] (do_bind_con_driver) from [<803b7287>] (do_take_over_console+0xcf/0x108) [<803b7287>] (do_take_over_console) from [<80397549>] (do_fbcon_takeover+0x35/0x7c) [<80397549>] (do_fbcon_takeover) from [<802229db>] (notifier_call_chain+0x23/0x38) [<802229db>] (notifier_call_chain) from [<80222b63>] (__blocking_notifier_call_chain+0x27/0x36) [<80222b63>] (__blocking_notifier_call_chain) from [<80222b81>] (blocking_notifier_call_chain+0xf/0x14) [<80222b81>] (blocking_notifier_call_chain) from [<8039bdf9>] (register_framebuffer+0x179/0x1d0) [<8039bdf9>] (register_framebuffer) from [<803cd15f>] (drm_fb_helper_initial_config+0x1af/0x200) [<803cd15f>] (drm_fb_helper_initial_config) from [<803cd593>] (drm_fbdev_cma_init+0x67/0xa8) [<803cd593>] (drm_fbdev_cma_init) from [<803e2269>] (fsl_dcu_fbdev_init+0x11/0x14) [<803e2269>] (fsl_dcu_fbdev_init) from [<803e18eb>] (fsl_dcu_load+0x81/0xba) [<803e18eb>] (fsl_dcu_load) from [<803d2d51>] (drm_dev_register+0x3d/0x68) [<803d2d51>] (drm_dev_register) from [<803e1ab7>] (fsl_dcu_drm_probe+0x193/0x240) [<803e1ab7>] (fsl_dcu_drm_probe) from [<803e6d2d>] (platform_drv_probe+0x33/0x62) [<803e6d2d>] (platform_drv_probe) from [<803e5e7d>] (driver_probe_device+0xb9/0x1a4) [<803e5e7d>] (driver_probe_device) from [<803e5fad>] (__driver_attach+0x45/0x58) [<803e5fad>] (__driver_attach) from [<803e4eeb>] (bus_for_each_dev+0x3b/0x46) [<803e4eeb>] (bus_for_each_dev) from [<803e5897>] (bus_add_driver+0x7b/0x138) [<803e5897>] (bus_add_driver) from [<803e6469>] (driver_register+0x4b/0x76) [<803e6469>] (driver_register) from [<80201517>] (do_one_initcall+0xb3/0x138) [<80201517>] (do_one_initcall) from [<80800a61>] (kernel_init_freeable+0xd1/0x168) [<80800a61>] (kernel_init_freeable) from [<80558d13>] (kernel_init+0x7/0xb4) [<80558d13>] (kernel_init) from [<80205261>] (ret_from_fork+0x11/0x30) ---[ end trace b7946726c4e290c4 ]--- Console: switching to colour frame buffer device 60x34 fsl-dcu 2ce0000.dcu: fb0: frame buffer device [drm] Initialized fsl-dcu-drm 1.1.0 20160425 on minor 0 And full log in the attachment. does anybody have any idea about this? Best Regards, Meng Yi ^ permalink raw reply [flat|nested] 22+ messages in thread
* RE: fsl-dcu not works on latest "drm-next" 2016-05-25 2:14 ` fsl-dcu not works on latest "drm-next" Meng Yi @ 2016-05-25 6:20 ` Stefan Agner 2016-05-25 8:32 ` Alexander Stein 2016-05-25 9:18 ` Mark Brown 1 sibling, 1 reply; 22+ messages in thread From: Stefan Agner @ 2016-05-25 6:20 UTC (permalink / raw) To: Meng Yi Cc: dri-devel, David Airlie, airlied, linux-kernel, Mark Brown, alexander.stein On 2016-05-24 19:14, Meng Yi wrote: > I found that its regmap endianness issue, so I want to replace the "regmap". Hm, replace with what? Note that we need some kind of endianness convertion since the IP is big endian on LS1021a and little endian on Vybrid (vf610). Is it maybe just an issue with regmap/the big-endian property in the device tree? Maybe this thread is interesting for you: https://lkml.org/lkml/2016/3/23/233 [adding Alexander Stein, he might be able to tell more about this issue] -- Stefan > > Hi Stefan, > Do you have any idea about this? > > Hi Mark, > Regmap endianness issue had caused some other drivers not work, like SPI etc. > Or this is fixed and I just don't know? > > Thanks, > Meng > > --------------------------------------------------------------------- > From: Meng Yi > Sent: Tuesday, May 03, 2016 5:27 PM > To: 'dri-devel@lists.freedesktop.org' > <dri-devel@lists.freedesktop.org>; David Airlie <airlied@linux.ie>; > 'Stefan Agner' <stefan@agner.ch>; 'airlied@redhat.com' > <airlied@redhat.com> > Subject: fsl-dcu not works on latest "drm-next" > > Hi, > > > I just tested the latest drm-next branch on Freescale/NXP ls1021a-twr, > and got some log below. And fsl-dcu not works. > > Since "drm-next" merged some branch , use git bisect had some problem , > > so I manually checked out that "fsl-dcu" works at > d761701c55a99598477f3cb25c03d939a7711e74 > > And not works now. some log below: > > -------------------------------------------------------------------- > > [drm] Initialized drm 1.1.0 20060810 > panel supply power not found, using dummy regulator > [drm] Supports vblank timestamp caching Rev 2 (21.10.2013). > [drm] No driver support for vblank timestamp query. > ------------[ cut here ]------------ > WARNING: CPU: 0 PID: 1 at drivers/gpu/drm/drm_atomic_helper.c:1106 > drm_atomic_helper_wait_for_vblanks+0xff/0x124 > [CRTC:24] vblank wait timed out > Modules linked in: > CPU: 0 PID: 1 Comm: swapper/0 Not tainted 4.6.0-rc3+ #189 > Hardware name: Freescale LS1021A > [<80209a7b>] (unwind_backtrace) from [<8020755f>] (show_stack+0xb/0xc) > [<8020755f>] (show_stack) from [<803676a3>] (dump_stack+0x5b/0x74) > [<803676a3>] (dump_stack) from [<80211a37>] (__warn+0x87/0xb0) > [<80211a37>] (__warn) from [<80211a7f>] (warn_slowpath_fmt+0x1f/0x28) > [<80211a7f>] (warn_slowpath_fmt) from [<803ca887>] > (drm_atomic_helper_wait_for_vblanks+0xff/0x124) > [<803ca887>] (drm_atomic_helper_wait_for_vblanks) from [<803cb307>] > (drm_atomic_helper_commit+0x43/0x5c) > [<803cb307>] (drm_atomic_helper_commit) from [<803cbe51>] > (restore_fbdev_mode+0xad/0x16e) > [<803cbe51>] (restore_fbdev_mode) from [<803ccf4d>] > (drm_fb_helper_restore_fbdev_mode_unlocked+0x19/0x44) > [<803ccf4d>] (drm_fb_helper_restore_fbdev_mode_unlocked) from > [<803ccf9d>] (drm_fb_helper_set_par+0x25/0x38) > [<803ccf9d>] (drm_fb_helper_set_par) from [<80397451>] (fbcon_init+0x1fd/0x2c0) > [<80397451>] (fbcon_init) from [<803b6051>] (visual_init+0x71/0xb4) > [<803b6051>] (visual_init) from [<803b6f95>] (do_bind_con_driver+0x105/0x1e4) > [<803b6f95>] (do_bind_con_driver) from [<803b7287>] > (do_take_over_console+0xcf/0x108) > [<803b7287>] (do_take_over_console) from [<80397549>] > (do_fbcon_takeover+0x35/0x7c) > [<80397549>] (do_fbcon_takeover) from [<802229db>] > (notifier_call_chain+0x23/0x38) > [<802229db>] (notifier_call_chain) from [<80222b63>] > (__blocking_notifier_call_chain+0x27/0x36) > [<80222b63>] (__blocking_notifier_call_chain) from [<80222b81>] > (blocking_notifier_call_chain+0xf/0x14) > [<80222b81>] (blocking_notifier_call_chain) from [<8039bdf9>] > (register_framebuffer+0x179/0x1d0) > [<8039bdf9>] (register_framebuffer) from [<803cd15f>] > (drm_fb_helper_initial_config+0x1af/0x200) > [<803cd15f>] (drm_fb_helper_initial_config) from [<803cd593>] > (drm_fbdev_cma_init+0x67/0xa8) > [<803cd593>] (drm_fbdev_cma_init) from [<803e2269>] > (fsl_dcu_fbdev_init+0x11/0x14) > [<803e2269>] (fsl_dcu_fbdev_init) from [<803e18eb>] (fsl_dcu_load+0x81/0xba) > [<803e18eb>] (fsl_dcu_load) from [<803d2d51>] (drm_dev_register+0x3d/0x68) > [<803d2d51>] (drm_dev_register) from [<803e1ab7>] > (fsl_dcu_drm_probe+0x193/0x240) > [<803e1ab7>] (fsl_dcu_drm_probe) from [<803e6d2d>] > (platform_drv_probe+0x33/0x62) > [<803e6d2d>] (platform_drv_probe) from [<803e5e7d>] > (driver_probe_device+0xb9/0x1a4) > [<803e5e7d>] (driver_probe_device) from [<803e5fad>] (__driver_attach+0x45/0x58) > [<803e5fad>] (__driver_attach) from [<803e4eeb>] (bus_for_each_dev+0x3b/0x46) > [<803e4eeb>] (bus_for_each_dev) from [<803e5897>] (bus_add_driver+0x7b/0x138) > [<803e5897>] (bus_add_driver) from [<803e6469>] (driver_register+0x4b/0x76) > [<803e6469>] (driver_register) from [<80201517>] (do_one_initcall+0xb3/0x138) > [<80201517>] (do_one_initcall) from [<80800a61>] > (kernel_init_freeable+0xd1/0x168) > [<80800a61>] (kernel_init_freeable) from [<80558d13>] (kernel_init+0x7/0xb4) > [<80558d13>] (kernel_init) from [<80205261>] (ret_from_fork+0x11/0x30) > ---[ end trace b7946726c4e290c4 ]--- > Console: switching to colour frame buffer device 60x34 > fsl-dcu 2ce0000.dcu: fb0: frame buffer device > [drm] Initialized fsl-dcu-drm 1.1.0 20160425 on minor 0 > > > And full log in the attachment. > > does anybody have any idea about this? > > Best Regards, > Meng Yi ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: fsl-dcu not works on latest "drm-next" 2016-05-25 6:20 ` Stefan Agner @ 2016-05-25 8:32 ` Alexander Stein 2016-05-25 8:58 ` Meng Yi 0 siblings, 1 reply; 22+ messages in thread From: Alexander Stein @ 2016-05-25 8:32 UTC (permalink / raw) To: Stefan Agner Cc: Meng Yi, dri-devel, David Airlie, airlied, linux-kernel, Mark Brown On Tuesday 24 May 2016 23:20:02, Stefan Agner wrote: > On 2016-05-24 19:14, Meng Yi wrote: > > I found that its regmap endianness issue, so I want to replace the > > "regmap". > Hm, replace with what? Note that we need some kind of endianness > convertion since the IP is big endian on LS1021a and little endian on > Vybrid (vf610). Yep, regmap is required and was broken meanwhile but should be fixed now. See linked lkml post. > Is it maybe just an issue with regmap/the big-endian property in the > device tree? Maybe this thread is interesting for you: > https://lkml.org/lkml/2016/3/23/233 AFAICT device tree should not been changed here. The "big-endian" property was there fromt he beginning. > > I just tested the latest drm-next branch on Freescale/NXP ls1021a-twr, > > and got some log below. And fsl-dcu not works. > > > > Since "drm-next" merged some branch , use git bisect had some problem , > > > > so I manually checked out that "fsl-dcu" works at > > d761701c55a99598477f3cb25c03d939a7711e74 > > > > And not works now. some log below: Which commit actually broke your kernel? And where to fetch it from? Is your problem really caused by regmap? Best regards, Alexander ^ permalink raw reply [flat|nested] 22+ messages in thread
* RE: fsl-dcu not works on latest "drm-next" 2016-05-25 8:32 ` Alexander Stein @ 2016-05-25 8:58 ` Meng Yi 2016-05-25 9:57 ` Alexander Stein 0 siblings, 1 reply; 22+ messages in thread From: Meng Yi @ 2016-05-25 8:58 UTC (permalink / raw) To: Alexander Stein, Stefan Agner Cc: dri-devel, David Airlie, airlied, linux-kernel, Mark Brown Hi Alexander, > From: Alexander Stein [mailto:alexander.stein@systec-electronic.com] > Sent: Wednesday, May 25, 2016 4:32 PM > To: Stefan Agner <stefan@agner.ch> > Cc: Meng Yi <meng.yi@nxp.com>; dri-devel@lists.freedesktop.org; David Airlie > <airlied@linux.ie>; airlied@redhat.com; linux-kernel@vger.kernel.org; Mark > Brown <broonie@kernel.org> > Subject: Re: fsl-dcu not works on latest "drm-next" > > On Tuesday 24 May 2016 23:20:02, Stefan Agner wrote: > > On 2016-05-24 19:14, Meng Yi wrote: > > > I found that its regmap endianness issue, so I want to replace the > > > "regmap". > > Hm, replace with what? Note that we need some kind of endianness > > convertion since the IP is big endian on LS1021a and little endian on > > Vybrid (vf610). > > Yep, regmap is required and was broken meanwhile but should be fixed now. > See linked lkml post. > > > Is it maybe just an issue with regmap/the big-endian property in the > > device tree? Maybe this thread is interesting for you: > > https://lkml.org/lkml/2016/3/23/233 > > AFAICT device tree should not been changed here. The "big-endian" property > was there fromt he beginning. > > > > I just tested the latest drm-next branch on Freescale/NXP > > > ls1021a-twr, and got some log below. And fsl-dcu not works. > > > > > > Since "drm-next" merged some branch , use git bisect had some > > > problem , > > > > > > so I manually checked out that "fsl-dcu" works at > > > d761701c55a99598477f3cb25c03d939a7711e74 > > > > > > And not works now. some log below: > > Which commit actually broke your kernel? And where to fetch it from? Is your > problem really caused by regmap? Since there are lots of merge commit, I had manually debugged that issue. And yes, it is caused by regmap. I fetched the kernel from git://people.freedesktop.org/~airlied/linux Best Regards, Meng Yi ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: fsl-dcu not works on latest "drm-next" 2016-05-25 8:58 ` Meng Yi @ 2016-05-25 9:57 ` Alexander Stein 2016-05-25 10:25 ` Meng Yi 0 siblings, 1 reply; 22+ messages in thread From: Alexander Stein @ 2016-05-25 9:57 UTC (permalink / raw) To: Meng Yi Cc: Stefan Agner, dri-devel, David Airlie, airlied, linux-kernel, Mark Brown Hi, On Wednesday 25 May 2016 08:58:31, Meng Yi wrote: > > On Tuesday 24 May 2016 23:20:02, Stefan Agner wrote: > > > On 2016-05-24 19:14, Meng Yi wrote: > > > > I found that its regmap endianness issue, so I want to replace the > > > > "regmap". > > > > > > Hm, replace with what? Note that we need some kind of endianness > > > convertion since the IP is big endian on LS1021a and little endian on > > > Vybrid (vf610). > > > > Yep, regmap is required and was broken meanwhile but should be fixed now. > > See linked lkml post. > > > > > Is it maybe just an issue with regmap/the big-endian property in the > > > device tree? Maybe this thread is interesting for you: > > > https://lkml.org/lkml/2016/3/23/233 > > > > AFAICT device tree should not been changed here. The "big-endian" property > > was there fromt he beginning. > > > > > > I just tested the latest drm-next branch on Freescale/NXP > > > > ls1021a-twr, and got some log below. And fsl-dcu not works. > > > > > > > > Since "drm-next" merged some branch , use git bisect had some > > > > problem , > > > > > > > > so I manually checked out that "fsl-dcu" works at > > > > d761701c55a99598477f3cb25c03d939a7711e74 > > > > > > And not works now. some log below: > > Which commit actually broke your kernel? And where to fetch it from? Is > > your problem really caused by regmap? > > Since there are lots of merge commit, I had manually debugged that issue. > And yes, it is caused by regmap. I fetched the kernel from > git://people.freedesktop.org/~airlied/linux Commit d761701c55a99598477f3cb25c03d939a7711e74 only has one child commit in my repo. Both touch only i915 related things. Please do a proper bisect and name the offending commit. On which commit you got that backtrace BTW? >From your backtrace I can't see anything related to regmap. Best regards, Alexander ^ permalink raw reply [flat|nested] 22+ messages in thread
* RE: fsl-dcu not works on latest "drm-next" 2016-05-25 9:57 ` Alexander Stein @ 2016-05-25 10:25 ` Meng Yi 2016-05-25 12:16 ` Alexander Stein 0 siblings, 1 reply; 22+ messages in thread From: Meng Yi @ 2016-05-25 10:25 UTC (permalink / raw) To: Alexander Stein Cc: Stefan Agner, dri-devel, David Airlie, airlied, linux-kernel, Mark Brown Hi Alexander, Thanks for your reply. > Commit d761701c55a99598477f3cb25c03d939a7711e74 only has one child > commit in my repo. Both touch only i915 related things. Please do a proper > bisect and name the offending commit. On which commit you got that > backtrace BTW? > From your backtrace I can't see anything related to regmap. > It is weird that using bisect, for the commit log is not linear. I mean a newer date commit may be merged before an older date commit, when jump to that older date commit, the newer one will be lost, even though it is merged before older one. So, I think it's difficult to use git bisect. " d761701c55a99598477f3cb25c03d939a7711e74 " is just an older one, I mean between this commit and the next commit, maybe lots of commits are lost. So, it looks like this commit have nothing to do with the problem. According to the backtrace, looks like the vblank interrupt is not happen or handled. Then I found the irq is installed successfully, so the problem seems like the vblank irq is not properly setup. And here is the point , irq initia, irq handler and timing control code are using regmap. I read out the value of relevant register using "CodeWarrior TAP", find that endianness is not right. Then I changed endianness of the value to be written that using " regmap_write" . It works. But "regmap_update_bits" still have the problem. I had checked log of regmap, and didn't find which commit caused that. Since I am not familiar with regmap, hope you can give me some advice. Thanks, Best Regards, Meng Yi ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: fsl-dcu not works on latest "drm-next" 2016-05-25 10:25 ` Meng Yi @ 2016-05-25 12:16 ` Alexander Stein 2016-05-26 8:18 ` Meng Yi 0 siblings, 1 reply; 22+ messages in thread From: Alexander Stein @ 2016-05-25 12:16 UTC (permalink / raw) To: Meng Yi Cc: Stefan Agner, dri-devel, David Airlie, airlied, linux-kernel, Mark Brown On Wednesday 25 May 2016 10:25:29, Meng Yi wrote: > Hi Alexander, > Thanks for your reply. > > > Commit d761701c55a99598477f3cb25c03d939a7711e74 only has one child > > commit in my repo. Both touch only i915 related things. Please do a proper > > bisect and name the offending commit. On which commit you got that > > backtrace BTW? > > From your backtrace I can't see anything related to regmap. > > It is weird that using bisect, for the commit log is not linear. > I mean a newer date commit may be merged before an older date commit, when > jump to that older date commit, the newer one will be lost, even though it > is merged before older one. So, I think it's difficult to use git bisect. > " d761701c55a99598477f3cb25c03d939a7711e74 " is just an older one, I mean > between this commit and the next commit, maybe lots of commits are lost. > So, it looks like this commit have nothing to do with the problem. Why are commits lost? The order of commit dates is not straightforward, yes, but that's not a problem at all. > According to the backtrace, looks like the vblank interrupt is not happen or > handled. Then I found the irq is installed successfully, so the problem > seems like the vblank irq is not properly setup. And here is the point , > irq initia, irq handler and timing control code are using regmap. >From your backtrace I guess wait_event_timeout is called in some atomic context (might_sleep(); is called inside wait_event_timeout). This has nothing to do with regmap. > I read out the value of relevant register using "CodeWarrior TAP", find that > endianness is not right. > > Then I changed endianness of the value to be written that using " > regmap_write" . It works. But "regmap_update_bits" still have the problem. > > I had checked log of regmap, and didn't find which commit caused that. The inital problem came up with 922a9f936e40001f9b921379aab90047d5990923 ("regmap: mmio: Convert to regmap_bus and fix accessor usage"). The commits 9f9f8b863ad130ec0c25f378bdbad64ba71291de, 4f7d6dd4df8b388e2056c89b528254cdd79dea2a and 0dbdb76c0ca8e7caf27c9a210f64c4359e2974a4 tried to fix that. With those I could successfully probe DCU. Best regards, Alexander ^ permalink raw reply [flat|nested] 22+ messages in thread
* RE: fsl-dcu not works on latest "drm-next" 2016-05-25 12:16 ` Alexander Stein @ 2016-05-26 8:18 ` Meng Yi 2016-05-26 9:11 ` Alexander Stein 0 siblings, 1 reply; 22+ messages in thread From: Meng Yi @ 2016-05-26 8:18 UTC (permalink / raw) To: Alexander Stein Cc: Stefan Agner, dri-devel, David Airlie, airlied, linux-kernel, Mark Brown Hi Alexander, > From your backtrace I guess wait_event_timeout is called in some atomic > context (might_sleep(); is called inside wait_event_timeout). This has nothing > to do with regmap. > Here is my view of point: Since IRQ setup codes using regmap, and which is not setup properly, so wait_event_timeout. > > The inital problem came up with 922a9f936e40001f9b921379aab90047d5990923 > ("regmap: mmio: Convert to regmap_bus and fix accessor usage"). The > commits 9f9f8b863ad130ec0c25f378bdbad64ba71291de, > 4f7d6dd4df8b388e2056c89b528254cdd79dea2a and > 0dbdb76c0ca8e7caf27c9a210f64c4359e2974a4 tried to fix that. With those I > could successfully probe DCU. Thanks for your information. DCU was able to be probed without those patches, and DCU still not works with those patches. And here is my DTS and regmap_config, Specified "big-endian" in DTS, dcu: dcu@2ce0000 { compatible = "fsl,ls1021a-dcu"; reg = <0x0 0x2ce0000 0x0 0x10000>; interrupts = <GIC_SPI 172 IRQ_TYPE_LEVEL_HIGH>; clocks = <&platform_clk 0>; clock-names = "dcu"; big-endian; status = "disabled"; }; I can't tell the difference of "reg_format_endian" and " val_format_endian ", so I had tried four conditions. static const struct regmap_config fsl_dcu_regmap_config = { .reg_bits = 32, .reg_stride = 4, .val_bits = 32, .cache_type = REGCACHE_RBTREE, // .reg_format_endian = REGMAP_ENDIAN_BIG, // .val_format_endian = REGMAP_ENDIAN_BIG, .volatile_reg = fsl_dcu_drm_is_volatile_reg, }; Thanks, Best Regards, Meng Yi ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: fsl-dcu not works on latest "drm-next" 2016-05-26 8:18 ` Meng Yi @ 2016-05-26 9:11 ` Alexander Stein 0 siblings, 0 replies; 22+ messages in thread From: Alexander Stein @ 2016-05-26 9:11 UTC (permalink / raw) To: Meng Yi Cc: Stefan Agner, dri-devel, David Airlie, airlied, linux-kernel, Mark Brown On Thursday 26 May 2016 08:18:30, Meng Yi wrote: > Hi Alexander, > > > From your backtrace I guess wait_event_timeout is called in some atomic > > context (might_sleep(); is called inside wait_event_timeout). This has > > nothing to do with regmap. > > Here is my view of point: > Since IRQ setup codes using regmap, and which is not setup properly, so > wait_event_timeout. > > The inital problem came up with 922a9f936e40001f9b921379aab90047d5990923 > > ("regmap: mmio: Convert to regmap_bus and fix accessor usage"). The > > commits 9f9f8b863ad130ec0c25f378bdbad64ba71291de, > > 4f7d6dd4df8b388e2056c89b528254cdd79dea2a and > > 0dbdb76c0ca8e7caf27c9a210f64c4359e2974a4 tried to fix that. With those I > > could successfully probe DCU. > > Thanks for your information. > DCU was able to be probed without those patches, and DCU still not works > with those patches. Yes, sure. DCU was probed fine before 922a9f936e40001f9b921379aab90047d5990923. But this introduced a regression for DCU and also DSPI on LS1021A which got fixed by the other 3 named commits. I didn't try to use DCU for a while, maybe there is another regression. Please try reverting 2ed94f6fde066fb37bc3553b786edb805561699e If that helps the device tree probing does not work in regmap_get_val_endian Best regards, Alexander ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: fsl-dcu not works on latest "drm-next" 2016-05-25 2:14 ` fsl-dcu not works on latest "drm-next" Meng Yi 2016-05-25 6:20 ` Stefan Agner @ 2016-05-25 9:18 ` Mark Brown 2016-05-25 9:59 ` Meng Yi 1 sibling, 1 reply; 22+ messages in thread From: Mark Brown @ 2016-05-25 9:18 UTC (permalink / raw) To: Meng Yi; +Cc: dri-devel, David Airlie, Stefan Agner, airlied, linux-kernel [-- Attachment #1: Type: text/plain, Size: 876 bytes --] On Wed, May 25, 2016 at 02:14:09AM +0000, Meng Yi wrote: Please don't top post, reply in line with needed context. This allows readers to readily follow the flow of conversation and understand what you are talking about and also helps ensure that everything in the discussion is being addressed. > Regmap endianness issue had caused some other drivers not work, like SPI etc. > Or this is fixed and I just don't know? Without any description of the problem it is difficult to comment. There were some drivers that were abusing the API by hacking round things that need fixing (the main one I've seen is reporting things as big endian instead of native endian to cause two layers of translation to kick in) and one that was trying to use regmap to represent something that just fundamentally wasn't a regmap so *any* change in regmap internals was risky. [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 473 bytes --] ^ permalink raw reply [flat|nested] 22+ messages in thread
* RE: fsl-dcu not works on latest "drm-next" 2016-05-25 9:18 ` Mark Brown @ 2016-05-25 9:59 ` Meng Yi 2016-05-25 10:41 ` Mark Brown 0 siblings, 1 reply; 22+ messages in thread From: Meng Yi @ 2016-05-25 9:59 UTC (permalink / raw) To: Mark Brown; +Cc: dri-devel, David Airlie, Stefan Agner, airlied, linux-kernel Hi Mark, > > Without any description of the problem it is difficult to comment. > There were some drivers that were abusing the API by hacking round things > that need fixing (the main one I've seen is reporting things as big endian > instead of native endian to cause two layers of translation to kick in) and one > that was trying to use regmap to represent something that just fundamentally > wasn't a regmap so *any* change in regmap internals was risky. I was testing HDMI patches on latest "drm-next" branch, and found that it is not work. And then I found the base tree was not working too. Then I debugged the base tree. I read out the value of relevant register using "CodeWarrior TAP", find that endianness is not right. Then I changed endianness of the value to be written that using " regmap_write" . It works. But "regmap_update_bits" still have the problem. I had checked log of regmap, and didn't find which commit caused that. I am not familiar with regmap, can you give some advices? Thanks, Best Regards, Meng Yi ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: fsl-dcu not works on latest "drm-next" 2016-05-25 9:59 ` Meng Yi @ 2016-05-25 10:41 ` Mark Brown 2016-05-26 8:23 ` Meng Yi 0 siblings, 1 reply; 22+ messages in thread From: Mark Brown @ 2016-05-25 10:41 UTC (permalink / raw) To: Meng Yi; +Cc: dri-devel, David Airlie, Stefan Agner, airlied, linux-kernel [-- Attachment #1: Type: text/plain, Size: 981 bytes --] On Wed, May 25, 2016 at 09:59:39AM +0000, Meng Yi wrote: Please fix your mail client to word wrap within paragraphs at something substantially less than 80 columns. Doing this makes your messages much easier to read and reply to. > I read out the value of relevant register using "CodeWarrior TAP", find that endianness is not right. > Then I changed endianness of the value to be written that using " regmap_write" . It works. > But "regmap_update_bits" still have the problem. > I had checked log of regmap, and didn't find which commit caused that. You've not specifically described the problem here - what are the endiannesses of both the CPU and the device you're talking to? What specifically is the endianess problem you are seeing, what are you seeing and what do you expect to see? > I am not familiar with regmap, can you give some advices? Is the device described in the DT or regmap_config as having the endianess that it actually has? [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 473 bytes --] ^ permalink raw reply [flat|nested] 22+ messages in thread
* RE: fsl-dcu not works on latest "drm-next" 2016-05-25 10:41 ` Mark Brown @ 2016-05-26 8:23 ` Meng Yi 2016-05-26 9:11 ` Alexander Stein 0 siblings, 1 reply; 22+ messages in thread From: Meng Yi @ 2016-05-26 8:23 UTC (permalink / raw) To: Mark Brown; +Cc: dri-devel, David Airlie, Stefan Agner, airlied, linux-kernel Hi Mark, > You've not specifically described the problem here - what are the endiannesses > of both the CPU and the device you're talking to? What specifically is the > endianess problem you are seeing, what are you seeing and what do you > expect to see? > The CPU is little endian and the device DCU is big endian, specified big-endian in DTS, And here is my DTS and regmap_config, Specified "big-endian" in DTS, dcu: dcu@2ce0000 { compatible = "fsl,ls1021a-dcu"; reg = <0x0 0x2ce0000 0x0 0x10000>; interrupts = <GIC_SPI 172 IRQ_TYPE_LEVEL_HIGH>; clocks = <&platform_clk 0>; clock-names = "dcu"; big-endian; status = "disabled"; }; I can't tell the difference of "reg_format_endian" and " val_format_endian ", so I had tried four conditions. And all failed. static const struct regmap_config fsl_dcu_regmap_config = { .reg_bits = 32, .reg_stride = 4, .val_bits = 32, .cache_type = REGCACHE_RBTREE, // .reg_format_endian = REGMAP_ENDIAN_BIG, // .val_format_endian = REGMAP_ENDIAN_BIG, .volatile_reg = fsl_dcu_drm_is_volatile_reg, }; I expect that regmap write as big endian, and I am seeing is regmap write as little endian. Thanks, Best Regards, Meng Yi ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: fsl-dcu not works on latest "drm-next" 2016-05-26 8:23 ` Meng Yi @ 2016-05-26 9:11 ` Alexander Stein 2016-05-27 5:54 ` Stefan Agner 2016-06-03 22:52 ` Stefan Agner 0 siblings, 2 replies; 22+ messages in thread From: Alexander Stein @ 2016-05-26 9:11 UTC (permalink / raw) To: linux-kernel Cc: Meng Yi, Mark Brown, dri-devel, David Airlie, Stefan Agner, airlied On Thursday 26 May 2016 08:23:42, Meng Yi wrote: > Hi Mark, > > > You've not specifically described the problem here - what are the > > endiannesses of both the CPU and the device you're talking to? What > > specifically is the endianess problem you are seeing, what are you seeing > > and what do you expect to see? > > The CPU is little endian and the device DCU is big endian, specified > big-endian in DTS, > > And here is my DTS and regmap_config, > > Specified "big-endian" in DTS, > > dcu: dcu@2ce0000 { > compatible = "fsl,ls1021a-dcu"; > reg = <0x0 0x2ce0000 0x0 0x10000>; > interrupts = <GIC_SPI 172 IRQ_TYPE_LEVEL_HIGH>; > clocks = <&platform_clk 0>; > clock-names = "dcu"; > big-endian; > status = "disabled"; > }; > > I can't tell the difference of "reg_format_endian" and " val_format_endian > ", so I had tried four conditions. And all failed. > > static const struct regmap_config fsl_dcu_regmap_config = { > .reg_bits = 32, > .reg_stride = 4, > .val_bits = 32, > .cache_type = REGCACHE_RBTREE, This needs to be a flat cache. See https://lists.freedesktop.org/archives/dri-devel/2016-January/099121.html or https://lkml.org/lkml/2016/3/24/281 max_register also needs an appropriate value. > // .reg_format_endian = REGMAP_ENDIAN_BIG, // .val_format_endian = > REGMAP_ENDIAN_BIG, > > .volatile_reg = fsl_dcu_drm_is_volatile_reg, }; > > > I expect that regmap write as big endian, and I am seeing is regmap write as > little endian. Check your actual regmap reg_write function. Best regards, Alexander ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: fsl-dcu not works on latest "drm-next" 2016-05-26 9:11 ` Alexander Stein @ 2016-05-27 5:54 ` Stefan Agner 2016-05-27 12:20 ` Mark Brown 2016-06-03 22:52 ` Stefan Agner 1 sibling, 1 reply; 22+ messages in thread From: Stefan Agner @ 2016-05-27 5:54 UTC (permalink / raw) To: Alexander Stein Cc: linux-kernel, Meng Yi, Mark Brown, dri-devel, David Airlie, airlied On 2016-05-26 02:11, Alexander Stein wrote: > On Thursday 26 May 2016 08:23:42, Meng Yi wrote: >> Hi Mark, >> >> > You've not specifically described the problem here - what are the >> > endiannesses of both the CPU and the device you're talking to? What >> > specifically is the endianess problem you are seeing, what are you seeing >> > and what do you expect to see? >> >> The CPU is little endian and the device DCU is big endian, specified >> big-endian in DTS, >> >> And here is my DTS and regmap_config, >> >> Specified "big-endian" in DTS, >> >> dcu: dcu@2ce0000 { >> compatible = "fsl,ls1021a-dcu"; >> reg = <0x0 0x2ce0000 0x0 0x10000>; >> interrupts = <GIC_SPI 172 IRQ_TYPE_LEVEL_HIGH>; >> clocks = <&platform_clk 0>; >> clock-names = "dcu"; >> big-endian; >> status = "disabled"; >> }; >> >> I can't tell the difference of "reg_format_endian" and " val_format_endian >> ", so I had tried four conditions. And all failed. >> >> static const struct regmap_config fsl_dcu_regmap_config = { >> .reg_bits = 32, >> .reg_stride = 4, >> .val_bits = 32, >> .cache_type = REGCACHE_RBTREE, > > This needs to be a flat cache. See > https://lists.freedesktop.org/archives/dri-devel/2016-January/099121.html > or https://lkml.org/lkml/2016/3/24/281 > max_register also needs an appropriate value. FWIW, the latest patch which addresses this issue is Patch 5/6 of this patchset: https://lkml.org/lkml/2016/4/19/617 Unfortunately, that patchset missed the 4.7 merge window. I still miss an Ack for the first patch of this patchset. But should go into the next release... -- Stefan ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: fsl-dcu not works on latest "drm-next" 2016-05-27 5:54 ` Stefan Agner @ 2016-05-27 12:20 ` Mark Brown 2016-05-27 17:36 ` Stefan Agner 0 siblings, 1 reply; 22+ messages in thread From: Mark Brown @ 2016-05-27 12:20 UTC (permalink / raw) To: Stefan Agner Cc: Alexander Stein, linux-kernel, Meng Yi, dri-devel, David Airlie, airlied [-- Attachment #1: Type: text/plain, Size: 776 bytes --] On Thu, May 26, 2016 at 10:54:16PM -0700, Stefan Agner wrote: > On 2016-05-26 02:11, Alexander Stein wrote: > > This needs to be a flat cache. See > > https://lists.freedesktop.org/archives/dri-devel/2016-January/099121.html > > or https://lkml.org/lkml/2016/3/24/281 > > max_register also needs an appropriate value. > FWIW, the latest patch which addresses this issue is Patch 5/6 of this > patchset: > https://lkml.org/lkml/2016/4/19/617 > Unfortunately, that patchset missed the 4.7 merge window. I still miss > an Ack for the first patch of this patchset. But should go into the next > release... That's another way of addressing it of course, but unless the register map actually is sparse it's probably still sensible to send the conversion to flat cache as a fix. [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 473 bytes --] ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: fsl-dcu not works on latest "drm-next" 2016-05-27 12:20 ` Mark Brown @ 2016-05-27 17:36 ` Stefan Agner 2016-05-27 19:50 ` Mark Brown 0 siblings, 1 reply; 22+ messages in thread From: Stefan Agner @ 2016-05-27 17:36 UTC (permalink / raw) To: Mark Brown, Alexander Stein Cc: linux-kernel, Meng Yi, dri-devel, David Airlie, airlied On 2016-05-27 05:20, Mark Brown wrote: > On Thu, May 26, 2016 at 10:54:16PM -0700, Stefan Agner wrote: >> On 2016-05-26 02:11, Alexander Stein wrote: > >> > This needs to be a flat cache. See >> > https://lists.freedesktop.org/archives/dri-devel/2016-January/099121.html >> > or https://lkml.org/lkml/2016/3/24/281 >> > max_register also needs an appropriate value. > >> FWIW, the latest patch which addresses this issue is Patch 5/6 of this >> patchset: >> https://lkml.org/lkml/2016/4/19/617 > >> Unfortunately, that patchset missed the 4.7 merge window. I still miss >> an Ack for the first patch of this patchset. But should go into the next >> release... > > That's another way of addressing it of course, but unless the register > map actually is sparse it's probably still sensible to send the > conversion to flat cache as a fix. The regcache is used for suspend, but the suspend implementation in its current form is not in not working. Hence I felt it is not worth fixing part of something which is broken as a whole anyway. So far I was under the impression the "only" issue using REGCACHE_RBTREE is that it triggers a warning when enabling lockdep. @Alexander, is using REGCACHE_RBTREE an actual problem for the issue Meng Yi has here? -- Stefan ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: fsl-dcu not works on latest "drm-next" 2016-05-27 17:36 ` Stefan Agner @ 2016-05-27 19:50 ` Mark Brown 0 siblings, 0 replies; 22+ messages in thread From: Mark Brown @ 2016-05-27 19:50 UTC (permalink / raw) To: Stefan Agner Cc: Alexander Stein, linux-kernel, Meng Yi, dri-devel, David Airlie, airlied [-- Attachment #1: Type: text/plain, Size: 1006 bytes --] On Fri, May 27, 2016 at 10:36:21AM -0700, Stefan Agner wrote: > On 2016-05-27 05:20, Mark Brown wrote: > > That's another way of addressing it of course, but unless the register > > map actually is sparse it's probably still sensible to send the > > conversion to flat cache as a fix. > The regcache is used for suspend, but the suspend implementation in its > current form is not in not working. Hence I felt it is not worth fixing > part of something which is broken as a whole anyway. > So far I was under the impression the "only" issue using REGCACHE_RBTREE > is that it triggers a warning when enabling lockdep. The warning is warning about a real issue that might crop up - it's not just cosmetic, it's doing allocations inside a spinlock which could break badly. Even if it doesn't help this issue I'd recommend getting a fix in if you can to avoid it blowing up on people (unless the more complete set of changes can go in as a bugfix of course in which case it's moot). [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 473 bytes --] ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: fsl-dcu not works on latest "drm-next" 2016-05-26 9:11 ` Alexander Stein 2016-05-27 5:54 ` Stefan Agner @ 2016-06-03 22:52 ` Stefan Agner 2016-06-07 2:16 ` Meng Yi 2016-06-07 3:47 ` Meng Yi 1 sibling, 2 replies; 22+ messages in thread From: Stefan Agner @ 2016-06-03 22:52 UTC (permalink / raw) To: Alexander Stein, Meng Yi Cc: linux-kernel, Mark Brown, dri-devel, David Airlie, airlied On 2016-05-26 02:11, Alexander Stein wrote: > On Thursday 26 May 2016 08:23:42, Meng Yi wrote: >> Hi Mark, >> >> > You've not specifically described the problem here - what are the >> > endiannesses of both the CPU and the device you're talking to? What >> > specifically is the endianess problem you are seeing, what are you seeing >> > and what do you expect to see? >> >> The CPU is little endian and the device DCU is big endian, specified >> big-endian in DTS, >> >> And here is my DTS and regmap_config, >> >> Specified "big-endian" in DTS, >> >> dcu: dcu@2ce0000 { >> compatible = "fsl,ls1021a-dcu"; >> reg = <0x0 0x2ce0000 0x0 0x10000>; >> interrupts = <GIC_SPI 172 IRQ_TYPE_LEVEL_HIGH>; >> clocks = <&platform_clk 0>; >> clock-names = "dcu"; >> big-endian; >> status = "disabled"; >> }; >> >> I can't tell the difference of "reg_format_endian" and " val_format_endian >> ", so I had tried four conditions. And all failed. >> >> static const struct regmap_config fsl_dcu_regmap_config = { >> .reg_bits = 32, >> .reg_stride = 4, >> .val_bits = 32, >> .cache_type = REGCACHE_RBTREE, > > This needs to be a flat cache. See > https://lists.freedesktop.org/archives/dri-devel/2016-January/099121.html > or https://lkml.org/lkml/2016/3/24/281 > max_register also needs an appropriate value. Ok, since the complete set which switches to the atomic helper is not stable material (and also won't make it into 4.7 anymore), I created a seperate bugfix now: https://lists.freedesktop.org/archives/dri-devel/2016-June/109625.html What I don't quite get yet is the REGCACHE_FLAT influencing the endianness behavior? If it is, Meng, can you test again with v4.7-rc1 + the FLAT cache patch above? -- Stefan ^ permalink raw reply [flat|nested] 22+ messages in thread
* RE: fsl-dcu not works on latest "drm-next" 2016-06-03 22:52 ` Stefan Agner @ 2016-06-07 2:16 ` Meng Yi 2016-06-07 2:46 ` Stefan Agner 2016-06-07 3:47 ` Meng Yi 1 sibling, 1 reply; 22+ messages in thread From: Meng Yi @ 2016-06-07 2:16 UTC (permalink / raw) To: Stefan Agner, Alexander Stein Cc: linux-kernel, Mark Brown, dri-devel, David Airlie, airlied Hi Stefan, Sorry for reply late, I was on PTO. And another PTO on June 9~11, 2016.UTC+8 > >> static const struct regmap_config fsl_dcu_regmap_config = { > >> .reg_bits = 32, > >> .reg_stride = 4, > >> .val_bits = 32, > >> .cache_type = REGCACHE_RBTREE, > > > > This needs to be a flat cache. See > > https://lists.freedesktop.org/archives/dri-devel/2016-January/099121.h > > tml or https://lkml.org/lkml/2016/3/24/281 > > max_register also needs an appropriate value. > > Ok, since the complete set which switches to the atomic helper is not stable > material (and also won't make it into 4.7 anymore), I created a seperate bugfix > now: > https://lists.freedesktop.org/archives/dri-devel/2016-June/109625.html > What is bug? > What I don't quite get yet is the REGCACHE_FLAT influencing the endianness > behavior? > > If it is, Meng, can you test again with v4.7-rc1 + the FLAT cache patch above? > I will test it, and send an e-mail to you by then. Regards, Meng ^ permalink raw reply [flat|nested] 22+ messages in thread
* RE: fsl-dcu not works on latest "drm-next" 2016-06-07 2:16 ` Meng Yi @ 2016-06-07 2:46 ` Stefan Agner 0 siblings, 0 replies; 22+ messages in thread From: Stefan Agner @ 2016-06-07 2:46 UTC (permalink / raw) To: Meng Yi Cc: Alexander Stein, linux-kernel, Mark Brown, dri-devel, David Airlie, airlied On 2016-06-06 19:16, Meng Yi wrote: > Hi Stefan, > > Sorry for reply late, I was on PTO. And another PTO on June 9~11, 2016.UTC+8 > >> >> static const struct regmap_config fsl_dcu_regmap_config = { >> >> .reg_bits = 32, >> >> .reg_stride = 4, >> >> .val_bits = 32, >> >> .cache_type = REGCACHE_RBTREE, >> > >> > This needs to be a flat cache. See >> > https://lists.freedesktop.org/archives/dri-devel/2016-January/099121.h >> > tml or https://lkml.org/lkml/2016/3/24/281 >> > max_register also needs an appropriate value. >> >> Ok, since the complete set which switches to the atomic helper is not stable >> material (and also won't make it into 4.7 anymore), I created a seperate bugfix >> now: >> https://lists.freedesktop.org/archives/dri-devel/2016-June/109625.html >> > > What is bug? > The bug is that we should not use REGCACHE_RBTREE for MMIO registers... -- Stefan ^ permalink raw reply [flat|nested] 22+ messages in thread
* RE: fsl-dcu not works on latest "drm-next" 2016-06-03 22:52 ` Stefan Agner 2016-06-07 2:16 ` Meng Yi @ 2016-06-07 3:47 ` Meng Yi 1 sibling, 0 replies; 22+ messages in thread From: Meng Yi @ 2016-06-07 3:47 UTC (permalink / raw) To: Stefan Agner, Alexander Stein Cc: linux-kernel, Mark Brown, dri-devel, David Airlie, airlied Hi Stefan, > >> static const struct regmap_config fsl_dcu_regmap_config = { > >> .reg_bits = 32, > >> .reg_stride = 4, > >> .val_bits = 32, > >> .cache_type = REGCACHE_RBTREE, > > > > This needs to be a flat cache. See > > https://lists.freedesktop.org/archives/dri-devel/2016-January/099121.h > > tml or https://lkml.org/lkml/2016/3/24/281 > > max_register also needs an appropriate value. > > Ok, since the complete set which switches to the atomic helper is not stable > material (and also won't make it into 4.7 anymore), I created a seperate bugfix > now: > https://lists.freedesktop.org/archives/dri-devel/2016-June/109625.html > > What I don't quite get yet is the REGCACHE_FLAT influencing the endianness > behavior? > I think it didn't. And endianness issue have been fixed by regmap maintainer. > If it is, Meng, can you test again with v4.7-rc1 + the FLAT cache patch above? > I have tested FLAT cache on LS1021A, it works fine. By the way do you have any opinion on LS1021A's HDMI driver? Regards, Meng ^ permalink raw reply [flat|nested] 22+ messages in thread
end of thread, other threads:[~2016-06-07 3:47 UTC | newest] Thread overview: 22+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- [not found] <HE1PR04MB105158F9CB2CEC73E6B5F5E9EC7A0@HE1PR04MB1051.eurprd04.prod.outlook.com> 2016-05-25 2:14 ` fsl-dcu not works on latest "drm-next" Meng Yi 2016-05-25 6:20 ` Stefan Agner 2016-05-25 8:32 ` Alexander Stein 2016-05-25 8:58 ` Meng Yi 2016-05-25 9:57 ` Alexander Stein 2016-05-25 10:25 ` Meng Yi 2016-05-25 12:16 ` Alexander Stein 2016-05-26 8:18 ` Meng Yi 2016-05-26 9:11 ` Alexander Stein 2016-05-25 9:18 ` Mark Brown 2016-05-25 9:59 ` Meng Yi 2016-05-25 10:41 ` Mark Brown 2016-05-26 8:23 ` Meng Yi 2016-05-26 9:11 ` Alexander Stein 2016-05-27 5:54 ` Stefan Agner 2016-05-27 12:20 ` Mark Brown 2016-05-27 17:36 ` Stefan Agner 2016-05-27 19:50 ` Mark Brown 2016-06-03 22:52 ` Stefan Agner 2016-06-07 2:16 ` Meng Yi 2016-06-07 2:46 ` Stefan Agner 2016-06-07 3:47 ` Meng Yi
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).