于 2018年9月3日 GMT+08:00 下午6:20:22, Maxime Ripard <maxime.ripard@xxxxxxxxxxx> 写到: >On Fri, Aug 31, 2018 at 05:51:41PM +0800, Icenowy Zheng wrote: >> Personally I suggest to leave out all SID or calibration related >> patches here. >> >> Currently we seems to be wrongly converting SID to big endian, >however, >> the orgnization of the THS calibration data on H6 shows that it's >> surely little endian: >> >> It consists a temperature value in 1/10 celsuis as unit, and some >> thermal register readout values, which are the values read out at the >> given temperature, and every value here (the temperature and the >> readout) are all half word length. >> >> Let the temperature value be AABB, the two readout values be XXYY and >> ZZWW, the oragnization is: >> BB AA YY XX WW ZZ ** ** . >> >> When converting the SID to big endian, it becomes: >> XX YY AA BB ** ** ZZ WW , >> which is non-sense, and not able to do sub-word cell addressing. >> >> Maxime, should I drop the LE2BE conversion in SID driver? (I doubt >> whether it will break compatibility.) > >This is exposed to the userspace, so no. Please note the LE2BE totally breaks the SID addressing. Without it dropped all cells must be referenced with 4 byte word as unit, and half word addressing of SID is thus not possible. The driver will also need then to split the half words if needed. I think this is kind of hardware misbehavior, and not a simple UAPI change, so the UAPI stability shouldn't affect this change. > >Maxime >>