lkml.org 
[lkml]   [2010]   [Jun]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 11/11] staging: ti dspbridge: enable driver building
    Date
    From: Omar Ramirez Luna <omar.ramirez@ti.com>

    Add Kconfig + Makefile for TI's DSP Bridge driver
    and expose it to the staging menu.

    For now, have tidspbridge depend on ARCH_OMAP3.
    That dependency should be relaxed as soon as required cleanups are applied.

    Signed-off-by: Omar Ramirez Luna <omar.ramirez@ti.com>
    Signed-off-by: Kanigeri, Hari <h-kanigeri2@ti.com>
    Signed-off-by: Ameya Palande <ameya.palande@nokia.com>
    Signed-off-by: Guzman Lugo, Fernando <fernando.lugo@ti.com>
    Signed-off-by: Hebbar, Shivananda <x0hebbar@ti.com>
    Signed-off-by: Ramos Falcon, Ernesto <ernesto@ti.com>
    Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
    Signed-off-by: Anna, Suman <s-anna@ti.com>
    Signed-off-by: Gupta, Ramesh <grgupta@ti.com>
    Signed-off-by: Gomez Castellanos, Ivan <ivan.gomez@ti.com>
    Signed-off-by: Andy Shevchenko <ext-andriy.shevchenko@nokia.com>
    Signed-off-by: Armando Uribe De Leon <x0095078@ti.com>
    Signed-off-by: Deepak Chitriki <deepak.chitriki@ti.com>
    Signed-off-by: Menon, Nishanth <nm@ti.com>
    Signed-off-by: Phil Carmody <ext-phil.2.carmody@nokia.com>
    Signed-off-by: Ohad Ben-Cohen <ohad@wizery.com>
    ---
    drivers/staging/Kconfig | 2 +
    drivers/staging/Makefile | 1 +
    drivers/staging/tidspbridge/Kconfig | 88 ++++++++++++++++++++++++++++++++++
    drivers/staging/tidspbridge/Makefile | 34 +++++++++++++
    4 files changed, 125 insertions(+), 0 deletions(-)
    create mode 100644 drivers/staging/tidspbridge/Kconfig
    create mode 100644 drivers/staging/tidspbridge/Makefile

    diff --git a/drivers/staging/Kconfig b/drivers/staging/Kconfig
    index cdd3ea3..ce1dfa8 100644
    --- a/drivers/staging/Kconfig
    +++ b/drivers/staging/Kconfig
    @@ -151,5 +151,7 @@ source "drivers/staging/msm/Kconfig"

    source "drivers/staging/easycap/Kconfig"

    +source "drivers/staging/tidspbridge/Kconfig"
    +
    endif # !STAGING_EXCLUDE_BUILD
    endif # STAGING
    diff --git a/drivers/staging/Makefile b/drivers/staging/Makefile
    index beceaff..7849818 100644
    --- a/drivers/staging/Makefile
    +++ b/drivers/staging/Makefile
    @@ -56,3 +56,4 @@ obj-$(CONFIG_FB_XGI) += xgifb/
    obj-$(CONFIG_TOUCHSCREEN_MRSTOUCH) += mrst-touchscreen/
    obj-$(CONFIG_MSM_STAGING) += msm/
    obj-$(CONFIG_EASYCAP) += easycap/
    +obj-$(CONFIG_TIDSPBRIDGE) += tidspbridge/
    diff --git a/drivers/staging/tidspbridge/Kconfig b/drivers/staging/tidspbridge/Kconfig
    new file mode 100644
    index 0000000..45372cd
    --- /dev/null
    +++ b/drivers/staging/tidspbridge/Kconfig
    @@ -0,0 +1,88 @@
    +#
    +# DSP Bridge Driver Support
    +#
    +
    +menuconfig TIDSPBRIDGE
    + tristate "DSP Bridge driver"
    + depends on ARCH_OMAP3
    + select OMAP_MBOX_FWK
    + help
    + DSP/BIOS Bridge is designed for platforms that contain a GPP and
    + one or more attached DSPs. The GPP is considered the master or
    + "host" processor, and the attached DSPs are processing resources
    + that can be utilized by applications and drivers running on the GPP.
    +
    + This driver depends on OMAP Mailbox (OMAP_MBOX_FWK).
    +
    +config BRIDGE_DVFS
    + bool "Enable Bridge Dynamic Voltage and Frequency Scaling (DVFS)"
    + depends on TIDSPBRIDGE && OMAP_PM_SRF && CPU_FREQ
    + default n
    + help
    + DVFS allows DSP Bridge to initiate the operating point change to
    + scale the chip voltage and frequency in order to match the
    + performance and power consumption to the current processing
    + requirements.
    +
    +config BRIDGE_MEMPOOL_SIZE
    + hex "Physical memory pool size (Byte)"
    + depends on TIDSPBRIDGE
    + default 0x600000
    + help
    + Allocate specified size of memory at booting time to avoid allocation
    + failure under heavy memory fragmentation after some use time.
    +
    +config BRIDGE_DEBUG
    + bool "DSP Bridge Debug Support"
    + depends on TIDSPBRIDGE
    + help
    + Say Y to enable Bridge debugging capabilities
    +
    +config BRIDGE_RECOVERY
    + bool "DSP Recovery Support"
    + depends on TIDSPBRIDGE
    + help
    + In case of DSP fatal error, BRIDGE driver will try to
    + recover itself.
    +
    +config BRIDGE_CACHE_LINE_CHECK
    + bool "Check buffers to be 128 byte aligned"
    + depends on TIDSPBRIDGE
    + default n
    + help
    + When the DSP processes data, the DSP cache controller loads 128-Byte
    + chunks (lines) from SDRAM and writes the data back in 128-Byte chunks.
    + If a DMM buffer does not start and end on a 128-Byte boundary, the data
    + preceding the start address (SA) from the 128-Byte boundary to the SA
    + and the data at addresses trailing the end address (EA) from the EA to
    + the next 128-Byte boundary will be loaded and written back as well.
    + This can lead to heap corruption. Say Y, to enforce the check for 128
    + byte alignment, buffers failing this check will be rejected.
    +
    +config BRIDGE_WDT3
    + bool "Enable WDT3 interruptions"
    + depends on TIDSPBRIDGE
    + default n
    + help
    + WTD3 is managed by DSP and once it is enabled, DSP side bridge is in
    + charge of refreshing the timer before overflow, if the DSP hangs MPU
    + will caught the interrupt and try to recover DSP.
    +
    +config WDT_TIMEOUT
    + int "DSP watchdog timer timeout (in secs)"
    + depends on BRIDGE_WDT3
    + default 5
    + help
    + Watchdog timer timeout value, after that time if the watchdog timer
    + counter is not reset the wdt overflow interrupt will be triggered
    +
    +comment "Bridge Notifications"
    + depends on TIDSPBRIDGE
    +
    +config BRIDGE_NTFY_PWRERR
    + bool "Notify DSP Power Error"
    + depends on TIDSPBRIDGE
    + help
    + Enable notifications to registered clients on the event of power errror
    + trying to suspend bridge driver. Say Y, to signal this event as a fatal
    + error, this will require a bridge restart to recover.
    diff --git a/drivers/staging/tidspbridge/Makefile b/drivers/staging/tidspbridge/Makefile
    new file mode 100644
    index 0000000..6082ef0
    --- /dev/null
    +++ b/drivers/staging/tidspbridge/Makefile
    @@ -0,0 +1,34 @@
    +obj-$(CONFIG_TIDSPBRIDGE) += bridgedriver.o
    +
    +libgen = gen/gb.o gen/gs.o gen/gh.o gen/uuidutil.o
    +libservices = services/sync.o services/cfg.o \
    + services/ntfy.o services/services.o
    +libcore = core/chnl_sm.o core/msg_sm.o core/io_sm.o core/tiomap3430.o \
    + core/tiomap3430_pwr.o core/tiomap_io.o \
    + core/mmu_fault.o core/ue_deh.o core/wdt.o core/dsp-clock.o
    +libpmgr = pmgr/chnl.o pmgr/io.o pmgr/msg.o pmgr/cod.o pmgr/dev.o pmgr/dspapi.o \
    + pmgr/dmm.o pmgr/cmm.o pmgr/dbll.o
    +librmgr = rmgr/dbdcd.o rmgr/disp.o rmgr/drv.o rmgr/mgr.o rmgr/node.o \
    + rmgr/proc.o rmgr/pwr.o rmgr/rmm.o rmgr/strm.o rmgr/dspdrv.o \
    + rmgr/nldr.o rmgr/drv_interface.o
    +libdload = dynload/cload.o dynload/getsection.o dynload/reloc.o \
    + dynload/tramp.o
    +libhw = hw/hw_mmu.o
    +
    +bridgedriver-objs = $(libgen) $(libservices) $(libcore) $(libpmgr) $(librmgr) \
    + $(libdload) $(libhw)
    +
    +#Machine dependent
    +ccflags-y += -D_TI_ -D_DB_TIOMAP -DTMS32060 \
    + -DTICFG_PROC_VER -DTICFG_EVM_TYPE -DCHNL_SMCLASS \
    + -DCHNL_MESSAGES -DUSE_LEVEL_1_MACROS
    +
    +ccflags-y += -Idrivers/staging/tidspbridge/include
    +ccflags-y += -Idrivers/staging/tidspbridge/services
    +ccflags-y += -Idrivers/staging/tidspbridge/core
    +ccflags-y += -Idrivers/staging/tidspbridge/pmgr
    +ccflags-y += -Idrivers/staging/tidspbridge/rmgr
    +ccflags-y += -Idrivers/staging/tidspbridge/dynload
    +ccflags-y += -Idrivers/staging/tidspbridge/hw
    +ccflags-y += -Iarch/arm
    +
    --
    1.7.0.4


    \
     
     \ /
      Last update: 2010-06-24 15:43    [W:0.031 / U:30.200 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site