broadcom endpoint驱动编译分析笔记
技术人生LJF
空杯心态
展开
-
vmlinux-dirs-2.doc
//在这些变量中找到含有目录的字符,并去除最后的/vmlinux-dirs-2 :=$(patsubst %/,%,$(filter %/, $(net-y) $(net-m) $(libs-y) $(libs-m)))$(vmlinux-dirs-2):$(brcmdriver-dirs)//这里会分别进入net、lib等目录进行编译,暂不关心,只关心依赖条件BCM驱动$原创 2014-07-20 09:59:49 · 560 阅读 · 0 评论 -
KERNEL_Makefile.modpos.doc
//默认目标的第一依赖对象__modpost,为第二个依赖对象生成所需要的*.mod.c文件,其中//第二依赖对象就是我们最终需要的endpointdd.ko文件_modpost:__modpostincludeinclude/config/auto.confincludescripts/Kbuild.includeincludescripts/Makefile.lib原创 2014-07-20 10:27:37 · 937 阅读 · 0 评论 -
Makefile.doc
一、模块编译modbuild:touch_voice_files//进行内核源码目录,并执行modules目标编译,后面执行modules_install模块安装//编译cd$(KERNEL_DIR); $(MAKE) modules && $(MAKE) modules_install二、模块预处理touch_voice_files://删除endpt目录下临原创 2014-07-20 09:52:15 · 726 阅读 · 0 评论 -
endpoint_make.doc
//当前obj-m变量值为endpointdd.o,该对象即为该模块最终的目标对象obj-$(CONFIG_BCM_ENDPOINT)+= endpointdd.o//这里定义了最终目标对象endpointdd.o依赖多个文件,具体细节请先学习kbuild机制endpointdd-objs:= endptdrv.a gwcommon.a haushost.a//en原创 2014-07-20 10:03:48 · 734 阅读 · 0 评论 -
bcmdrivers_make.doc
LN_NAME=bcm9$(BRCM_CHIP)//这两个宏开关是在hostTools\scripts\gendefconfig中产生的,最终是根据targetprofile的//配置来控制(一个是BRCM_DRIVER_PHONE、一个是BRCM_DRIVER_BCMDSP),这里我//们假设这两个开关宏都开启,则//obj-m= broadcom/char/endpoi原创 2014-07-20 09:58:43 · 702 阅读 · 0 评论 -
build_xdrv.doc
//CXC_PROJ_DIR=${CXC_VIEW_DIR}/xChange//CXC_OS_ROOT_DIR=${CXC_VIEW_DIR}/kernel/linux//CXC_EPILOGUE_DIR=notused//CXC_WINDMANAGE_ROOT=notused//CXC_GENERIC_MAKEFILE=${CXC_PROJ_DIR}/dslx/rules/cxc原创 2014-07-20 10:18:01 · 563 阅读 · 0 评论 -
编译文件说明
原创 2014-07-20 09:50:17 · 880 阅读 · 0 评论 -
KERNEL_make_modules_install.doc
modules_install:_modinst__modinst_://删除之前文件,创建kernel目录//其中MODLIB= targets/$(PROFILE)/modules/lib/modules/$(KERNELRELEASE)@rm-rf $(MODLIB)/kernel@rm-f $(MODLIB)/source@mkdir-p $(MODLIB)原创 2014-07-20 10:28:59 · 1727 阅读 · 0 评论 -
endpoint_haushost_make.doc
//构造haushost目标对象,依赖haushost-lib.aobj-m:= haushost.ohaushost-objs:= haushost-lib.aHAUSLIB_SUBDIR = libHAUSLIB_NAME = libhausware$(obj)/haushost-lib.a://输出当前目录echo$(src);echo原创 2014-07-20 10:18:21 · 1052 阅读 · 0 评论 -
Bcm6816uni_xchg_common.doc
//cxcAppBcm6816uni.mkincludecxcApp$(notdir $(CURDIR)).mk-------------------------------------------------------------------------------------------------------------------------CXC_VRG_B原创 2014-07-20 10:14:18 · 604 阅读 · 0 评论 -
build_bosk.doc
//CXC_PROJ_DIR=${CXC_VIEW_DIR}/xChange//CXC_OS_ROOT_DIR=${CXC_VIEW_DIR}/kernel/linux//CXC_EPILOGUE_DIR=notused//CXC_WINDMANAGE_ROOT=notused//CXC_GENERIC_MAKEFILE=${CXC_PROJ_DIR}/dslx/rules/cxc原创 2014-07-20 10:12:35 · 522 阅读 · 0 评论 -
endpoint_endptdrv_make.doc
//构造endptdrv目标对象,依赖endptdrv-lib.aobj-m:= endptdrv.oendptdrv-objs:= endptdrv-lib.aENDPTDRV_SUBDIR = libENDPTDRV_LIBS = endptdrv//设置CFLAGSXCHANGE_BUILD_EXTRA_CFLAGS= $(addprefix -D ,原创 2014-07-20 10:05:08 · 532 阅读 · 0 评论 -
Bcm6816uni_dspdd.doc
//cxcAppBcm6816uni.mkincludecxcApp$(notdir $(CURDIR)).mk-------------------------------------------------------------------------------------------------------------------------CXC_VRG_B原创 2014-07-20 10:06:04 · 727 阅读 · 0 评论 -
endpoint_gwcommon_make.doc
//构造gwcommon目标对象,依赖gwcommon-lib.aobj-m:= gwcommon.ogwcommon-objs:= gwcommon-lib.aENDPT_LIBS_SUBDIR:= eptlibXCHANGE_BUILD_EXTRA_CFLAGS= $(addprefix -D ,$(BRCM_VOICE_GLOBAL_CFLAGS))XCH原创 2014-07-20 10:11:06 · 653 阅读 · 0 评论 -
build_vrg.doc
//CXC_PROJ_DIR=${CXC_VIEW_DIR}/xChange//CXC_OS_ROOT_DIR=${CXC_VIEW_DIR}/kernel/linux//CXC_EPILOGUE_DIR=notused//CXC_WINDMANAGE_ROOT=notused//CXC_GENERIC_MAKEFILE=${CXC_PROJ_DIR}/dslx/rules/cxc原创 2014-07-20 10:16:54 · 614 阅读 · 0 评论 -
build_dspdd.doc
//CXC_PROJ_DIR=${CXC_VIEW_DIR}/xChange//CXC_OS_ROOT_DIR=${CXC_VIEW_DIR}/kernel/linux//CXC_EPILOGUE_DIR=notused//CXC_WINDMANAGE_ROOT=notused//CXC_GENERIC_MAKEFILE=${CXC_PROJ_DIR}/dslx/rules/cxc原创 2014-07-20 10:21:29 · 696 阅读 · 0 评论 -
Bcm6816uni_dspdd.doc
//cxcAppBcm6816uni.mkincludecxcApp$(notdir $(CURDIR)).mk-------------------------------------------------------------------------------------------------------------------------CXC_VRG_B原创 2014-07-20 10:26:23 · 818 阅读 · 0 评论 -
KERNEL_make_modules.doc
//Linux内核源码目录objtree :=$(CURDIR)//BUILD_DIR变量在BCM编译环境的主Makefile里定义的BUILD_DIR= $(shell pwd)//BCM编译环境下的bcmdrivers目录BRCMDRIVERS_DIR= $(BUILD_DIR)/bcmdrivers//BCM驱动相关目录,这里我们只关心BRCM原创 2014-07-20 09:53:41 · 557 阅读 · 0 评论 -
build_xdrv.doc
//CXC_PROJ_DIR=${CXC_VIEW_DIR}/xChange//CXC_OS_ROOT_DIR=${CXC_VIEW_DIR}/kernel/linux//CXC_EPILOGUE_DIR=notused//CXC_WINDMANAGE_ROOT=notused//CXC_GENERIC_MAKEFILE=${CXC_PROJ_DIR}/dslx/rules/cxc原创 2014-07-20 10:06:58 · 519 阅读 · 0 评论 -
dspapp_make.doc
//当前obj-m变量值为dspdd.o,该对象即为该模块最终的目标对象obj-$(CONFIG_BCM_BCMDSP)+= dspdd.o//这里定义了最终目标对象dspdd.o依赖多个文件,具体细节请先学习kbuild机制//这里dspdrv.o直接使用当前目录的dspdrv.c生成,其中dspdrv.c仅仅是一个空模块//函数,没有什么有用的内容,暂不尖心。dsp原创 2014-07-20 10:20:09 · 1069 阅读 · 0 评论