Msm8953 for arm64 инструкция на русском языке

Конфигурация PINCTRL

Конфигурация платформы Qualcomm Группа I2S, как правило, соответствует четыре или шести GPIO,

Quin MI2S соответствует gpio88 gpio91 gpio92 gpio93

Соответствующий файл кода: ядро ​​/ MSM-3.18 / Arch / ARM / BOOT / BOOT / DTS / QCOM / MSM8953-PINCTRL.DTSI

		pri-tlmm-lines {
			pri_tlmm_lines_act: pri_tlmm_lines_act {
				mux {
					pins = "gpio91", "gpio88", "gpio93";
					function = "pri_mi2s";
				};

				config {
					pins = "gpio91", "gpio88", "gpio93";
					drive-strength = <8>;
				};
			};

			pri_tlmm_lines_sus: pri_tlmm_lines_sus {
				mux {
					pins = "gpio91", "gpio88", "gpio93";
					function = "pri_mi2s";
				};

				config {
					pins = "gpio91", "gpio88", "gpio93";
					drive-strength = <2>;
					bias-pull-down;
				};
			};
		};

Настройка PINCTRL также необходимо подключить к узлу звуковой карты.

Изменение файла: ядро ​​/ MSM-3.18 / ARCH / ARM / BOOT / BOOT / DTS / QCOM / MSM8953-AUDIO.DTSI

	qcom,msm-gpios =
		"pri_i2s",
		"quin_i2s";

	qcom,pinctrl-names =
		"all_off",
		"pri_i2s_act",
		"quin_act",
		"quin_pri_i2s_act";

	pinctrl-names =
		"all_off",
		"pri_i2s_act",
		"quin_act",
		"quin_pri_i2s_act";

	pinctrl-0 = <&cdc_pdm_lines_sus &cdc_pdm_lines_2_sus &pri_tlmm_lines_sus &pri_tlmm_ws_sus>;
	pinctrl-1 = <&cdc_pdm_lines_act &cdc_pdm_lines_2_act &pri_tlmm_lines_sus &pri_tlmm_ws_sus>;
	pinctrl-2 = <&cdc_pdm_lines_sus &cdc_pdm_lines_2_sus &pri_tlmm_lines_act &pri_tlmm_ws_act>;
	pinctrl-3 = <&cdc_pdm_lines_act &cdc_pdm_lines_2_act &pri_tlmm_lines_act &pri_tlmm_ws_act>;

2. Зарегистрируйте конфигурацию

Узнайте на документе Qualcomm MSM8953 внешний обзор интерфейса MI2S для настройки следующих регистров MI2S для настройки следующих регистров.

Итак, как вы настраиваете эти регистры в вашем коде? Это должно быть изменено в следующие файлы.

Изменить файл:

kernel/msm-3.18/sound/soc/msm/msm8952.c

kernel/msm-3.18/sound/soc/codecs/msm8x16-wcd.h

kernel/msm-3.18/arch/arm/boot/dts/qcom/msm-audio.dtsi

Там, где настроено ядро ​​/ MSM-3.18 / Arch / Arm / Boot / DTS / QCOM / MSM-Audio.dtsi Конфигурация:

	int_codec: sound {
		compatible = "qcom,msm8952-audio-codec";

//added by kuangjincheng @20171221
		reg =   <0xc051000 0x4>,//LPASS_CSR_GP_IO_MUX_MIC_CTL
				<0xc051004 0x4>,//LPASS_CSR_GP_IO_MUX_SPKR_CTL
				<0xc055000 0x4>,//LPASS_CSR_GP_LPAIF_PRI_PCM_PRI_MODE_MUXSEL
				<0xc052000 0x4>,//LPASS_ CSR_GP_IO_MUX_QUI_CTL
				<0xc054000 0x4>,//LPASS_CSR_GP_IO_MUX_MIC_EXT_CLK_CTL
				<0xc056000 0x4>,// LPASS_CSR_GP_LPAIF_QUI_PCM_SEC_MODE_MUXSEL
				<0xc054008 0x4>;//LPASS_CSR_GP_IO_MUX_QUI_EXT_CLK_CTL
		reg-names = "csr_gp_io_mux_mic_ctl",
					"csr_gp_io_mux_spkr_ctl",
					"csr_gp_io_lpaif_pri_pcm_pri_mode_muxsel",
					"csr_gp_io_mux_quin_ctl",
					"csr_gp_io_mux_mic_ext_clk_ctl",
					"csr_gp_io_lpaif_qui_pcm_sec_mode_muxsel",
					"csr_gp_io_mux_quin_ext_clk_ctl";
    };

В структуре устройства в заголовочном файле ядра / MSM-3.18 / SOUND / SOC / CODECS / MSM8X16-WCD.H добавляется элемент указателя, а адрес регистра сохраняется.

struct msm8916_asoc_mach_data {
	int codec_type;
	int ext_pa;
	int us_euro_gpio;
	int spk_ext_pa_gpio;
	int mclk_freq;
	int lb_mode;
	int afe_clk_ver;
	u8 micbias1_cap_mode;
	u8 micbias2_cap_mode;
	atomic_t mclk_rsc_ref;
	atomic_t mclk_enabled;
	atomic_t wsa_mclk_rsc_ref;
	struct mutex cdc_mclk_mutex;
	struct mutex wsa_mclk_mutex;
	struct delayed_work disable_mclk_work;
	struct afe_digital_clk_cfg digital_cdc_clk;
	struct afe_clk_set digital_cdc_core_clk;
	void __iomem *vaddr_gpio_mux_spkr_ctl;
	void __iomem *vaddr_gpio_mux_mic_ctl;
	void __iomem *vaddr_gpio_mux_quin_ctl;
	void __iomem *vaddr_gpio_mux_pcm_ctl;
//added by kuangjincheng @20171221 QUAT_MI2S_SLAVE_MODE config
	void __iomem *vaddr_gpio_mux_mic_ext_clk_ctl;
//added by kuangjincheng @20180521 QUIN_MI2S_SLAVE_MODE config
	void __iomem *vaddr_gpio_quin_sec_muxsel;
	void __iomem *vaddr_gpio_mux_quin_ext_clk_ctl;
	struct on_demand_supply wsa_switch_supply;
};

В функции MSM8952_ASOC_Machine_probe из ядра / MSM / MSM8952.C соответствующий адрес регистра анализируется и сохранен на элементах, соответствующих структуре устройства.

//added by kuangjincheng @20180521 QUIN_MI2S_SLAVE_MODE config
	muxsel = platform_get_resource_byname(pdev, IORESOURCE_MEM, "csr_gp_io_lpaif_qui_pcm_sec_mode_muxsel");
	if (!muxsel) {
		dev_dbg(&pdev->dev, "MUX addr invalid for MI2Sn");
		goto parse_mclk_freq;
	}
	pdata->vaddr_gpio_quin_sec_muxsel = ioremap(muxsel->start, resource_size(muxsel));
	if (pdata->vaddr_gpio_quin_sec_muxsel == NULL) {
		pr_err("%s ==4ioremap failure for muxsel virt addrn", __func__);
		ret = -ENOMEM;
		goto err;
	}

	muxsel = platform_get_resource_byname(pdev, IORESOURCE_MEM, "csr_gp_io_mux_quin_ext_clk_ctl");
	if (!muxsel) {
		dev_dbg(&pdev->dev, "MUX addr invalid for MI2Sn");
		goto parse_mclk_freq;
	}
	pdata->vaddr_gpio_mux_quin_ext_clk_ctl = ioremap(muxsel->start, resource_size(muxsel));
	if (pdata->vaddr_gpio_mux_quin_ext_clk_ctl == NULL) {
		pr_err("%s ==5ioremap failure for muxsel virt addrn", __func__);
		ret = -ENOMEM;
		goto err;
	}

Конфигурация регистров имеет последний шаг — выполнить конфигурацию регистров в I2S, соответствующих MSM_QUIN_MI2S_SND_STARTUP.

static int msm_quin_mi2s_snd_startup(struct snd_pcm_substream *substream)
{
	struct snd_soc_pcm_runtime *rtd = substream->private_data;
	struct snd_soc_card *card = rtd->card;
	struct snd_soc_dai *cpu_dai = rtd->cpu_dai;
	struct msm8916_asoc_mach_data *pdata =
			snd_soc_card_get_drvdata(card);
	int ret = 0, val = 0;

	pr_err("honeywell_msm8952>>>%s: substream = %s  stream = %dn", __func__, substream->name, substream->stream);
#ifdef QUIN_MI2S_USE_SLAVE_MODE
//0xc051000 LPASS_CSR_GP_IO_MUX_MIC_CTL
	if(pdata->vaddr_gpio_mux_mic_ctl){
		val = ioread32(pdata->vaddr_gpio_mux_mic_ctl);
		val = 0x00000000;
		iowrite32(val, pdata->vaddr_gpio_mux_mic_ctl);
	}
	pr_err("msm8952>>>%s:  iowrite32 vaddr_gpio_mux_mic_ctln", __func__);
//0xc056000 LPASS_CSR_GP_LPAIF_QUI_PCM_SEC_MODE_MUXSEL
	if(pdata->vaddr_gpio_quin_sec_muxsel){
		val = ioread32(pdata->vaddr_gpio_quin_sec_muxsel);
		val = 0x00000000;
		iowrite32(val, pdata->vaddr_gpio_quin_sec_muxsel);
	}
	pr_err("msm8952>>>%s:  iowrite32 vaddr_gpio_quin_sec_muxseln", __func__);
//0xc052000 LPASS_ CSR_GP_IO_MUX_QUI_CTL
	if(pdata->vaddr_gpio_mux_quin_ctl){
		val = ioread32(pdata->vaddr_gpio_mux_quin_ctl);
		val = 0x00000001;
		iowrite32(val, pdata->vaddr_gpio_mux_quin_ctl);
	}
	pr_err("msm8952>>>%s:  iowrite32 vaddr_gpio_mux_quin_ctln", __func__);
//0xc054008 LPASS_CSR_GP_IO_MUX_QUI_EXT_CLK_CTL
	if(pdata->vaddr_gpio_mux_quin_ext_clk_ctl){
		val = ioread32(pdata->vaddr_gpio_mux_quin_ext_clk_ctl);
		val = 0x00000001;
		iowrite32(val, pdata->vaddr_gpio_mux_quin_ext_clk_ctl);
	}
	pr_err("msm8952>>>%s:  iowrite32 vaddr_gpio_mux_quin_ext_clk_ctln", __func__);
#else
	if (pdata->vaddr_gpio_mux_quin_ctl) {
		val = ioread32(pdata->vaddr_gpio_mux_quin_ctl);
		val = val | 0x00000001;
		iowrite32(val, pdata->vaddr_gpio_mux_quin_ctl);
	} else {
		return -EINVAL;
	}
#endif
	pr_err("honeywell_msm8952>>>%s: ---001n", __func__);

#ifdef QUIN_MI2S_USE_SLAVE_MODE
	ret = msm_quin_i2s_sclk_ctl(substream, true);
#else
	ret = msm_mi2s_sclk_ctl(substream, true);
#endif
	if (ret < 0) {
		pr_err("honeywell_msm8952>>>%s: failed to enable sclkn", __func__);
		return ret;
	}
	pr_err("honeywell_msm8952>>>%s: ---002n", __func__);

	ret = msm_gpioset_activate(CLIENT_WCD_INT, "quin_i2s");
	if (ret < 0) {
		pr_err("honeywell_msm8952>>>%s: failed to enable codec gpiosn", __func__);
		goto err;
	}
	pr_err("honeywell_msm8952>>>%s: ---003n", __func__);

	if (atomic_inc_return(&quin_mi2s_clk_ref) == 1) {
#ifdef QUIN_MI2S_USE_SLAVE_MODE
		ret = snd_soc_dai_set_fmt(cpu_dai, SND_SOC_DAIFMT_CBM_CFM);
#else
		ret = snd_soc_dai_set_fmt(cpu_dai, SND_SOC_DAIFMT_CBS_CFS);
#endif
		if (ret < 0)
			pr_err("honeywell_msm8952>>>%s: set fmt cpu dai failedn", __func__);
	}
	pr_err("honeywell_msm8952>>>%s: ---004n", __func__);

	return ret;
err:
#ifdef QUIN_MI2S_USE_SLAVE_MODE
	ret = msm_quin_i2s_sclk_ctl(substream, false);
#else
	ret = msm_mi2s_sclk_ctl(substream, false);
#endif
	if (ret < 0)
		pr_err("failed to disable sclkn");
	return ret;
}

