From: Dmytro Laktyushkin <Dmytro.Laktyushkin@xxxxxxx> Signed-off-by: Dmytro Laktyushkin <Dmytro.Laktyushkin at amd.com> Acked-by: Harry Wentland <harry.wentland at amd.com> --- .../gpu/drm/amd/dal/amdgpu_dm/amdgpu_dm_helpers.c | 60 -- .../gpu/drm/amd/dal/dc/adapter/adapter_service.c | 12 +- .../amd/dal/dc/asic_capability/asic_capability.c | 4 +- .../dc/asic_capability/hawaii_asic_capability.c | 4 +- drivers/gpu/drm/amd/dal/dc/basics/Makefile | 3 +- drivers/gpu/drm/amd/dal/dc/basics/log_helpers.c | 100 +++ drivers/gpu/drm/amd/dal/dc/basics/logger.c | 674 +++------------------ drivers/gpu/drm/amd/dal/dc/basics/logger.h | 4 +- drivers/gpu/drm/amd/dal/dc/bios/bios_parser.c | 4 +- drivers/gpu/drm/amd/dal/dc/core/dc.c | 27 +- drivers/gpu/drm/amd/dal/dc/core/dc_link.c | 59 +- drivers/gpu/drm/amd/dal/dc/core/dc_link_ddc.c | 6 +- drivers/gpu/drm/amd/dal/dc/core/dc_link_dp.c | 68 +-- drivers/gpu/drm/amd/dal/dc/core/dc_resource.c | 4 +- drivers/gpu/drm/amd/dal/dc/core/dc_target.c | 30 +- drivers/gpu/drm/amd/dal/dc/dc.h | 5 +- .../gpu/drm/amd/dal/dc/dce/dce110_stream_encoder.c | 6 +- drivers/gpu/drm/amd/dal/dc/dce/dce_audio.c | 6 +- .../drm/amd/dal/dc/dce110/dce110_clock_source.c | 48 +- .../gpu/drm/amd/dal/dc/dce110/dce110_compressor.c | 48 +- .../drm/amd/dal/dc/dce110/dce110_hw_sequencer.c | 14 +- .../drm/amd/dal/dc/dce110/dce110_link_encoder.c | 52 +- .../gpu/drm/amd/dal/dc/dce110/dce110_mem_input.c | 4 +- .../gpu/drm/amd/dal/dc/dce110/dce110_opp_regamma.c | 4 +- .../gpu/drm/amd/dal/dc/dce110/dce110_resource.c | 25 +- .../amd/dal/dc/dce110/dce110_timing_generator.c | 3 +- .../amd/dal/dc/dce110/dce110_timing_generator_v.c | 18 +- .../amd/dal/dc/dce110/dce110_transform_bit_depth.c | 20 +- .../drm/amd/dal/dc/dce112/dce112_clock_source.c | 4 +- .../gpu/drm/amd/dal/dc/dce112/dce112_compressor.c | 48 +- .../drm/amd/dal/dc/dce112/dce112_opp_formatter.c | 3 +- .../gpu/drm/amd/dal/dc/dce112/dce112_resource.c | 25 +- .../gpu/drm/amd/dal/dc/dce80/dce80_compressor.c | 48 +- .../gpu/drm/amd/dal/dc/dce80/dce80_link_encoder.c | 12 +- drivers/gpu/drm/amd/dal/dc/dce80/dce80_mem_input.c | 4 +- .../gpu/drm/amd/dal/dc/dce80/dce80_opp_regamma.c | 4 +- .../amd/dal/dc/dce80/dce80_transform_bit_depth.c | 8 +- .../gpu/drm/amd/dal/dc/dce80/dce80_transform_scl.c | 8 +- drivers/gpu/drm/amd/dal/dc/dm_helpers.h | 38 -- drivers/gpu/drm/amd/dal/dc/dm_services_types.h | 32 +- .../amd/dal/dc/gpu/dce110/dc_clock_gating_dce110.c | 2 +- .../amd/dal/dc/gpu/dce110/display_clock_dce110.c | 28 +- .../amd/dal/dc/gpu/dce112/dc_clock_gating_dce112.c | 2 +- .../amd/dal/dc/gpu/dce112/display_clock_dce112.c | 28 +- .../drm/amd/dal/dc/gpu/dce80/display_clock_dce80.c | 12 +- .../dal/dc/i2caux/dce110/i2c_hw_engine_dce110.c | 6 +- .../drm/amd/dal/dc/irq/dce110/irq_service_dce110.c | 12 +- drivers/gpu/drm/amd/dal/dc/irq/irq_service.c | 12 +- drivers/gpu/drm/amd/dal/dc/os_types.h | 61 ++ drivers/gpu/drm/amd/dal/include/fixed31_32.h | 2 + drivers/gpu/drm/amd/dal/include/fixed32_32.h | 3 + drivers/gpu/drm/amd/dal/include/logger_interface.h | 116 ++-- drivers/gpu/drm/amd/dal/include/logger_types.h | 351 ++--------- 53 files changed, 558 insertions(+), 1623 deletions(-) create mode 100644 drivers/gpu/drm/amd/dal/dc/basics/log_helpers.c create mode 100644 drivers/gpu/drm/amd/dal/dc/os_types.h diff --git a/drivers/gpu/drm/amd/dal/amdgpu_dm/amdgpu_dm_helpers.c b/drivers/gpu/drm/amd/dal/amdgpu_dm/amdgpu_dm_helpers.c index 58863ce10304..e503677110c3 100644 --- a/drivers/gpu/drm/amd/dal/amdgpu_dm/amdgpu_dm_helpers.c +++ b/drivers/gpu/drm/amd/dal/amdgpu_dm/amdgpu_dm_helpers.c @@ -42,12 +42,6 @@ #include "dm_helpers.h" -/* Maximum line char number for connectivity log, - * in case of output EDID, needs at least 256x3 bytes plus some other - * message, so set line size to 896. - */ -#define CONN_MAX_LINE_SIZE 896 - /* dm_helpers_parse_edid_caps * * Parse edid caps @@ -487,57 +481,3 @@ bool dm_helpers_submit_i2c( return result; } - -void dm_helper_conn_log(struct dc_context *ctx, - const struct dc_link *link, - uint8_t *hex_data, - int hex_data_count, - enum conn_event event, - const char *msg, - ...) -{ - struct amdgpu_device *adev = ctx->driver_context; - struct drm_device *dev = adev->ddev; - struct amdgpu_connector *aconnector = get_connector_for_link(dev, link); - char buffer[CONN_MAX_LINE_SIZE] = { 0 }; - va_list args; - int size; - enum log_minor minor = event; - - if (!aconnector) { - DRM_ERROR("Failed to found connector for link!"); - return; - } - - va_start(args, msg); - - sprintf(buffer, "[%s] ", aconnector->base.name); - - size = strlen(buffer); - - size += dm_log_to_buffer( - &buffer[size], CONN_MAX_LINE_SIZE, msg, args); - - if (buffer[strlen(buffer) - 1] == '\n') { - buffer[strlen(buffer) - 1] = '\0'; - size--; - } - - if (hex_data_count > (CONN_MAX_LINE_SIZE - size)) - return; - - if (hex_data) { - int i; - - for (i = 0; i < hex_data_count; i++) - sprintf(&buffer[size + i * 3], "%2.2X ", hex_data[i]); - } - - strcat(buffer, "^\n"); - - dal_logger_write(ctx->logger, - LOG_MAJOR_CONNECTIVITY, - minor, - buffer); - va_end(args); -} diff --git a/drivers/gpu/drm/amd/dal/dc/adapter/adapter_service.c b/drivers/gpu/drm/amd/dal/dc/adapter/adapter_service.c index c7904ca92ddf..57228a87d5a1 100644 --- a/drivers/gpu/drm/amd/dal/dc/adapter/adapter_service.c +++ b/drivers/gpu/drm/amd/dal/dc/adapter/adapter_service.c @@ -221,9 +221,7 @@ static void initialize_backlight_caps( struct dc_bios *dcb = as->ctx->dc_bios; if (!(PM_GET_EXTENDED_BRIGHNESS_CAPS & as->platform_methods_mask)) { - dal_logger_write(as->ctx->logger, - LOG_MAJOR_BACKLIGHT, - LOG_MINOR_BACKLIGHT_BRIGHTESS_CAPS, + dm_logger_write(as->ctx->logger, LOG_BACKLIGHT, "This method is not supported\n"); return; } @@ -362,16 +360,12 @@ static void log_overriden_features( uint32_t value) { if (bool_feature) - dal_logger_write(as->ctx->logger, - LOG_MAJOR_FEATURE_OVERRIDE, - LOG_MINOR_FEATURE_OVERRIDE, + dm_logger_write(as->ctx->logger, LOG_FEATURE_OVERRIDE, "Overridden %s is %s now\n", feature_name, (value == 0) ? "disabled" : "enabled"); else - dal_logger_write(as->ctx->logger, - LOG_MAJOR_FEATURE_OVERRIDE, - LOG_MINOR_FEATURE_OVERRIDE, + dm_logger_write(as->ctx->logger, LOG_FEATURE_OVERRIDE, "Overridden %s new value: %d\n", feature_name, value); diff --git a/drivers/gpu/drm/amd/dal/dc/asic_capability/asic_capability.c b/drivers/gpu/drm/amd/dal/dc/asic_capability/asic_capability.c index 540372b4626f..3e83b1e4ab9e 100644 --- a/drivers/gpu/drm/amd/dal/dc/asic_capability/asic_capability.c +++ b/drivers/gpu/drm/amd/dal/dc/asic_capability/asic_capability.c @@ -118,9 +118,7 @@ static bool construct( } if (false == asic_supported) { - dal_logger_write(ctx->logger, - LOG_MAJOR_ERROR, - LOG_MINOR_MASK_ALL, + dm_logger_write(ctx->logger, LOG_ERROR, "%s: ASIC not supported!\n", __func__); } diff --git a/drivers/gpu/drm/amd/dal/dc/asic_capability/hawaii_asic_capability.c b/drivers/gpu/drm/amd/dal/dc/asic_capability/hawaii_asic_capability.c index 2913e572975c..d5eb323f5e87 100644 --- a/drivers/gpu/drm/amd/dal/dc/asic_capability/hawaii_asic_capability.c +++ b/drivers/gpu/drm/amd/dal/dc/asic_capability/hawaii_asic_capability.c @@ -94,9 +94,7 @@ void dal_hawaii_asic_capability_create(struct asic_capability *cap, cap->data[ASIC_DATA_MEMORYTYPE_MULTIPLIER] = 4; break; default: - dal_logger_write(cap->ctx->logger, - LOG_MAJOR_ERROR, - LOG_MINOR_MASK_ALL, + dm_logger_write(cap->ctx->logger, LOG_ERROR, "%s:Unrecognized memory type!", __func__); cap->data[ASIC_DATA_MEMORYTYPE_MULTIPLIER] = 2; break; diff --git a/drivers/gpu/drm/amd/dal/dc/basics/Makefile b/drivers/gpu/drm/amd/dal/dc/basics/Makefile index 93e23714e411..ab37b670a6d3 100644 --- a/drivers/gpu/drm/amd/dal/dc/basics/Makefile +++ b/drivers/gpu/drm/amd/dal/dc/basics/Makefile @@ -3,7 +3,8 @@ # It provides the general basic services required by other DAL # subcomponents. -BASICS = conversion.o fixpt31_32.o fixpt32_32.o grph_object_id.o logger.o register_logger.o signal_types.o vector.o +BASICS = conversion.o fixpt31_32.o fixpt32_32.o grph_object_id.o \ + logger.o log_helpers.o register_logger.o signal_types.o vector.o AMD_DAL_BASICS = $(addprefix $(AMDDALPATH)/dc/basics/,$(BASICS)) diff --git a/drivers/gpu/drm/amd/dal/dc/basics/log_helpers.c b/drivers/gpu/drm/amd/dal/dc/basics/log_helpers.c new file mode 100644 index 000000000000..61f36a7f322b --- /dev/null +++ b/drivers/gpu/drm/amd/dal/dc/basics/log_helpers.c @@ -0,0 +1,100 @@ +/* + * Copyright 2012-16 Advanced Micro Devices, Inc. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR + * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, + * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR + * OTHER DEALINGS IN THE SOFTWARE. + * + * Authors: AMD + * + */ + +#include "core_types.h" +#include "logger.h" +#include "include/logger_interface.h" + +#define NUM_ELEMENTS(a) (sizeof(a) / sizeof((a)[0])) + +struct dc_signal_type_info { + enum signal_type type; + char name[MAX_NAME_LEN]; +}; + +static const struct dc_signal_type_info signal_type_info_tbl[] = { + {SIGNAL_TYPE_NONE, "NC"}, + {SIGNAL_TYPE_DVI_SINGLE_LINK, "DVI"}, + {SIGNAL_TYPE_DVI_DUAL_LINK, "DDVI"}, + {SIGNAL_TYPE_HDMI_TYPE_A, "HDMIA"}, + {SIGNAL_TYPE_LVDS, "LVDS"}, + {SIGNAL_TYPE_RGB, "VGA"}, + {SIGNAL_TYPE_DISPLAY_PORT, "DP"}, + {SIGNAL_TYPE_DISPLAY_PORT_MST, "MST"}, + {SIGNAL_TYPE_EDP, "eDP"}, + {SIGNAL_TYPE_WIRELESS, "Wireless"}, + {SIGNAL_TYPE_VIRTUAL, "Virtual"} +}; + +void dc_conn_log(struct dc_context *ctx, + const struct dc_link *link, + uint8_t *hex_data, + int hex_data_count, + enum dc_log_type event, + const char *msg, + ...) +{ + int i; + va_list args; + struct log_entry entry = { 0 }; + enum signal_type signal; + + if (link->local_sink) + signal = link->local_sink->sink_signal; + else + signal = link->connector_signal; + + if (link->type == dc_connection_mst_branch) + signal = SIGNAL_TYPE_DISPLAY_PORT_MST; + + dm_logger_open(ctx->logger, &entry, event); + + for (i = 0; i < NUM_ELEMENTS(signal_type_info_tbl); i++) + if (signal == signal_type_info_tbl[i].type) + break; + + dm_logger_append(&entry, "[%s][ConnIdx:%d] ", + signal_type_info_tbl[i].name, + link->link_index); + + va_start(args, msg); + entry.buf_offset += dm_log_to_buffer( + &entry.buf[entry.buf_offset], + LOG_MAX_LINE_SIZE - entry.buf_offset, + msg, args); + + if (entry.buf[strlen(entry.buf) - 1] == '\n') { + entry.buf[strlen(entry.buf) - 1] = '\0'; + entry.buf_offset--; + } + + if (hex_data) + for (i = 0; i < hex_data_count; i++) + dm_logger_append(&entry, "%2.2X ", hex_data[i]); + + dm_logger_append(&entry, "^\n"); + dm_logger_close(&entry); + va_end(args); +} diff --git a/drivers/gpu/drm/amd/dal/dc/basics/logger.c b/drivers/gpu/drm/amd/dal/dc/basics/logger.c index 67a1ee241aa2..3c16fe1d91ff 100644 --- a/drivers/gpu/drm/amd/dal/dc/basics/logger.c +++ b/drivers/gpu/drm/amd/dal/dc/basics/logger.c @@ -22,276 +22,79 @@ * Authors: AMD * */ -#include <stdarg.h> #include "dm_services.h" -#include "include/dal_types.h" #include "include/logger_interface.h" #include "logger.h" -/* TODO: for now - empty, use DRM defines from dal services. - Need to define appropriate levels of prints, and implement - this component -void dal_log(const char *format, ...) -{ -} -*/ - -/* ----------- Logging Major/Minor names ------------ */ #define NUM_ELEMENTS(a) (sizeof(a) / sizeof((a)[0])) -static const struct log_minor_info component_minor_info_tbl[] = { - {LOG_MINOR_COMPONENT_LINK_SERVICE, "LS"}, - {LOG_MINOR_COMPONENT_DAL_INTERFACE, "DalIf"}, - {LOG_MINOR_COMPONENT_HWSS, "HWSS"}, - {LOG_MINOR_COMPONENT_ADAPTER_SERVICE, "AS"}, - {LOG_MINOR_COMPONENT_DISPLAY_SERVICE, "DS"}, - {LOG_MINOR_COMPONENT_TOPOLOGY_MANAGER, "TM"}, - {LOG_MINOR_COMPONENT_ENCODER, "Encoder"}, - {LOG_MINOR_COMPONENT_I2C_AUX, "I2cAux"}, - {LOG_MINOR_COMPONENT_AUDIO, "Audio"}, - {LOG_MINOR_COMPONENT_DISPLAY_CAPABILITY_SERVICE, "Dcs"}, - {LOG_MINOR_COMPONENT_DMCU, "Dmcu"}, - {LOG_MINOR_COMPONENT_GPU, "GPU"}, - {LOG_MINOR_COMPONENT_CONTROLLER, "Cntrlr"}, - {LOG_MINOR_COMPONENT_ISR, "ISR"}, - {LOG_MINOR_COMPONENT_BIOS, "BIOS"}, - {LOG_MINOR_COMPONENT_DC, "DC"}, - {LOG_MINOR_COMPONENT_IRQ_SERVICE, "IRQ SERVICE"}, - -}; - -static const struct log_minor_info hw_trace_minor_info_tbl[] = { - {LOG_MINOR_HW_TRACE_MST, "Mst" }, - {LOG_MINOR_HW_TRACE_TRAVIS, "Travis" }, - {LOG_MINOR_HW_TRACE_HOTPLUG, "Hotplug" }, - {LOG_MINOR_HW_TRACE_LINK_TRAINING, "LinkTraining" }, - {LOG_MINOR_HW_TRACE_SET_MODE, "SetMode" }, - {LOG_MINOR_HW_TRACE_RESUME_S3, "ResumeS3" }, - {LOG_MINOR_HW_TRACE_RESUME_S4, "ResumeS4" }, - {LOG_MINOR_HW_TRACE_BOOTUP, "BootUp" }, - {LOG_MINOR_HW_TRACE_AUDIO, "Audio"}, - {LOG_MINOR_HW_TRACE_HPD_IRQ, "HpdIrq" }, - {LOG_MINOR_HW_TRACE_INTERRUPT, "Interrupt" }, - {LOG_MINOR_HW_TRACE_MPO, "Planes" }, -}; - -static const struct log_minor_info mst_minor_info_tbl[] = { - {LOG_MINOR_MST_IRQ_HPD_RX, "IrqHpdRx"}, - {LOG_MINOR_MST_IRQ_TIMER, "IrqTimer"}, - {LOG_MINOR_MST_NATIVE_AUX, "NativeAux"}, - {LOG_MINOR_MST_SIDEBAND_MSG, "SB"}, - {LOG_MINOR_MST_MSG_TRANSACTION, "MT"}, - {LOG_MINOR_MST_SIDEBAND_MSG_PARSED, "SB Parsed"}, - {LOG_MINOR_MST_MSG_TRANSACTION_PARSED, "MT Parsed"}, - {LOG_MINOR_MST_AUX_MSG_DPCD_ACCESS, "AuxMsgDpcdAccess"}, - {LOG_MINOR_MST_PROGRAMMING, "Programming"}, - {LOG_MINOR_MST_TOPOLOGY_DISCOVERY, "TopologyDiscovery"}, - {LOG_MINOR_MST_CONVERTER_CAPS, "ConverterCaps"}, -}; - -static const struct log_minor_info dcs_minor_info_tbl[] = { - {LOG_MINOR_DCS_EDID_EMULATOR, "EdidEmul"}, - {LOG_MINOR_DCS_DONGLE_DETECTION, "DongleDetect"}, -}; - -static const struct log_minor_info dcp_minor_info_tbl[] = { - { LOG_MINOR_DCP_GAMMA_GRPH, "GammaGrph"}, - { LOG_MINOR_DCP_GAMMA_OVL, "GammaOvl"}, - { LOG_MINOR_DCP_CSC_GRPH, "CscGrph"}, - { LOG_MINOR_DCP_CSC_OVL, "CscOvl"}, - { LOG_MINOR_DCP_SCALER, "Scaler"}, - { LOG_MINOR_DCP_SCALER_TABLES, "ScalerTables"}, +static const struct dc_log_type_info log_type_info_tbl[] = { + {LOG_ERROR, "Error"}, + {LOG_WARNING, "Warning"}, + {LOG_DC, "DC_Interface"}, + {LOG_SURFACE, "Surface"}, + {LOG_HW_HOTPLUG, "HW_Hotplug"}, + {LOG_HW_LINK_TRAINING, "HW_LKTN"}, + {LOG_HW_SET_MODE, "HW_Mode"}, + {LOG_HW_RESUME_S3, "HW_Resume"}, + {LOG_HW_AUDIO, "HW_Audio"}, + {LOG_HW_HPD_IRQ, "HW_HPDIRQ"}, + {LOG_MST, "MST"}, + {LOG_SCALER, "Scaler"}, + {LOG_BIOS, "BIOS"}, + {LOG_BANDWIDTH_CALCS, "BWCalcs"}, + {LOG_BANDWIDTH_VALIDATION, "BWValidation"}, + {LOG_I2C_AUX, "I2C_AUX"}, + {LOG_SYNC, "Sync"}, + {LOG_BACKLIGHT, "Backlight"}, + {LOG_FEATURE_OVERRIDE, "Override"}, + {LOG_DETECTION_EDID_PARSER, "Edid"}, + {LOG_DETECTION_DP_CAPS, "DP_Caps"}, + {LOG_RESOURCE, "Resource"}, + {LOG_DML, "DML"}, + {LOG_EVENT_MODE_SET, "Mode"}, + {LOG_EVENT_DETECTION, "Detect"}, + {LOG_EVENT_LINK_TRAINING, "LKTN"}, + {LOG_EVENT_LINK_LOSS, "LinkLoss"}, + {LOG_EVENT_UNDERFLOW, "Underflow"} }; -static const struct log_minor_info bios_minor_info_tbl[] = { - {LOG_MINOR_BIOS_CMD_TABLE, "CmdTbl"}, -}; - -static const struct log_minor_info reg_minor_info_tbl[] = { - {LOG_MINOR_REGISTER_INDEX, "Index"}, -}; - -static const struct log_minor_info info_packet_minor_info_tbl[] = { - {LOG_MINOR_INFO_PACKETS_HDMI, "Hdmi"}, -}; - -static const struct log_minor_info dsat_minor_info_tbl[] = { - {LOG_MINOR_DSAT_LOGGER, "Logger"}, - {LOG_MINOR_DSAT_EDID_OVERRIDE, "EDID_Override"}, -}; - -static const struct log_minor_info ec_minor_info_tbl[] = { - {LOG_MINOR_EC_PPLIB_NOTIFY, "PPLib_Notify" }, /* PPLib notifies DAL */ - {LOG_MINOR_EC_PPLIB_QUERY, "PPLib_Query" } /* DAL requested info from - PPLib */ -}; -static const struct log_minor_info bwm_minor_info_tbl[] = { - {LOG_MINOR_BWM_MODE_VALIDATION, "ModeValidation"}, - {LOG_MINOR_BWM_REQUIRED_BANDWIDTH_CALCS, "Req_Bandw_Calcs"} -}; - -static const struct log_minor_info mode_enum_minor_info_tbl[] = { - {LOG_MINOR_MODE_ENUM_BEST_VIEW_CANDIDATES, "BestviewCandidates"}, - {LOG_MINOR_MODE_ENUM_VIEW_SOLUTION, "ViewSolution"}, - {LOG_MINOR_MODE_ENUM_TS_LIST_BUILD, "TsListBuild"}, - {LOG_MINOR_MODE_ENUM_TS_LIST, "TsList"}, - {LOG_MINOR_MODE_ENUM_MASTER_VIEW_LIST, "MasterViewList"}, - {LOG_MINOR_MODE_ENUM_MASTER_VIEW_LIST_UPDATE, "MasterViewListUpdate"}, -}; - -static const struct log_minor_info i2caux_minor_info_tbl[] = { - {LOG_MINOR_I2C_AUX_LOG, "Log"}, - {LOG_MINOR_I2C_AUX_AUX_TIMESTAMP, "Timestamp"}, - {LOG_MINOR_I2C_AUX_CFG, "Config"} -}; - -static const struct log_minor_info line_buffer_minor_info_tbl[] = { - {LOG_MINOR_LINE_BUFFER_POWERGATING, "PowerGating"} -}; - -static const struct log_minor_info hwss_minor_info_tbl[] = { - {LOG_MINOR_HWSS_TAPS_VALIDATION, "HWSS Taps"} -}; - -static const struct log_minor_info optimization_minor_info_tbl[] = { - {LOG_MINOR_OPTMZ_GENERAL, "General Optimizations"}, - {LOG_MINOR_OPTMZ_DO_NOT_TURN_OFF_VCC_DURING_SET_MODE, - "Skip Vcc Off During Set Mode"} -}; - -static const struct log_minor_info perf_measure_minor_info_tbl[] = { - {LOG_MINOR_PERF_MEASURE_GENERAL, "General Performance Measurement"}, - {LOG_MINOR_PERF_MEASURE_HEAP_MEMORY, "Heap Memory Management"} -}; - -static const struct log_minor_info sync_minor_info_tbl[] = { - {LOG_MINOR_SYNC_HW_CLOCK_ADJUST, "Pixel Rate Tune-up"}, - {LOG_MINOR_SYNC_TIMING, "Timing"} -}; - -static const struct log_minor_info backlight_minor_info_tbl[] = { - {LOG_MINOR_BACKLIGHT_BRIGHTESS_CAPS, "Caps"}, - {LOG_MINOR_BACKLIGHT_DMCU_DELTALUT, "DMCU Delta LUT"}, - {LOG_MINOR_BACKLIGHT_DMCU_BUILD_DELTALUT, "Build DMCU Delta LUT"}, - {LOG_MINOR_BACKLIGHT_INTERFACE, "Interface"}, - {LOG_MINOR_BACKLIGHT_LID, "Lid Status"} -}; - -static const struct log_minor_info override_feature_minor_info_tbl[] = { - {LOG_MINOR_FEATURE_OVERRIDE, "overriden feature"}, -}; - -static const struct log_minor_info detection_minor_info_tbl[] = { - {LOG_MINOR_DETECTION_EDID_PARSER, "EDID Parser"}, - {LOG_MINOR_DETECTION_DP_CAPS, "DP caps"}, -}; - -static const struct log_minor_info tm_minor_info_tbl[] = { - {LOG_MINOR_TM_INFO, "INFO"}, - {LOG_MINOR_TM_IFACE_TRACE, "IFACE_TRACE"}, - {LOG_MINOR_TM_RESOURCES, "RESOURCES"}, - {LOG_MINOR_TM_ENCODER_CTL, "ENCODER_CTL"}, - {LOG_MINOR_TM_ENG_ASN, "ENG_ASN"}, - {LOG_MINOR_TM_CONTROLLER_ASN, "CONTROLLER_ASN"}, - {LOG_MINOR_TM_PWR_GATING, "PWR_GATING"}, - {LOG_MINOR_TM_BUILD_DSP_PATH, "BUILD_PATH"}, - {LOG_MINOR_TM_DISPLAY_DETECT, "DISPLAY_DETECT"}, - {LOG_MINOR_TM_LINK_SRV, "LINK_SRV"}, - {LOG_MINOR_TM_NOT_IMPLEMENTED, "NOT_IMPL"}, - {LOG_MINOR_TM_COFUNC_PATH, "COFUNC_PATH"} -}; - -static const struct log_minor_info ds_minor_info_tbl[] = { - {LOG_MINOR_DS_MODE_SETTING, "Mode_Setting"}, -}; - -static const struct log_minor_info connectivity_minor_info_tbl[] = { - {LOG_MINOR_CONNECTIVITY_MODE_SET, "Mode"}, - {LOG_MINOR_CONNECTIVITY_DETECTION, "Detect"}, - {LOG_MINOR_CONNECTIVITY_LINK_TRAINING, "LKTN"}, - {LOG_MINOR_CONNECTIVITY_LINK_LOSS, "LinkLoss"}, - {LOG_MINOR_CONNECTIVITY_UNDERFLOW, "Underflow"}, -}; - -struct log_major_mask_info { - struct log_major_info major_info; - uint32_t default_mask; - const struct log_minor_info *minor_tbl; - uint32_t tbl_element_cnt; -}; - -/* A mask for each Major. - * Use a mask or zero. */ -#define LG_ERR_MSK 0xffffffff -#define LG_WRN_MSK 0xffffffff -#define LG_TM_MSK (1 << LOG_MINOR_TM_RESOURCES) -#define LG_FO_MSK (1 << LOG_MINOR_FEATURE_OVERRIDE) -#define LG_EC_MSK ((1 << LOG_MINOR_EC_PPLIB_NOTIFY) | \ - (1 << LOG_MINOR_EC_PPLIB_QUERY)) -#define LG_DSAT_MSK (1 << LOG_MINOR_DSAT_EDID_OVERRIDE) -#define LG_DT_MSK (1 << LOG_MINOR_DETECTION_EDID_PARSER) - -/* IFT - InterFaceTrace */ -#define LG_IFT_MSK (1 << LOG_MINOR_COMPONENT_DC) - -#define LG_HW_TR_AUD_MSK (1 << LOG_MINOR_HW_TRACE_AUDIO) -#define LG_HW_TR_INTERRUPT_MSK (1 << LOG_MINOR_HW_TRACE_INTERRUPT) | \ - (1 << LOG_MINOR_HW_TRACE_HPD_IRQ) -#define LG_HW_TR_PLANES_MSK (1 << LOG_MINOR_HW_TRACE_MPO) -#define LG_ALL_MSK 0xffffffff -#define LG_DCP_MSK ~(1 << LOG_MINOR_DCP_SCALER) - -#define LG_SYNC_MSK (1 << LOG_MINOR_SYNC_TIMING) - -#define LG_BWM_MSK (1 << LOG_MINOR_BWM_MODE_VALIDATION) - -#define LG_WARN_MSK ~(1 << LOG_MINOR_COMPONENT_TOPOLOGY_MANAGER) - -#define LG_IF_MSK ~(1 << LOG_MINOR_COMPONENT_SURFACE) - -#define LG_HW_TRACE_MSK (LG_ALL_MSK & \ - ~((1 << LOG_MINOR_HW_TRACE_LINK_TRAINING) \ - | (1 << LOG_MINOR_HW_TRACE_AUDIO))) - -static const struct log_major_mask_info log_major_mask_info_tbl[] = { - /* LogMajor major name default MinorTble tblElementCnt */ - {{LOG_MAJOR_ERROR, "Error" }, LG_ALL_MSK, component_minor_info_tbl, NUM_ELEMENTS(component_minor_info_tbl)}, - {{LOG_MAJOR_WARNING, "Warning" }, LG_WARN_MSK, component_minor_info_tbl, NUM_ELEMENTS(component_minor_info_tbl)}, - {{LOG_MAJOR_INTERFACE_TRACE, "IfTrace" }, LG_IF_MSK, component_minor_info_tbl, NUM_ELEMENTS(component_minor_info_tbl)}, - {{LOG_MAJOR_HW_TRACE, "HwTrace" }, LG_HW_TRACE_MSK, hw_trace_minor_info_tbl, NUM_ELEMENTS(hw_trace_minor_info_tbl)}, - {{LOG_MAJOR_MST, "MST" }, LG_ALL_MSK, mst_minor_info_tbl, NUM_ELEMENTS(mst_minor_info_tbl)}, - {{LOG_MAJOR_DCS, "DCS" }, LG_ALL_MSK, dcs_minor_info_tbl, NUM_ELEMENTS(dcs_minor_info_tbl)}, - {{LOG_MAJOR_DCP, "DCP" }, LG_DCP_MSK, dcp_minor_info_tbl, NUM_ELEMENTS(dcp_minor_info_tbl)}, - {{LOG_MAJOR_BIOS, "Bios" }, LG_ALL_MSK, bios_minor_info_tbl, NUM_ELEMENTS(bios_minor_info_tbl)}, - {{LOG_MAJOR_REGISTER, "Register" }, LG_ALL_MSK, reg_minor_info_tbl, NUM_ELEMENTS(reg_minor_info_tbl)}, - {{LOG_MAJOR_INFO_PACKETS, "InfoPacket" }, LG_ALL_MSK, info_packet_minor_info_tbl, NUM_ELEMENTS(info_packet_minor_info_tbl)}, - {{LOG_MAJOR_DSAT, "DSAT" }, LG_ALL_MSK, dsat_minor_info_tbl, NUM_ELEMENTS(dsat_minor_info_tbl)}, - {{LOG_MAJOR_EC, "EC" }, LG_ALL_MSK, ec_minor_info_tbl, NUM_ELEMENTS(ec_minor_info_tbl)}, - {{LOG_MAJOR_BWM, "BWM" }, LG_BWM_MSK, bwm_minor_info_tbl, NUM_ELEMENTS(bwm_minor_info_tbl)}, - {{LOG_MAJOR_MODE_ENUM, "ModeEnum" }, LG_ALL_MSK, mode_enum_minor_info_tbl, NUM_ELEMENTS(mode_enum_minor_info_tbl)}, - {{LOG_MAJOR_I2C_AUX, "I2cAux" }, LG_ALL_MSK, i2caux_minor_info_tbl, NUM_ELEMENTS(i2caux_minor_info_tbl)}, - {{LOG_MAJOR_LINE_BUFFER, "LineBuffer" }, LG_ALL_MSK, line_buffer_minor_info_tbl, NUM_ELEMENTS(line_buffer_minor_info_tbl)}, - {{LOG_MAJOR_HWSS, "HWSS" }, LG_ALL_MSK, hwss_minor_info_tbl, NUM_ELEMENTS(hwss_minor_info_tbl)}, - {{LOG_MAJOR_OPTIMIZATION, "Optimization"}, LG_ALL_MSK, optimization_minor_info_tbl, NUM_ELEMENTS(optimization_minor_info_tbl)}, - {{LOG_MAJOR_PERF_MEASURE, "PerfMeasure" }, LG_ALL_MSK, perf_measure_minor_info_tbl, NUM_ELEMENTS(perf_measure_minor_info_tbl)}, - {{LOG_MAJOR_SYNC, "Sync" }, LG_SYNC_MSK,sync_minor_info_tbl, NUM_ELEMENTS(sync_minor_info_tbl)}, - {{LOG_MAJOR_BACKLIGHT, "Backlight" }, LG_ALL_MSK, backlight_minor_info_tbl, NUM_ELEMENTS(backlight_minor_info_tbl)}, - {{LOG_MAJOR_INTERRUPTS, "Interrupts" }, LG_ALL_MSK, component_minor_info_tbl, NUM_ELEMENTS(component_minor_info_tbl)}, - {{LOG_MAJOR_TM, "TM" }, LG_TM_MSK, tm_minor_info_tbl, NUM_ELEMENTS(tm_minor_info_tbl)}, - {{LOG_MAJOR_DISPLAY_SERVICE, "DS" }, LG_ALL_MSK, ds_minor_info_tbl, NUM_ELEMENTS(ds_minor_info_tbl)}, - {{LOG_MAJOR_FEATURE_OVERRIDE, "FeatureOverride" }, LG_ALL_MSK, override_feature_minor_info_tbl, NUM_ELEMENTS(override_feature_minor_info_tbl)}, - {{LOG_MAJOR_DETECTION, "Detection" }, LG_ALL_MSK, detection_minor_info_tbl, NUM_ELEMENTS(detection_minor_info_tbl)}, - {{LOG_MAJOR_CONNECTIVITY, "Conn" }, LG_ALL_MSK, connectivity_minor_info_tbl, NUM_ELEMENTS(connectivity_minor_info_tbl)}, -}; +#define DC_DEFAULT_LOG_MASK ((1 << LOG_ERROR) | \ + (1 << LOG_WARNING) | \ + (1 << LOG_EVENT_MODE_SET) | \ + (1 << LOG_EVENT_DETECTION) | \ + (1 << LOG_EVENT_LINK_TRAINING) | \ + (1 << LOG_EVENT_LINK_LOSS) | \ + (1 << LOG_EVENT_UNDERFLOW) | \ + (1 << LOG_RESOURCE) | \ + (1 << LOG_FEATURE_OVERRIDE) | \ + (1 << LOG_DETECTION_EDID_PARSER) | \ + (1 << LOG_DC) | \ + (1 << LOG_HW_HOTPLUG) | \ + (1 << LOG_HW_SET_MODE) | \ + (1 << LOG_HW_RESUME_S3) | \ + (1 << LOG_HW_HPD_IRQ) | \ + (1 << LOG_SYNC) | \ + (1 << LOG_BANDWIDTH_VALIDATION) | \ + (1 << LOG_MST) | \ + (1 << LOG_BIOS) | \ + (1 << LOG_DETECTION_EDID_PARSER) | \ + (1 << LOG_DETECTION_DP_CAPS) | \ + (1 << LOG_BACKLIGHT)) | \ + (1 << LOG_I2C_AUX)/* | \ + (1 << LOG_SURFACE) | \ + (1 << LOG_SCALER) | \ + (1 << LOG_DML) | \ + (1 << LOG_HW_LINK_TRAINING) | \ + (1 << LOG_HW_AUDIO)| \ + (1 << LOG_BANDWIDTH_CALCS)*/ /* ----------- Object init and destruction ----------- */ static bool construct(struct dc_context *ctx, struct dal_logger *logger) { - uint32_t i; /* malloc buffer and init offsets */ - logger->log_buffer_size = DAL_LOGGER_BUFFER_MAX_SIZE; logger->log_buffer = (char *)dm_alloc(logger->log_buffer_size * sizeof(char)); @@ -299,8 +102,6 @@ static bool construct(struct dc_context *ctx, struct dal_logger *logger) if (!logger->log_buffer) return false; - /* todo: Fill buffer with \0 if not done by dal_alloc */ - /* Initialize both offsets to start of buffer (empty) */ logger->buffer_read_offset = 0; logger->buffer_write_offset = 0; @@ -314,20 +115,7 @@ static bool construct(struct dc_context *ctx, struct dal_logger *logger) logger->ctx = ctx; - /* malloc and init minor mask array */ - logger->log_enable_mask_minors = - (uint32_t *)dm_alloc(NUM_ELEMENTS(log_major_mask_info_tbl) - * sizeof(uint32_t)); - if (!logger->log_enable_mask_minors) - return false; - - /* Set default values for mask */ - for (i = 0; i < NUM_ELEMENTS(log_major_mask_info_tbl); i++) { - - uint32_t dflt_mask = log_major_mask_info_tbl[i].default_mask; - - logger->log_enable_mask_minors[i] = dflt_mask; - } + logger->mask = DC_DEFAULT_LOG_MASK; return true; } @@ -338,11 +126,6 @@ static void destruct(struct dal_logger *logger) dm_free(logger->log_buffer); logger->log_buffer = NULL; } - - if (logger->log_enable_mask_minors) { - dm_free(logger->log_enable_mask_minors); - logger->log_enable_mask_minors = NULL; - } } struct dal_logger *dal_logger_create(struct dc_context *ctx) @@ -373,28 +156,13 @@ uint32_t dal_logger_destroy(struct dal_logger **logger) /* ------------------------------------------------------------------------ */ -static void lock(struct dal_logger *logger) -{ - /* Todo: lock mutex? */ -} -static void unlock(struct dal_logger *logger) -{ - /* Todo: unlock mutex */ -} - -bool dal_logger_should_log( +static bool dal_logger_should_log( struct dal_logger *logger, - enum log_major major, - enum log_minor minor) + enum dc_log_type log_type) { - if (major < LOG_MAJOR_COUNT) { - - uint32_t minor_mask = logger->log_enable_mask_minors[major]; - - if ((minor_mask & (1 << minor)) != 0) - return true; - } + if (logger->mask & (1 << log_type)) + return true; return false; } @@ -407,8 +175,8 @@ static void log_to_debug_console(struct log_entry *entry) return; if (entry->buf_offset) { - switch (entry->major) { - case LOG_MAJOR_ERROR: + switch (entry->type) { + case LOG_ERROR: dm_error("%s", entry->buf); break; default: @@ -519,56 +287,21 @@ static void log_to_internal_buffer(struct log_entry *entry) } } - - unlock(logger); } -static void log_timestamp(struct log_entry *entry) +static void log_heading(struct log_entry *entry) { -/* dal_logger_append(entry, "00:00:00 ");*/ -} - -static void log_major_minor(struct log_entry *entry) -{ - uint32_t i; - enum log_major major = entry->major; - enum log_minor minor = entry->minor; - - for (i = 0; i < NUM_ELEMENTS(log_major_mask_info_tbl); i++) { - - const struct log_major_mask_info *maj_mask_info = - &log_major_mask_info_tbl[i]; - - if (maj_mask_info->major_info.major == major) { + int j; - dal_logger_append(entry, "[%s_", - maj_mask_info->major_info.major_name); + for (j = 0; j < NUM_ELEMENTS(log_type_info_tbl); j++) { - if (maj_mask_info->minor_tbl != NULL) { - uint32_t j; + const struct dc_log_type_info *info = &log_type_info_tbl[j]; - for (j = 0; j < maj_mask_info->tbl_element_cnt; j++) { - - const struct log_minor_info *min_info = &maj_mask_info->minor_tbl[j]; - - if (min_info->minor == minor) - dal_logger_append(entry, "%s]\t", min_info->minor_name); - } - } - - break; - } + if (info->type == entry->type) + dm_logger_append(entry, "[%s]\t", info->name); } } -static void log_heading(struct log_entry *entry, - enum log_major major, - enum log_minor minor) -{ - log_timestamp(entry); - log_major_minor(entry); -} - static void append_entry( struct log_entry *entry, char *buffer, @@ -591,23 +324,20 @@ static void append_entry( /* Warning: Be careful that 'msg' is null terminated and the total size is * less than DAL_LOGGER_BUFFER_MAX_LOG_LINE_SIZE (256) including '\0' */ -void dal_logger_write( +void dm_logger_write( struct dal_logger *logger, - enum log_major major, - enum log_minor minor, + enum dc_log_type log_type, const char *msg, ...) { - if (logger && dal_logger_should_log(logger, major, minor)) { + if (logger && dal_logger_should_log(logger, log_type)) { uint32_t size; va_list args; - char buffer[DAL_LOGGER_BUFFER_MAX_LOG_LINE_SIZE]; + char buffer[LOG_MAX_LINE_SIZE]; struct log_entry entry; va_start(args, msg); - entry.major = LOG_MAJOR_COUNT; - entry.minor = 0; entry.logger = logger; entry.buf = buffer; @@ -615,13 +345,12 @@ void dal_logger_write( entry.buf_offset = 0; entry.max_buf_bytes = DAL_LOGGER_BUFFER_MAX_SIZE * sizeof(char); - entry.major = major; - entry.minor = minor; + entry.type = log_type; - log_heading(&entry, major, minor); + log_heading(&entry); size = dm_log_to_buffer( - buffer, DAL_LOGGER_BUFFER_MAX_LOG_LINE_SIZE, msg, args); + buffer, LOG_MAX_LINE_SIZE, msg, args); entry.buf_offset += size; @@ -635,10 +364,10 @@ void dal_logger_write( } } -/* Same as dal_logger_write, except without open() and close(), which must +/* Same as dm_logger_write, except without open() and close(), which must * be done separately. */ -void dal_logger_append( +void dm_logger_append( struct log_entry *entry, const char *msg, ...) @@ -653,18 +382,18 @@ void dal_logger_append( logger = entry->logger; if (logger && logger->open_count > 0 && - dal_logger_should_log(logger, entry->major, entry->minor)) { + dal_logger_should_log(logger, entry->type)) { uint32_t size; va_list args; - char buffer[DAL_LOGGER_BUFFER_MAX_LOG_LINE_SIZE]; + char buffer[LOG_MAX_LINE_SIZE]; va_start(args, msg); size = dm_log_to_buffer( - buffer, DAL_LOGGER_BUFFER_MAX_LOG_LINE_SIZE, msg, args); + buffer, LOG_MAX_LINE_SIZE, msg, args); - if (size < DAL_LOGGER_BUFFER_MAX_LOG_LINE_SIZE - 1) { + if (size < LOG_MAX_LINE_SIZE - 1) { append_entry(entry, buffer, size); } else { append_entry(entry, "LOG_ERROR, line too long\n", 27); @@ -674,95 +403,17 @@ void dal_logger_append( } } -uint32_t dal_logger_read( - struct dal_logger *logger, /* <[in] */ - uint32_t output_buffer_size, /* <[in] */ - char *output_buffer, /* >[out] */ - uint32_t *bytes_read, /* >[out] */ - bool single_line) -{ - uint32_t bytes_remaining = 0; - uint32_t bytes_read_count = 0; - bool keep_reading = true; - - if (!logger || output_buffer == NULL || output_buffer_size == 0) { - BREAK_TO_DEBUGGER(); - *bytes_read = 0; - return 0; - } - - lock(logger); - - /* Read until null terminator (if single_line==true, - * max buffer size, or until we've read everything new - */ - - do { - char cur; - - /* Stop when we've read everything */ - if (logger->buffer_read_offset == - logger->buffer_write_offset) { - - break; - } - - cur = logger->log_buffer[logger->buffer_read_offset]; - logger->buffer_read_offset++; - - /* Wrap read pointer if at end */ - if (logger->buffer_read_offset == logger->log_buffer_size) { - - logger->buffer_read_offset = 0; - logger->read_wrap_count++; - } - - /* Don't send null terminators to buffer */ - if (cur != '\0') { - output_buffer[bytes_read_count] = cur; - bytes_read_count++; - } else if (single_line) { - keep_reading = false; - } - - } while (bytes_read_count <= output_buffer_size && keep_reading); - - /* We assume that reading can never be ahead of writing */ - if (logger->write_wrap_count > logger->read_wrap_count) { - bytes_remaining = logger->log_buffer_size - - logger->buffer_read_offset + - logger->buffer_write_offset; - } else { - bytes_remaining = logger->buffer_write_offset - - logger->buffer_read_offset; - } - - /* reset write/read wrap count to 0 if we've read everything */ - if (bytes_remaining == 0) { - - logger->write_wrap_count = 0; - logger->read_wrap_count = 0; - } - - *bytes_read = bytes_read_count; - unlock(logger); - - return bytes_remaining; -} - -void dal_logger_open( +void dm_logger_open( struct dal_logger *logger, struct log_entry *entry, /* out */ - enum log_major major, - enum log_minor minor) + enum dc_log_type log_type) { if (!entry) { BREAK_TO_DEBUGGER(); return; } - entry->major = LOG_MAJOR_COUNT; - entry->minor = 0; + entry->type = log_type; entry->logger = logger; entry->buf = dm_alloc(DAL_LOGGER_BUFFER_MAX_SIZE * sizeof(char)); @@ -771,13 +422,11 @@ void dal_logger_open( entry->max_buf_bytes = DAL_LOGGER_BUFFER_MAX_SIZE * sizeof(char); logger->open_count++; - entry->major = major; - entry->minor = minor; - log_heading(entry, major, minor); + log_heading(entry); } -void dal_logger_close(struct log_entry *entry) +void dm_logger_close(struct log_entry *entry) { struct dal_logger *logger = entry->logger; @@ -804,148 +453,3 @@ cleanup: entry->max_buf_bytes = 0; } } - -uint32_t dal_logger_get_mask( - struct dal_logger *logger, - enum log_major lvl_major, enum log_minor lvl_minor) -{ - uint32_t log_mask = 0; - - if (logger && lvl_major < LOG_MAJOR_COUNT) - log_mask = logger->log_enable_mask_minors[lvl_major]; - - log_mask &= 1 << lvl_minor; - return log_mask; -} - -uint32_t dal_logger_set_mask( - struct dal_logger *logger, - enum log_major lvl_major, enum log_minor lvl_minor) -{ - - if (logger && lvl_major < LOG_MAJOR_COUNT) { - if (lvl_minor == LOG_MINOR_MASK_ALL) { - logger->log_enable_mask_minors[lvl_major] = 0xFFFFFFFF; - } else { - logger->log_enable_mask_minors[lvl_major] |= - (1 << lvl_minor); - } - return 0; - } - return 1; -} - -uint32_t dal_logger_get_masks( - struct dal_logger *logger, - enum log_major lvl_major) -{ - uint32_t log_mask = 0; - - if (logger && lvl_major < LOG_MAJOR_COUNT) - log_mask = logger->log_enable_mask_minors[lvl_major]; - - return log_mask; -} - -void dal_logger_set_masks( - struct dal_logger *logger, - enum log_major lvl_major, uint32_t log_mask) -{ - if (logger && lvl_major < LOG_MAJOR_COUNT) - logger->log_enable_mask_minors[lvl_major] = log_mask; -} - -uint32_t dal_logger_unset_mask( - struct dal_logger *logger, - enum log_major lvl_major, enum log_minor lvl_minor) -{ - - if (lvl_major < LOG_MAJOR_COUNT) { - if (lvl_minor == LOG_MINOR_MASK_ALL) { - logger->log_enable_mask_minors[lvl_major] = 0; - } else { - logger->log_enable_mask_minors[lvl_major] &= - ~(1 << lvl_minor); - } - return 0; - } - return 1; -} - -uint32_t dal_logger_get_flags( - struct dal_logger *logger) -{ - - return logger->flags.value; -} - -void dal_logger_set_flags( - struct dal_logger *logger, - union logger_flags flags) -{ - - logger->flags = flags; -} - -uint32_t dal_logger_get_buffer_size(struct dal_logger *logger) -{ - return DAL_LOGGER_BUFFER_MAX_SIZE; -} - -uint32_t dal_logger_set_buffer_size( - struct dal_logger *logger, - uint32_t new_size) -{ - /* ToDo: implement dynamic size */ - - /* return new size */ - return DAL_LOGGER_BUFFER_MAX_SIZE; -} - -const struct log_major_info *dal_logger_enum_log_major_info( - struct dal_logger *logger, - unsigned int enum_index) -{ - const struct log_major_info *major_info; - - if (enum_index >= NUM_ELEMENTS(log_major_mask_info_tbl)) - return NULL; - - major_info = &log_major_mask_info_tbl[enum_index].major_info; - return major_info; -} - -const struct log_minor_info *dal_logger_enum_log_minor_info( - struct dal_logger *logger, - enum log_major major, - unsigned int enum_index) -{ - const struct log_minor_info *minor_info = NULL; - uint32_t i; - - for (i = 0; i < NUM_ELEMENTS(log_major_mask_info_tbl); i++) { - - const struct log_major_mask_info *maj_mask_info = - &log_major_mask_info_tbl[i]; - - if (maj_mask_info->major_info.major == major) { - - if (maj_mask_info->minor_tbl != NULL) { - uint32_t j; - - for (j = 0; j < maj_mask_info->tbl_element_cnt; j++) { - - minor_info = &maj_mask_info->minor_tbl[j]; - - if (minor_info->minor == enum_index) - return minor_info; - } - } - - break; - } - } - return NULL; - -} - diff --git a/drivers/gpu/drm/amd/dal/dc/basics/logger.h b/drivers/gpu/drm/amd/dal/dc/basics/logger.h index 12d8ae6b18bb..2f7a5df4c811 100644 --- a/drivers/gpu/drm/amd/dal/dc/basics/logger.h +++ b/drivers/gpu/drm/amd/dal/dc/basics/logger.h @@ -33,7 +33,7 @@ /*Connectivity log needs to output EDID, which needs at lease 256x3 bytes, * change log line size to 896 to meet the request. */ -#define DAL_LOGGER_BUFFER_MAX_LOG_LINE_SIZE 896 +#define LOG_MAX_LINE_SIZE 896 #include "include/logger_types.h" @@ -58,7 +58,7 @@ struct dal_logger { char *log_buffer; /* Pointer to malloc'ed buffer */ uint32_t log_buffer_size; /* Size of circular buffer */ - uint32_t *log_enable_mask_minors; /*array of masks for major elements*/ + uint32_t mask; /*array of masks for major elements*/ union logger_flags flags; struct dc_context *ctx; diff --git a/drivers/gpu/drm/amd/dal/dc/bios/bios_parser.c b/drivers/gpu/drm/amd/dal/dc/bios/bios_parser.c index f98f2882b0fd..0647156f313c 100644 --- a/drivers/gpu/drm/amd/dal/dc/bios/bios_parser.c +++ b/drivers/gpu/drm/amd/dal/dc/bios/bios_parser.c @@ -3374,9 +3374,7 @@ static enum bp_result patch_bios_image_from_ext_display_connection_info( opm_object, &ext_display_connection_info_tbl) != BP_RESULT_OK) { - dal_logger_write(bp->base.ctx->logger, - LOG_MAJOR_BIOS, - LOG_MINOR_BIOS_CMD_TABLE, + dm_logger_write(bp->base.ctx->logger, LOG_BIOS, "%s: Failed to read Connection Info Table", __func__); return BP_RESULT_UNSUPPORTED; } diff --git a/drivers/gpu/drm/amd/dal/dc/core/dc.c b/drivers/gpu/drm/amd/dal/dc/core/dc.c index e039cc4ec54c..47db0fd82fe6 100644 --- a/drivers/gpu/drm/amd/dal/dc/core/dc.c +++ b/drivers/gpu/drm/amd/dal/dc/core/dc.c @@ -653,9 +653,7 @@ struct dc *dc_create(const struct dc_init_data *init_params) core_dc->public.config.gpu_vm_support = init_params->flags.gpu_vm_support; - dal_logger_write(core_dc->ctx->logger, - LOG_MAJOR_INTERFACE_TRACE, - LOG_MINOR_COMPONENT_DC, + dm_logger_write(core_dc->ctx->logger, LOG_DC, "Display Core initialized\n"); return &core_dc->public; @@ -733,9 +731,7 @@ bool dc_validate_resources( context_alloc_fail: if (result != DC_OK) { - dal_logger_write(core_dc->ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_TOPOLOGY_MANAGER, + dm_logger_write(core_dc->ctx->logger, LOG_WARNING, "%s:resource validation failed, dc_status:%d\n", __func__, result); @@ -765,9 +761,7 @@ bool dc_validate_guaranteed( context_alloc_fail: if (result != DC_OK) { - dal_logger_write(core_dc->ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_TOPOLOGY_MANAGER, + dm_logger_write(core_dc->ctx->logger, LOG_WARNING, "%s:guaranteed validation failed, dc_status:%d\n", __func__, result); @@ -1044,9 +1038,7 @@ bool dc_commit_targets( if (false == targets_changed(core_dc, targets, target_count)) return DC_OK; - dal_logger_write(core_dc->ctx->logger, - LOG_MAJOR_INTERFACE_TRACE, - LOG_MINOR_COMPONENT_DC, + dm_logger_write(core_dc->ctx->logger, LOG_DC, "%s: %d targets\n", __func__, target_count); @@ -1056,8 +1048,7 @@ bool dc_commit_targets( dc_target_log(target, core_dc->ctx->logger, - LOG_MAJOR_INTERFACE_TRACE, - LOG_MINOR_COMPONENT_DC); + LOG_DC); set[i].target = targets[i]; set[i].surface_count = 0; @@ -1070,9 +1061,7 @@ bool dc_commit_targets( result = core_dc->res_pool->funcs->validate_with_context(core_dc, set, target_count, context); if (result != DC_OK){ - dal_logger_write(core_dc->ctx->logger, - LOG_MAJOR_ERROR, - LOG_MINOR_COMPONENT_DC, + dm_logger_write(core_dc->ctx->logger, LOG_ERROR, "%s: Context validation failed! dc_status:%d\n", __func__, result); @@ -1196,9 +1185,7 @@ bool dc_pre_update_surfaces_to_target( resource_validate_ctx_copy_construct(core_dc->current_context, context); - dal_logger_write(core_dc->ctx->logger, - LOG_MAJOR_INTERFACE_TRACE, - LOG_MINOR_COMPONENT_DC, + dm_logger_write(core_dc->ctx->logger, LOG_DC, "%s: commit %d surfaces to target 0x%x\n", __func__, new_surface_count, diff --git a/drivers/gpu/drm/amd/dal/dc/core/dc_link.c b/drivers/gpu/drm/amd/dal/dc/core/dc_link.c index 39bf829a9fa6..44ed32575b02 100644 --- a/drivers/gpu/drm/amd/dal/dc/core/dc_link.c +++ b/drivers/gpu/drm/amd/dal/dc/core/dc_link.c @@ -58,8 +58,7 @@ #endif #define LINK_INFO(...) \ - dal_logger_write(dc_ctx->logger, \ - LOG_MAJOR_HW_TRACE, LOG_MINOR_HW_TRACE_HOTPLUG, \ + dm_logger_write(dc_ctx->logger, LOG_HW_HOTPLUG, \ __VA_ARGS__) /******************************************************************************* @@ -499,9 +498,7 @@ static enum dc_edid_status read_edid( &sink->public.edid_caps); --edid_retry; if (edid_status == EDID_BAD_CHECKSUM) - dal_logger_write(link->ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_DETECTION_EDID_PARSER, + dm_logger_write(link->ctx->logger, LOG_WARNING, "Bad EDID checksum, retry remain: %d\n", edid_retry); } while (edid_status == EDID_BAD_CHECKSUM && edid_retry > 0); @@ -705,15 +702,11 @@ bool dc_link_detect(const struct dc_link *dc_link, bool boot) switch (edid_status) { case EDID_BAD_CHECKSUM: - dal_logger_write(link->ctx->logger, - LOG_MAJOR_ERROR, - LOG_MINOR_DETECTION_EDID_PARSER, + dm_logger_write(link->ctx->logger, LOG_ERROR, "EDID checksum invalid.\n"); break; case EDID_NO_RESPONSE: - dal_logger_write(link->ctx->logger, - LOG_MAJOR_ERROR, - LOG_MINOR_DETECTION_EDID_PARSER, + dm_logger_write(link->ctx->logger, LOG_ERROR, "No EDID read.\n"); return false; @@ -734,9 +727,7 @@ bool dc_link_detect(const struct dc_link *dc_link, bool boot) "%s: [Block %d] ", sink->public.edid_caps.display_name, i); } - dal_logger_write(link->ctx->logger, - LOG_MAJOR_DETECTION, - LOG_MINOR_DETECTION_EDID_PARSER, + dm_logger_write(link->ctx->logger, LOG_DETECTION_EDID_PARSER, "%s: " "manufacturer_id = %X, " "product_id = %X, " @@ -757,9 +748,7 @@ bool dc_link_detect(const struct dc_link *dc_link, bool boot) sink->public.edid_caps.audio_mode_count); for (i = 0; i < sink->public.edid_caps.audio_mode_count; i++) { - dal_logger_write(link->ctx->logger, - LOG_MAJOR_DETECTION, - LOG_MINOR_DETECTION_EDID_PARSER, + dm_logger_write(link->ctx->logger, LOG_DETECTION_EDID_PARSER, "%s: mode number = %d, " "format_code = %d, " "channel_count = %d, " @@ -1010,8 +999,7 @@ static bool construct( } break; default: - dal_logger_write(dc_ctx->logger, - LOG_MAJOR_WARNING, LOG_MINOR_TM_LINK_SRV, + dm_logger_write(dc_ctx->logger, LOG_WARNING, "Unsupported Connector type:%d!\n", link->link_id.id); goto create_fail; } @@ -1198,8 +1186,7 @@ static void dpcd_configure_panel_mode( ASSERT(result == DDC_RESULT_SUCESSFULL); } } - dal_logger_write(link->ctx->logger, LOG_MAJOR_DETECTION, - LOG_MINOR_DETECTION_DP_CAPS, + dm_logger_write(link->ctx->logger, LOG_DETECTION_DP_CAPS, "Link: %d eDP panel mode supported: %d " "eDP panel mode enabled: %d \n", link->public.link_index, @@ -1430,8 +1417,7 @@ bool dc_link_set_backlight_level(const struct dc_link *dc_link, uint32_t level, int i; uint32_t dmcu_status; - dal_logger_write(ctx->logger, LOG_MAJOR_BACKLIGHT, - LOG_MINOR_BACKLIGHT_INTERFACE, + dm_logger_write(ctx->logger, LOG_BACKLIGHT, "New Backlight level: %d (0x%X)\n", level, level); dmcu_status = dm_read_reg(ctx, mmDMCU_STATUS); @@ -1475,8 +1461,7 @@ bool dc_link_set_abm_level(const struct dc_link *dc_link, uint32_t level) struct core_link *link = DC_LINK_TO_CORE(dc_link); struct dc_context *ctx = link->ctx; - dal_logger_write(ctx->logger, LOG_MAJOR_BACKLIGHT, - LOG_MINOR_BACKLIGHT_INTERFACE, + dm_logger_write(ctx->logger, LOG_BACKLIGHT, "New abm level: %d (0x%X)\n", level, level); link->link_enc->funcs->set_dmcu_abm_level(link->link_enc, level); @@ -1763,26 +1748,20 @@ static enum dc_status allocate_mst_payload(struct pipe_ctx *pipe_ctx) link, pipe_ctx->stream_enc, &proposed_table); } else - dal_logger_write(link->ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_DC, + dm_logger_write(link->ctx->logger, LOG_WARNING, "Failed to update" "MST allocation table for" "pipe idx:%d\n", pipe_ctx->pipe_idx); - dal_logger_write(link->ctx->logger, - LOG_MAJOR_MST, - LOG_MINOR_MST_PROGRAMMING, + dm_logger_write(link->ctx->logger, LOG_MST, "%s " "stream_count: %d: \n ", __func__, link->mst_stream_alloc_table.stream_count); for (i = 0; i < MAX_CONTROLLER_NUM; i++) { - dal_logger_write(link->ctx->logger, - LOG_MAJOR_MST, - LOG_MINOR_MST_PROGRAMMING, + dm_logger_write(link->ctx->logger, LOG_MST, "stream_enc[%d]: 0x%x " "stream[%d].vcp_id: %d " "stream[%d].slot_count: %d\n", @@ -1859,9 +1838,7 @@ static enum dc_status deallocate_mst_payload(struct pipe_ctx *pipe_ctx) link, pipe_ctx->stream_enc, &proposed_table); } else { - dal_logger_write(link->ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_DC, + dm_logger_write(link->ctx->logger, LOG_WARNING, "Failed to update" "MST allocation table for" "pipe idx:%d\n", @@ -1869,18 +1846,14 @@ static enum dc_status deallocate_mst_payload(struct pipe_ctx *pipe_ctx) } } - dal_logger_write(link->ctx->logger, - LOG_MAJOR_MST, - LOG_MINOR_MST_PROGRAMMING, + dm_logger_write(link->ctx->logger, LOG_MST, "%s" "stream_count: %d: ", __func__, link->mst_stream_alloc_table.stream_count); for (i = 0; i < MAX_CONTROLLER_NUM; i++) { - dal_logger_write(link->ctx->logger, - LOG_MAJOR_MST, - LOG_MINOR_MST_PROGRAMMING, + dm_logger_write(link->ctx->logger, LOG_MST, "stream_enc[%d]: 0x%x " "stream[%d].vcp_id: %d " "stream[%d].slot_count: %d\n", diff --git a/drivers/gpu/drm/amd/dal/dc/core/dc_link_ddc.c b/drivers/gpu/drm/amd/dal/dc/core/dc_link_ddc.c index 1a7a871ab3e7..ffcd2a10d6f6 100644 --- a/drivers/gpu/drm/amd/dal/dc/core/dc_link_ddc.c +++ b/drivers/gpu/drm/amd/dal/dc/core/dc_link_ddc.c @@ -541,10 +541,8 @@ static uint8_t aux_read_edid_block( &cmd); if (false == result) - dal_logger_write( - ddc->ctx->logger, - LOG_MAJOR_ERROR, - LOG_MINOR_COMPONENT_DISPLAY_CAPABILITY_SERVICE, + dm_logger_write( + ddc->ctx->logger, LOG_ERROR, "%s: Writing of EDID Segment (0x30) failed!\n", __func__); } diff --git a/drivers/gpu/drm/amd/dal/dc/core/dc_link_dp.c b/drivers/gpu/drm/amd/dal/dc/core/dc_link_dp.c index 77b90ca4083f..a2064acffcaa 100644 --- a/drivers/gpu/drm/amd/dal/dc/core/dc_link_dp.c +++ b/drivers/gpu/drm/amd/dal/dc/core/dc_link_dp.c @@ -81,9 +81,7 @@ static void wait_for_training_aux_rd_interval( udelay(default_wait_in_micro_secs); - dal_logger_write(link->ctx->logger, - LOG_MAJOR_HW_TRACE, - LOG_MINOR_HW_TRACE_LINK_TRAINING, + dm_logger_write(link->ctx->logger, LOG_HW_LINK_TRAINING, "%s:\n wait = %d\n", __func__, default_wait_in_micro_secs); @@ -99,9 +97,7 @@ static void dpcd_set_training_pattern( &dpcd_pattern.raw, 1); - dal_logger_write(link->ctx->logger, - LOG_MAJOR_HW_TRACE, - LOG_MINOR_HW_TRACE_LINK_TRAINING, + dm_logger_write(link->ctx->logger, LOG_HW_LINK_TRAINING, "%s\n %x pattern = %x\n", __func__, DPCD_ADDRESS_TRAINING_PATTERN_SET, @@ -138,9 +134,7 @@ static void dpcd_set_link_settings( core_link_write_dpcd(link, DPCD_ADDRESS_DOWNSPREAD_CNTL, &downspread.raw, sizeof(downspread)); - dal_logger_write(link->ctx->logger, - LOG_MAJOR_HW_TRACE, - LOG_MINOR_HW_TRACE_LINK_TRAINING, + dm_logger_write(link->ctx->logger, LOG_HW_LINK_TRAINING, "%s\n %x rate = %x\n %x lane = %x\n %x spread = %x\n", __func__, DPCD_ADDRESS_LINK_BW_SET, @@ -175,9 +169,7 @@ static enum dpcd_training_patterns break; default: ASSERT(0); - dal_logger_write(link->ctx->logger, - LOG_MAJOR_HW_TRACE, - LOG_MINOR_HW_TRACE_LINK_TRAINING, + dm_logger_write(link->ctx->logger, LOG_HW_LINK_TRAINING, "%s: Invalid HW Training pattern: %d\n", __func__, pattern); break; @@ -210,9 +202,7 @@ static void dpcd_set_lt_pattern_and_lane_settings( dpcd_lt_buffer[DPCD_ADDRESS_TRAINING_PATTERN_SET - dpcd_base_lt_offset] = dpcd_pattern.raw; - dal_logger_write(link->ctx->logger, - LOG_MAJOR_HW_TRACE, - LOG_MINOR_HW_TRACE_LINK_TRAINING, + dm_logger_write(link->ctx->logger, LOG_HW_LINK_TRAINING, "%s\n %x pattern = %x\n", __func__, DPCD_ADDRESS_TRAINING_PATTERN_SET, @@ -247,9 +237,7 @@ static void dpcd_set_lt_pattern_and_lane_settings( dpcd_lane, size_in_bytes); - dal_logger_write(link->ctx->logger, - LOG_MAJOR_HW_TRACE, - LOG_MINOR_HW_TRACE_LINK_TRAINING, + dm_logger_write(link->ctx->logger, LOG_HW_LINK_TRAINING, "%s:\n %x VS set = %x PE set = %x \ max VS Reached = %x max PE Reached = %x\n", __func__, @@ -487,17 +475,13 @@ static void get_lane_status_and_drive_settings( ln_status_updated->raw = dpcd_buf[2]; - dal_logger_write(link->ctx->logger, - LOG_MAJOR_HW_TRACE, - LOG_MINOR_HW_TRACE_LINK_TRAINING, + dm_logger_write(link->ctx->logger, LOG_HW_LINK_TRAINING, "%s:\n%x Lane01Status = %x\n %x Lane23Status = %x\n ", __func__, DPCD_ADDRESS_LANE_01_STATUS, dpcd_buf[0], DPCD_ADDRESS_LANE_23_STATUS, dpcd_buf[1]); - dal_logger_write(link->ctx->logger, - LOG_MAJOR_HW_TRACE, - LOG_MINOR_HW_TRACE_LINK_TRAINING, + dm_logger_write(link->ctx->logger, LOG_HW_LINK_TRAINING, "%s:\n %x Lane01AdjustRequest = %x\n %x Lane23AdjustRequest = %x\n", __func__, DPCD_ADDRESS_ADJUST_REQUEST_LANE0_1, @@ -591,9 +575,7 @@ static void dpcd_set_lane_settings( } */ - dal_logger_write(link->ctx->logger, - LOG_MAJOR_HW_TRACE, - LOG_MINOR_HW_TRACE_LINK_TRAINING, + dm_logger_write(link->ctx->logger, LOG_HW_LINK_TRAINING, "%s\n %x VS set = %x PE set = %x \ max VS Reached = %x max PE Reached = %x\n", __func__, @@ -708,9 +690,7 @@ static bool perform_post_lt_adj_req_sequence( } if (!req_drv_setting_changed) { - dal_logger_write(link->ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_LINK_SERVICE, + dm_logger_write(link->ctx->logger, LOG_WARNING, "%s: Post Link Training Adjust Request Timed out\n", __func__); @@ -718,9 +698,7 @@ static bool perform_post_lt_adj_req_sequence( return true; } } - dal_logger_write(link->ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_LINK_SERVICE, + dm_logger_write(link->ctx->logger, LOG_WARNING, "%s: Post Link Training Adjust Request limit reached\n", __func__); @@ -912,9 +890,7 @@ static bool perform_clock_recovery_sequence( if (retry_count >= LINK_TRAINING_MAX_CR_RETRY) { ASSERT(0); - dal_logger_write(link->ctx->logger, - LOG_MAJOR_ERROR, - LOG_MINOR_COMPONENT_LINK_SERVICE, + dm_logger_write(link->ctx->logger, LOG_ERROR, "%s: Link Training Error, could not \ get CR after %d tries. \ Possibly voltage swing issue", __func__, @@ -1404,9 +1380,7 @@ static bool hpd_rx_irq_check_link_loss_status( if (dpcd_result != DC_OK) { irq_reg_rx_power_state = DP_PWR_STATE_D0; - dal_logger_write(link->ctx->logger, - LOG_MAJOR_HW_TRACE, - LOG_MINOR_HW_TRACE_HPD_IRQ, + dm_logger_write(link->ctx->logger, LOG_HW_HPD_IRQ, "%s: DPCD read failed to obtain power state.\n", __func__); } @@ -1444,9 +1418,7 @@ static bool hpd_rx_irq_check_link_loss_status( !hpd_irq_dpcd_data->bytes.lane_status_updated.bits. INTERLANE_ALIGN_DONE) { - dal_logger_write(link->ctx->logger, - LOG_MAJOR_HW_TRACE, - LOG_MINOR_HW_TRACE_HPD_IRQ, + dm_logger_write(link->ctx->logger, LOG_HW_HPD_IRQ, "%s: Link Status changed.\n", __func__); @@ -1807,9 +1779,7 @@ bool dc_link_handle_hpd_rx_irq(const struct dc_link *dc_link) * PSR and device auto test, refer to function handle_sst_hpd_irq * in DAL2.1*/ - dal_logger_write(link->ctx->logger, - LOG_MAJOR_HW_TRACE, - LOG_MINOR_HW_TRACE_HPD_IRQ, + dm_logger_write(link->ctx->logger, LOG_HW_HPD_IRQ, "%s: Got short pulse HPD on link %d\n", __func__, link->public.link_index); @@ -1821,9 +1791,7 @@ bool dc_link_handle_hpd_rx_irq(const struct dc_link *dc_link) result = read_hpd_rx_irq_data(link, &hpd_irq_dpcd_data); if (result != DC_OK) { - dal_logger_write(link->ctx->logger, - LOG_MAJOR_HW_TRACE, - LOG_MINOR_HW_TRACE_HPD_IRQ, + dm_logger_write(link->ctx->logger, LOG_HW_HPD_IRQ, "%s: DPCD read failed to obtain irq data\n", __func__); return false; @@ -1839,9 +1807,7 @@ bool dc_link_handle_hpd_rx_irq(const struct dc_link *dc_link) } if (!allow_hpd_rx_irq(link)) { - dal_logger_write(link->ctx->logger, - LOG_MAJOR_HW_TRACE, - LOG_MINOR_HW_TRACE_HPD_IRQ, + dm_logger_write(link->ctx->logger, LOG_HW_HPD_IRQ, "%s: skipping HPD handling on %d\n", __func__, link->public.link_index); return false; diff --git a/drivers/gpu/drm/amd/dal/dc/core/dc_resource.c b/drivers/gpu/drm/amd/dal/dc/core/dc_resource.c index 1541913ff405..204b49bae9ee 100644 --- a/drivers/gpu/drm/amd/dal/dc/core/dc_resource.c +++ b/drivers/gpu/drm/amd/dal/dc/core/dc_resource.c @@ -559,9 +559,7 @@ bool resource_build_scaling_params( pipe_ctx->xfm, &pipe_ctx->scl_data, &surface->scaling_quality); } - dal_logger_write(pipe_ctx->stream->ctx->logger, - LOG_MAJOR_DCP, - LOG_MINOR_DCP_SCALER, + dm_logger_write(pipe_ctx->stream->ctx->logger, LOG_SCALER, "%s: Viewport:\nheight:%d width:%d x:%d " "y:%d\n dst_rect:\nheight:%d width:%d x:%d " "y:%d\n", diff --git a/drivers/gpu/drm/amd/dal/dc/core/dc_target.c b/drivers/gpu/drm/amd/dal/dc/core/dc_target.c index bfc94d7fca06..48eb7b0e0350 100644 --- a/drivers/gpu/drm/amd/dal/dc/core/dc_target.c +++ b/drivers/gpu/drm/amd/dal/dc/core/dc_target.c @@ -285,18 +285,16 @@ uint32_t dc_target_get_scanoutpos( void dc_target_log( const struct dc_target *dc_target, - struct dal_logger *dal_logger, - enum log_major log_major, - enum log_minor log_minor) + struct dal_logger *dm_logger, + enum dc_log_type log_type) { int i; const struct core_target *core_target = CONST_DC_TARGET_TO_CORE(dc_target); - dal_logger_write(dal_logger, - log_major, - log_minor, + dm_logger_write(dm_logger, + log_type, "core_target 0x%x: stream_count=%d\n", core_target, core_target->public.stream_count); @@ -305,9 +303,8 @@ void dc_target_log( const struct core_stream *core_stream = DC_STREAM_TO_CORE(core_target->public.streams[i]); - dal_logger_write(dal_logger, - log_major, - log_minor, + dm_logger_write(dm_logger, + log_type, "core_stream 0x%x: src: %d, %d, %d, %d; dst: %d, %d, %d, %d;\n", core_stream, core_stream->public.src.x, @@ -318,22 +315,19 @@ void dc_target_log( core_stream->public.dst.y, core_stream->public.dst.width, core_stream->public.dst.height); - dal_logger_write(dal_logger, - log_major, - log_minor, + dm_logger_write(dm_logger, + log_type, "\tpix_clk_khz: %d, h_total: %d, v_total: %d\n", core_stream->public.timing.pix_clk_khz, core_stream->public.timing.h_total, core_stream->public.timing.v_total); - dal_logger_write(dal_logger, - log_major, - log_minor, + dm_logger_write(dm_logger, + log_type, "\tsink name: %s, serial: %d\n", core_stream->sink->public.edid_caps.display_name, core_stream->sink->public.edid_caps.serial_number); - dal_logger_write(dal_logger, - log_major, - log_minor, + dm_logger_write(dm_logger, + log_type, "\tlink: %d\n", core_stream->sink->link->public.link_index); } diff --git a/drivers/gpu/drm/amd/dal/dc/dc.h b/drivers/gpu/drm/amd/dal/dc/dc.h index 2f8a552b9f71..2a6117ae85e3 100644 --- a/drivers/gpu/drm/amd/dal/dc/dc.h +++ b/drivers/gpu/drm/amd/dal/dc/dc.h @@ -342,9 +342,8 @@ void dc_target_retain(const struct dc_target *dc_target); void dc_target_release(const struct dc_target *dc_target); void dc_target_log( const struct dc_target *dc_target, - struct dal_logger *dal_logger, - enum log_major log_major, - enum log_minor log_minor); + struct dal_logger *dc_logger, + enum dc_log_type log_type); uint8_t dc_get_current_target_count(const struct dc *dc); struct dc_target *dc_get_target_at_index(const struct dc *dc, uint8_t i); diff --git a/drivers/gpu/drm/amd/dal/dc/dce/dce110_stream_encoder.c b/drivers/gpu/drm/amd/dal/dc/dce/dce110_stream_encoder.c index 75bb309fe1d4..f2f66ea49fea 100644 --- a/drivers/gpu/drm/amd/dal/dc/dce/dce110_stream_encoder.c +++ b/drivers/gpu/drm/amd/dal/dc/dce/dce110_stream_encoder.c @@ -165,10 +165,8 @@ static void dce110_update_hdmi_info_packet( break; default: /* invalid HW packet index */ - dal_logger_write( - ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_ENCODER, + dm_logger_write( + ctx->logger, LOG_WARNING, "Invalid HW packet index: %s()\n", __func__); return; diff --git a/drivers/gpu/drm/amd/dal/dc/dce/dce_audio.c b/drivers/gpu/drm/amd/dal/dc/dce/dce_audio.c index 2701ece250d8..6296d8fda690 100644 --- a/drivers/gpu/drm/amd/dal/dc/dce/dce_audio.c +++ b/drivers/gpu/drm/amd/dal/dc/dce/dce_audio.c @@ -66,8 +66,7 @@ static void write_indirect_azalia_reg(struct audio *audio, REG_SET(AZALIA_F0_CODEC_ENDPOINT_DATA, 0, AZALIA_ENDPOINT_REG_DATA, reg_data); - dal_logger_write(CTX->logger, - LOG_MAJOR_HW_TRACE, LOG_MINOR_HW_TRACE_AUDIO, + dm_logger_write(CTX->logger, LOG_HW_AUDIO, "AUDIO:write_indirect_azalia_reg: index: %u data: %u\n", reg_index, reg_data); } @@ -85,8 +84,7 @@ static uint32_t read_indirect_azalia_reg(struct audio *audio, uint32_t reg_index /* AZALIA_F0_CODEC_ENDPOINT_DATA endpoint data */ value = REG_READ(AZALIA_F0_CODEC_ENDPOINT_DATA); - dal_logger_write(CTX->logger, - LOG_MAJOR_HW_TRACE, LOG_MINOR_HW_TRACE_AUDIO, + dm_logger_write(CTX->logger, LOG_HW_AUDIO, "AUDIO:read_indirect_azalia_reg: index: %u data: %u\n", reg_index, value); diff --git a/drivers/gpu/drm/amd/dal/dc/dce110/dce110_clock_source.c b/drivers/gpu/drm/amd/dal/dc/dce110/dce110_clock_source.c index 5bc7f8d9455d..0e81aec6ef78 100644 --- a/drivers/gpu/drm/amd/dal/dc/dce110/dce110_clock_source.c +++ b/drivers/gpu/drm/amd/dal/dc/dce110/dce110_clock_source.c @@ -280,9 +280,7 @@ static uint32_t calculate_pixel_clock_pll_dividers( uint32_t max_ref_divider; if (pll_settings->adjusted_pix_clk == 0) { - dal_logger_write(calc_pll_cs->ctx->logger, - LOG_MAJOR_ERROR, - LOG_MINOR_COMPONENT_GPU, + dm_logger_write(calc_pll_cs->ctx->logger, LOG_ERROR, "%s Bad requested pixel clock", __func__); return MAX_PLL_CALC_ERROR; } @@ -343,17 +341,13 @@ static uint32_t calculate_pixel_clock_pll_dividers( * ## SVS Wed 15 Jul 2009 */ if (min_post_divider > max_post_divider) { - dal_logger_write(calc_pll_cs->ctx->logger, - LOG_MAJOR_ERROR, - LOG_MINOR_COMPONENT_GPU, + dm_logger_write(calc_pll_cs->ctx->logger, LOG_ERROR, "%s Post divider range is invalid", __func__); return MAX_PLL_CALC_ERROR; } if (min_ref_divider > max_ref_divider) { - dal_logger_write(calc_pll_cs->ctx->logger, - LOG_MAJOR_ERROR, - LOG_MINOR_COMPONENT_GPU, + dm_logger_write(calc_pll_cs->ctx->logger, LOG_ERROR, "%s Reference divider range is invalid", __func__); return MAX_PLL_CALC_ERROR; } @@ -470,9 +464,7 @@ static uint32_t dce110_get_pix_clk_dividers( if (pix_clk_params == NULL || pll_settings == NULL || pix_clk_params->requested_pix_clk == 0) { - dal_logger_write(clk_src->base.ctx->logger, - LOG_MAJOR_ERROR, - LOG_MINOR_COMPONENT_GPU, + dm_logger_write(clk_src->base.ctx->logger, LOG_ERROR, "%s: Invalid parameters!!\n", __func__); return pll_calc_error; } @@ -516,9 +508,7 @@ static uint32_t dce110_get_pix_clk_dividers( if (!pll_adjust_pix_clk(clk_src, pix_clk_params, pll_settings)) { /* Should never happen, ASSERT and fill up values to be able * to continue. */ - dal_logger_write(clk_src->base.ctx->logger, - LOG_MAJOR_ERROR, - LOG_MINOR_COMPONENT_GPU, + dm_logger_write(clk_src->base.ctx->logger, LOG_ERROR, "%s: Failed to adjust pixel clock!!", __func__); pll_settings->actual_pix_clk = pix_clk_params->requested_pix_clk; @@ -840,16 +830,12 @@ static void get_ss_info_from_atombios( uint32_t i; if (ss_entries_num == NULL) { - dal_logger_write(clk_src->base.ctx->logger, - LOG_MAJOR_SYNC, - LOG_MINOR_SYNC_HW_CLOCK_ADJUST, + dm_logger_write(clk_src->base.ctx->logger, LOG_SYNC, "Invalid entry !!!\n"); return; } if (spread_spectrum_data == NULL) { - dal_logger_write(clk_src->base.ctx->logger, - LOG_MAJOR_SYNC, - LOG_MINOR_SYNC_HW_CLOCK_ADJUST, + dm_logger_write(clk_src->base.ctx->logger, LOG_SYNC, "Invalid array pointer!!!\n"); return; } @@ -892,9 +878,7 @@ static void get_ss_info_from_atombios( ++i, ++ss_info_cur, ++ss_data_cur) { if (ss_info_cur->type.STEP_AND_DELAY_INFO != false) { - dal_logger_write(clk_src->base.ctx->logger, - LOG_MAJOR_SYNC, - LOG_MINOR_SYNC_HW_CLOCK_ADJUST, + dm_logger_write(clk_src->base.ctx->logger, LOG_SYNC, "Invalid ATOMBIOS SS Table!!!\n"); goto out_free_data; } @@ -904,13 +888,9 @@ static void get_ss_info_from_atombios( if (as_signal == AS_SIGNAL_TYPE_HDMI && ss_info_cur->spread_spectrum_percentage > 6){ /* invalid input, do nothing */ - dal_logger_write(clk_src->base.ctx->logger, - LOG_MAJOR_SYNC, - LOG_MINOR_SYNC_HW_CLOCK_ADJUST, + dm_logger_write(clk_src->base.ctx->logger, LOG_SYNC, "Invalid SS percentage "); - dal_logger_write(clk_src->base.ctx->logger, - LOG_MAJOR_SYNC, - LOG_MINOR_SYNC_HW_CLOCK_ADJUST, + dm_logger_write(clk_src->base.ctx->logger, LOG_SYNC, "for HDMI in ATOMBIOS info Table!!!\n"); continue; } @@ -1022,16 +1002,12 @@ static bool calc_pll_max_vco_construct( if (init_data->num_fract_fb_divider_decimal_point == 0 || init_data->num_fract_fb_divider_decimal_point_precision > init_data->num_fract_fb_divider_decimal_point) { - dal_logger_write(calc_pll_cs->ctx->logger, - LOG_MAJOR_ERROR, - LOG_MINOR_COMPONENT_GPU, + dm_logger_write(calc_pll_cs->ctx->logger, LOG_ERROR, "The dec point num or precision is incorrect!"); return false; } if (init_data->num_fract_fb_divider_decimal_point_precision == 0) { - dal_logger_write(calc_pll_cs->ctx->logger, - LOG_MAJOR_ERROR, - LOG_MINOR_COMPONENT_GPU, + dm_logger_write(calc_pll_cs->ctx->logger, LOG_ERROR, "Incorrect fract feedback divider precision num!"); return false; } diff --git a/drivers/gpu/drm/amd/dal/dc/dce110/dce110_compressor.c b/drivers/gpu/drm/amd/dal/dc/dce110/dce110_compressor.c index 8597d82b89b4..7612efb27939 100644 --- a/drivers/gpu/drm/amd/dal/dc/dce110/dce110_compressor.c +++ b/drivers/gpu/drm/amd/dal/dc/dce110/dce110_compressor.c @@ -130,10 +130,8 @@ static uint32_t lpt_memory_control_config(struct dce110_compressor *cp110, LOW_POWER_TILING_NUM_PIPES); break; default: - dal_logger_write( - cp110->base.ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_CONTROLLER, + dm_logger_write( + cp110->base.ctx->logger, LOG_WARNING, "%s: Invalid LPT NUM_PIPES!!!", __func__); break; @@ -178,10 +176,8 @@ static uint32_t lpt_memory_control_config(struct dce110_compressor *cp110, LOW_POWER_TILING_NUM_BANKS); break; default: - dal_logger_write( - cp110->base.ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_CONTROLLER, + dm_logger_write( + cp110->base.ctx->logger, LOG_WARNING, "%s: Invalid LPT NUM_BANKS!!!", __func__); break; @@ -214,10 +210,8 @@ static uint32_t lpt_memory_control_config(struct dce110_compressor *cp110, LOW_POWER_TILING_PIPE_INTERLEAVE_SIZE); break; default: - dal_logger_write( - cp110->base.ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_CONTROLLER, + dm_logger_write( + cp110->base.ctx->logger, LOG_WARNING, "%s: Invalid LPT INTERLEAVE_SIZE!!!", __func__); break; @@ -260,19 +254,15 @@ static uint32_t lpt_memory_control_config(struct dce110_compressor *cp110, LOW_POWER_TILING_ROW_SIZE); break; default: - dal_logger_write( - cp110->base.ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_CONTROLLER, + dm_logger_write( + cp110->base.ctx->logger, LOG_WARNING, "%s: Invalid LPT ROW_SIZE!!!", __func__); break; } } else { - dal_logger_write( - cp110->base.ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_CONTROLLER, + dm_logger_write( + cp110->base.ctx->logger, LOG_WARNING, "%s: LPT MC Configuration is not provided", __func__); } @@ -322,10 +312,8 @@ static void wait_for_fbc_state_changed( } if (counter == 10) { - dal_logger_write( - cp110->base.ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_CONTROLLER, + dm_logger_write( + cp110->base.ctx->logger, LOG_WARNING, "%s: wait counter exceeded, changes to HW not applied", __func__); } @@ -538,10 +526,8 @@ void dce110_compressor_program_compressed_surface_address_and_pitch( if (compressor->min_compress_ratio == FBC_COMPRESS_RATIO_1TO1) fbc_pitch = fbc_pitch / 8; else - dal_logger_write( - compressor->ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_CONTROLLER, + dm_logger_write( + compressor->ctx->logger, LOG_WARNING, "%s: Unexpected DCE11 compression ratio", __func__); @@ -705,10 +691,8 @@ void dce110_compressor_program_lpt_control( LOW_POWER_TILING_MODE); break; default: - dal_logger_write( - compressor->ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_CONTROLLER, + dm_logger_write( + compressor->ctx->logger, LOG_WARNING, "%s: Invalid selected DRAM channels for LPT!!!", __func__); break; diff --git a/drivers/gpu/drm/amd/dal/dc/dce110/dce110_hw_sequencer.c b/drivers/gpu/drm/amd/dal/dc/dce110/dce110_hw_sequencer.c index 169077062854..2fd2bc794de4 100644 --- a/drivers/gpu/drm/amd/dal/dc/dce110/dce110_hw_sequencer.c +++ b/drivers/gpu/drm/amd/dal/dc/dce110/dce110_hw_sequencer.c @@ -1534,18 +1534,12 @@ static void set_plane_config( struct resource_context *res_ctx) { struct mem_input *mi = pipe_ctx->mi; - struct pipe_ctx *old_pipe = NULL; struct dc_context *ctx = pipe_ctx->stream->ctx; struct core_surface *surface = pipe_ctx->surface; struct xfm_grph_csc_adjustment adjust; struct out_csc_color_matrix tbl_entry; unsigned int i; - if (dc->current_context) - old_pipe = - &dc->current_context-> - res_ctx.pipe_ctx[pipe_ctx->pipe_idx]; - memset(&adjust, 0, sizeof(adjust)); memset(&tbl_entry, 0, sizeof(tbl_entry)); adjust.gamut_adjust_type = GRAPHICS_GAMUT_ADJUST_TYPE_BYPASS; @@ -1963,9 +1957,7 @@ static void dce110_program_front_end_for_pipe( &surface->public.tiling_info, surface->public.rotation); - dal_logger_write(dc->ctx->logger, - LOG_MAJOR_INTERFACE_TRACE, - LOG_MINOR_COMPONENT_SURFACE, + dm_logger_write(dc->ctx->logger, LOG_SURFACE, "Pipe:%d 0x%x: addr hi:0x%x, " "addr low:0x%x, " "src: %d, %d, %d," @@ -1988,9 +1980,7 @@ static void dce110_program_front_end_for_pipe( pipe_ctx->surface->public.clip_rect.width, pipe_ctx->surface->public.clip_rect.height); - dal_logger_write(dc->ctx->logger, - LOG_MAJOR_INTERFACE_TRACE, - LOG_MINOR_COMPONENT_SURFACE, + dm_logger_write(dc->ctx->logger, LOG_SURFACE, "Pipe %d: width, height, x, y\n" "viewport:%d, %d, %d, %d\n" "recout: %d, %d, %d, %d\n", diff --git a/drivers/gpu/drm/amd/dal/dc/dce110/dce110_link_encoder.c b/drivers/gpu/drm/amd/dal/dc/dce110/dce110_link_encoder.c index 6bdb2023b63a..c36cdadf35f2 100644 --- a/drivers/gpu/drm/amd/dal/dc/dce110/dce110_link_encoder.c +++ b/drivers/gpu/drm/amd/dal/dc/dce110/dce110_link_encoder.c @@ -651,9 +651,7 @@ static void link_encoder_edp_wait_for_hpd_ready( dal_gpio_destroy_irq(&hpd); if (false == edp_hpd_high) { - dal_logger_write(ctx->logger, - LOG_MAJOR_ERROR, - LOG_MINOR_HW_TRACE_RESUME_S3, + dm_logger_write(ctx->logger, LOG_ERROR, "%s: wait timed out!\n", __func__); } } @@ -682,9 +680,7 @@ void dce110_link_encoder_edp_power_control( /* Send VBIOS command to prompt eDP panel power */ - dal_logger_write(ctx->logger, - LOG_MAJOR_HW_TRACE, - LOG_MINOR_HW_TRACE_RESUME_S3, + dm_logger_write(ctx->logger, LOG_HW_RESUME_S3, "%s: Panel Power action: %s\n", __func__, (power_up ? "On":"Off")); @@ -701,16 +697,12 @@ void dce110_link_encoder_edp_power_control( if (BP_RESULT_OK != bp_result) { - dal_logger_write(ctx->logger, - LOG_MAJOR_ERROR, - LOG_MINOR_HW_TRACE_RESUME_S3, + dm_logger_write(ctx->logger, LOG_ERROR, "%s: Panel Power bp_result: %d\n", __func__, bp_result); } } else { - dal_logger_write(ctx->logger, - LOG_MAJOR_HW_TRACE, - LOG_MINOR_HW_TRACE_RESUME_S3, + dm_logger_write(ctx->logger, LOG_HW_RESUME_S3, "%s: Skipping Panel Power action: %s\n", __func__, (power_up ? "On":"Off")); } @@ -770,18 +762,14 @@ void dce110_link_encoder_edp_backlight_control( } if (enable && is_panel_backlight_on(enc110)) { - dal_logger_write(ctx->logger, - LOG_MAJOR_HW_TRACE, - LOG_MINOR_HW_TRACE_RESUME_S3, + dm_logger_write(ctx->logger, LOG_HW_RESUME_S3, "%s: panel already powered up. Do nothing.\n", __func__); return; } if (!enable && !is_panel_powered_on(enc110)) { - dal_logger_write(ctx->logger, - LOG_MAJOR_HW_TRACE, - LOG_MINOR_HW_TRACE_RESUME_S3, + dm_logger_write(ctx->logger, LOG_HW_RESUME_S3, "%s: panel already powered down. Do nothing.\n", __func__); return; @@ -789,9 +777,7 @@ void dce110_link_encoder_edp_backlight_control( /* Send VBIOS command to control eDP panel backlight */ - dal_logger_write(ctx->logger, - LOG_MAJOR_HW_TRACE, - LOG_MINOR_HW_TRACE_RESUME_S3, + dm_logger_write(ctx->logger, LOG_HW_RESUME_S3, "%s: backlight action: %s\n", __func__, (enable ? "On":"Off")); @@ -1069,9 +1055,7 @@ bool dce110_link_encoder_construct( enc110->base.preferred_engine = ENGINE_ID_UNKNOWN; } - dal_logger_write(init_data->ctx->logger, - LOG_MAJOR_I2C_AUX, - LOG_MINOR_I2C_AUX_CFG, + dm_logger_write(init_data->ctx->logger, LOG_I2C_AUX, "Using channel: %s [%d]\n", DECODE_CHANNEL_ID(init_data->channel), init_data->channel); @@ -1160,9 +1144,7 @@ void dce110_link_encoder_hw_init( result = link_transmitter_control(enc110, &cntl); if (result != BP_RESULT_OK) { - dal_logger_write(ctx->logger, - LOG_MAJOR_ERROR, - LOG_MINOR_COMPONENT_ENCODER, + dm_logger_write(ctx->logger, LOG_ERROR, "%s: Failed to execute VBIOS command table!\n", __func__); BREAK_TO_DEBUGGER(); @@ -1270,9 +1252,7 @@ void dce110_link_encoder_enable_tmds_output( result = link_transmitter_control(enc110, &cntl); if (result != BP_RESULT_OK) { - dal_logger_write(ctx->logger, - LOG_MAJOR_ERROR, - LOG_MINOR_COMPONENT_ENCODER, + dm_logger_write(ctx->logger, LOG_ERROR, "%s: Failed to execute VBIOS command table!\n", __func__); BREAK_TO_DEBUGGER(); @@ -1313,9 +1293,7 @@ void dce110_link_encoder_enable_dp_output( result = link_transmitter_control(enc110, &cntl); if (result != BP_RESULT_OK) { - dal_logger_write(ctx->logger, - LOG_MAJOR_ERROR, - LOG_MINOR_COMPONENT_ENCODER, + dm_logger_write(ctx->logger, LOG_ERROR, "%s: Failed to execute VBIOS command table!\n", __func__); BREAK_TO_DEBUGGER(); @@ -1356,9 +1334,7 @@ void dce110_link_encoder_enable_dp_mst_output( result = link_transmitter_control(enc110, &cntl); if (result != BP_RESULT_OK) { - dal_logger_write(ctx->logger, - LOG_MAJOR_ERROR, - LOG_MINOR_COMPONENT_ENCODER, + dm_logger_write(ctx->logger, LOG_ERROR, "%s: Failed to execute VBIOS command table!\n", __func__); BREAK_TO_DEBUGGER(); @@ -1403,9 +1379,7 @@ void dce110_link_encoder_disable_output( result = link_transmitter_control(enc110, &cntl); if (result != BP_RESULT_OK) { - dal_logger_write(ctx->logger, - LOG_MAJOR_ERROR, - LOG_MINOR_COMPONENT_ENCODER, + dm_logger_write(ctx->logger, LOG_ERROR, "%s: Failed to execute VBIOS command table!\n", __func__); BREAK_TO_DEBUGGER(); diff --git a/drivers/gpu/drm/amd/dal/dc/dce110/dce110_mem_input.c b/drivers/gpu/drm/amd/dal/dc/dce110/dce110_mem_input.c index 6da8310c6b88..758884803ef3 100644 --- a/drivers/gpu/drm/amd/dal/dc/dce110/dce110_mem_input.c +++ b/drivers/gpu/drm/amd/dal/dc/dce110/dce110_mem_input.c @@ -870,9 +870,7 @@ void dce110_allocate_mem_input( } while (retry_count > 0); if (field == 0) - dal_logger_write(mi->ctx->logger, - LOG_MAJOR_ERROR, - LOG_MINOR_COMPONENT_GPU, + dm_logger_write(mi->ctx->logger, LOG_ERROR, "%s: DMIF allocation failed", __func__); diff --git a/drivers/gpu/drm/amd/dal/dc/dce110/dce110_opp_regamma.c b/drivers/gpu/drm/amd/dal/dc/dce110/dce110_opp_regamma.c index 8b9725c57e1e..62051abcfe2f 100644 --- a/drivers/gpu/drm/amd/dal/dc/dce110/dce110_opp_regamma.c +++ b/drivers/gpu/drm/amd/dal/dc/dce110/dce110_opp_regamma.c @@ -422,9 +422,7 @@ static void program_pwl( } if (counter == max_tries) { - dal_logger_write(opp110->base.ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_CONTROLLER, + dm_logger_write(opp110->base.ctx->logger, LOG_WARNING, "%s: regamma lut was not powered on " "in a timely manner," " programming still proceeds\n", diff --git a/drivers/gpu/drm/amd/dal/dc/dce110/dce110_resource.c b/drivers/gpu/drm/amd/dal/dc/dce110/dce110_resource.c index be67f04642da..db7686842e36 100644 --- a/drivers/gpu/drm/amd/dal/dc/dce110/dce110_resource.c +++ b/drivers/gpu/drm/amd/dal/dc/dce110/dce110_resource.c @@ -778,10 +778,8 @@ enum dc_status dce110_validate_bandwidth( { enum dc_status result = DC_ERROR_UNEXPECTED; - dal_logger_write( - dc->ctx->logger, - LOG_MAJOR_BWM, - LOG_MINOR_BWM_REQUIRED_BANDWIDTH_CALCS, + dm_logger_write( + dc->ctx->logger, LOG_BANDWIDTH_CALCS, "%s: start", __func__); @@ -797,9 +795,7 @@ enum dc_status dce110_validate_bandwidth( result = DC_OK; if (result == DC_FAIL_BANDWIDTH_VALIDATE) - dal_logger_write(dc->ctx->logger, - LOG_MAJOR_BWM, - LOG_MINOR_BWM_MODE_VALIDATION, + dm_logger_write(dc->ctx->logger, LOG_BANDWIDTH_VALIDATION, "%s: %dx%d@%d Bandwidth validation failed!\n", __func__, context->targets[0]->public.streams[0]->timing.h_addressable, @@ -809,12 +805,11 @@ enum dc_status dce110_validate_bandwidth( if (memcmp(&dc->current_context->bw_results, &context->bw_results, sizeof(context->bw_results))) { struct log_entry log_entry; - dal_logger_open( + dm_logger_open( dc->ctx->logger, &log_entry, - LOG_MAJOR_BWM, - LOG_MINOR_BWM_REQUIRED_BANDWIDTH_CALCS); - dal_logger_append(&log_entry, "%s: finish,\n" + LOG_BANDWIDTH_CALCS); + dm_logger_append(&log_entry, "%s: finish,\n" "nbpMark_b: %d nbpMark_a: %d urgentMark_b: %d urgentMark_a: %d\n" "stutMark_b: %d stutMark_a: %d\n", __func__, @@ -824,7 +819,7 @@ enum dc_status dce110_validate_bandwidth( context->bw_results.urgent_wm_ns[0].a_mark, context->bw_results.stutter_exit_wm_ns[0].b_mark, context->bw_results.stutter_exit_wm_ns[0].a_mark); - dal_logger_append(&log_entry, + dm_logger_append(&log_entry, "nbpMark_b: %d nbpMark_a: %d urgentMark_b: %d urgentMark_a: %d\n" "stutMark_b: %d stutMark_a: %d\n", context->bw_results.nbp_state_change_wm_ns[1].b_mark, @@ -833,7 +828,7 @@ enum dc_status dce110_validate_bandwidth( context->bw_results.urgent_wm_ns[1].a_mark, context->bw_results.stutter_exit_wm_ns[1].b_mark, context->bw_results.stutter_exit_wm_ns[1].a_mark); - dal_logger_append(&log_entry, + dm_logger_append(&log_entry, "nbpMark_b: %d nbpMark_a: %d urgentMark_b: %d urgentMark_a: %d\n" "stutMark_b: %d stutMark_a: %d stutter_mode_enable: %d\n", context->bw_results.nbp_state_change_wm_ns[2].b_mark, @@ -843,7 +838,7 @@ enum dc_status dce110_validate_bandwidth( context->bw_results.stutter_exit_wm_ns[2].b_mark, context->bw_results.stutter_exit_wm_ns[2].a_mark, context->bw_results.stutter_mode_enable); - dal_logger_append(&log_entry, + dm_logger_append(&log_entry, "cstate: %d pstate: %d nbpstate: %d sync: %d dispclk: %d\n" "sclk: %d sclk_sleep: %d yclk: %d blackout_recovery_time_us: %d\n", context->bw_results.cpuc_state_change_enable, @@ -855,7 +850,7 @@ enum dc_status dce110_validate_bandwidth( context->bw_results.required_sclk_deep_sleep, context->bw_results.required_yclk, context->bw_results.blackout_recovery_time_us); - dal_logger_close(&log_entry); + dm_logger_close(&log_entry); } return result; } diff --git a/drivers/gpu/drm/amd/dal/dc/dce110/dce110_timing_generator.c b/drivers/gpu/drm/amd/dal/dc/dce110/dce110_timing_generator.c index de948452cd7a..120f4bd619b5 100644 --- a/drivers/gpu/drm/amd/dal/dc/dce110/dce110_timing_generator.c +++ b/drivers/gpu/drm/amd/dal/dc/dce110/dce110_timing_generator.c @@ -1844,8 +1844,7 @@ bool dce110_tg_set_blank(struct timing_generator *tg, } if (counter == 100) { - dal_logger_write(tg->ctx->logger, LOG_MAJOR_ERROR, - LOG_MINOR_COMPONENT_CONTROLLER, + dm_logger_write(tg->ctx->logger, LOG_ERROR, "timing generator %d blank timing out.\n", tg110->controller_id); return false; diff --git a/drivers/gpu/drm/amd/dal/dc/dce110/dce110_timing_generator_v.c b/drivers/gpu/drm/amd/dal/dc/dce110/dce110_timing_generator_v.c index a34025aa8a34..aadeeb33c53f 100644 --- a/drivers/gpu/drm/amd/dal/dc/dce110/dce110_timing_generator_v.c +++ b/drivers/gpu/drm/amd/dal/dc/dce110/dce110_timing_generator_v.c @@ -112,8 +112,7 @@ static bool dce110_timing_generator_v_blank_crtc(struct timing_generator *tg) } if (!counter) { - dal_logger_write(tg->ctx->logger, LOG_MAJOR_ERROR, - LOG_MINOR_COMPONENT_CONTROLLER, + dm_logger_write(tg->ctx->logger, LOG_ERROR, "timing generator %d blank timing out.\n", tg110->controller_id); return false; @@ -635,8 +634,7 @@ static uint32_t dce110_timing_generator_v_get_vblank_counter(struct timing_gener static bool dce110_timing_generator_v_did_triggered_reset_occur( struct timing_generator *tg) { - dal_logger_write(tg->ctx->logger, LOG_MAJOR_ERROR, - LOG_MINOR_COMPONENT_CONTROLLER, + dm_logger_write(tg->ctx->logger, LOG_ERROR, "Timing Sync not supported on underlay pipe\n"); return false; } @@ -645,8 +643,7 @@ static void dce110_timing_generator_v_setup_global_swap_lock( struct timing_generator *tg, const struct dcp_gsl_params *gsl_params) { - dal_logger_write(tg->ctx->logger, LOG_MAJOR_ERROR, - LOG_MINOR_COMPONENT_CONTROLLER, + dm_logger_write(tg->ctx->logger, LOG_ERROR, "Timing Sync not supported on underlay pipe\n"); return; } @@ -655,8 +652,7 @@ static void dce110_timing_generator_v_enable_reset_trigger( struct timing_generator *tg, int source_tg_inst) { - dal_logger_write(tg->ctx->logger, LOG_MAJOR_ERROR, - LOG_MINOR_COMPONENT_CONTROLLER, + dm_logger_write(tg->ctx->logger, LOG_ERROR, "Timing Sync not supported on underlay pipe\n"); return; } @@ -664,8 +660,7 @@ static void dce110_timing_generator_v_enable_reset_trigger( static void dce110_timing_generator_v_disable_reset_trigger( struct timing_generator *tg) { - dal_logger_write(tg->ctx->logger, LOG_MAJOR_ERROR, - LOG_MINOR_COMPONENT_CONTROLLER, + dm_logger_write(tg->ctx->logger, LOG_ERROR, "Timing Sync not supported on underlay pipe\n"); return; } @@ -673,8 +668,7 @@ static void dce110_timing_generator_v_disable_reset_trigger( static void dce110_timing_generator_v_tear_down_global_swap_lock( struct timing_generator *tg) { - dal_logger_write(tg->ctx->logger, LOG_MAJOR_ERROR, - LOG_MINOR_COMPONENT_CONTROLLER, + dm_logger_write(tg->ctx->logger, LOG_ERROR, "Timing Sync not supported on underlay pipe\n"); return; } diff --git a/drivers/gpu/drm/amd/dal/dc/dce110/dce110_transform_bit_depth.c b/drivers/gpu/drm/amd/dal/dc/dce110/dce110_transform_bit_depth.c index 20d680ab0942..01168b46df84 100644 --- a/drivers/gpu/drm/amd/dal/dc/dce110/dce110_transform_bit_depth.c +++ b/drivers/gpu/drm/amd/dal/dc/dce110/dce110_transform_bit_depth.c @@ -566,9 +566,7 @@ int32_t dce110_transform_get_max_num_of_supported_lines( break; default: - dal_logger_write(xfm->ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_GPU, + dm_logger_write(xfm->ctx->logger, LOG_WARNING, "%s: Invalid LB pixel depth", __func__); ASSERT_CRITICAL(false); @@ -649,9 +647,7 @@ bool dce110_transform_get_current_pixel_storage_depth( *depth = LB_PIXEL_DEPTH_36BPP; break; default: - dal_logger_write(xfm->ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_GPU, + dm_logger_write(xfm->ctx->logger, LOG_WARNING, "%s: Invalid LB pixel depth", __func__); *depth = LB_PIXEL_DEPTH_30BPP; @@ -762,9 +758,7 @@ bool dce110_transform_set_pixel_storage_depth( if (!(xfm110->lb_pixel_depth_supported & depth)) { /*we should use unsupported capabilities * unless it is required by w/a*/ - dal_logger_write(xfm->ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_GPU, + dm_logger_write(xfm->ctx->logger, LOG_WARNING, "%s: Capability not supported", __func__); } @@ -829,9 +823,7 @@ bool dce110_transform_v_get_current_pixel_storage_depth( *depth = LB_PIXEL_DEPTH_36BPP; break; default: - dal_logger_write(xfm->ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_GPU, + dm_logger_write(xfm->ctx->logger, LOG_WARNING, "%s: Invalid LB pixel depth", __func__); *depth = LB_PIXEL_DEPTH_30BPP; @@ -900,9 +892,7 @@ bool dce110_transform_v_set_pixel_storage_depth( if (!(xfm110->lb_pixel_depth_supported & depth)) { /*we should use unsupported capabilities * unless it is required by w/a*/ - dal_logger_write(xfm->ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_GPU, + dm_logger_write(xfm->ctx->logger, LOG_WARNING, "%s: Capability not supported", __func__); } diff --git a/drivers/gpu/drm/amd/dal/dc/dce112/dce112_clock_source.c b/drivers/gpu/drm/amd/dal/dc/dce112/dce112_clock_source.c index 80aa6df99fc9..d9db22607300 100644 --- a/drivers/gpu/drm/amd/dal/dc/dce112/dce112_clock_source.c +++ b/drivers/gpu/drm/amd/dal/dc/dce112/dce112_clock_source.c @@ -58,9 +58,7 @@ uint32_t dce112_get_pix_clk_dividers( if (pix_clk_params == NULL || pll_settings == NULL || pix_clk_params->requested_pix_clk == 0) { - dal_logger_write(cs->ctx->logger, - LOG_MAJOR_ERROR, - LOG_MINOR_COMPONENT_GPU, + dm_logger_write(cs->ctx->logger, LOG_ERROR, "%s: Invalid parameters!!\n", __func__); return 0; } diff --git a/drivers/gpu/drm/amd/dal/dc/dce112/dce112_compressor.c b/drivers/gpu/drm/amd/dal/dc/dce112/dce112_compressor.c index 1940d9868e90..1b0792e0219a 100644 --- a/drivers/gpu/drm/amd/dal/dc/dce112/dce112_compressor.c +++ b/drivers/gpu/drm/amd/dal/dc/dce112/dce112_compressor.c @@ -130,10 +130,8 @@ static uint32_t lpt_memory_control_config(struct dce112_compressor *cp110, LOW_POWER_TILING_NUM_PIPES); break; default: - dal_logger_write( - cp110->base.ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_CONTROLLER, + dm_logger_write( + cp110->base.ctx->logger, LOG_WARNING, "%s: Invalid LPT NUM_PIPES!!!", __func__); break; @@ -178,10 +176,8 @@ static uint32_t lpt_memory_control_config(struct dce112_compressor *cp110, LOW_POWER_TILING_NUM_BANKS); break; default: - dal_logger_write( - cp110->base.ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_CONTROLLER, + dm_logger_write( + cp110->base.ctx->logger, LOG_WARNING, "%s: Invalid LPT NUM_BANKS!!!", __func__); break; @@ -214,10 +210,8 @@ static uint32_t lpt_memory_control_config(struct dce112_compressor *cp110, LOW_POWER_TILING_PIPE_INTERLEAVE_SIZE); break; default: - dal_logger_write( - cp110->base.ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_CONTROLLER, + dm_logger_write( + cp110->base.ctx->logger, LOG_WARNING, "%s: Invalid LPT INTERLEAVE_SIZE!!!", __func__); break; @@ -260,19 +254,15 @@ static uint32_t lpt_memory_control_config(struct dce112_compressor *cp110, LOW_POWER_TILING_ROW_SIZE); break; default: - dal_logger_write( - cp110->base.ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_CONTROLLER, + dm_logger_write( + cp110->base.ctx->logger, LOG_WARNING, "%s: Invalid LPT ROW_SIZE!!!", __func__); break; } } else { - dal_logger_write( - cp110->base.ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_CONTROLLER, + dm_logger_write( + cp110->base.ctx->logger, LOG_WARNING, "%s: LPT MC Configuration is not provided", __func__); } @@ -322,10 +312,8 @@ static void wait_for_fbc_state_changed( } if (counter == 10) { - dal_logger_write( - cp110->base.ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_CONTROLLER, + dm_logger_write( + cp110->base.ctx->logger, LOG_WARNING, "%s: wait counter exceeded, changes to HW not applied", __func__); } @@ -538,10 +526,8 @@ void dce112_compressor_program_compressed_surface_address_and_pitch( if (compressor->min_compress_ratio == FBC_COMPRESS_RATIO_1TO1) fbc_pitch = fbc_pitch / 8; else - dal_logger_write( - compressor->ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_CONTROLLER, + dm_logger_write( + compressor->ctx->logger, LOG_WARNING, "%s: Unexpected DCE11 compression ratio", __func__); @@ -705,10 +691,8 @@ void dce112_compressor_program_lpt_control( LOW_POWER_TILING_MODE); break; default: - dal_logger_write( - compressor->ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_CONTROLLER, + dm_logger_write( + compressor->ctx->logger, LOG_WARNING, "%s: Invalid selected DRAM channels for LPT!!!", __func__); break; diff --git a/drivers/gpu/drm/amd/dal/dc/dce112/dce112_opp_formatter.c b/drivers/gpu/drm/amd/dal/dc/dce112/dce112_opp_formatter.c index c39251a287af..2d9072138834 100644 --- a/drivers/gpu/drm/amd/dal/dc/dce112/dce112_opp_formatter.c +++ b/drivers/gpu/drm/amd/dal/dc/dce112/dce112_opp_formatter.c @@ -184,8 +184,7 @@ static void program_formatter_reset_dig_resync_fifo(struct output_pixel_processo } if (counter == 0) - dal_logger_write(opp->ctx->logger, LOG_MAJOR_ERROR, - LOG_MINOR_COMPONENT_CONTROLLER, + dm_logger_write(opp->ctx->logger, LOG_ERROR, "%s:opp program formattter reset dig resync info time out.\n", __func__); } diff --git a/drivers/gpu/drm/amd/dal/dc/dce112/dce112_resource.c b/drivers/gpu/drm/amd/dal/dc/dce112/dce112_resource.c index 0c976efb6178..ab203dfd2914 100644 --- a/drivers/gpu/drm/amd/dal/dc/dce112/dce112_resource.c +++ b/drivers/gpu/drm/amd/dal/dc/dce112/dce112_resource.c @@ -768,10 +768,8 @@ enum dc_status dce112_validate_bandwidth( { enum dc_status result = DC_ERROR_UNEXPECTED; - dal_logger_write( - dc->ctx->logger, - LOG_MAJOR_BWM, - LOG_MINOR_BWM_REQUIRED_BANDWIDTH_CALCS, + dm_logger_write( + dc->ctx->logger, LOG_BANDWIDTH_CALCS, "%s: start", __func__); @@ -787,21 +785,18 @@ enum dc_status dce112_validate_bandwidth( result = DC_OK; if (result == DC_FAIL_BANDWIDTH_VALIDATE) - dal_logger_write(dc->ctx->logger, - LOG_MAJOR_BWM, - LOG_MINOR_BWM_MODE_VALIDATION, + dm_logger_write(dc->ctx->logger, LOG_BANDWIDTH_VALIDATION, "%s: Bandwidth validation failed!", __func__); if (memcmp(&dc->current_context->bw_results, &context->bw_results, sizeof(context->bw_results))) { struct log_entry log_entry; - dal_logger_open( + dm_logger_open( dc->ctx->logger, &log_entry, - LOG_MAJOR_BWM, - LOG_MINOR_BWM_REQUIRED_BANDWIDTH_CALCS); - dal_logger_append(&log_entry, "%s: finish,\n" + LOG_BANDWIDTH_CALCS); + dm_logger_append(&log_entry, "%s: finish,\n" "nbpMark_b: %d nbpMark_a: %d urgentMark_b: %d urgentMark_a: %d\n" "stutMark_b: %d stutMark_a: %d\n", __func__, @@ -811,7 +806,7 @@ enum dc_status dce112_validate_bandwidth( context->bw_results.urgent_wm_ns[0].a_mark, context->bw_results.stutter_exit_wm_ns[0].b_mark, context->bw_results.stutter_exit_wm_ns[0].a_mark); - dal_logger_append(&log_entry, + dm_logger_append(&log_entry, "nbpMark_b: %d nbpMark_a: %d urgentMark_b: %d urgentMark_a: %d\n" "stutMark_b: %d stutMark_a: %d\n", context->bw_results.nbp_state_change_wm_ns[1].b_mark, @@ -820,7 +815,7 @@ enum dc_status dce112_validate_bandwidth( context->bw_results.urgent_wm_ns[1].a_mark, context->bw_results.stutter_exit_wm_ns[1].b_mark, context->bw_results.stutter_exit_wm_ns[1].a_mark); - dal_logger_append(&log_entry, + dm_logger_append(&log_entry, "nbpMark_b: %d nbpMark_a: %d urgentMark_b: %d urgentMark_a: %d\n" "stutMark_b: %d stutMark_a: %d stutter_mode_enable: %d\n", context->bw_results.nbp_state_change_wm_ns[2].b_mark, @@ -830,7 +825,7 @@ enum dc_status dce112_validate_bandwidth( context->bw_results.stutter_exit_wm_ns[2].b_mark, context->bw_results.stutter_exit_wm_ns[2].a_mark, context->bw_results.stutter_mode_enable); - dal_logger_append(&log_entry, + dm_logger_append(&log_entry, "cstate: %d pstate: %d nbpstate: %d sync: %d dispclk: %d\n" "sclk: %d sclk_sleep: %d yclk: %d blackout_recovery_time_us: %d\n", context->bw_results.cpuc_state_change_enable, @@ -842,7 +837,7 @@ enum dc_status dce112_validate_bandwidth( context->bw_results.required_sclk_deep_sleep, context->bw_results.required_yclk, context->bw_results.blackout_recovery_time_us); - dal_logger_close(&log_entry); + dm_logger_close(&log_entry); } return result; } diff --git a/drivers/gpu/drm/amd/dal/dc/dce80/dce80_compressor.c b/drivers/gpu/drm/amd/dal/dc/dce80/dce80_compressor.c index a05a3cb7b7d2..667be43aaa07 100644 --- a/drivers/gpu/drm/amd/dal/dc/dce80/dce80_compressor.c +++ b/drivers/gpu/drm/amd/dal/dc/dce80/dce80_compressor.c @@ -142,10 +142,8 @@ static uint32_t lpt_memory_control_config(struct dce80_compressor *cp80, LOW_POWER_TILING_NUM_PIPES); break; default: - dal_logger_write( - cp80->base.ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_CONTROLLER, + dm_logger_write( + cp80->base.ctx->logger, LOG_WARNING, "%s: Invalid LPT NUM_PIPES!!!", __func__); break; @@ -190,10 +188,8 @@ static uint32_t lpt_memory_control_config(struct dce80_compressor *cp80, LOW_POWER_TILING_NUM_BANKS); break; default: - dal_logger_write( - cp80->base.ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_CONTROLLER, + dm_logger_write( + cp80->base.ctx->logger, LOG_WARNING, "%s: Invalid LPT NUM_BANKS!!!", __func__); break; @@ -226,10 +222,8 @@ static uint32_t lpt_memory_control_config(struct dce80_compressor *cp80, LOW_POWER_TILING_PIPE_INTERLEAVE_SIZE); break; default: - dal_logger_write( - cp80->base.ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_CONTROLLER, + dm_logger_write( + cp80->base.ctx->logger, LOG_WARNING, "%s: Invalid LPT INTERLEAVE_SIZE!!!", __func__); break; @@ -272,19 +266,15 @@ static uint32_t lpt_memory_control_config(struct dce80_compressor *cp80, LOW_POWER_TILING_ROW_SIZE); break; default: - dal_logger_write( - cp80->base.ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_CONTROLLER, + dm_logger_write( + cp80->base.ctx->logger, LOG_WARNING, "%s: Invalid LPT ROW_SIZE!!!", __func__); break; } } else { - dal_logger_write( - cp80->base.ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_CONTROLLER, + dm_logger_write( + cp80->base.ctx->logger, LOG_WARNING, "%s: LPT MC Configuration is not provided", __func__); } @@ -334,10 +324,8 @@ static void wait_for_fbc_state_changed( } if (counter == 10) { - dal_logger_write( - cp80->base.ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_CONTROLLER, + dm_logger_write( + cp80->base.ctx->logger, LOG_WARNING, "%s: wait counter exceeded, changes to HW not applied", __func__); } @@ -538,10 +526,8 @@ void dce80_compressor_program_compressed_surface_address_and_pitch( if (compressor->min_compress_ratio == FBC_COMPRESS_RATIO_1TO1) fbc_pitch = fbc_pitch / 8; else - dal_logger_write( - compressor->ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_CONTROLLER, + dm_logger_write( + compressor->ctx->logger, LOG_WARNING, "%s: Unexpected DCE8 compression ratio", __func__); @@ -686,10 +672,8 @@ void dce80_compressor_program_lpt_control( LOW_POWER_TILING_MODE); break; default: - dal_logger_write( - compressor->ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_CONTROLLER, + dm_logger_write( + compressor->ctx->logger, LOG_WARNING, "%s: Invalid selected DRAM channels for LPT!!!", __func__); break; diff --git a/drivers/gpu/drm/amd/dal/dc/dce80/dce80_link_encoder.c b/drivers/gpu/drm/amd/dal/dc/dce80/dce80_link_encoder.c index fab427cf926f..bd364eeb6916 100644 --- a/drivers/gpu/drm/amd/dal/dc/dce80/dce80_link_encoder.c +++ b/drivers/gpu/drm/amd/dal/dc/dce80/dce80_link_encoder.c @@ -123,9 +123,7 @@ static void dce80_link_encoder_enable_tmds_output( result = link_transmitter_control(enc110, &cntl); if (result != BP_RESULT_OK) { - dal_logger_write(ctx->logger, - LOG_MAJOR_ERROR, - LOG_MINOR_COMPONENT_ENCODER, + dm_logger_write(ctx->logger, LOG_ERROR, "%s: Failed to execute VBIOS command table!\n", __func__); BREAK_TO_DEBUGGER(); @@ -183,9 +181,7 @@ static void dce80_link_encoder_enable_dp_output( result = link_transmitter_control(enc110, &cntl); if (result != BP_RESULT_OK) { - dal_logger_write(ctx->logger, - LOG_MAJOR_ERROR, - LOG_MINOR_COMPONENT_ENCODER, + dm_logger_write(ctx->logger, LOG_ERROR, "%s: Failed to execute VBIOS command table!\n", __func__); BREAK_TO_DEBUGGER(); @@ -308,9 +304,7 @@ bool dce80_link_encoder_construct( break; } - dal_logger_write(init_data->ctx->logger, - LOG_MAJOR_I2C_AUX, - LOG_MINOR_I2C_AUX_CFG, + dm_logger_write(init_data->ctx->logger, LOG_I2C_AUX, "Using channel: %s [%d]\n", DECODE_CHANNEL_ID(init_data->channel), init_data->channel); diff --git a/drivers/gpu/drm/amd/dal/dc/dce80/dce80_mem_input.c b/drivers/gpu/drm/amd/dal/dc/dce80/dce80_mem_input.c index c8841c17cb64..5e08a2dfb039 100644 --- a/drivers/gpu/drm/amd/dal/dc/dce80/dce80_mem_input.c +++ b/drivers/gpu/drm/amd/dal/dc/dce80/dce80_mem_input.c @@ -143,9 +143,7 @@ static void allocate_mem_input( } while (retry_count > 0); if (field == 0) - dal_logger_write(mi->ctx->logger, - LOG_MAJOR_ERROR, - LOG_MINOR_COMPONENT_GPU, + dm_logger_write(mi->ctx->logger, LOG_ERROR, "%s: DMIF allocation failed", __func__); diff --git a/drivers/gpu/drm/amd/dal/dc/dce80/dce80_opp_regamma.c b/drivers/gpu/drm/amd/dal/dc/dce80/dce80_opp_regamma.c index 14362b40f68b..648e3ef35d91 100644 --- a/drivers/gpu/drm/amd/dal/dc/dce80/dce80_opp_regamma.c +++ b/drivers/gpu/drm/amd/dal/dc/dce80/dce80_opp_regamma.c @@ -427,9 +427,7 @@ static void program_pwl( } if (counter == max_tries) { - dal_logger_write(opp80->base.ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_CONTROLLER, + dm_logger_write(opp80->base.ctx->logger, LOG_WARNING, "%s: regamma lut was not powered on " "in a timely manner," " programming still proceeds\n", diff --git a/drivers/gpu/drm/amd/dal/dc/dce80/dce80_transform_bit_depth.c b/drivers/gpu/drm/amd/dal/dc/dce80/dce80_transform_bit_depth.c index fd29892c5402..264d260320a6 100644 --- a/drivers/gpu/drm/amd/dal/dc/dce80/dce80_transform_bit_depth.c +++ b/drivers/gpu/drm/amd/dal/dc/dce80/dce80_transform_bit_depth.c @@ -591,9 +591,7 @@ bool dce80_transform_get_current_pixel_storage_depth( *depth = LB_PIXEL_DEPTH_36BPP; break; default: - dal_logger_write(xfm->ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_GPU, + dm_logger_write(xfm->ctx->logger, LOG_WARNING, "%s: Invalid LB pixel depth", __func__); *depth = LB_PIXEL_DEPTH_30BPP; @@ -706,9 +704,7 @@ bool dce80_transform_set_pixel_storage_depth( if (!(xfm80->lb_pixel_depth_supported & depth)) { /*we should use unsupported capabilities * unless it is required by w/a*/ - dal_logger_write(xfm->ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_GPU, + dm_logger_write(xfm->ctx->logger, LOG_WARNING, "%s: Capability not supported", __func__); } diff --git a/drivers/gpu/drm/amd/dal/dc/dce80/dce80_transform_scl.c b/drivers/gpu/drm/amd/dal/dc/dce80/dce80_transform_scl.c index 1e30bbb58efc..140acc1993f3 100644 --- a/drivers/gpu/drm/amd/dal/dc/dce80/dce80_transform_scl.c +++ b/drivers/gpu/drm/amd/dal/dc/dce80/dce80_transform_scl.c @@ -666,9 +666,7 @@ bool dce80_transform_set_scaler( program_two_taps_filter(xfm80, false, true); if (!program_multi_taps_filter(xfm80, data, false)) { - dal_logger_write(ctx->logger, - LOG_MAJOR_DCP, - LOG_MINOR_DCP_SCALER, + dm_logger_write(ctx->logger, LOG_SCALER, "Failed vertical taps programming\n"); return false; } @@ -680,9 +678,7 @@ bool dce80_transform_set_scaler( program_two_taps_filter(xfm80, false, false); if (!program_multi_taps_filter(xfm80, data, true)) { - dal_logger_write(ctx->logger, - LOG_MAJOR_DCP, - LOG_MINOR_DCP_SCALER, + dm_logger_write(ctx->logger, LOG_SCALER, "Failed horizontal taps programming\n"); return false; } diff --git a/drivers/gpu/drm/amd/dal/dc/dm_helpers.h b/drivers/gpu/drm/amd/dal/dc/dm_helpers.h index 6fa69703f929..d6c52d31f0f0 100644 --- a/drivers/gpu/drm/amd/dal/dc/dm_helpers.h +++ b/drivers/gpu/drm/amd/dal/dc/dm_helpers.h @@ -35,42 +35,11 @@ struct dp_mst_stream_allocation_table; -enum conn_event { - CONN_EVENT_MODE_SET, - CONN_EVENT_DETECTION, - CONN_EVENT_LINK_TRAINING, - CONN_EVENT_LINK_LOSS, - CONN_EVENT_UNDERFLOW, -}; - enum dc_edid_status dm_helpers_parse_edid_caps( struct dc_context *ctx, const struct dc_edid *edid, struct dc_edid_caps *edid_caps); - -/* Connectivity log format: - * [time stamp] [drm] [Major_minor] [connector name] message..... - * eg: - * [ 26.590965] [drm] [Conn_LKTN] [DP-1] HBRx4 pass VS=0, PE=0^ - * [ 26.881060] [drm] [Conn_Mode] [DP-1] {2560x1080, 2784x1111 at 185580Khz}^ - */ - -#define CONN_DATA_DETECT(link, hex_data, hex_len, ...) \ - dm_helper_conn_log(link->ctx, &link->public, hex_data, hex_len, \ - CONN_EVENT_DETECTION, ##__VA_ARGS__) - -#define CONN_DATA_LINK_LOSS(link, hex_data, hex_len, ...) \ - dm_helper_conn_log(link->ctx, &link->public, hex_data, hex_len, \ - CONN_EVENT_LINK_LOSS, ##__VA_ARGS__) - -#define CONN_MSG_LT(link, ...) \ - dm_helper_conn_log(link->ctx, &link->public, NULL, 0, \ - CONN_EVENT_LINK_TRAINING, ##__VA_ARGS__) - -#define CONN_MSG_MODE(link, ...) \ - dm_helper_conn_log(link->ctx, &link->public, NULL, 0, \ - CONN_EVENT_MODE_SET, ##__VA_ARGS__) /* * Writes payload allocation table in immediate downstream device. */ @@ -128,12 +97,5 @@ bool dm_helpers_submit_i2c( const struct dc_link *link, struct i2c_command *cmd); -void dm_helper_conn_log(struct dc_context *ctx, - const struct dc_link *link, - uint8_t *hex_data, - int hex_data_count, - enum conn_event event, - const char *msg, - ...); #endif /* __DM_HELPERS__ */ diff --git a/drivers/gpu/drm/amd/dal/dc/dm_services_types.h b/drivers/gpu/drm/amd/dal/dc/dm_services_types.h index 0223053767f6..44bad17fa318 100644 --- a/drivers/gpu/drm/amd/dal/dc/dm_services_types.h +++ b/drivers/gpu/drm/amd/dal/dc/dm_services_types.h @@ -26,37 +26,7 @@ #ifndef __DM_SERVICES_TYPES_H__ #define __DM_SERVICES_TYPES_H__ -#if defined __KERNEL__ - -#include <asm/byteorder.h> -#include <linux/types.h> -#include <drm/drmP.h> - -#include "cgs_linux.h" - -#if defined(__BIG_ENDIAN) && !defined(BIGENDIAN_CPU) -#define BIGENDIAN_CPU -#elif defined(__LITTLE_ENDIAN) && !defined(LITTLEENDIAN_CPU) -#define LITTLEENDIAN_CPU -#endif - -#undef READ -#undef WRITE -#undef FRAME_SIZE - -#define dm_output_to_console(fmt, ...) DRM_INFO(fmt, ##__VA_ARGS__) - -#define dm_error(fmt, ...) DRM_ERROR(fmt, ##__VA_ARGS__) - -#define dm_debug(fmt, ...) DRM_DEBUG_KMS(fmt, ##__VA_ARGS__) - -#define dm_vlog(fmt, args) vprintk(fmt, args) - -#define dm_min(x, y) min(x, y) -#define dm_max(x, y) max(x, y) - -#endif - +#include "os_types.h" #include "dc_types.h" struct dm_pp_clock_range { diff --git a/drivers/gpu/drm/amd/dal/dc/gpu/dce110/dc_clock_gating_dce110.c b/drivers/gpu/drm/amd/dal/dc/gpu/dce110/dc_clock_gating_dce110.c index 36a08a5a8164..7671e49ffa49 100644 --- a/drivers/gpu/drm/amd/dal/dc/gpu/dce110/dc_clock_gating_dce110.c +++ b/drivers/gpu/drm/amd/dal/dc/gpu/dce110/dc_clock_gating_dce110.c @@ -35,7 +35,7 @@ * Macro definitions *****************************************************************************/ -#define NOT_IMPLEMENTED() DAL_LOGGER_NOT_IMPL(LOG_MINOR_COMPONENT_GPU, \ +#define NOT_IMPLEMENTED() DAL_LOGGER_NOT_IMPL( \ "%s:%s()\n", __FILE__, __func__) /****************************************************************************** diff --git a/drivers/gpu/drm/amd/dal/dc/gpu/dce110/display_clock_dce110.c b/drivers/gpu/drm/amd/dal/dc/gpu/dce110/display_clock_dce110.c index 1f5bed80bdea..024972ee0242 100644 --- a/drivers/gpu/drm/amd/dal/dc/gpu/dce110/display_clock_dce110.c +++ b/drivers/gpu/drm/amd/dal/dc/gpu/dce110/display_clock_dce110.c @@ -150,9 +150,7 @@ static bool set_min_clocks_state( if (clocks_state > dc->max_clks_state) { /*Requested state exceeds max supported state.*/ - dal_logger_write(base->ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_GPU, + dm_logger_write(base->ctx->logger, LOG_WARNING, "Requested state exceeds max supported state"); return false; } else if (clocks_state == base->cur_min_clks_state) { @@ -176,9 +174,7 @@ static bool set_min_clocks_state( break; case CLOCKS_STATE_INVALID: default: - dal_logger_write(base->ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_GPU, + dm_logger_write(base->ctx->logger, LOG_WARNING, "Requested state invalid state"); return false; } @@ -298,9 +294,7 @@ static uint32_t get_validation_clock(struct display_clock *dc) case CLOCKS_STATE_INVALID: default: /*Invalid Clocks State*/ - dal_logger_write(dc->ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_GPU, + dm_logger_write(dc->ctx->logger, LOG_WARNING, "Invalid clock state"); /* just return the display engine clock for * lowest supported state*/ @@ -461,9 +455,7 @@ static uint32_t calc_single_display_min_clks( bool panning_allowed = false; /* TODO: receive this value from AS */ if (params == NULL) { - dal_logger_write(base->ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_GPU, + dm_logger_write(base->ctx->logger, LOG_WARNING, "Invalid input parameter in %s", __func__); return 0; @@ -483,9 +475,7 @@ static uint32_t calc_single_display_min_clks( params->source_view.height, params->dest_view.height); } else { - dal_logger_write(base->ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_GPU, + dm_logger_write(base->ctx->logger, LOG_WARNING, "Destination height or width is 0!\n"); } @@ -790,9 +780,7 @@ static enum clocks_state get_required_clocks_state( if (!req_clocks) { /* NULL pointer*/ - dal_logger_write(dc->ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_GPU, + dm_logger_write(dc->ctx->logger, LOG_WARNING, "%s: Invalid parameter", __func__); return CLOCKS_STATE_INVALID; @@ -949,9 +937,7 @@ static bool dal_display_clock_dce110_construct( dc110->dfs_bypass_disp_clk = 0; if (!display_clock_integrated_info_construct(dc110, as)) - dal_logger_write(dc_base->ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_GPU, + dm_logger_write(dc_base->ctx->logger, LOG_WARNING, "Cannot obtain VBIOS integrated info\n"); dc110->gpu_pll_ss_percentage = 0; diff --git a/drivers/gpu/drm/amd/dal/dc/gpu/dce112/dc_clock_gating_dce112.c b/drivers/gpu/drm/amd/dal/dc/gpu/dce112/dc_clock_gating_dce112.c index bf244579e0f1..cef5008cd08d 100644 --- a/drivers/gpu/drm/amd/dal/dc/gpu/dce112/dc_clock_gating_dce112.c +++ b/drivers/gpu/drm/amd/dal/dc/gpu/dce112/dc_clock_gating_dce112.c @@ -35,7 +35,7 @@ * Macro definitions *****************************************************************************/ -#define NOT_IMPLEMENTED() DAL_LOGGER_NOT_IMPL(LOG_MINOR_COMPONENT_GPU, \ +#define NOT_IMPLEMENTED() DAL_LOGGER_NOT_IMPL(\ "%s:%s()\n", __FILE__, __func__) /****************************************************************************** diff --git a/drivers/gpu/drm/amd/dal/dc/gpu/dce112/display_clock_dce112.c b/drivers/gpu/drm/amd/dal/dc/gpu/dce112/display_clock_dce112.c index 77ccb92da623..73f30ddf2d52 100644 --- a/drivers/gpu/drm/amd/dal/dc/gpu/dce112/display_clock_dce112.c +++ b/drivers/gpu/drm/amd/dal/dc/gpu/dce112/display_clock_dce112.c @@ -125,9 +125,7 @@ bool dispclk_dce112_set_min_clocks_state( if (clocks_state > dc->max_clks_state) { /*Requested state exceeds max supported state.*/ - dal_logger_write(base->ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_GPU, + dm_logger_write(base->ctx->logger, LOG_WARNING, "Requested state exceeds max supported state"); return false; } else if (clocks_state == base->cur_min_clks_state) { @@ -151,9 +149,7 @@ bool dispclk_dce112_set_min_clocks_state( break; case CLOCKS_STATE_INVALID: default: - dal_logger_write(base->ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_GPU, + dm_logger_write(base->ctx->logger, LOG_WARNING, "Requested state invalid state"); return false; } @@ -275,9 +271,7 @@ uint32_t dispclk_dce112_get_validation_clock(struct display_clock *dc) case CLOCKS_STATE_INVALID: default: /*Invalid Clocks State*/ - dal_logger_write(dc->ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_GPU, + dm_logger_write(dc->ctx->logger, LOG_WARNING, "Invalid clock state"); /* just return the display engine clock for * lowest supported state*/ @@ -438,9 +432,7 @@ static uint32_t calc_single_display_min_clks( bool panning_allowed = false; /* TODO: receive this value from AS */ if (params == NULL) { - dal_logger_write(base->ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_GPU, + dm_logger_write(base->ctx->logger, LOG_WARNING, "Invalid input parameter in %s", __func__); return 0; @@ -460,9 +452,7 @@ static uint32_t calc_single_display_min_clks( params->source_view.height, params->dest_view.height); } else { - dal_logger_write(base->ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_GPU, + dm_logger_write(base->ctx->logger, LOG_WARNING, "Destination height or width is 0!\n"); } @@ -754,9 +744,7 @@ enum clocks_state dispclk_dce112_get_required_clocks_state( if (!req_clocks) { /* NULL pointer*/ - dal_logger_write(dc->ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_GPU, + dm_logger_write(dc->ctx->logger, LOG_WARNING, "%s: Invalid parameter", __func__); return CLOCKS_STATE_INVALID; @@ -876,9 +864,7 @@ bool dal_display_clock_dce112_construct( dc112->dfs_bypass_disp_clk = 0; if (!display_clock_integrated_info_construct(dc112, as)) - dal_logger_write(dc_base->ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_GPU, + dm_logger_write(dc_base->ctx->logger, LOG_WARNING, "Cannot obtain VBIOS integrated info\n"); dc112->gpu_pll_ss_percentage = 0; diff --git a/drivers/gpu/drm/amd/dal/dc/gpu/dce80/display_clock_dce80.c b/drivers/gpu/drm/amd/dal/dc/gpu/dce80/display_clock_dce80.c index 109e249c39ec..6c5c656c0166 100644 --- a/drivers/gpu/drm/amd/dal/dc/gpu/dce80/display_clock_dce80.c +++ b/drivers/gpu/drm/amd/dal/dc/gpu/dce80/display_clock_dce80.c @@ -587,9 +587,7 @@ static bool set_min_clocks_state( if (clocks_state > disp_clk->max_clks_state) { /*Requested state exceeds max supported state.*/ - dal_logger_write(dc->ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_GPU, + dm_logger_write(dc->ctx->logger, LOG_WARNING, "Requested state exceeds max supported state"); return false; } else if (clocks_state == dc->cur_min_clks_state) { @@ -613,9 +611,7 @@ static bool set_min_clocks_state( break; case CLOCKS_STATE_INVALID: default: - dal_logger_write(dc->ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_GPU, + dm_logger_write(dc->ctx->logger, LOG_WARNING, "Requested state invalid state"); return false; } @@ -897,9 +893,7 @@ static bool display_clock_construct( display_clock_ss_construct(disp_clk, as); if (!display_clock_integrated_info_construct(disp_clk, as)) { - dal_logger_write(dc_base->ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_GPU, + dm_logger_write(dc_base->ctx->logger, LOG_WARNING, "Cannot obtain VBIOS integrated info"); } diff --git a/drivers/gpu/drm/amd/dal/dc/i2caux/dce110/i2c_hw_engine_dce110.c b/drivers/gpu/drm/amd/dal/dc/i2caux/dce110/i2c_hw_engine_dce110.c index 3a20c4342774..b4ced869c4bd 100644 --- a/drivers/gpu/drm/amd/dal/dc/i2caux/dce110/i2c_hw_engine_dce110.c +++ b/drivers/gpu/drm/amd/dal/dc/i2caux/dce110/i2c_hw_engine_dce110.c @@ -898,10 +898,8 @@ bool i2c_hw_engine_dce110_construct( XTAL_REF_DIV); if (xtal_ref_div == 0) { - dal_logger_write( - hw_engine->base.base.base.ctx->logger, - LOG_MAJOR_WARNING, - LOG_MINOR_COMPONENT_I2C_AUX, + dm_logger_write( + hw_engine->base.base.base.ctx->logger, LOG_WARNING, "Invalid base timer divider\n", __func__); xtal_ref_div = 2; diff --git a/drivers/gpu/drm/amd/dal/dc/irq/dce110/irq_service_dce110.c b/drivers/gpu/drm/amd/dal/dc/irq/dce110/irq_service_dce110.c index 32af9b45c858..f3eda1b4eebf 100644 --- a/drivers/gpu/drm/amd/dal/dc/irq/dce110/irq_service_dce110.c +++ b/drivers/gpu/drm/amd/dal/dc/irq/dce110/irq_service_dce110.c @@ -161,10 +161,8 @@ bool dal_irq_service_dummy_set( const struct irq_source_info *info, bool enable) { - dal_logger_write( - irq_service->ctx->logger, - LOG_MAJOR_ERROR, - LOG_MINOR_COMPONENT_IRQ_SERVICE, + dm_logger_write( + irq_service->ctx->logger, LOG_ERROR, "%s: called for non-implemented irq source\n", __func__); return false; @@ -174,10 +172,8 @@ bool dal_irq_service_dummy_ack( struct irq_service *irq_service, const struct irq_source_info *info) { - dal_logger_write( - irq_service->ctx->logger, - LOG_MAJOR_ERROR, - LOG_MINOR_COMPONENT_IRQ_SERVICE, + dm_logger_write( + irq_service->ctx->logger, LOG_ERROR, "%s: called for non-implemented irq source\n", __func__); return false; diff --git a/drivers/gpu/drm/amd/dal/dc/irq/irq_service.c b/drivers/gpu/drm/amd/dal/dc/irq/irq_service.c index 328c77034bc5..fbaa2fc00ddb 100644 --- a/drivers/gpu/drm/amd/dal/dc/irq/irq_service.c +++ b/drivers/gpu/drm/amd/dal/dc/irq/irq_service.c @@ -97,10 +97,8 @@ bool dal_irq_service_set( find_irq_source_info(irq_service, source); if (!info) { - dal_logger_write( - irq_service->ctx->logger, - LOG_MAJOR_ERROR, - LOG_MINOR_COMPONENT_IRQ_SERVICE, + dm_logger_write( + irq_service->ctx->logger, LOG_ERROR, "%s: cannot find irq info table entry for %d\n", __func__, source); @@ -137,10 +135,8 @@ bool dal_irq_service_ack( find_irq_source_info(irq_service, source); if (!info) { - dal_logger_write( - irq_service->ctx->logger, - LOG_MAJOR_ERROR, - LOG_MINOR_COMPONENT_IRQ_SERVICE, + dm_logger_write( + irq_service->ctx->logger, LOG_ERROR, "%s: cannot find irq info table entry for %d\n", __func__, source); diff --git a/drivers/gpu/drm/amd/dal/dc/os_types.h b/drivers/gpu/drm/amd/dal/dc/os_types.h new file mode 100644 index 000000000000..459a2741eccb --- /dev/null +++ b/drivers/gpu/drm/amd/dal/dc/os_types.h @@ -0,0 +1,61 @@ +/* + * Copyright 2012-16 Advanced Micro Devices, Inc. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR + * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, + * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR + * OTHER DEALINGS IN THE SOFTWARE. + * + * Authors: AMD + * + */ + +#ifndef _OS_TYPES_H_ +#define _OS_TYPES_H_ + +#if defined __KERNEL__ + +#include <asm/byteorder.h> +#include <linux/types.h> +#include <drm/drmP.h> + +#include "cgs_linux.h" + +#if defined(__BIG_ENDIAN) && !defined(BIGENDIAN_CPU) +#define BIGENDIAN_CPU +#elif defined(__LITTLE_ENDIAN) && !defined(LITTLEENDIAN_CPU) +#define LITTLEENDIAN_CPU +#endif + +#undef READ +#undef WRITE +#undef FRAME_SIZE + +#define dm_output_to_console(fmt, ...) DRM_INFO(fmt, ##__VA_ARGS__) + +#define dm_error(fmt, ...) DRM_ERROR(fmt, ##__VA_ARGS__) + +#define dm_debug(fmt, ...) DRM_DEBUG_KMS(fmt, ##__VA_ARGS__) + +#define dm_vlog(fmt, args) vprintk(fmt, args) + +#define dm_min(x, y) min(x, y) +#define dm_max(x, y) max(x, y) + +#endif + + +#endif /* _OS_TYPES_H_ */ diff --git a/drivers/gpu/drm/amd/dal/include/fixed31_32.h b/drivers/gpu/drm/amd/dal/include/fixed31_32.h index 05f04a68232a..c28de167250f 100644 --- a/drivers/gpu/drm/amd/dal/include/fixed31_32.h +++ b/drivers/gpu/drm/amd/dal/include/fixed31_32.h @@ -26,6 +26,8 @@ #ifndef __DAL_FIXED31_32_H__ #define __DAL_FIXED31_32_H__ +#include "os_types.h" + /* * @brief * Arithmetic operations on real numbers diff --git a/drivers/gpu/drm/amd/dal/include/fixed32_32.h b/drivers/gpu/drm/amd/dal/include/fixed32_32.h index 5fca9573930b..c7ddd0e435eb 100644 --- a/drivers/gpu/drm/amd/dal/include/fixed32_32.h +++ b/drivers/gpu/drm/amd/dal/include/fixed32_32.h @@ -23,9 +23,12 @@ * */ + #ifndef __DAL_FIXED32_32_H__ #define __DAL_FIXED32_32_H__ +#include "os_types.h" + struct fixed32_32 { uint64_t value; }; diff --git a/drivers/gpu/drm/amd/dal/include/logger_interface.h b/drivers/gpu/drm/amd/dal/include/logger_interface.h index e4e6b3a62044..859215630914 100644 --- a/drivers/gpu/drm/amd/dal/include/logger_interface.h +++ b/drivers/gpu/drm/amd/dal/include/logger_interface.h @@ -28,13 +28,8 @@ #include "logger_types.h" -struct dal_logger; struct dc_context; -union logger_flags; - -/* - * TODO: This logger functionality needs to be implemented and reworked. - */ +struct dc_link; /* * @@ -46,92 +41,45 @@ struct dal_logger *dal_logger_create(struct dc_context *ctx); uint32_t dal_logger_destroy(struct dal_logger **logger); -uint32_t dal_logger_get_mask( - struct dal_logger *logger, - enum log_major lvl_major, enum log_minor lvl_minor); - -uint32_t dal_logger_set_mask( - struct dal_logger *logger, - enum log_major lvl_major, enum log_minor lvl_minor); - -uint32_t dal_logger_get_masks( - struct dal_logger *logger, - enum log_major lvl_major); - -void dal_logger_set_masks( - struct dal_logger *logger, - enum log_major lvl_major, uint32_t log_mask); - -uint32_t dal_logger_unset_mask( +void dm_logger_write( struct dal_logger *logger, - enum log_major lvl_major, enum log_minor lvl_minor); - -bool dal_logger_should_log( - struct dal_logger *logger, - enum log_major major, - enum log_minor minor); - -uint32_t dal_logger_get_flags( - struct dal_logger *logger); - -void dal_logger_set_flags( - struct dal_logger *logger, - union logger_flags flags); - -void dal_logger_write( - struct dal_logger *logger, - enum log_major major, - enum log_minor minor, + enum dc_log_type log_type, const char *msg, ...); -void dal_logger_append( +void dm_logger_append( struct log_entry *entry, const char *msg, ...); -uint32_t dal_logger_read( - struct dal_logger *logger, - uint32_t output_buffer_size, - char *output_buffer, - uint32_t *bytes_read, - bool single_line); - -void dal_logger_open( +void dm_logger_open( struct dal_logger *logger, struct log_entry *entry, - enum log_major major, - enum log_minor minor); - -void dal_logger_close(struct log_entry *entry); + enum dc_log_type log_type); -uint32_t dal_logger_get_buffer_size(struct dal_logger *logger); - -uint32_t dal_logger_set_buffer_size( - struct dal_logger *logger, - uint32_t new_size); +void dm_logger_close(struct log_entry *entry); -const struct log_major_info *dal_logger_enum_log_major_info( - struct dal_logger *logger, - unsigned int enum_index); +void dc_conn_log(struct dc_context *ctx, + const struct dc_link *link, + uint8_t *hex_data, + int hex_data_count, + enum dc_log_type event, + const char *msg, + ...); -const struct log_minor_info *dal_logger_enum_log_minor_info( - struct dal_logger *logger, - enum log_major major, - unsigned int enum_index); /* Any function which is empty or have incomplete implementation should be * marked by this macro. * Note that the message will be printed exactly once for every function * it is used in order to avoid repeating of the same message. */ -#define DAL_LOGGER_NOT_IMPL(log_minor, fmt, ...) \ +#define DAL_LOGGER_NOT_IMPL(fmt, ...) \ { \ static bool print_not_impl = true; \ \ if (print_not_impl == true) { \ print_not_impl = false; \ - dal_logger_write(ctx->logger, LOG_MAJOR_WARNING, \ - log_minor, "DAL_NOT_IMPL: " fmt, ##__VA_ARGS__); \ + dm_logger_write(ctx->logger, LOG_WARNING, \ + "DAL_NOT_IMPL: " fmt, ##__VA_ARGS__); \ } \ } @@ -140,13 +88,35 @@ const struct log_minor_info *dal_logger_enum_log_minor_info( *****************************************************************************/ #define DC_ERROR(...) \ - dal_logger_write(dc_ctx->logger, \ - LOG_MAJOR_ERROR, LOG_MINOR_COMPONENT_DC, \ + dm_logger_write(dc_ctx->logger, LOG_ERROR, \ __VA_ARGS__); #define DC_SYNC_INFO(...) \ - dal_logger_write(dc_ctx->logger, \ - LOG_MAJOR_SYNC, LOG_MINOR_SYNC_TIMING, \ + dm_logger_write(dc_ctx->logger, LOG_SYNC, \ __VA_ARGS__); + +/* Connectivity log format: + * [time stamp] [drm] [Major_minor] [connector name] message..... + * eg: + * [ 26.590965] [drm] [Conn_LKTN] [DP-1] HBRx4 pass VS=0, PE=0^ + * [ 26.881060] [drm] [Conn_Mode] [DP-1] {2560x1080, 2784x1111 at 185580Khz}^ + */ + +#define CONN_DATA_DETECT(link, hex_data, hex_len, ...) \ + dc_conn_log(link->ctx, &link->public, hex_data, hex_len, \ + LOG_EVENT_DETECTION, ##__VA_ARGS__) + +#define CONN_DATA_LINK_LOSS(link, hex_data, hex_len, ...) \ + dc_conn_log(link->ctx, &link->public, hex_data, hex_len, \ + LOG_EVENT_LINK_LOSS, ##__VA_ARGS__) + +#define CONN_MSG_LT(link, ...) \ + dc_conn_log(link->ctx, &link->public, NULL, 0, \ + LOG_EVENT_LINK_TRAINING, ##__VA_ARGS__) + +#define CONN_MSG_MODE(link, ...) \ + dc_conn_log(link->ctx, &link->public, NULL, 0, \ + LOG_EVENT_MODE_SET, ##__VA_ARGS__) + #endif /* __DAL_LOGGER_INTERFACE_H__ */ diff --git a/drivers/gpu/drm/amd/dal/include/logger_types.h b/drivers/gpu/drm/amd/dal/include/logger_types.h index ce2b649fad7b..1ea60bb9e716 100644 --- a/drivers/gpu/drm/amd/dal/include/logger_types.h +++ b/drivers/gpu/drm/amd/dal/include/logger_types.h @@ -26,305 +26,43 @@ #ifndef __DAL_LOGGER_TYPES_H__ #define __DAL_LOGGER_TYPES_H__ -/* - * TODO: This logger functionality needs to be implemented and reworked. - */ - -struct dal_logger; - -enum log_major { -/*00*/ - LOG_MAJOR_ERROR = 0, /*< DAL subcomponent error MSG*/ -/*01*/ LOG_MAJOR_WARNING, /*< DAL subcomponent warning MSG*/ -/*02*/ LOG_MAJOR_INTERFACE_TRACE,/*< DAL subcomponent interface tracing*/ -/*03*/ LOG_MAJOR_HW_TRACE, /*< Log ASIC register read/write, - * ATOMBIOS exec table call and delays*/ - -/*04*/ LOG_MAJOR_MST, /*< related to multi-stream*/ -/*05*/ LOG_MAJOR_DCS, /*< related to Dcs*/ -/*06*/ LOG_MAJOR_DCP, /*< related to Dcp grph and ovl,gamam and csc*/ -/*07*/ LOG_MAJOR_BIOS, /*< related to BiosParser*/ -/*08*/ LOG_MAJOR_REGISTER, /*< register access*/ -/*09*/ LOG_MAJOR_INFO_PACKETS, /*< info packets*/ -/*10*/ LOG_MAJOR_DSAT, /*< related - * to Display System Analysis Tool*/ -/*11*/ LOG_MAJOR_EC, /*< External Components - MCIL Events/queries, - * PPLib notifications/queries*/ -/*12*/ LOG_MAJOR_BWM, /*< related to Bandwidth Manager*/ -/*13*/ LOG_MAJOR_MODE_ENUM, /*< related to mode enumeration*/ -/*14*/ LOG_MAJOR_I2C_AUX, /*< i2c and aux channel log*/ -/*15*/ LOG_MAJOR_LINE_BUFFER, /*< Line Buffer object logging activity*/ -/*16*/ LOG_MAJOR_HWSS, /*< HWSS object logging activity*/ -/*17*/ LOG_MAJOR_OPTIMIZATION, /*< Optimization code path*/ -/*18*/ LOG_MAJOR_PERF_MEASURE, /*< Performance measurement dumps*/ -/*19*/ LOG_MAJOR_SYNC, /*< related to HW and SW Synchronization*/ -/*20*/ LOG_MAJOR_BACKLIGHT, /*< related to backlight */ -/*21*/ LOG_MAJOR_INTERRUPTS, /*< logging for all interrupts */ - -/*22*/ LOG_MAJOR_TM, /*< related to Topology Manager*/ -/*23*/ LOG_MAJOR_DISPLAY_SERVICE, /*< related to Display Service*/ -/*24*/ LOG_MAJOR_FEATURE_OVERRIDE, /*< related to features*/ -/*25*/ LOG_MAJOR_DETECTION, /*< related to detection*/ -/*26*/ LOG_MAJOR_CONNECTIVITY, /*< related to connectivity*/ - LOG_MAJOR_COUNT, /*< count of the Major categories*/ -}; - -/** -* @brief defines minor switch for logging. each of these define sub category -* of log message per LogMajor -*/ +#include "os_types.h" -enum log_minor { +#define MAX_NAME_LEN 32 - /* Special case for 'all' checkbox */ - LOG_MINOR_MASK_ALL = (uint32_t)-1, /* 0xFFFFFFFF */ -/** -* @brief defines minor category for -* LOG_MAJOR_ERROR, -* LOG_MAJOR_WARNING, -* LOG_MAJOR_INTERFACE_TRACE -* -* @note each DAL subcomponent should have a corresponding enum -*/ - LOG_MINOR_COMPONENT_LINK_SERVICE = 0, - LOG_MINOR_COMPONENT_DAL_INTERFACE, - LOG_MINOR_COMPONENT_HWSS, - LOG_MINOR_COMPONENT_ADAPTER_SERVICE, - LOG_MINOR_COMPONENT_DISPLAY_SERVICE, - LOG_MINOR_COMPONENT_TOPOLOGY_MANAGER, - LOG_MINOR_COMPONENT_ENCODER, - LOG_MINOR_COMPONENT_I2C_AUX, - LOG_MINOR_COMPONENT_AUDIO, - LOG_MINOR_COMPONENT_DISPLAY_CAPABILITY_SERVICE, - LOG_MINOR_COMPONENT_DMCU, - LOG_MINOR_COMPONENT_GPU, - LOG_MINOR_COMPONENT_CONTROLLER, - LOG_MINOR_COMPONENT_ISR, - LOG_MINOR_COMPONENT_BIOS, - LOG_MINOR_COMPONENT_DC, - LOG_MINOR_COMPONENT_SURFACE, - LOG_MINOR_COMPONENT_IRQ_SERVICE, - -/** -* @brief define minor category for LogMajor_HardwareTrace -* -* @note defines functionality based HW programming trace -*/ - LOG_MINOR_HW_TRACE_MST = 0, - LOG_MINOR_HW_TRACE_TRAVIS, - LOG_MINOR_HW_TRACE_HOTPLUG, - LOG_MINOR_HW_TRACE_LINK_TRAINING, - LOG_MINOR_HW_TRACE_SET_MODE, - LOG_MINOR_HW_TRACE_RESUME_S3, - LOG_MINOR_HW_TRACE_RESUME_S4, - LOG_MINOR_HW_TRACE_BOOTUP, - LOG_MINOR_HW_TRACE_AUDIO, - LOG_MINOR_HW_TRACE_HPD_IRQ, - LOG_MINOR_HW_TRACE_INTERRUPT, - LOG_MINOR_HW_TRACE_MPO, - -/** -* @brief defines minor category for LogMajor_Mst -* -* @note define sub functionality related to MST -*/ - LOG_MINOR_MST_IRQ_HPD_RX = 0, - LOG_MINOR_MST_IRQ_TIMER, - LOG_MINOR_MST_NATIVE_AUX, - LOG_MINOR_MST_SIDEBAND_MSG, - LOG_MINOR_MST_MSG_TRANSACTION, - LOG_MINOR_MST_SIDEBAND_MSG_PARSED, - LOG_MINOR_MST_MSG_TRANSACTION_PARSED, - LOG_MINOR_MST_AUX_MSG_DPCD_ACCESS, - LOG_MINOR_MST_PROGRAMMING, - LOG_MINOR_MST_TOPOLOGY_DISCOVERY, - LOG_MINOR_MST_CONVERTER_CAPS, - -/** -* @brief defines minor category for LogMajor_DCS -* -* @note should define sub functionality related to Dcs -*/ - LOG_MINOR_DCS_EDID_EMULATOR = 0, - LOG_MINOR_DCS_DONGLE_DETECTION, - -/** -* @brief defines minor category for DCP -* -* @note should define sub functionality related to Dcp -*/ - LOG_MINOR_DCP_GAMMA_GRPH = 0, - LOG_MINOR_DCP_GAMMA_OVL, - LOG_MINOR_DCP_CSC_GRPH, - LOG_MINOR_DCP_CSC_OVL, - LOG_MINOR_DCP_SCALER, - LOG_MINOR_DCP_SCALER_TABLES, -/** -* @brief defines minor category for LogMajor_Bios -* -* @note define sub functionality related to BiosParser -*/ - LOG_MINOR_BIOS_CMD_TABLE = 0, -/** -* @brief defines minor category for LogMajor_Bios -* -* @note define sub functionality related to BiosParser -*/ - LOG_MINOR_REGISTER_INDEX = 0, -/** -* @brief defines minor category for info packets -* -*/ - LOG_MINOR_INFO_PACKETS_HDMI = 0, - -/** -* @brief defines minor category for LOG_MAJOR_DSAT -* -* @note define sub functionality related to Display System Analysis Tool -*/ - LOG_MINOR_DSAT_LOGGER = 0, - LOG_MINOR_DSAT_GET_EDID, - LOG_MINOR_DSAT_EDID_OVERRIDE, - LOG_MINOR_DSAT_SET_ADJUSTMENTS, - LOG_MINOR_DSAT_GET_ADJUSTMENTS, - -/** -* @brief defines minor category for LOG_MAJOR_EC -* -* @note define sub functionality related to External components notifications -*/ - LOG_MINOR_EC_PPLIB_NOTIFY = 0, - LOG_MINOR_EC_PPLIB_QUERY, - -/** -* @brief defines minor category for LOG_MAJOR_BWM -* -* @note define sub functionality related to Bandwidth Manager -*/ - LOG_MINOR_BWM_MODE_VALIDATION = 0, - LOG_MINOR_BWM_REQUIRED_BANDWIDTH_CALCS, - -/** -* @brief define minor category for LogMajor_ModeEnum -* -* @note defines functionality mode enumeration trace -*/ - LOG_MINOR_MODE_ENUM_BEST_VIEW_CANDIDATES = 0, - LOG_MINOR_MODE_ENUM_VIEW_SOLUTION, - LOG_MINOR_MODE_ENUM_TS_LIST_BUILD, - LOG_MINOR_MODE_ENUM_TS_LIST, - LOG_MINOR_MODE_ENUM_MASTER_VIEW_LIST, - LOG_MINOR_MODE_ENUM_MASTER_VIEW_LIST_UPDATE, - -/** -* @brief defines minor category for LogMajor_I2C_AUX -* -* @note define sub functionality related to I2c and Aux Channel Log -*/ - LOG_MINOR_I2C_AUX_LOG = 0, - LOG_MINOR_I2C_AUX_AUX_TIMESTAMP, - LOG_MINOR_I2C_AUX_CFG, - -/** -* @brief defines minor category for LogMajor_LineBuffer -* -* @note define sub functionality related to LineBuffer -*/ - LOG_MINOR_LINE_BUFFER_POWERGATING = 0, - -/** -* @brief defines minor category for LogMajor_HWSS -* -* @note define sub functionality related to HWSS -*/ - LOG_MINOR_HWSS_TAPS_VALIDATION = 0, - -/** -* @brief defines minor category for LogMajor_Optimization -* -* @note define sub functionality related to Optimization -*/ - LOG_MINOR_OPTMZ_GENERAL = 0, - LOG_MINOR_OPTMZ_DO_NOT_TURN_OFF_VCC_DURING_SET_MODE, - -/** -* @brief defines minor category for LogMajor_PerfMeasure -* -* @note define sub functionality related to Performance measurement dumps -*/ - LOG_MINOR_PERF_MEASURE_GENERAL = 0, - LOG_MINOR_PERF_MEASURE_HEAP_MEMORY, - -/** -* @brief defines minor category for LogMajor_Sync -* -* @note define sub functionality related to HW and SW Synchronization -*/ - LOG_MINOR_SYNC_HW_CLOCK_ADJUST = 0, - LOG_MINOR_SYNC_TIMING, - -/** -* @brief defines minor category for LogMajor_Backlight -* -* @note define sub functionality related to backlight (including VariBright) -*/ - LOG_MINOR_BACKLIGHT_BRIGHTESS_CAPS = 0, - LOG_MINOR_BACKLIGHT_DMCU_DELTALUT, - LOG_MINOR_BACKLIGHT_DMCU_BUILD_DELTALUT, - LOG_MINOR_BACKLIGHT_INTERFACE, - LOG_MINOR_BACKLIGHT_LID, - -/** -* @brief defines minor category for LOG_MAJOR_TM -* -* @note define sub functionality related to Topology Manager -*/ - LOG_MINOR_TM_INFO = 0, - LOG_MINOR_TM_IFACE_TRACE, - LOG_MINOR_TM_RESOURCES, - LOG_MINOR_TM_ENCODER_CTL, - LOG_MINOR_TM_ENG_ASN, - LOG_MINOR_TM_CONTROLLER_ASN, - LOG_MINOR_TM_PWR_GATING, - LOG_MINOR_TM_BUILD_DSP_PATH, - LOG_MINOR_TM_DISPLAY_DETECT, - LOG_MINOR_TM_LINK_SRV, - LOG_MINOR_TM_NOT_IMPLEMENTED, - LOG_MINOR_TM_COFUNC_PATH, - -/** -* @brief defines minor category for LOG_MAJOR_DISPLAY_SERVICE -* -* @note define sub functionality related to Display Service -*/ - LOG_MINOR_DS_MODE_SETTING = 0, - -/** -* @brief defines minor category for LOG_MAJOR_FEATURE_OVERRIDE -* -* @note define sub functionality related to features in adapter service -*/ - LOG_MINOR_FEATURE_OVERRIDE = 0, - -/** -* @brief defines minor category for LOG_MAJOR_DETECTION -* -* @note define sub functionality related to detection -*/ - LOG_MINOR_DETECTION_EDID_PARSER = 0, - LOG_MINOR_DETECTION_DP_CAPS, - -/** -* @brief defines minor category for LOG_MAJOR_CONNECTIVITY -* -* @note define sub functionality related to connectivity -*/ - LOG_MINOR_CONNECTIVITY_MODE_SET = 0, - LOG_MINOR_CONNECTIVITY_DETECTION, - LOG_MINOR_CONNECTIVITY_LINK_TRAINING, - LOG_MINOR_CONNECTIVITY_LINK_LOSS, - LOG_MINOR_CONNECTIVITY_UNDERFLOW, +struct dal_logger; +enum dc_log_type { + LOG_ERROR = 0, + LOG_WARNING, + LOG_DC, + LOG_SURFACE, + LOG_HW_HOTPLUG, + LOG_HW_LINK_TRAINING, + LOG_HW_SET_MODE, + LOG_HW_RESUME_S3, + LOG_HW_AUDIO, + LOG_HW_HPD_IRQ, + LOG_MST, + LOG_SCALER, + LOG_BIOS, + LOG_BANDWIDTH_CALCS, + LOG_BANDWIDTH_VALIDATION, + LOG_I2C_AUX, + LOG_SYNC, + LOG_BACKLIGHT, + LOG_FEATURE_OVERRIDE, + LOG_DETECTION_EDID_PARSER, + LOG_DETECTION_DP_CAPS, + LOG_RESOURCE, + LOG_DML, + LOG_EVENT_MODE_SET, + LOG_EVENT_DETECTION, + LOG_EVENT_LINK_TRAINING, + LOG_EVENT_LINK_LOSS, + LOG_EVENT_UNDERFLOW, + + LOG_SECTION_TOTAL_COUNT }; union logger_flags { @@ -337,10 +75,8 @@ union logger_flags { }; struct log_entry { - struct dal_logger *logger; - enum log_major major; - enum log_minor minor; + enum dc_log_type type; char *buf; uint32_t buf_offset; @@ -348,20 +84,11 @@ struct log_entry { }; /** -* Structure for enumerating LogMajors and LogMinors +* Structure for enumerating log types */ - -#define MAX_MAJOR_NAME_LEN 32 -#define MAX_MINOR_NAME_LEN 32 - -struct log_major_info { - enum log_major major; - char major_name[MAX_MAJOR_NAME_LEN]; -}; - -struct log_minor_info { - enum log_minor minor; - char minor_name[MAX_MINOR_NAME_LEN]; +struct dc_log_type_info { + enum dc_log_type type; + char name[MAX_NAME_LEN]; }; #endif /* __DAL_LOGGER_TYPES_H__ */ -- 2.10.1