Changeset 556


Ignore:
Timestamp:
Sep 21, 2018, 10:25:39 PM (3 years ago)
Author:
nicolas.van.phan@…
Message:

Gather LETI-specific macros into hard_config.h

Location:
trunk
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/boot/tsar_mips32/boot.c

    r552 r556  
    404404    boot_info->x_max        = header->x_size; // [FIXME]
    405405    boot_info->y_max        = header->name[5] == 'l' ? header->y_size - 1 : header->y_size; // [FIXME]
    406     boot_info->use_mty0     = header->name[5] == 'l' ? true : false;
    407406    boot_info->paddr_width  = header->paddr_width;
    408407    boot_info->io_cxy       = header->io_cxy;
  • trunk/boot/tsar_mips32/boot_tty_driver.c

    r541 r556  
    4343#endif
    4444
    45 #ifdef IS_LETI
    46   #define TARGET_CLUSTER    0
    47 #else
    48   #define TARGET_CLUSTER    ((X_IO << Y_WIDTH) + Y_IO)
     45#ifndef TXT_TGT_CLUSTER
     46# error "The TXT_TGT_CLUSTER value should be defined in the 'hard_config.h' file"
    4947#endif
    50 
    5148
    5249/////////////////////////////////////////////////////////////////////////////
     
    5754static uint32_t boot_tty_get_register( uint32_t reg )
    5855{
    59     cxy_t      cxy = TARGET_CLUSTER;
     56    cxy_t      cxy = TXT_TGT_CLUSTER;
    6057    uint32_t * ptr = (uint32_t *)SEG_TXT_BASE + reg;
    6158   
     
    7269                                   uint32_t val )
    7370{
    74     cxy_t      cxy = TARGET_CLUSTER;
     71    cxy_t      cxy = TXT_TGT_CLUSTER;
    7572    uint32_t * ptr = (uint32_t *)SEG_TXT_BASE + reg;
    7673
  • trunk/kernel/kern/kernel_init.c

    r550 r556  
    2424
    2525#include <kernel_config.h>
     26#include <hard_config.h> // for the USE_TXT_XXX macros
    2627#include <errno.h>
    2728#include <hal_kernel_types.h>
     
    424425
    425426        ///////////////////////////////
    426         else if ( func == DEV_FUNC_TXT && info->use_mty0 == 1 )
     427        else if ( func == DEV_FUNC_TXT && USE_TXT_MTY == 1 )
    427428        {
    428429            assert(impl == IMPL_TXT_MTY,
     
    592593            {
    593594                // skip TXT_TX[0] chdev that has already been created & registered
    594                 if( info->use_mty0 == 0 && (func == DEV_FUNC_TXT) && (channel == 0) && (rx == 0) )
     595                if( USE_TXT_MTY == 0 && (func == DEV_FUNC_TXT) && (channel == 0) && (rx == 0) )
    595596                {
    596597                    continue;
     
    598599
    599600                // skip TXT chdevs because they are initialized in internal_devices_init()
    600                 if ( info->use_mty0 == 1 && func == DEV_FUNC_TXT )
     601                if ( USE_TXT_MTY == 1 && func == DEV_FUNC_TXT )
    601602                {
    602603                    continue;
     
    967968    if( core_cxy == 0 && core_lid == 0 ) // [MODIF]
    968969    {
    969         if( info->use_mty0 == 1 ) {
     970        if( USE_TXT_MTY == 1 ) {
    970971            mtty0_device_init( info );
    971972        } else {
     
    13551356
    13561357#if (DEBUG_KERNEL_INIT & 1)
    1357 if( (core_lid ==  0) & (local_cxy == 0) )
     1358if( (core_lid ==  0) /*& (local_cxy == 0)*/ )
    13581359sched_display( 0 );
    13591360#endif
  • trunk/tools/arch_info/arch_classes.py

    r548 r556  
    605605        s += '#define BOOT_CORE_CXY          %d\n'    % self.boot_cxy
    606606        s += '#define CACHE_LINE_SIZE        %d\n'    % self.cache_line
    607         if (self.name[5] == 'l') :
    608             s += '#define IS_LETI              \n'
    609607        s += '#define RESET_SYSTEM_CLK       %d\n'    % sys_clk
    610608        s += '\n'
     
    630628        s += '#define USE_IOC_RDK            %d\n'    % use_ioc_rdk
    631629        s += '\n'
     630        s += '#define USE_TXT_TTY            %d\n'    % (self.name[5] != 'l') # use TTY implementation on IOB
     631        s += '#define USE_TXT_MTY            %d\n'    % (self.name[5] == 'l') # use MTY implementation on LETI
     632        s += '\n'
    632633        s += '#define FBUF_X_SIZE            %d\n'    % fbf_arg0
    633634        s += '#define FBUF_Y_SIZE            %d\n'    % fbf_arg1
     
    637638        s += '#define ICU_NB_WTI             %d\n'    % icu_arg2
    638639        s += '#define ICU_NB_OUT             %d\n'    % icu_arg3
     640        s += '\n'
     641        if (self.name[5] == 'l') : # If running on LETI
     642            s += '#define TXT_TGT_CLUSTER        0\n'
     643        else : # Else, running on IOB
     644            s += '#define TXT_TGT_CLUSTER        ((X_IO << Y_WIDTH) + Y_IO)\n'
    639645        s += '\n'
    640646
  • trunk/tools/arch_info/boot_info.h

    r535 r556  
    114114    uint32_t      x_max;                         /*! [FIXME] Nb of non-empty cluster in row */
    115115    uint32_t      y_max;                         /*! [FIXME] Nb of non_empty cluster in col */
    116     uint32_t      use_mty0;                      /*! [FIXME] Use multi_tty on cluster 0     */
    117116        uint32_t      io_cxy;                        /*! IO cluster identifier                  */
    118117
Note: See TracChangeset for help on using the changeset viewer.