static void msm_quin_mi2s_snd_shutdown(struct snd_pcm_substream *substream)
{
	int ret;
	pr_err("honeywell_msm8952>>>%s: substream = %s  stream = %dn", __func__, substream->name, substream->stream);
#ifdef QUIN_MI2S_USE_SLAVE_MODE
	ret = msm_quin_i2s_sclk_ctl(substream, false);
#else
	ret = msm_mi2s_sclk_ctl(substream, false);
#endif
	if (ret < 0)
		pr_err("honeywell_msm8952>>>%s: clock disable failedn", __func__);
	if (atomic_read(&quin_mi2s_clk_ref) > 0)
		atomic_dec(&quin_mi2s_clk_ref);
	ret = msm_gpioset_suspend(CLIENT_WCD_INT, "quin_i2s");
	if (ret < 0) {
		pr_err("honeywell_msm8952>>>%s: gpio set cannot be de-activated %sd", __func__, "quin_i2s");
		return;
	}
}

3. Конфигурация часов

(1) Кто дает часы?

Часы в конфигурации часов обеспечиваются MSM8953 или сторонним чипом кодека, который обеспечивается внешним кристаллом, который напрямую связан с основным подчиненным режимом I2S.

Когда I2S является основным режимом, часы имеют внутренний хрустальный генератор MSM8953; наоборот, он предоставляется третьим сторонним кодеком.

Код, настроенный здесь, также установлен в функции MSM_QUIN_MI2S_SND_STARTUP.

Соответствующий сегмент кода индивидуально перехвачен:

#ifdef QUIN_MI2S_USE_SLAVE_MODE
		ret = snd_soc_dai_set_fmt(cpu_dai, SND_SOC_DAIFMT_CBM_CFM);
#else
		ret = snd_soc_dai_set_fmt(cpu_dai, SND_SOC_DAIFMT_CBS_CFS);
#endif

(2) Как так часто частота настройки?

Здесь MSM_MI2S_SCLK_CTL записывает функцию MSM_QUIN_I2S_SCLK_CTL для конфигурации часов рабочего режима.

//added by kuangjincheng @20180521 QUIN_MI2S_SLAVE_MODE config
#ifdef QUIN_MI2S_USE_SLAVE_MODE
static struct afe_clk_set quin_i2s_rx_clk = {
	AFE_API_VERSION_I2S_CONFIG,
	Q6AFE_LPASS_CLK_ID_QUI_MI2S_EBIT,
	Q6AFE_LPASS_OSR_CLK_1_P536_MHZ,
	Q6AFE_LPASS_CLK_ATTRIBUTE_COUPLE_NO,
	Q6AFE_LPASS_CLK_ROOT_DEFAULT,
	0,
};

static struct afe_clk_set quin_i2s_tx_clk = {
	AFE_API_VERSION_I2S_CONFIG,
	Q6AFE_LPASS_CLK_ID_QUI_MI2S_EBIT,
	Q6AFE_LPASS_OSR_CLK_3_P072_MHZ,
	Q6AFE_LPASS_CLK_ATTRIBUTE_COUPLE_NO,
	Q6AFE_LPASS_CLK_ROOT_DEFAULT,
	0,
};
#endif

//added by kuangjincheng @20180521 QUIN_MI2S_SLAVE_MODE config
#ifdef QUIN_MI2S_USE_SLAVE_MODE
static int msm_quin_i2s_sclk_ctl(struct snd_pcm_substream *substream, bool enable)
{
	int ret = 0;
	struct snd_soc_pcm_runtime *rtd = substream->private_data;
	int port_id = 0;
	pr_err("msm8952>>>%s:  entern", __func__);
	port_id = msm8952_get_port_id(rtd->dai_link->be_id);
	if (port_id < 0) {
		pr_err("msm8952>>>%s:  Invalid port_idn", __func__);
		return -EINVAL;
	}

	if (enable) {
		if (substream->stream == SNDRV_PCM_STREAM_PLAYBACK) {
			quin_i2s_rx_clk.enable = enable;
			quin_i2s_rx_clk.clk_id = msm8952_get_clk_id(port_id);
			quin_i2s_rx_clk.clk_freq_in_hz = get_mi2s_rx_clk_val(port_id);
			ret = afe_set_lpass_clock_v2(port_id, &quin_i2s_rx_clk);
		} else if (substream->stream == SNDRV_PCM_STREAM_CAPTURE) {
			quin_i2s_tx_clk.enable = enable;
			quin_i2s_tx_clk.clk_id = msm8952_get_clk_id(port_id);
			quin_i2s_tx_clk.clk_freq_in_hz = Q6AFE_LPASS_OSR_CLK_1_P536_MHZ;
			ret = afe_set_lpass_clock_v2(port_id, &quin_i2s_tx_clk);
		} else {
			pr_err("msm8952>>>%s:  Not valid substream.n", __func__);
		}

		if (ret < 0)
			pr_err("msm8952>>>%s:  enable: %d, afe_set_lpass_clock_v2 failedn", __func__, enable);
	} else {
		if (substream->stream == SNDRV_PCM_STREAM_PLAYBACK) {
			quin_i2s_rx_clk.enable = enable;
			quin_i2s_rx_clk.clk_id = msm8952_get_clk_id(port_id);
			ret = afe_set_lpass_clock_v2(port_id, &quin_i2s_rx_clk);
		} else if (substream->stream == SNDRV_PCM_STREAM_CAPTURE) {
			quin_i2s_tx_clk.enable = enable;
			quin_i2s_tx_clk.clk_id = msm8952_get_clk_id(port_id);
			ret = afe_set_lpass_clock_v2(port_id, &quin_i2s_tx_clk);
		} else {
			pr_err("msm8952>>>%s:  Not valid substream.n", __func__);
		}

		if (ret < 0)
			pr_err("msm8952>>>%s: enable: %d, afe_set_lpass_clock_v2 failedn", __func__, enable);
	}
	return ret;
}
#endif

4. Сводка и расширение

Приведенный выше код модифицирован для завершения шины I2S из конфигурации режима, а основной субклюк-микрофон можно вырезать на макро определение Quin_MI2S_USE_SLAVE_MODE.

Расширенный:

kernel/msm-3.18/include/uapi/sound/asound.h

kernel/msm-3.18/include/sound/apr_audio-v2.h

Формат PCM можно установить:

SNDRV_PCM_FORMAT_S16_LE

SNDRV_PCM_FORMAT_S24_LE

SNDRV_PCM_FORMAT_S24_3LE

Битовые часы могут быть выбраны для:

/* Supported OSR clock values */
#define Q6AFE_LPASS_OSR_CLK_12_P288_MHZ         0xBB8000
#define Q6AFE_LPASS_OSR_CLK_9_P600_MHZ          0x927C00
#define Q6AFE_LPASS_OSR_CLK_8_P192_MHZ          0x7D0000
#define Q6AFE_LPASS_OSR_CLK_6_P144_MHZ          0x5DC000
#define Q6AFE_LPASS_OSR_CLK_4_P096_MHZ          0x3E8000
#define Q6AFE_LPASS_OSR_CLK_3_P072_MHZ          0x2EE000
#define Q6AFE_LPASS_OSR_CLK_2_P048_MHZ          0x1F4000
#define Q6AFE_LPASS_OSR_CLK_1_P536_MHZ          0x177000
#define Q6AFE_LPASS_OSR_CLK_1_P024_MHZ           0xFA000
#define Q6AFE_LPASS_OSR_CLK_768_kHZ              0xBB800
#define Q6AFE_LPASS_OSR_CLK_512_kHZ              0x7D000
#define Q6AFE_LPASS_OSR_CLK_DISABLE                  0x0

/* Supported Bit clock values */
#define Q6AFE_LPASS_IBIT_CLK_12_P288_MHZ        0xBB8000
#define Q6AFE_LPASS_IBIT_CLK_11_P2896_MHZ       0xAC4400
#define Q6AFE_LPASS_IBIT_CLK_8_P192_MHZ         0x7D0000
#define Q6AFE_LPASS_IBIT_CLK_6_P144_MHZ         0x5DC000
#define Q6AFE_LPASS_IBIT_CLK_4_P096_MHZ         0x3E8000
#define Q6AFE_LPASS_IBIT_CLK_3_P072_MHZ         0x2EE000
#define Q6AFE_LPASS_IBIT_CLK_2_P8224_MHZ                0x2b1100
#define Q6AFE_LPASS_IBIT_CLK_2_P048_MHZ         0x1F4000
#define Q6AFE_LPASS_IBIT_CLK_1_P536_MHZ         0x177000
#define Q6AFE_LPASS_IBIT_CLK_1_P4112_MHZ                0x158880
#define Q6AFE_LPASS_IBIT_CLK_1_P024_MHZ          0xFA000
#define Q6AFE_LPASS_IBIT_CLK_768_KHZ             0xBB800
#define Q6AFE_LPASS_IBIT_CLK_512_KHZ             0x7D000
#define Q6AFE_LPASS_IBIT_CLK_256_KHZ             0x3E800
#define Q6AFE_LPASS_IBIT_CLK_DISABLE                 0x0

