问题1,这个问题我们没与遇到
参考https://blog.youkuaiyun.com/weixin_74253011/article/details/141058714
static inline void vm_flags_set(struct vm_area_struct *vma,
vm_flags_t flags)
{
vma->vm_flags |= flags;
}
static inline void vm_flags_clear(struct vm_area_struct *vma,
vm_flags_t flags)
{
vma->vm_flags &= ~flags;
}
问题2:这个问题改了就对了
升级到0.9.8主要是为了适配rk3588和rk3576对大模型端的适配, 所以内核代码中有一段对rk3576 的一个类型的引用, 但是在驱动源码中是没有定义的, 需要将其注释掉:
rknpu_devfreq.c:
static const struct rockchip_opp_data rk3576_npu_opp_data = {
.set_read_margin = rk3576_npu_set_read_margin,
// .set_soc_info = rockchip_opp_set_low_length, 未定义, 需要删除
#if KERNEL_VERSION(6, 1, 0) <= LINUX_VERSION_CODE
.config_regulators = npu_opp_config_regulators,
.config_clks = npu_opp_config_clks,
#endif
};