ChanServ changed the topic of #armlinux to: ARM kernel talk [Upstream kernel, find your vendor forums for questions about their kernels] | https://libera.irclog.whitequark.org/armlinux
mraynal has quit [Read error: Connection reset by peer]
System_Error has quit [Remote host closed the connection]
System_Error has joined #armlinux
apritzel has quit [Ping timeout: 245 seconds]
tlwoerner has joined #armlinux
Pali has quit [Ping timeout: 240 seconds]
ardb has quit [Ping timeout: 240 seconds]
leoy has joined #armlinux
leoy has quit [Read error: Connection reset by peer]
leoy has joined #armlinux
apritzel has joined #armlinux
apritzel has quit [Ping timeout: 256 seconds]
leoy_ has joined #armlinux
leoy has quit [Ping timeout: 240 seconds]
macromorgan has quit [Read error: Connection reset by peer]
apritzel has joined #armlinux
Pali has joined #armlinux
leoy_ has quit [Ping timeout: 256 seconds]
gdd has joined #armlinux
apritzel has quit [Ping timeout: 245 seconds]
<Esmil>
arnd: Ugh, I messed up and forgot to include <linux/io-64-nonatomic-lo-hi.h> in drivers/reset/reset-starfive-jh7100.c so now compile testing fails on 32bit architectures without readq :( Do you want a patch, should I redo the pull-request or how is easiest fixed?
ardb has joined #armlinux
ardb has quit [Ping timeout: 268 seconds]
ardb has joined #armlinux
<geertu>
Esmil: The easiest is to just send a patch to soc@...
ardb has quit [Ping timeout: 256 seconds]
<Esmil>
geertu: will do, thanks
ardb has joined #armlinux
System_Error has quit [Ping timeout: 276 seconds]
nsaenz has quit [Quit: Leaving]
ardb has quit [Quit: Leaving.]
wolfshappen has quit [Ping timeout: 240 seconds]
wolfshappen has joined #armlinux
<arnd>
Esmil: are you sure the device needs lo-hi and not li-lo when doing 32-bit access?
<arnd>
lo-hi is more likely but it really depends on the device
<Esmil>
it shouldn't matter. it just does rmv to change 1 bit at a time
<Esmil>
*read-modify-write
ardb has joined #armlinux
amitk has joined #armlinux
amitk_ has quit [Ping timeout: 256 seconds]
<arnd>
Esmil: usallly it matters which bits you change, the difference between devices is whether the 32 bits at the lower address are the upper or the lower half of the 64-bit word
nsaenz has joined #armlinux
<Esmil>
arnd: The thing is that it's actually 4 32bit registers where each bit controls a different reset line. Originally I'd access them with readl/writel, but Andy insisted we use 64bit readq/writeq. So when changing a single bit under a lock the nonatomic wrappers will do two readl's on two adjecent registers and construct the 64bit value. We'd then change the bit and writeq will writel the to registers back.
<Esmil>
One of the two 32bit registers will always be the same as what was read. Writing the same value to the 32bit register should be a noop, so I'm not sure I see how it would matter if we write the unchanged 32bit value before or after the changed 32bit value. I'm missing something