Глубина местоположения может быть выбрана: 16, 24

Скорость образца может быть выбрана для:

#define BTSCO_RATE_8KHZ 8000
#define BTSCO_RATE_16KHZ 16000

#define SAMPLING_RATE_48KHZ     48000
#define SAMPLING_RATE_96KHZ     96000
#define SAMPLING_RATE_192KHZ    192000

Эта часть этого раздела находится в документах Qualcomm следующим образом:

  1. Определил по интерфейсу, глаз наметан)
    Обозначение Snapdragon 625 — MSM8953


    Stop hovering to collapse…
    Click to collapse…


    Hover to expand…
    Нажмите, чтобы раскрыть…

  2. Здравствуйте подскажите пожалуйста, у меня стоит ГУ Android. Модель msm8953 for arm64 bmw.

    pic.jpeg

    pic.jpeg

    Могу ли я установить прошивку Kws?


  3. rixmat

    Регистрация:
    28 июл 2015
    Сообщения:
    302
    Пол:
    Мужской
    Регион:
    Москва

    Правильно понимаю что это 4 pin? Нужно заказывать под CIC?

    Вложения:


  4. Mbars

    Регистрация:
    13 сен 2020
    Сообщения:
    28
    Пол:
    Мужской

    Приветствую!
    Подскажите, у меня f30 с гу энтринав1, будет ли работать андроид при замене гу на энтринав2?

  5. Нет, придётся менять андроид на соответствующую модель для Evo.


    Stop hovering to collapse…
    Click to collapse…


    Hover to expand…
    Нажмите, чтобы раскрыть…


  6. Stop hovering to collapse…
    Click to collapse…


    Hover to expand…
    Нажмите, чтобы раскрыть…
  7. Разочарую, это по факту не MSM8953 (SD625), это SDM450. Прошивки KSW не подойдут.


    Stop hovering to collapse…
    Click to collapse…


    Hover to expand…
    Нажмите, чтобы раскрыть…

  8. Спешу Вас расстроить;-)
    Проверил в CPU-Z snapdragon 625
    Разрешение 1920 X 720
    Прошивки KSW подойдут?

    pic.jpeg

  9. Ещё раз, у вас Не Snapdragon 625, a 450. Китайцы просто хакнули софт, чтобы в диагностике отражался другой проц.
    Я вскрывал корпус и смотрел чип. Вот, что там:

    pic.jpeg

    Можете не вскрывая, проверить и сравнить свой IMEI с этим. Если первые три цифры совпадают, то у вас такой же чип.
    А вот даташит производителя чипа:

    pic.jpeg


    Stop hovering to collapse…
    Click to collapse…


    Hover to expand…
    Нажмите, чтобы раскрыть…


  10. Alraidho

    Регистрация:
    19 авг 2021
    Сообщения:
    10
    Пол:
    Мужской
    Регион:
    Орловская обл.

    Всех исключительно приветствую!

    Прочитал несколько сотен страниц топика, посмотрел все видео и манулы Сергея, но, честно говоря, так и не смог определиться, в каких случаях надо тянуть aux кабель в подлокотник, а в каких оно все само начинает играть (и просто достаточно отсоединить aux разъем).

    Может кто подскажет, конкретно в моем случае:
    — E71 рест 2013
    — Logic 7 c Сombox
    — В подлокотнике aux и usb
    — Смотрю на вот такую голову

    Нужно прокидывать провод до физического аукса, или все же нет?

  11. Да начало IMEI совпадает :-(

  12. В вашем случае либо тянуть кабель аукс в подлокотник от андроида, либо кодировать AUX в блоке CIC, на 1й стр вроде об этом подробно расписал.


    Stop hovering to collapse…
    Click to collapse…


    Hover to expand…
    Нажмите, чтобы раскрыть…


  13. начкар

    Регистрация:
    13 окт 2020
    Сообщения:
    29
    Пол:
    Мужской
    Регион:
    Владимирская обл.


  14. Alraidho

    Регистрация:
    19 авг 2021
    Сообщения:
    10
    Пол:
    Мужской
    Регион:
    Орловская обл.

    Благодарю за ответ! Пойду глубже вникать в предметную область.

  15. Это похоже на Mediatek (MTK) процессор, я бы не рассматривал — кривые прошивки, кривой перевод на русский, английский, ну и китайщина часто вылезает, не удалить — это набор как минимум, остальные глюки (и здесь вам с ними вряд ли кто-то поможет, большинство имеет андроиды на Snapdargon) при использовании наверняка вылезут.


    Stop hovering to collapse…
    Click to collapse…


    Hover to expand…
    Нажмите, чтобы раскрыть…

  16. Скорость в дашборде, да и сам дашборд, вы вряд ли будете смотреть)
    Но если хочется разобраться, то эти данные андроид по кан шине получает, поэтому все, что вы можете делать, это менять настройки кан, а также версию mcu. Пробовал менять настройки кан неоднократно, ничего с андроидом не случится от этого. После изменения настроек, устройство нужно перезагрузить.


    Stop hovering to collapse…
    Click to collapse…


    Hover to expand…
    Нажмите, чтобы раскрыть…


  17. dimvin

    Регистрация:
    11 окт 2012
    Сообщения:
    3
    Пол:
    Мужской
    Регион:
    Украина


  18. resanta228

    Регистрация:
    3 ноя 2021
    Сообщения:
    7
    Пол:
    Мужской
    Регион:
    Тверская обл.

    Помогите! Help! Hilfe! Приветствую всех! Прочитал уже всю тему и здесь и на 4pda, проблема следующая, не работает блютуз (Bluetooth) написано: «не активирован» (not activated). Начну с того что я сначала нажал на кнопку чтения данных с каншины, (прошивка 2.0.9, android 10)а только потом нашел данный форум, галочку я сразу же убрал обратно и сделал сброс всех настроек с удалением контента, после работу джойстика я восстановил, перепрошил MCU (последняя подходящая версия для моей машины bmw e60 ccc из шапки профиля) так же установил последний, из шапки профиля (Factory_config_BMW_A10_210), всё стало гораздо лучше, плавнее, но, к сожалению, проблему мою не решило, до нажатия галочки каншины всё прекрасно работало и подключалось, что имею сейчас: блютуз в настройках андройд не отображает ничего, его нельзя ни включить, ни выключить, там просто пустота, на главном же экране он якобы работает, но телефон подключается и сразу же выдаёт ошибку тайм-аут соединения, при этом надпись «не активирован» никуда не пропадат, в настройках разработчика на андройде есть менеджер запущенных процессов (извините если я неправильно его назвал, я думаю что меня поняли) там есть процесс блютуз, открывая который он то работает, то нет, примерно по 3-сек, так же в этом же инженерном меню можно зайти и включить блютуз, но он сразу же выключается обратно, вообщем я так понял, что проблема в софте, а не в железе, потому как он вроде работает, полный сброс настроек,как советуют люди я делал несколько раз и так же несколько раз делал сброс настроек непосредственно сети, всё вышесказанное ни к какому, даже малейшему, результату не привело! Исходя из этого вопрос, что же делать? На этом и 4pda форумах я встретил около 10 человек с такой же проблемой, которая так и не была решена, галочки у меня везде стоят, я уже и включал и выключал и делал всё что угодно, скажу так же что эта магнитола досталась мне с машиной, поэтому написать продавцу я не могу, есть у кого-то какие-то идеи? Обязательно реализую!

    Фотографию прилагаю на старом MCU, если нужны какие-то доп фото или видео для решения проблемы, могу сразу же предоставить! Так же могу расписать более подробно о чём угодно что я может быть не досказал!

    pic.jpeg


  19. resanta228

    Регистрация:
    3 ноя 2021
    Сообщения:
    7
    Пол:
    Мужской
    Регион:
    Тверская обл.

    Подскажите пожалуйста, а у нас антенна блютуз встроенная в корпус магнитолы, или подключается так же как gps???

  20. Обычно когда написано Блютус не активирован, его достаточно включить в расширенных настройках, поставить галку в квадратике ВТ. Если не помогает, пробуйте Сброс, новую прошивку ОТА — 3.1.2, файл factory config 2.8.3.
    Антенна БТ встроенная в корпусе.


    Stop hovering to collapse…
    Click to collapse…


    Hover to expand…
    Нажмите, чтобы раскрыть…


  21. resanta228

    Регистрация:
    3 ноя 2021
    Сообщения:
    7
    Пол:
    Мужской
    Регион:
    Тверская обл.

    Спасибо, попробую и обязательно отпишусь!


  22. SnakeBMW

    Регистрация:
    3 ноя 2021
    Сообщения:
    23
    Пол:
    Мужской
    Регион:
    Беларусь

    @serge858 во-первых спасибо огромное за труды и эту ветку.
    Благодаря ей заказал что хотел и самостоятельно установил себе Android 10.25 1920×720 от EBILAEN.

    Я заказал камеру GreenYi AHD 1920x1080P https://www.aliexpress.com/item/4000313602575.html?spm=a2g0s.9042311.0.0.3ecb4c4d1EnKyS

    Подключил к ccd cvbs in и ccd +12 V .
    В настройках поставил неродная, и прикол в том что работает только c в режиме AHD720 25 Hz , и НЕ РАБОТАЕТ в режиме AHD1080 25 HZ.

    Экран у меня 1920х720 и на камере есть наклейка 1080p .
    Чтобы это всё могло значить? Китаец прислал не ту камеру или на практике такое бывает что надо выбирать режим AHD720 25 Hz?


  23. deja-vu

    Регистрация:
    9 апр 2018
    Сообщения:
    915
    Пол:
    Мужской
    Регион:
    Украина

    Скажите есть уже у кого-то опыт использования нашего девайса на 11 Андроиде Snapdragon 662 ?

  24. Подключили правильно. Аппарат у вас судя по всему фабрики JLY (по MCU). Это странно, что камера FHD работает в настройке HD.

    Последнее время камеры GreenYi AHD 1920×1080 работают только при настройке AHD — не поддерживается, при этом изображение FHD, попробуйте, сравните картинки, если заработает при такой настройке.

    А в чем вопрос?


    Stop hovering to collapse…
    Click to collapse…


    Hover to expand…
    Нажмите, чтобы раскрыть…


  25. deja-vu

    Регистрация:
    9 апр 2018
    Сообщения:
    915
    Пол:
    Мужской
    Регион:
    Украина

    Нет у него каких-то проблем и т.д

  26. Просветите пожалуйста, а зачем блютуз нужен на андроиде? У меня он постоянно выключен, ни разу не включал. Телефон подключен к громкой связи машины. Работает кстати на удивление шикарно. Никогда не думал что громкая связь так чётко и разборчиво может работать. В тойоте у меня надо орать чтобы собеседник что-то расслышал и это очень напрягает, лучше просто по телефону поговорить.


  27. MARQUEZ

    Регистрация:
    7 авг 2009
    Сообщения:
    11,407
    Пол:
    Мужской
    Регион:
    Москва

    Ну например музыку слушать,если в телефон закачена.По сути не нужен,т.к онлайн уже все.


    Stop hovering to collapse…
    Click to collapse…


    Hover to expand…
    Нажмите, чтобы раскрыть…

