DM8127 ISS部分逐步分析

Iss_captInit函数功能

  1. 初始化几个全局变量gIss_captCommonObj,gRawCaptureTriggerd,gYUVCaptureTriggerd,gMirrorMode
  2. 注册底层的一些驱动接口到gIss_captCommonObj.fvidDrvOps中
  3. 接着将gIss_captCommonObj.fvidDrvOps注册到gFdmDriverObjects[cnt].drvOps上
  4. 注册一系列的中断

FVID2_create(UInt32 drvId,

                      UInt32 instanceId,
                      Ptr createArgs,
                      Ptr createStatusArgs,
                      const FVID2_CbParams *cbParams)函数功能

1.首先从gFdmDriverObjects中找到drvId对应的驱动,从gFdmChannelObjects分配一个channel
2.根据用户的回调函数注册情况注册内部函数fdmDriverCbFxn,此函数最终可以回调用户注册的回调函数
3.调用注册的Iss_captCreate函数
4.将分配的channel和驱动关联,并且和用户注册的回调参数关联

[ 37.964776][ T1938] Unable to handle kernel NULL pointer dereference at virtual address 0000000000000010 [ 37.966270][ T1938] Mem abort info: [ 37.967034][ T1938] ESR = 0x0000000096000044 [ 37.967912][ T1938] EC = 0x25: DABT (current EL), IL = 32 bits [ 37.968972][ T1938] SET = 0, FnV = 0 [ 37.969788][ T1938] EA = 0, S1PTW = 0 [ 37.970590][ T1938] FSC = 0x04: level 0 translation fault [ 37.971608][ T1938] Data abort info: [ 37.972383][ T1938] ISV = 0, ISS = 0x00000044 [ 37.973270][ T1938] CM = 0, WnR = 1 [ 37.974094][ T1938] user pgtable: 4k pages, 48-bit VAs, pgdp=0000000114fc3000 [ 37.975300][ T1938] [0000000000000010] pgd=0000000000000000, p4d=0000000000000000 [ 37.976543][ T1938] Internal error: Oops: 0000000096000044 [#1] SMP [ 37.977636][ T1938] Modules linked in: virtio_rdma(E+) rdma_rxe ib_uverbs ib_core ip6_udp_tunnel udp_tunnel xt_CHECKSUM xt_MASQUERADE xt_conntrack ipt_REJECT nf_nat_tftp nf_conntrack_tftp nft_fib_inet nft_fib_ipv4 nft_fib_ipv6 nft_fib nft_reject_inet nf_reject_ipv4 nf_reject_ipv6 nft_reject bridge stp llc nft_ct nft_chain_nat nf_tables ebtable_nat ebtable_broute ip6table_nat ip6table_mangle ip6table_raw ip6table_security iptable_nat nf_nat nf_conntrack nf_defrag_ipv6 nf_defrag_ipv4 libcrc32c iptable_mangle iptable_raw iptable_security rfkill ip_set nfnetlink eb table_filter ebtables ip6table_filter ip6_tables iptable_filter ip_tables sunrpc vfat fat arm_smccc_trng sch_fq_codel fuse ext4 mbcache jbd2 virtio_gpu virtio_dma_buf drm_shmem_helper drm_km s_helper virtio_blk crct10dif_ce virtio_net ghash_ce sha2_ce sha256_arm64 sha1_ce net_failover failover virtio_mmio dm_mirror dm_region_hash dm_log dm_multipath dm_mod virtio_pci virtio_pci_ legacy_dev virtio_pci_modern_dev virtio virtio_ring aes_neon_bs aes_neon_blk aes_ce_blk
最新发布
04-08
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值