![]() |
coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
|
#include <commonlib/helpers.h>
#include <console/console.h>
#include <device/mmio.h>
#include <delay.h>
#include <timer.h>
#include <soc/addressmap.h>
#include <soc/clock.h>
#include <device/device.h>
#include <edid.h>
#include <soc/nvidia/tegra/types.h>
#include <soc/nvidia/tegra/dc.h>
#include <soc/display.h>
#include <soc/mipi_dsi.h>
#include <soc/mipi_display.h>
#include <soc/tegra_dsi.h>
#include <soc/mipi-phy.h>
#include <types.h>
#include "chip.h"
#include "jdi_25x18_display/panel-jdi-lpm102a188a.h"
Go to the source code of this file.
Variables | |
struct tegra_mipi_device | mipi_device_data [NUM_DSI] |
struct tegra_dsi | dsi_data [NUM_DSI] |
static const u32 | init_reg [] |
static const u32 | pkt_seq_video_non_burst_sync_pulses [NUM_PKT_SEQ] |
static const u32 | pkt_seq_video_non_burst_sync_events [NUM_PKT_SEQ] |
static const u32 | pkt_seq_command_mode [NUM_PKT_SEQ] |
static const char *const | error_report [16] |
static const struct mipi_dsi_host_ops | tegra_dsi_host_ops |
Definition at line 952 of file dsi.c.
References ALIGN_UP, BIOS_ERR, BIOS_INFO, device::chip_info, clock_configure_plld(), clock_configure_source, config, dsi_enable(), KHz, MiB, NULL, pass_mode_info_to_payload(), PLLD_OUT0, printk, tegra_dc_init(), update_display_mode(), and update_window().
Referenced by display_startup().
|
static |
Definition at line 921 of file dsi.c.
References APB_MISC_GP_MIPI_PAD_CTRL_0, BIOS_ERR, config, DSI_A, dsi_data, dsi_probe(), DSIB_MODE_DSI, tegra_dsi::panel, panel_jdi_prepare(), printk, tegra_dsi_init_regs(), tegra_dsi_set_phy_timing(), tegra_output_dsi_enable(), tegra_output_dsi_setup_clock(), and write32().
Referenced by dsi_display_startup().
|
static |
Definition at line 904 of file dsi.c.
References config, DSI_A, DSI_B, and dsi_probe_if().
Referenced by dsi_enable().
|
static |
Definition at line 862 of file dsi.c.
References BIOS_ERR, config, mipi_dsi_host::dev, dsi_data, DSI_INIT_SEQ_CONTROL, EPTR, tegra_dsi::flags, tegra_dsi::format, tegra_dsi::host, IS_ERR_PTR, tegra_dsi::lanes, tegra_dsi::mipi, mipi_device_data, MIPI_DSI_FMT_RGB888, mipi_dsi_host_register(), panel_jdi::mode, mipi_dsi_host::ops, tegra_dsi::panel, panel_jdi_dsi_probe(), printk, tegra_dsi_host_ops, tegra_dsi_pad_calibrate(), tegra_dsi_writel(), and tegra_mipi_request().
Referenced by dsi_probe().
|
inlinestatic |
Definition at line 86 of file dsi.c.
References container_of, and tegra_dsi::host.
Referenced by tegra_dsi_host_attach(), and tegra_dsi_host_transfer().
|
static |
Definition at line 269 of file dsi.c.
References BIOS_SPEW, delay(), DIV_ROUND_UP, DSI_CONTROL, DSI_CONTROL_CHANNEL, DSI_CONTROL_DCS_ENABLE, DSI_CONTROL_FORMAT, DSI_CONTROL_HOST_ENABLE, DSI_CONTROL_HS_CLK_CTRL, DSI_CONTROL_LANES, DSI_CONTROL_SOURCE, DSI_CONTROL_TX_TRIG, DSI_CONTROL_VIDEO_ENABLE, DSI_DCS_CMDS, DSI_HOST_CONTROL, DSI_HOST_CONTROL_HS, DSI_MAX_THRESHOLD, DSI_PKT_LEN_0_1, DSI_PKT_LEN_2_3, DSI_PKT_LEN_4_5, DSI_PKT_LEN_6_7, DSI_PKT_SEQ_0_LO, DSI_SOL_DELAY, tegra_dsi::flags, tegra_dsi::format, tegra_dsi::ganged_lanes, tegra_dsi::ganged_mode, hsync_end, hsync_start, htotal, tegra_dsi::lanes, MIPI_DCS_WRITE_MEMORY_CONTINUE, MIPI_DCS_WRITE_MEMORY_START, MIPI_DSI_CLOCK_NON_CONTINUOUS, MIPI_DSI_MODE_VIDEO, MIPI_DSI_MODE_VIDEO_SYNC_PULSE, NUM_PKT_SEQ, pkt_seq_command_mode, pkt_seq_video_non_burst_sync_events, pkt_seq_video_non_burst_sync_pulses, printk, tegra_dsi::slave, tegra_dsi_ganged_enable(), tegra_dsi_get_format(), tegra_dsi_get_muldiv(), tegra_dsi_readl(), tegra_dsi_writel(), value, tegra_dsi::video_fifo_depth, and soc_nvidia_tegra210_config::xres.
Referenced by tegra_output_dsi_enable().
Definition at line 257 of file dsi.c.
References DSI_POWER_CONTROL, DSI_POWER_CONTROL_ENABLE, tegra_dsi::slave, tegra_dsi_readl(), tegra_dsi_writel(), and value.
Referenced by tegra_output_dsi_enable().
|
static |
Definition at line 245 of file dsi.c.
References DSI_GANGED_MODE_CONTROL, DSI_GANGED_MODE_CONTROL_ENABLE, DSI_GANGED_MODE_SIZE, DSI_GANGED_MODE_START, tegra_dsi_writel(), and value.
Referenced by tegra_dsi_configure().
Definition at line 821 of file dsi.c.
References tegra_dsi::ganged_lanes, tegra_dsi::ganged_mode, tegra_dsi::lanes, and tegra_dsi::slave.
Referenced by tegra_dsi_host_attach().
|
static |
Definition at line 219 of file dsi.c.
References EINVAL, tegra_dsi::format, MIPI_DSI_FMT_RGB565, MIPI_DSI_FMT_RGB666, MIPI_DSI_FMT_RGB666_PACKED, MIPI_DSI_FMT_RGB888, TEGRA_DSI_FORMAT_16P, TEGRA_DSI_FORMAT_18NP, TEGRA_DSI_FORMAT_18P, and TEGRA_DSI_FORMAT_24P.
Referenced by tegra_dsi_configure().
|
static |
Definition at line 193 of file dsi.c.
References EINVAL, tegra_dsi::format, MIPI_DSI_FMT_RGB565, MIPI_DSI_FMT_RGB666, MIPI_DSI_FMT_RGB666_PACKED, and MIPI_DSI_FMT_RGB888.
Referenced by tegra_dsi_configure(), and tegra_output_dsi_setup_clock().
|
static |
Definition at line 836 of file dsi.c.
References BIOS_ERR, tegra_dsi::flags, tegra_dsi::format, tegra_dsi::host, host_to_tegra(), tegra_dsi::lanes, tegra_dsi::master, printk, and tegra_dsi_ganged_setup().
|
static |
Definition at line 688 of file dsi.c.
References BIOS_INFO, mipi_dsi_msg::channel, count, DSI_CONTROL, DSI_CONTROL_HOST_ENABLE, DSI_CONTROL_LANES, DSI_HOST_CONTROL, DSI_HOST_CONTROL_CRC_RESET, DSI_HOST_CONTROL_CS, DSI_HOST_CONTROL_ECC, DSI_HOST_CONTROL_FIFO_RESET, DSI_HOST_CONTROL_FIFO_SEL, DSI_HOST_CONTROL_HS, DSI_HOST_CONTROL_PKT_BTA, DSI_HOST_CONTROL_TX_TRIG_HOST, DSI_POWER_CONTROL, DSI_POWER_CONTROL_ENABLE, DSI_RD_DATA, DSI_STATUS, DSI_STATUS_OVERFLOW, DSI_STATUS_UNDERFLOW, DSI_WR_DATA, ENOSPC, mipi_dsi_msg::flags, tegra_dsi::host, tegra_dsi::host_fifo_depth, host_to_tegra(), MIPI_DSI_MSG_REQ_ACK, MIPI_DSI_MSG_USE_LPM, printk, mipi_dsi_msg::rx_buf, mipi_dsi_msg::rx_len, tegra_dsi_read_response(), tegra_dsi_readl(), tegra_dsi_transmit(), tegra_dsi_wait_for_response(), tegra_dsi_writel(), mipi_dsi_msg::tx_buf, mipi_dsi_msg::tx_len, mipi_dsi_msg::type, udelay(), value, and tegra_dsi::video_fifo_depth.
Definition at line 911 of file dsi.c.
References ARRAY_SIZE, init_reg, tegra_dsi::slave, and tegra_dsi_writel().
Referenced by dsi_enable().
|
static |
Definition at line 531 of file dsi.c.
References DSI_PAD_CONTROL_0, DSI_PAD_CONTROL_1, DSI_PAD_CONTROL_2, DSI_PAD_CONTROL_3, DSI_PAD_CONTROL_4, DSI_PAD_LP_DN, DSI_PAD_LP_UP, DSI_PAD_OUT_CLK, DSI_PAD_PREEMP_PD, DSI_PAD_PREEMP_PD_CLK, DSI_PAD_PREEMP_PU, DSI_PAD_PREEMP_PU_CLK, DSI_PAD_SLEW_DN, DSI_PAD_SLEW_UP, tegra_dsi::mipi, tegra_dsi_pad_enable(), tegra_dsi_writel(), tegra_mipi_calibrate(), and value.
Referenced by dsi_probe_if().
|
static |
Definition at line 522 of file dsi.c.
References DSI_PAD_CONTROL_0, DSI_PAD_CONTROL_VS1_PDIO, DSI_PAD_CONTROL_VS1_PULLDN, tegra_dsi_writel(), and value.
Referenced by tegra_dsi_pad_calibrate().
|
static |
Definition at line 575 of file dsi.c.
References ARRAY_SIZE, BIOS_ERR, BIOS_INFO, BIT, count, DSI_RD_DATA, error_report, MIN, MIPI_DSI_RX_ACKNOWLEDGE_AND_ERROR_REPORT, MIPI_DSI_RX_DCS_LONG_READ_RESPONSE, MIPI_DSI_RX_DCS_SHORT_READ_RESPONSE_1BYTE, MIPI_DSI_RX_DCS_SHORT_READ_RESPONSE_2BYTE, MIPI_DSI_RX_GENERIC_LONG_READ_RESPONSE, printk, mipi_dsi_msg::rx_buf, mipi_dsi_msg::rx_len, tegra_dsi_readl(), and value.
Referenced by tegra_dsi_host_transfer().
|
static |
Definition at line 178 of file dsi.c.
References BIOS_ERR, mipi_dphy_set_timing(), printk, and tegra_dsi::slave.
Referenced by dsi_enable().
|
static |
Definition at line 437 of file dsi.c.
References DSI_TALLY_HTX, DSI_TALLY_LRX, DSI_TALLY_TA, DSI_TIMEOUT_0, DSI_TIMEOUT_1, DSI_TIMEOUT_HTX, DSI_TIMEOUT_LRX, DSI_TIMEOUT_PR, DSI_TIMEOUT_TA, DSI_TO_TALLY, tegra_dsi::slave, tegra_dsi_writel(), and value.
Referenced by tegra_output_dsi_setup_clock().
Definition at line 635 of file dsi.c.
References BIOS_ERR, DSI_TRIGGER, DSI_TRIGGER_HOST, ETIMEDOUT, printk, tegra_dsi_readl(), tegra_dsi_writel(), udelay(), and value.
Referenced by tegra_dsi_host_transfer().
Definition at line 662 of file dsi.c.
References BIOS_ERR, count, DSI_STATUS, ETIMEDOUT, printk, tegra_dsi_readl(), udelay(), and value.
Referenced by tegra_dsi_host_transfer().
|
static |
Definition at line 416 of file dsi.c.
References BIOS_ERR, config, tegra_dsi::enabled, printk, tegra_dsi_configure(), and tegra_dsi_enable().
Referenced by dsi_enable().
|
static |
Definition at line 460 of file dsi.c.
References BIOS_ERR, BIOS_INFO, tegra_dsi::clk_rate, clock_configure_plld(), config, DIV_ROUND_UP, tegra_dsi::format, tegra_dsi::ganged_lanes, tegra_dsi::ganged_mode, tegra_dsi::lanes, printk, tegra_dsi::slave, tegra_dsi_get_muldiv(), tegra_dsi_set_timeout(), update_display_shift_clock_divider(), and USECS_PER_SEC.
Referenced by dsi_enable().
Definition at line 1 of file dsi.c.
Referenced by dsi_enable(), and dsi_probe_if().
|
static |
Definition at line 556 of file dsi.c.
Referenced by tegra_dsi_read_response().
|
static |
Definition at line 45 of file dsi.c.
Referenced by tegra_dsi_init_regs().
struct tegra_mipi_device mipi_device_data[NUM_DSI] |
Definition at line 1 of file dsi.c.
Referenced by dsi_probe_if().
|
static |
Definition at line 163 of file dsi.c.
Referenced by tegra_dsi_configure().
|
static |
Definition at line 132 of file dsi.c.
Referenced by tegra_dsi_configure().
|
static |
Definition at line 94 of file dsi.c.
Referenced by tegra_dsi_configure().
|
static |
Definition at line 836 of file dsi.c.
Referenced by dsi_probe_if().