Поделиться этой страницей

Монитор от китайцев на mmi 2g audi q7
Тест, проверка, подготовка к установке.

Комментарии
14

Войдите или зарегистрируйтесь, чтобы писать комментарии, задавать вопросы и участвовать в обсуждении.

Добрый день! Есть вопрос… Так получилось что приобрел такого типа андроид магнитолу как у вас, но есть проблема к ней не было кабеля для подключения к машине. Купил кабель для неё на Али-Экспресс, но проблема в том что кабель пришел меньше чем в моей магнитоле. Нет ли у вас случайно распиновки штекера от вашей андроид магнитолы?
На сейчас остался вопрос по подключению камеры и трех проводов…один от блока климата и еще двух от блока MMI.
Заранее благодарен!

Посту два года, магнитолу и провода сразу забрали, столько не помню.

Жаль, но всё равно спасибо!

Вчем привет. Ребят помогите! Нужна схема подключения этой магнитоллы. МНЕ ЕЕ КОРЯВО УСТАНОВИЛИ СХЕМУ ПОТЕРЯЛИ. Mmi глючит и не хочет с ней работать.

Приезжала Q7 4l с подобной прибоудой, у неё потребление в спящем от приборки в 300mA, возможно ли такое от этого монитора? он вешвется в одну цепь, не вкурсе?

Надо пробовать методом исключения

Вариант отличный, именно он в первую очередь и пришел в голову мне, подкинуть родной MMI, чем я и займусь. Но если проблема будет и в магнитоле, не могу понять, с чего начать смотреть, учитывая что инструкции по этому китайскому прибору нигде нет

Похоже ни как, 300мА это дежурка возможно. И скорее надо искать провод который её отключает. Или. Коричневую коробочку вскрыть. Смотреть что греется в магнитоле.

Проблема оказалась из за магнитолы, а именно ложила can шину или пробуждала mmi по оптике. Перевешал питание транспондера оптики с 30 клеммы на 15 и это частично помогло, но теперь нельзя воспользоваться mmi без включённого зажигания

Привет
Подскажи пожалуйста — удалось поставить?

Здравствуйте, все поставили, работает

Можно телефон владельца? Я такую же себе купил
Есть ряд вопросов

Не сохранил, обычно мне звонят

У меня не работает автояркость
И нет индикации климата поверх андроида

  • Характеристики
  • Параметры ОС
  • cpuinfo
  • Расширения OpenGL
  • WiFi dmesg
  • build.prop
  • Модули
  • Память
Основные характеристики
Производитель QUALCOMM
Модель msm8953 for arm64
Версия Andriod 11; eng.android.20220309.161452; SDK28
Процессор 8 cores; Qualcomm Technologies, Inc. MSM8953; Max: 2000.0 MHz; Min: 652.8 MHz
Дисплей 1920 x 720; DPI: 240; Evaluated Size: 8.5″
Сенсорный экран Multitouch 5 points
Графический ускоритель Adreno (TM) 506; Qualcomm; OpenGL ES-CM 1.1; OpenGL ES 3.2 V@331.0 (GIT@470e3a1, I33ae75fed1) (Date:11/26/18)
ОЗУ 0 MB
Память 64 GB (58.242 GB actual) (см. вкладку «Память»)
Связь
Телефон GSM
WiFi wlan
USB Host Yes
Bluetooth Yes
GPS No
Установленные компоненты
Главная камера Unknown camera ID
Доп. камера No
Вибратор Yes
Языки 196; Afrikaans; Aghem; Akan; Amharic; Arabic; Assamese; Asu; Asturian; Azerbaijani; Basaa; Belarusian; Bemba; Bena; Bulgarian; Bambara; Bangla; Tibetan; Breton; Bodo; Bosnian; Catalan; Chakma; Chechen; Chiga; Cherokee; Central Kurdish; Czech; Welsh; Danish; Taita; German; Zarma; Lower Sorbian; Duala; Jola-Fonyi; Dzongkha; Embu; Ewe; Greek; English; Esperanto; Spanish; Estonian; Basque; Ewondo; Persian; Fulah; Finnish; Filipino; Faroese; French; Friulian; Western Frisian; Irish; Scottish Gaelic; Galician; Swiss German; Gujarati; Gusii; Manx; Hausa; Hawaiian; Hebrew; Hindi; Croatian; Upper Sorbian; Hungarian; Armenian; Indonesian; Igbo; Sichuan Yi; Icelandic; Italian; Japanese; Ngomba; Machame; Georgian; Kabyle; Kamba; Makonde; Kabuverdianu; Koyra Chiini; Kikuyu; Kazakh; Kako; Kalaallisut; Kalenjin; Khmer; Kannada; Korean; Konkani; Kashmiri; Shambala; Bafia; Colognian; Cornish; Kyrgyz; Langi; Luxembourgish; Ganda; Lakota; Lingala; Lao; Northern Luri; Lithuanian; Luba-Katanga; Luo; Luyia; Latvian; Masai; Meru; Morisyen; Malagasy; Makhuwa-Meetto; Metaʼ; Macedonian; Malayalam; Mongolian; Marathi; Malay; Maltese; Mundang; Burmese; Mazanderani; Nama; Norwegian; North Ndebele; Low German; Nepali; Dutch; Kwasio; Norwegian; Ngiemboon; Nuer; Nyankole; Oromo; Odia; Ossetic; Punjabi; Polish; Pashto; Portuguese; Quechua; Romansh; Rundi; Romanian; Rombo; Russian; Kinyarwanda; Rwa; Sakha; Samburu; Sangu; Northern Sami; Sena; Koyraboro Senni; Sango; Tachelhit; Sinhala; Slovak; Slovenian; Inari Sami; Shona; Somali; Albanian; Serbian; Swedish; Swahili; Tamil; Telugu; Teso; Tajik; Thai; Tigrinya; Tongan; Turkish; Tatar; Tasawaq; Central Atlas Tamazight; Uyghur; Ukrainian; Urdu; Uzbek; Vai; Vietnamese; Vunjo; Walser; Wolof; Soga; Yangben; Yiddish; Yoruba; Cantonese; Standard Moroccan Tamazight; Chinese; Zulu
Аккумулятор Technology: Li-ion; Voltage: 4000
SD Version: 1.1 7

KERNEL: Linux version 4.9.112-perf (android20@carocean-PowerEdge-R540) (gcc version 4.9.x 20150123 (prerelease) (GCC) ) #2 SMP PREEMPT Wed Mar 9 18:04:27 CST 2022
CODENAME: REL
Mainboard: msm8953
BRAND: Android
CPU_ABI: arm64-v8a
CPU_ABI2:
DEVICE: msm8953_64
DISPLAY: PKQ1.181105.001 test-keys
FINGERPRINT: Android/msm8953_64/msm8953_64:9/PKQ1.181105.001/android2003091617:user/test-keys
HARDWARE: qcom
ID: PKQ1.181105.001
TAGS: test-keys

Processor : AArch64 Processor rev 4 (aarch64)
processor : 0
BogoMIPS : 38.40
Features : fp asimd evtstrm aes pmull sha1 sha2 crc32
CPU implementer : 0x41
CPU architecture: 8
CPU variant : 0x0
CPU part : 0xd03
CPU revision : 4
processor : 1
BogoMIPS : 38.40
Features : fp asimd evtstrm aes pmull sha1 sha2 crc32
CPU implementer : 0x41
CPU architecture: 8
CPU variant : 0x0
CPU part : 0xd03
CPU revision : 4
processor : 2
BogoMIPS : 38.40
Features : fp asimd evtstrm aes pmull sha1 sha2 crc32
CPU implementer : 0x41
CPU architecture: 8
CPU variant : 0x0
CPU part : 0xd03
CPU revision : 4
processor : 3
BogoMIPS : 38.40
Features : fp asimd evtstrm aes pmull sha1 sha2 crc32
CPU implementer : 0x41
CPU architecture: 8
CPU variant : 0x0
CPU part : 0xd03
CPU revision : 4
processor : 4
BogoMIPS : 38.40
Features : fp asimd evtstrm aes pmull sha1 sha2 crc32
CPU implementer : 0x41
CPU architecture: 8
CPU variant : 0x0
CPU part : 0xd03
CPU revision : 4
processor : 5
BogoMIPS : 38.40
Features : fp asimd evtstrm aes pmull sha1 sha2 crc32
CPU implementer : 0x41
CPU architecture: 8
CPU variant : 0x0
CPU part : 0xd03
CPU revision : 4
processor : 6
BogoMIPS : 38.40
Features : fp asimd evtstrm aes pmull sha1 sha2 crc32
CPU implementer : 0x41
CPU architecture: 8
CPU variant : 0x0
CPU part : 0xd03
CPU revision : 4
processor : 7
BogoMIPS : 38.40
Features : fp asimd evtstrm aes pmull sha1 sha2 crc32
CPU implementer : 0x41
CPU architecture: 8
CPU variant : 0x0
CPU part : 0xd03
CPU revision : 4
Hardware : Qualcomm Technologies, Inc. MSM8953

