le32_to_cpu 和cpu_to_le32 大小断对齐

A53 是大端对齐的,但是其中一个spi的slave是小端对齐的。

看一下 le32_to_cpu 的实现:

/* little_endian.h */

#define __cpu_to_le32(x) ((__force __le32)(__u32)(x))
#define __le32_to_cpu(x) ((__force __u32)(__le32)(x))

/*big_endian.h*/

#define __le32_to_cpu(x) __swab32((__force __u32)(__le32)(x))
#define __cpu_to_le16(x) ((__force __le16)__swab16((x)))
指向两个文件,一个little_endian是小断对其的,也就是cpu是小端转成你需要的小端,本身都是小端,就不需要转换。

你cpu是大端对齐的,但是要转换成小端的就需要swap。

使用此函数需要注意当前操作系统处于哪种模式。
————————————————
版权声明:本文为CSDN博主「dachunfree」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/dachunfree/article/details/122472842

posted on   lydstory  阅读(302)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
历史上的今天:
2021-02-27 QT开发方法:
2021-02-27 github qt能跑的例子
2021-02-27 qmake -makefile
2021-02-27 Cmake出现CMake Error: Could not find CMAKE_ROOT !!!
2021-02-27 cmake 版本升级
2021-02-27 孤月
2020-02-27 QHBoxLayout QVBoxLayout

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

统计

点击右上角即可分享
微信分享提示