GL_OES_EGL_image
GL_OES_EGL_image_external
GL_OES_EGL_sync
GL_OES_vertex_half_float
GL_OES_framebuffer_object
GL_OES_rgb8_rgba8
GL_OES_compressed_ETC1_RGB8_texture
GL_AMD_compressed_ATC_texture
GL_KHR_texture_compression_astc_ldr
GL_KHR_texture_compression_astc_hdr
GL_OES_texture_compression_astc
GL_OES_texture_npot
GL_EXT_texture_filter_anisotropic
GL_EXT_texture_format_BGRA8888
GL_OES_texture_3D
GL_EXT_color_buffer_float
GL_EXT_color_buffer_half_float
GL_QCOM_alpha_test
GL_OES_depth24
GL_OES_packed_depth_stencil
GL_OES_depth_texture
GL_OES_depth_texture_cube_map
GL_EXT_sRGB
GL_OES_texture_float
GL_OES_texture_float_linear
GL_OES_texture_half_float
GL_OES_texture_half_float_linear
GL_EXT_texture_type_2_10_10_10_REV
GL_EXT_texture_sRGB_decode
GL_EXT_texture_format_sRGB_override
GL_OES_element_index_uint
GL_EXT_copy_image
GL_EXT_geometry_shader
GL_EXT_tessellation_shader
GL_OES_texture_stencil8
GL_EXT_shader_io_blocks
GL_OES_shader_image_atomic
GL_OES_sample_variables
GL_EXT_texture_border_clamp
GL_EXT_EGL_image_external_wrap_modes
GL_EXT_multisampled_render_to_texture
GL_EXT_multisampled_render_to_texture2
GL_OES_shader_multisample_interpolation
GL_EXT_texture_cube_map_array
GL_EXT_draw_buffers_indexed
GL_EXT_gpu_shader5
GL_EXT_robustness
GL_EXT_texture_buffer
GL_EXT_shader_framebuffer_fetch
GL_ARM_shader_framebuffer_fetch_depth_stencil
GL_OES_texture_storage_multisample_2d_array
GL_OES_sample_shading
GL_OES_get_program_binary
GL_EXT_debug_label
GL_KHR_blend_equation_advanced
GL_KHR_blend_equation_advanced_coherent
GL_QCOM_tiled_rendering
GL_ANDROID_extension_pack_es31a
GL_EXT_primitive_bounding_box
GL_OES_standard_derivatives
GL_OES_vertex_array_object
GL_EXT_disjoint_timer_query
GL_KHR_debug
GL_EXT_YUV_target
GL_EXT_sRGB_write_control
GL_EXT_texture_norm16
GL_EXT_discard_framebuffer
GL_OES_surfaceless_context
GL_OVR_multiview
GL_OVR_multiview2
GL_EXT_texture_sRGB_R8
GL_KHR_no_error
GL_EXT_debug_marker
GL_OES_EGL_image_external_essl3
GL_OVR_multiview_multisampled_render_to_texture
GL_EXT_buffer_storage
GL_EXT_external_buffer
GL_EXT_blit_framebuffer_params
GL_EXT_clip_cull_distance
GL_EXT_protected_textures
GL_EXT_shader_non_constant_global_initializers
GL_QCOM_texture_foveated
GL_QCOM_shader_framebuffer_fetch_noncoherent
GL_EXT_memory_object
GL_EXT_memory_object_fd
GL_EXT_EGL_image_array
GL_NV_shader_noperspective_interpolation
GL_KHR_robust_buffer_access_behavior
GL_EXT_EGL_image_storage
GL_EXT_blend_func_extended
GL_EXT_clip_control

[ 946.477098] [02:10:24.271437] [00000004412AABDF] [VosMC] wlan: [E :PE ] limRmcIbssDelete: 1271: RMC: limRmcIbssDelete:No active IBSS
[ 946.591018] [RMNET:HI] rmnet_config_notify_cb(): Kernel is trying to unregister wlan0
[ 946.671485] [RMNET:HI] rmnet_config_notify_cb(): Kernel is trying to unregister wlan0
[ 946.741198] [RMNET:HI] rmnet_config_notify_cb(): Kernel is trying to unregister p2p0
[ 946.811701] [RMNET:HI] rmnet_config_notify_cb(): Kernel is trying to unregister p2p0
[ 946.851487] wlan: driver unloaded
[ 946.901970] init: Untracked pid 8268 exited with status 0
[ 946.960242] [gtp_esd_check_funcA] goto work_end
[ 947.455709] type=1400 audit(1655489423.529:1294): avc: denied { open } for pid=7896 comm=4173796E635461736B202332 path=»/proc/partitions» dev=»proc» ino=4026532115 scontext=u:r:untrusted_app_25:s0:c512,c768 tcontext=u:object_r:proc:s0 tclass=file permissive=1
[ 947.455743] type=1400 audit(1655489425.229:1309): avc: denied { call } for pid=1770 comm=»m.android.phone» scontext=u:r:radio:s0 tcontext=u:r:dmclient:s0 tclass=binder permissive=1
[ 947.467027] type=1400 audit(1655489425.229:1309): avc: denied { call } for pid=1770 comm=»m.android.phone» scontext=u:r:radio:s0 tcontext=u:r:dmclient:s0 tclass=binder permissive=1
[ 947.467043] type=1400 audit(1655489425.249:1310): avc: denied { add_name } for pid=469 comm=»Binder:469_2″ name=»globalAlert» scontext=u:r:netd:s0 tcontext=u:object_r:proc_net:s0 tclass=dir permissive=1
[ 947.467384] type=1400 audit(1655489425.249:1310): avc: denied { add_name } for pid=469 comm=»Binder:469_2″ name=»globalAlert» scontext=u:r:netd:s0 tcontext=u:object_r:proc_net:s0 tclass=dir permissive=1
[ 947.467399] type=1400 audit(1655489425.249:1311): avc: denied { create } for pid=469 comm=»Binder:469_2″ name=»globalAlert» scontext=u:r:netd:s0 tcontext=u:object_r:proc_net:s0 tclass=file permissive=1
[ 947.467516] type=1400 audit(1655489425.249:1311): avc: denied { create } for pid=469 comm=»Binder:469_2″ name=»globalAlert» scontext=u:r:netd:s0 tcontext=u:object_r:proc_net:s0 tclass=file permissive=1
[ 947.467524] type=1400 audit(1655489425.249:1312): avc: denied { associate } for pid=469 comm=»Binder:469_2″ name=»globalAlert» scontext=u:object_r:proc_net:s0 tcontext=u:object_r:proc:s0 tclass=filesystem permissive=1
[ 947.643059] wlan: loading driver v3.0.11.85
[ 947.643250] wcnss_wlan a000000.qcom,wcnss-wlan: loading /vendor/firmware_mnt/image/wlan/prima/WCNSS_qcom_cfg.ini failed with error -13
[ 947.644477] ueventd: firmware: loading `wlan/prima/WCNSS_qcom_cfg.ini` for `/devices/platform/soc/a000000.qcom,wcnss-wlan/firmware/wlan!prima!WCNSS_qcom_cfg.ini`
[ 947.649455] ueventd: loading /devices/platform/soc/a000000.qcom,wcnss-wlan/firmware/wlan!prima!WCNSS_qcom_cfg.ini took 5ms
[ 947.651691] wcnss_wlan a000000.qcom,wcnss-wlan: loading /vendor/firmware_mnt/image/wlan/prima/WCNSS_qcom_wlan_nv.bin failed with error -13
[ 947.652796] ueventd: firmware: loading `wlan/prima/WCNSS_qcom_wlan_nv.bin` for `/devices/platform/soc/a000000.qcom,wcnss-wlan/firmware/wlan!prima!WCNSS_qcom_wlan_nv.bin`
[ 947.653225] ueventd: loading /devices/platform/soc/a000000.qcom,wcnss-wlan/firmware/wlan!prima!WCNSS_qcom_wlan_nv.bin took 0ms
[ 947.670316] wcnss: wcnss_get_serial_number: Device serial number: 3874377989
[ 947.840908] wlan: WCNSS WLAN version 1.5.1.2
[ 947.840915] wlan: WCNSS software version CNSS-PR-4-0-3-0000245
[ 947.840918] wlan: WCNSS hardware version WCN v2.0 RadioPhy vIris_TSMC_4.0 with 48MHz XO
[ 947.840974] DefaultCountry is 00
[ 947.896507] wlan_logging_sock_activate_svc: Initalizing FEConsoleLog = 1 NumBuff = 32
[ 947.896559] wlan_logging_sock_activate_svc: Initalizing Pkt stats pkt_stats_buff = 16
[ 947.902198] wlan: driver loaded
[ 947.906836] init: Received control message `start` for `vendor.move_wifi_data` from pid: 735 (/system/bin/wificond)
[ 947.907313] init: Could not ctl.start for service vendor.move_wifi_data: File /system/bin/move_wifi_data.sh(labeled «u:object_r:system_file:s0») has incorrect label or no domain transition from u:r:init:s0 to another SELinux domain defined. Have you configured your service correctly? https://source.android.com/security/selinux/device-policy#label_new_services_and_address_denials
[ 947.919154] init: Received control message `start` for `wpa_supplicant` from pid: 735 (/system/bin/wificond)
[ 947.919519] init: starting service `wpa_supplicant`…
[ 948.000137] [gtp_esd_check_funcA] goto work_end
[ 948.027984] IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready
[ 948.053979] [02:10:25.848319] [0000000442F8A611] [wific] wlan: [E :HDD] wlan_hdd_get_classAstats: Unable to retrieve Class A statistics
[ 948.054080] [02:10:25.848423] [0000000442F8ADCC] [wific] wlan: [E :HDD] wlan_hdd_get_classAstats: Unable to retrieve Class A statistics
[ 948.065849] [02:10:25.860188] [0000000442FC203E] [wific] wlan: [E :HDD] wlan_hdd_get_classAstats: Unable to retrieve Class A statistics
[ 948.077723] [02:10:25.872063] [0000000442FF9ADB] [wific] wlan: [E :HDD] wlan_hdd_get_classAstats: Unable to retrieve Class A statistics
[ 948.101270] [02:10:25.895610] [00000004430680E3] [wpa_s] wlan: [E :HDD] wlan_hdd_get_classAstats: Unable to retrieve Class A statistics
[ 948.102205] [02:10:25.896545] [000000044306C6F5] [wpa_s] wlan: [E :HDD] wlan_hdd_get_classAstats: Unable to retrieve Class A statistics
[ 948.115638] [02:10:25.909978] [00000004430AB67D] [wpa_s] wlan: [E :HDD] wlan_hdd_get_classAstats: Unable to retrieve Class A statistics
[ 948.126872] [02:10:25.921212] [00000004430E0105] [wpa_s] wlan: [E :HDD] wlan_hdd_get_classAstats: Unable to retrieve Class A statistics
[ 948.140477] [02:10:25.934816] [000000044311FD53] [wpa_s] wlan: [E :HDD] wlan_hdd_get_classAstats: Unable to retrieve Class A statistics
[ 948.242050] [02:10:26.036373] [00000004432FBE0E] [wpa_s] wlan: [E :HDD] __wlan_hdd_cfg80211_wifi_configuration_set: 7930: Not in Connected state!

wlan 6283264 0 — Live 0x0000000000000000 (O)
machine_ext_dlkm 122880 0 — Live 0x0000000000000000 (O)
machine_dlkm 86016 0 — Live 0x0000000000000000 (O)
wcd9335_dlkm 364544 1 machine_ext_dlkm, Live 0x0000000000000000 (O)
cpe_lsm_dlkm 49152 0 — Live 0x0000000000000000 (O)
wcd_cpe_dlkm 94208 2 wcd9335_dlkm,cpe_lsm_dlkm, Live 0x0000000000000000 (O)
analog_cdc_dlkm 585728 2 machine_dlkm, Live 0x0000000000000000 (O)
digital_cdc_dlkm 73728 2 machine_dlkm, Live 0x0000000000000000 (O)
stub_dlkm 16384 1 — Live 0x0000000000000000 (O)
mbhc_dlkm 49152 2 wcd9335_dlkm,analog_cdc_dlkm, Live 0x0000000000000000 (O)
wsa881x_analog_dlkm 40960 1 machine_dlkm, Live 0x0000000000000000 (O)
wsa881x_dlkm 49152 2 machine_ext_dlkm,wsa881x_analog_dlkm, Live 0x0000000000000000 (O)
wcd9xxx_dlkm 69632 2 wcd9335_dlkm,analog_cdc_dlkm, Live 0x0000000000000000 (O)
wcd_core_dlkm 143360 8 machine_ext_dlkm,machine_dlkm,wcd9335_dlkm,wcd_cpe_dlkm,mbhc_dlkm,wsa881x_analog_dlkm,wsa881x_dlkm,wcd9xxx_dlkm, Live 0x0000000000000000 (O)
hdmi_dlkm 16384 0 — Live 0x0000000000000000 (O)
swr_ctrl_dlkm 32768 1 wcd9335_dlkm, Live 0x0000000000000000 (O)
swr_dlkm 28672 2 wsa881x_dlkm,swr_ctrl_dlkm, Live 0x0000000000000000 (O)
pinctrl_wcd_dlkm 16384 0 — Live 0x0000000000000000 (O)
native_dlkm 176128 0 — Live 0x0000000000000000 (O)
platform_dlkm 1781760 33 native_dlkm, Live 0x0000000000000000 (O)
usf_dlkm 65536 0 — Live 0x0000000000000000 (O)
q6_dlkm 925696 11 machine_ext_dlkm,machine_dlkm,wcd_cpe_dlkm,analog_cdc_dlkm,digital_cdc_dlkm,wcd9xxx_dlkm,native_dlkm,platform_dlkm,usf_dlkm, Live 0x0000000000000000 (O)
adsp_loader_dlkm 16384 0 — Live 0x0000000000000000 (O)
apr_dlkm 266240 7 wcd9335_dlkm,analog_cdc_dlkm,digital_cdc_dlkm,platform_dlkm,usf_dlkm,q6_dlkm,adsp_loader_dlkm, Live 0x0000000000000000 (O)
q6_notifier_dlkm 16384 2 analog_cdc_dlkm,apr_dlkm, Live 0x0000000000000000 (O)

RAM: 0 MB

Flash: 64 GB (58.242 GB actual)

ram1: 0.047 GB
mmcblk0: 58.242 GB
ram: 0.078 GB

Найти похожие устройства
Same CPU:
Same Display resolution:
Same ro.build.description:

Конфигурация PINCTRL

Конфигурация платформы Qualcomm Группа I2S, как правило, соответствует четыре или шести GPIO,

Quin MI2S соответствует gpio88 gpio91 gpio92 gpio93

Соответствующий файл кода: ядро ​​/ MSM-3.18 / Arch / ARM / BOOT / BOOT / DTS / QCOM / MSM8953-PINCTRL.DTSI

		pri-tlmm-lines {
			pri_tlmm_lines_act: pri_tlmm_lines_act {
				mux {
					pins = "gpio91", "gpio88", "gpio93";
					function = "pri_mi2s";
				};

				config {
					pins = "gpio91", "gpio88", "gpio93";
					drive-strength = <8>;
				};
			};

			pri_tlmm_lines_sus: pri_tlmm_lines_sus {
				mux {
					pins = "gpio91", "gpio88", "gpio93";
					function = "pri_mi2s";
				};

				config {
					pins = "gpio91", "gpio88", "gpio93";
					drive-strength = <2>;
					bias-pull-down;
				};
			};
		};

Настройка PINCTRL также необходимо подключить к узлу звуковой карты.

Изменение файла: ядро ​​/ MSM-3.18 / ARCH / ARM / BOOT / BOOT / DTS / QCOM / MSM8953-AUDIO.DTSI

	qcom,msm-gpios =
		"pri_i2s",
		"quin_i2s";

	qcom,pinctrl-names =
		"all_off",
		"pri_i2s_act",
		"quin_act",
		"quin_pri_i2s_act";

	pinctrl-names =
		"all_off",
		"pri_i2s_act",
		"quin_act",
		"quin_pri_i2s_act";

	pinctrl-0 = <&cdc_pdm_lines_sus &cdc_pdm_lines_2_sus &pri_tlmm_lines_sus &pri_tlmm_ws_sus>;
	pinctrl-1 = <&cdc_pdm_lines_act &cdc_pdm_lines_2_act &pri_tlmm_lines_sus &pri_tlmm_ws_sus>;
	pinctrl-2 = <&cdc_pdm_lines_sus &cdc_pdm_lines_2_sus &pri_tlmm_lines_act &pri_tlmm_ws_act>;
	pinctrl-3 = <&cdc_pdm_lines_act &cdc_pdm_lines_2_act &pri_tlmm_lines_act &pri_tlmm_ws_act>;

2. Зарегистрируйте конфигурацию

Узнайте на документе Qualcomm MSM8953 внешний обзор интерфейса MI2S для настройки следующих регистров MI2S для настройки следующих регистров.

Итак, как вы настраиваете эти регистры в вашем коде? Это должно быть изменено в следующие файлы.

Изменить файл:

kernel/msm-3.18/sound/soc/msm/msm8952.c

kernel/msm-3.18/sound/soc/codecs/msm8x16-wcd.h

kernel/msm-3.18/arch/arm/boot/dts/qcom/msm-audio.dtsi

Там, где настроено ядро ​​/ MSM-3.18 / Arch / Arm / Boot / DTS / QCOM / MSM-Audio.dtsi Конфигурация:

	int_codec: sound {
		compatible = "qcom,msm8952-audio-codec";

//added by kuangjincheng @20171221
		reg =   <0xc051000 0x4>,//LPASS_CSR_GP_IO_MUX_MIC_CTL
				<0xc051004 0x4>,//LPASS_CSR_GP_IO_MUX_SPKR_CTL
				<0xc055000 0x4>,//LPASS_CSR_GP_LPAIF_PRI_PCM_PRI_MODE_MUXSEL
				<0xc052000 0x4>,//LPASS_ CSR_GP_IO_MUX_QUI_CTL
				<0xc054000 0x4>,//LPASS_CSR_GP_IO_MUX_MIC_EXT_CLK_CTL
				<0xc056000 0x4>,// LPASS_CSR_GP_LPAIF_QUI_PCM_SEC_MODE_MUXSEL
				<0xc054008 0x4>;//LPASS_CSR_GP_IO_MUX_QUI_EXT_CLK_CTL
		reg-names = "csr_gp_io_mux_mic_ctl",
					"csr_gp_io_mux_spkr_ctl",
					"csr_gp_io_lpaif_pri_pcm_pri_mode_muxsel",
					"csr_gp_io_mux_quin_ctl",
					"csr_gp_io_mux_mic_ext_clk_ctl",
					"csr_gp_io_lpaif_qui_pcm_sec_mode_muxsel",
					"csr_gp_io_mux_quin_ext_clk_ctl";
    };

В структуре устройства в заголовочном файле ядра / MSM-3.18 / SOUND / SOC / CODECS / MSM8X16-WCD.H добавляется элемент указателя, а адрес регистра сохраняется.

struct msm8916_asoc_mach_data {
	int codec_type;
	int ext_pa;
	int us_euro_gpio;
	int spk_ext_pa_gpio;
	int mclk_freq;
	int lb_mode;
	int afe_clk_ver;
	u8 micbias1_cap_mode;
	u8 micbias2_cap_mode;
	atomic_t mclk_rsc_ref;
	atomic_t mclk_enabled;
	atomic_t wsa_mclk_rsc_ref;
	struct mutex cdc_mclk_mutex;
	struct mutex wsa_mclk_mutex;
	struct delayed_work disable_mclk_work;
	struct afe_digital_clk_cfg digital_cdc_clk;
	struct afe_clk_set digital_cdc_core_clk;
	void __iomem *vaddr_gpio_mux_spkr_ctl;
	void __iomem *vaddr_gpio_mux_mic_ctl;
	void __iomem *vaddr_gpio_mux_quin_ctl;
	void __iomem *vaddr_gpio_mux_pcm_ctl;
//added by kuangjincheng @20171221 QUAT_MI2S_SLAVE_MODE config
	void __iomem *vaddr_gpio_mux_mic_ext_clk_ctl;
//added by kuangjincheng @20180521 QUIN_MI2S_SLAVE_MODE config
	void __iomem *vaddr_gpio_quin_sec_muxsel;
	void __iomem *vaddr_gpio_mux_quin_ext_clk_ctl;
	struct on_demand_supply wsa_switch_supply;
};

В функции MSM8952_ASOC_Machine_probe из ядра / MSM / MSM8952.C соответствующий адрес регистра анализируется и сохранен на элементах, соответствующих структуре устройства.

//added by kuangjincheng @20180521 QUIN_MI2S_SLAVE_MODE config
	muxsel = platform_get_resource_byname(pdev, IORESOURCE_MEM, "csr_gp_io_lpaif_qui_pcm_sec_mode_muxsel");
	if (!muxsel) {
		dev_dbg(&pdev->dev, "MUX addr invalid for MI2Sn");
		goto parse_mclk_freq;
	}
	pdata->vaddr_gpio_quin_sec_muxsel = ioremap(muxsel->start, resource_size(muxsel));
	if (pdata->vaddr_gpio_quin_sec_muxsel == NULL) {
		pr_err("%s ==4ioremap failure for muxsel virt addrn", __func__);
		ret = -ENOMEM;
		goto err;
	}

	muxsel = platform_get_resource_byname(pdev, IORESOURCE_MEM, "csr_gp_io_mux_quin_ext_clk_ctl");
	if (!muxsel) {
		dev_dbg(&pdev->dev, "MUX addr invalid for MI2Sn");
		goto parse_mclk_freq;
	}
	pdata->vaddr_gpio_mux_quin_ext_clk_ctl = ioremap(muxsel->start, resource_size(muxsel));
	if (pdata->vaddr_gpio_mux_quin_ext_clk_ctl == NULL) {
		pr_err("%s ==5ioremap failure for muxsel virt addrn", __func__);
		ret = -ENOMEM;
		goto err;
	}

Конфигурация регистров имеет последний шаг — выполнить конфигурацию регистров в I2S, соответствующих MSM_QUIN_MI2S_SND_STARTUP.

static int msm_quin_mi2s_snd_startup(struct snd_pcm_substream *substream)
{
	struct snd_soc_pcm_runtime *rtd = substream->private_data;
	struct snd_soc_card *card = rtd->card;
	struct snd_soc_dai *cpu_dai = rtd->cpu_dai;
	struct msm8916_asoc_mach_data *pdata =
			snd_soc_card_get_drvdata(card);
	int ret = 0, val = 0;

	pr_err("honeywell_msm8952>>>%s: substream = %s  stream = %dn", __func__, substream->name, substream->stream);
#ifdef QUIN_MI2S_USE_SLAVE_MODE
//0xc051000 LPASS_CSR_GP_IO_MUX_MIC_CTL
	if(pdata->vaddr_gpio_mux_mic_ctl){
		val = ioread32(pdata->vaddr_gpio_mux_mic_ctl);
		val = 0x00000000;
		iowrite32(val, pdata->vaddr_gpio_mux_mic_ctl);
	}
	pr_err("msm8952>>>%s:  iowrite32 vaddr_gpio_mux_mic_ctln", __func__);
//0xc056000 LPASS_CSR_GP_LPAIF_QUI_PCM_SEC_MODE_MUXSEL
	if(pdata->vaddr_gpio_quin_sec_muxsel){
		val = ioread32(pdata->vaddr_gpio_quin_sec_muxsel);
		val = 0x00000000;
		iowrite32(val, pdata->vaddr_gpio_quin_sec_muxsel);
	}
	pr_err("msm8952>>>%s:  iowrite32 vaddr_gpio_quin_sec_muxseln", __func__);
//0xc052000 LPASS_ CSR_GP_IO_MUX_QUI_CTL
	if(pdata->vaddr_gpio_mux_quin_ctl){
		val = ioread32(pdata->vaddr_gpio_mux_quin_ctl);
		val = 0x00000001;
		iowrite32(val, pdata->vaddr_gpio_mux_quin_ctl);
	}
	pr_err("msm8952>>>%s:  iowrite32 vaddr_gpio_mux_quin_ctln", __func__);
//0xc054008 LPASS_CSR_GP_IO_MUX_QUI_EXT_CLK_CTL
	if(pdata->vaddr_gpio_mux_quin_ext_clk_ctl){
		val = ioread32(pdata->vaddr_gpio_mux_quin_ext_clk_ctl);
		val = 0x00000001;
		iowrite32(val, pdata->vaddr_gpio_mux_quin_ext_clk_ctl);
	}
	pr_err("msm8952>>>%s:  iowrite32 vaddr_gpio_mux_quin_ext_clk_ctln", __func__);
#else
	if (pdata->vaddr_gpio_mux_quin_ctl) {
		val = ioread32(pdata->vaddr_gpio_mux_quin_ctl);
		val = val | 0x00000001;
		iowrite32(val, pdata->vaddr_gpio_mux_quin_ctl);
	} else {
		return -EINVAL;
	}
#endif
	pr_err("honeywell_msm8952>>>%s: ---001n", __func__);

#ifdef QUIN_MI2S_USE_SLAVE_MODE
	ret = msm_quin_i2s_sclk_ctl(substream, true);
#else
	ret = msm_mi2s_sclk_ctl(substream, true);
#endif
	if (ret < 0) {
		pr_err("honeywell_msm8952>>>%s: failed to enable sclkn", __func__);
		return ret;
	}
	pr_err("honeywell_msm8952>>>%s: ---002n", __func__);

	ret = msm_gpioset_activate(CLIENT_WCD_INT, "quin_i2s");
	if (ret < 0) {
		pr_err("honeywell_msm8952>>>%s: failed to enable codec gpiosn", __func__);
		goto err;
	}
	pr_err("honeywell_msm8952>>>%s: ---003n", __func__);

	if (atomic_inc_return(&quin_mi2s_clk_ref) == 1) {
#ifdef QUIN_MI2S_USE_SLAVE_MODE
		ret = snd_soc_dai_set_fmt(cpu_dai, SND_SOC_DAIFMT_CBM_CFM);
#else
		ret = snd_soc_dai_set_fmt(cpu_dai, SND_SOC_DAIFMT_CBS_CFS);
#endif
		if (ret < 0)
			pr_err("honeywell_msm8952>>>%s: set fmt cpu dai failedn", __func__);
	}
	pr_err("honeywell_msm8952>>>%s: ---004n", __func__);

	return ret;
err:
#ifdef QUIN_MI2S_USE_SLAVE_MODE
	ret = msm_quin_i2s_sclk_ctl(substream, false);
#else
	ret = msm_mi2s_sclk_ctl(substream, false);
#endif
	if (ret < 0)
		pr_err("failed to disable sclkn");
	return ret;
}

static void msm_quin_mi2s_snd_shutdown(struct snd_pcm_substream *substream)
{
	int ret;
	pr_err("honeywell_msm8952>>>%s: substream = %s  stream = %dn", __func__, substream->name, substream->stream);
#ifdef QUIN_MI2S_USE_SLAVE_MODE
	ret = msm_quin_i2s_sclk_ctl(substream, false);
#else
	ret = msm_mi2s_sclk_ctl(substream, false);
#endif
	if (ret < 0)
		pr_err("honeywell_msm8952>>>%s: clock disable failedn", __func__);
	if (atomic_read(&quin_mi2s_clk_ref) > 0)
		atomic_dec(&quin_mi2s_clk_ref);
	ret = msm_gpioset_suspend(CLIENT_WCD_INT, "quin_i2s");
	if (ret < 0) {
		pr_err("honeywell_msm8952>>>%s: gpio set cannot be de-activated %sd", __func__, "quin_i2s");
		return;
	}
}

3. Конфигурация часов

(1) Кто дает часы?

Часы в конфигурации часов обеспечиваются MSM8953 или сторонним чипом кодека, который обеспечивается внешним кристаллом, который напрямую связан с основным подчиненным режимом I2S.

Когда I2S является основным режимом, часы имеют внутренний хрустальный генератор MSM8953; наоборот, он предоставляется третьим сторонним кодеком.

Код, настроенный здесь, также установлен в функции MSM_QUIN_MI2S_SND_STARTUP.

Соответствующий сегмент кода индивидуально перехвачен:

#ifdef QUIN_MI2S_USE_SLAVE_MODE
		ret = snd_soc_dai_set_fmt(cpu_dai, SND_SOC_DAIFMT_CBM_CFM);
#else
		ret = snd_soc_dai_set_fmt(cpu_dai, SND_SOC_DAIFMT_CBS_CFS);
#endif

(2) Как так часто частота настройки?

Здесь MSM_MI2S_SCLK_CTL записывает функцию MSM_QUIN_I2S_SCLK_CTL для конфигурации часов рабочего режима.

//added by kuangjincheng @20180521 QUIN_MI2S_SLAVE_MODE config
#ifdef QUIN_MI2S_USE_SLAVE_MODE
static struct afe_clk_set quin_i2s_rx_clk = {
	AFE_API_VERSION_I2S_CONFIG,
	Q6AFE_LPASS_CLK_ID_QUI_MI2S_EBIT,
	Q6AFE_LPASS_OSR_CLK_1_P536_MHZ,
	Q6AFE_LPASS_CLK_ATTRIBUTE_COUPLE_NO,
	Q6AFE_LPASS_CLK_ROOT_DEFAULT,
	0,
};

static struct afe_clk_set quin_i2s_tx_clk = {
	AFE_API_VERSION_I2S_CONFIG,
	Q6AFE_LPASS_CLK_ID_QUI_MI2S_EBIT,
	Q6AFE_LPASS_OSR_CLK_3_P072_MHZ,
	Q6AFE_LPASS_CLK_ATTRIBUTE_COUPLE_NO,
	Q6AFE_LPASS_CLK_ROOT_DEFAULT,
	0,
};
#endif

//added by kuangjincheng @20180521 QUIN_MI2S_SLAVE_MODE config
#ifdef QUIN_MI2S_USE_SLAVE_MODE
static int msm_quin_i2s_sclk_ctl(struct snd_pcm_substream *substream, bool enable)
{
	int ret = 0;
	struct snd_soc_pcm_runtime *rtd = substream->private_data;
	int port_id = 0;
	pr_err("msm8952>>>%s:  entern", __func__);
	port_id = msm8952_get_port_id(rtd->dai_link->be_id);
	if (port_id < 0) {
		pr_err("msm8952>>>%s:  Invalid port_idn", __func__);
		return -EINVAL;
	}

	if (enable) {
		if (substream->stream == SNDRV_PCM_STREAM_PLAYBACK) {
			quin_i2s_rx_clk.enable = enable;
			quin_i2s_rx_clk.clk_id = msm8952_get_clk_id(port_id);
			quin_i2s_rx_clk.clk_freq_in_hz = get_mi2s_rx_clk_val(port_id);
			ret = afe_set_lpass_clock_v2(port_id, &quin_i2s_rx_clk);
		} else if (substream->stream == SNDRV_PCM_STREAM_CAPTURE) {
			quin_i2s_tx_clk.enable = enable;
			quin_i2s_tx_clk.clk_id = msm8952_get_clk_id(port_id);
			quin_i2s_tx_clk.clk_freq_in_hz = Q6AFE_LPASS_OSR_CLK_1_P536_MHZ;
			ret = afe_set_lpass_clock_v2(port_id, &quin_i2s_tx_clk);
		} else {
			pr_err("msm8952>>>%s:  Not valid substream.n", __func__);
		}

		if (ret < 0)
			pr_err("msm8952>>>%s:  enable: %d, afe_set_lpass_clock_v2 failedn", __func__, enable);
	} else {
		if (substream->stream == SNDRV_PCM_STREAM_PLAYBACK) {
			quin_i2s_rx_clk.enable = enable;
			quin_i2s_rx_clk.clk_id = msm8952_get_clk_id(port_id);
			ret = afe_set_lpass_clock_v2(port_id, &quin_i2s_rx_clk);
		} else if (substream->stream == SNDRV_PCM_STREAM_CAPTURE) {
			quin_i2s_tx_clk.enable = enable;
			quin_i2s_tx_clk.clk_id = msm8952_get_clk_id(port_id);
			ret = afe_set_lpass_clock_v2(port_id, &quin_i2s_tx_clk);
		} else {
			pr_err("msm8952>>>%s:  Not valid substream.n", __func__);
		}

		if (ret < 0)
			pr_err("msm8952>>>%s: enable: %d, afe_set_lpass_clock_v2 failedn", __func__, enable);
	}
	return ret;
}
#endif

4. Сводка и расширение

Приведенный выше код модифицирован для завершения шины I2S из конфигурации режима, а основной субклюк-микрофон можно вырезать на макро определение Quin_MI2S_USE_SLAVE_MODE.

Расширенный:

kernel/msm-3.18/include/uapi/sound/asound.h

kernel/msm-3.18/include/sound/apr_audio-v2.h

Формат PCM можно установить:

SNDRV_PCM_FORMAT_S16_LE

SNDRV_PCM_FORMAT_S24_LE

SNDRV_PCM_FORMAT_S24_3LE

Битовые часы могут быть выбраны для:

/* Supported OSR clock values */
#define Q6AFE_LPASS_OSR_CLK_12_P288_MHZ         0xBB8000
#define Q6AFE_LPASS_OSR_CLK_9_P600_MHZ          0x927C00
#define Q6AFE_LPASS_OSR_CLK_8_P192_MHZ          0x7D0000
#define Q6AFE_LPASS_OSR_CLK_6_P144_MHZ          0x5DC000
#define Q6AFE_LPASS_OSR_CLK_4_P096_MHZ          0x3E8000
#define Q6AFE_LPASS_OSR_CLK_3_P072_MHZ          0x2EE000
#define Q6AFE_LPASS_OSR_CLK_2_P048_MHZ          0x1F4000
#define Q6AFE_LPASS_OSR_CLK_1_P536_MHZ          0x177000
#define Q6AFE_LPASS_OSR_CLK_1_P024_MHZ           0xFA000
#define Q6AFE_LPASS_OSR_CLK_768_kHZ              0xBB800
#define Q6AFE_LPASS_OSR_CLK_512_kHZ              0x7D000
#define Q6AFE_LPASS_OSR_CLK_DISABLE                  0x0

/* Supported Bit clock values */
#define Q6AFE_LPASS_IBIT_CLK_12_P288_MHZ        0xBB8000
#define Q6AFE_LPASS_IBIT_CLK_11_P2896_MHZ       0xAC4400
#define Q6AFE_LPASS_IBIT_CLK_8_P192_MHZ         0x7D0000
#define Q6AFE_LPASS_IBIT_CLK_6_P144_MHZ         0x5DC000
#define Q6AFE_LPASS_IBIT_CLK_4_P096_MHZ         0x3E8000
#define Q6AFE_LPASS_IBIT_CLK_3_P072_MHZ         0x2EE000
#define Q6AFE_LPASS_IBIT_CLK_2_P8224_MHZ                0x2b1100
#define Q6AFE_LPASS_IBIT_CLK_2_P048_MHZ         0x1F4000
#define Q6AFE_LPASS_IBIT_CLK_1_P536_MHZ         0x177000
#define Q6AFE_LPASS_IBIT_CLK_1_P4112_MHZ                0x158880
#define Q6AFE_LPASS_IBIT_CLK_1_P024_MHZ          0xFA000
#define Q6AFE_LPASS_IBIT_CLK_768_KHZ             0xBB800
#define Q6AFE_LPASS_IBIT_CLK_512_KHZ             0x7D000
#define Q6AFE_LPASS_IBIT_CLK_256_KHZ             0x3E800
#define Q6AFE_LPASS_IBIT_CLK_DISABLE                 0x0

Глубина местоположения может быть выбрана: 16, 24

Скорость образца может быть выбрана для:

#define BTSCO_RATE_8KHZ 8000
#define BTSCO_RATE_16KHZ 16000

#define SAMPLING_RATE_48KHZ     48000
#define SAMPLING_RATE_96KHZ     96000
#define SAMPLING_RATE_192KHZ    192000

Эта часть этого раздела находится в документах Qualcomm следующим образом:

CARMEDIA NH-M1206-128-10 (Android 10, MSM 8953PX6 6×2.0 Ghz, 6Gb Ram, <br>128Gb ROM, BT4.0, 1920*1080) Головное устройство на Android 10 для Mercedes GLE <br>/ GLS 2016-2018 NTG 5.0/5.1

CARMEDIA
NH-M1206-128-11 (Android 11, MSM 8953PX6 6×2.0 Ghz, 6Gb Ram, 128Gb ROM, BT4.0, 1920*1080) Головное устройство на
Android 11 для Mercedes
GLE / GLS 2016-2018 NTG 5.0/5.1


Разработка


202
2
года от


CARMEDIA

линейка головных устройств


серии


HN Tesla-Style



со
 встроенным
звуковым процессором

с
TDA 7850
,
центральным процессором

MSM
8953PX6

6×2,0 Ghz (6
турбо-ядер)
, 6Гб оперативной
и
128Гб встроенной памяти! Штатное
головное устройство для


Mercedes GLE / GLS 2016-2018 NTG 5.0/5.1
 на
Android 11 CARMEDIA



NH-M1206-128-11

со стабильным



шести-ядерным
 процессором 
M1206, точной навигацией (GPS,
Глонасс), ярким сенсорным экраном


AHD 1080TVL

и громкой связью идеально подходит 
для
замены магнитолы на вашем авто
Стиль


Tesla

уникальный и красивый!


В составе графической подсистемы задействован контроллер 
Mali
T860 MP4
 (процессор
способен справляться с декодированием видеоматериалов 1080p
H.265/H.264/VC-1/MPEG/VP8).



Главные преимущества CARMEDIA серии
HN-xxxx-M1206-64-10 Tesla-Style:


  • Встроенный звуковой
    процессор TDA 7850 для качественного звука!



  • Цифровой сенсорный экран c матрицей 1080tvl для Tesla-Style
    (морозостойкий)!


  • Втроенный


    4G/LTE модем!
  • MSM
    8953PX6 6×2.0 Ghz + надежные
    комплектующие!
  • 6Gb
    оперативной памяти и 128Gb втроенной!

  • Внутренний микрофон полностью
    поддерживает голосовой поиск и управление андроид!
  • Подддержка
    CarPlay! Наличие HDMI
    порта!

  • NXP 6686 FM цифровой Радио модуль высокой
    чувствительности!

  • Управление климат-контролем и другими функциями с экрана!

  • Сверхточная GPS+Glonass навигация!

Официальный
магазин

CARMEDIA.RU
предлагает только высококачественные комплектующие и самые
последние прошивки, что обеспечивает стабильность и долгую работу головного 
устройства!


Описание — CARMEDIA NH-M1206-128-11
Головное устройство на Android 11 для

Mercedes GLE / GLS 2016-2018 NTG
5.0/5.1

  • Архитектура процессора

    MSM 8953PX6 6x2.0 Ghz
  • Оперативная память
    6 Гб, Встроенная память 128 Гб
  • OS


    Android 11
  • Экран AHD
    12,3«,
    1920*
    720
  • Поддержка разделения экрана!
  • Поддержка

    CarPlay
  • Поддержка карт памяти
    Поддержка SD карт (на

    некоторых моделях), USB flash и HDD до 1 Террабайта
  • Wi-Fi (802.11 b/g/n)

    150 Mbit встроенный модуль



  • Встроенный 4G/LTE!


    Возможность по WiFi принимать интернет с вашего смартфона (нужно включить на
    нем точку доступа WiFi)
  • Bluetooth встроенный
    4
    .0
  • DVD привод

    отсутствует
  • Встроенный GPS и
    Glonass — UBlox (сверхточный прием)

  • Радио модуль HD Radio NXP 6686
    (используется в аудиосистеме Mercedes и BMW) уверенный приём даже при самом
    слабом сигнале
  • CAN шина
    — в комплекте
    (в некоторых
    моделях втроенная)
  • Поддержка кнопок на
    руле
  • 1*USB OTG, 1*USB HOST (поддержка
    HDD дисков, USB drive, Keyboard, Mouse, Вебкамера, Wi-Fi роутеров, зарядка
    мобильных и др.), 2 порта (в некоторых устройствах 3 порта)
  • TV
    цифровое —
    Лайм.ТВ
  • Рабочее напряжение
    10.8V ~16V
  • Соотношение сигнал/шум
    усилителя 85 dB
  • Аудио входы 1 линейный
  • Аудио выходы
    5.1 линейные
  • Видео входы 1
    композитный
  • Видео выходы 2-х
    композитный, HDMI
  • Выходная мощность
    MOSFET TDA7850 4х55Вт,
    поддержка четырех-омной и двух-омной(премиум) акустики
  • Диапазон рабочих
    температур -20~+70

  • П
    оддержка
    IPop, Iphone, смартфоны на OS Android
  • Поддержка
    датчиков давления в шинах
  • Поддержка ИК пульта*
    (в некоторых моделях не комплектуется)

  • П
    оддержка
    камеры заднего хода
  • Яркость и подсветка
    кнопок*

Комплектация —

CARMEDIA NH-M1206-128-11
Головное устройство на
Android 11 для

Mercedes GLE / GLS 2016-2018 NTG
5.0/5.1

  • Головное устройство
    Tesla Style
  • Жгут проводов для
    подключения к штатным разъемам автомобиля
  • Адаптер CAN-шины для
    поддержки штатных функций
    (для определенных встроенный)
  • Жгут «тюльпанов» для
    усилителя, сабвуфера, AUX и камеры заднего вида
  • Внешний микрофон для
    громкой связи
  • GPS антенна для
    навигации
  • Гарантийный талон
    CARMEDIA (гарантия 2 года)


Официальный интернет-магазин

www.carmedia.ru

Теги: Цена
головное устройство CARMEDIA NH-M1206-128-11

для  Mercedes GLE / GLS 2016-2018 NTG 5.0/5.1,
купить
CARMEDIA NH-M1206-128-11, доставка
CARMEDIA NH-M1206-128-11, установка
CARMEDIA NH-M1206-128-11
,
характеристики
CARMEDIA NH-M1206-128-11

Mercedes GLE / GLS 2016-2018 NTG 5.0/5.1 CARMEDIA
NH-M1206-128-11

(Android 11, MSM 8953PX6 6×2.0 Ghz, 6Gb Ram, 128Gb ROM, BT4.0, 1920*1080) Штатное головное мультимедийное устройство

*
уточняйте при заказе (некоторые опции могут отсутствовать в начальной
комплектации)

Понравилась статья? Поделить с друзьями:
  • Валацикловир акос 500 инструкция по применению взрослым
  • Препарат когитум для детей инструкция по применению цена отзывы
  • Надувной воротник для шеи вытягивающий инструкция по применению взрослым
  • Сермион ампулы инструкция по применению цена
  • Кастомизация одежды своими руками пошаговая инструкция