工具/软件:Linux
您好、先生、
对于 电平位移、关于 SDIO 总线的功率、我们如何选择1.8V 或3.3V 电压?
此致、
拜伦
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
工具/软件:Linux
您好、先生、
对于 电平位移、关于 SDIO 总线的功率、我们如何选择1.8V 或3.3V 电压?
此致、
拜伦
您好、Pavel、
请参阅下面的功能、这是否意味着只有 MMC1支持3.3V、其他支持1.8V?
静态空 omap_hsmmc_conf_bus_power (struct omap_hsmmc_host *主机)
{
u32 hctl、capa、value;
/*只有 MMC1支持3.0V */
if (host->id =OMAP_MMC1_DevID){
hctl = SDVS30;
CAPA = VS30 | VS18;
}否则{
hctl = SDVS18;
CAPA = VS18;
}
此致、
拜伦
您好、Pavel、
您说过 mmc0配置为3.3V。 但功能如下所示。mmc0配置为1.8V、我需要修改它吗?
是的、我们的内核是2.6.37。 dm38x-csk.dts 的文件是否仅在最新的内核版本上?我找不到它。但在 kernel/arch/PowerPC/boot/DTS 文件夹中。我可以看到许多 DTS 文件。但我不确定使用哪个文件。我们如何检查它?
静态空 omap_hsmmc_conf_bus_power (struct omap_hsmmc_host *主机)
{
u32 hctl、capa、value;
/*只有 MMC1支持3.0V */
if (host->id =OMAP_MMC1_DevID){
hctl = SDVS30;
CAPA = VS30 | VS18;
}否则{
hctl = SDVS18;
CAPA = VS18;
}
值= OMA_HSMMC_READ (host->base、HCTL)&~SDVS_MASK;
OMAP-HSMMC
===================================================================================================================================
静态空 omap_hsmmc_conf_bus_power (struct omap_hsmmc_host *主机)
{
u32 hctl、capa、value;
/*只有 MMC1支持3.0V */
if (host->id =OMAP_MMC1_DevID){
hctl = SDVS30;
CAPA = VS30 | VS18;
}否则{
hctl = SDVS30;
CAPA = VS30 | VS18;
}
值= OMA_HSMMC_READ (host->base、HCTL)&~SDVS_MASK;
OMAP-HSMMC
此致、
拜伦
拜伦
[引用 user="Byron Tian]1.\n\n 您说 mmc0配置为3.3V。 但函数如下所示。mmc0配置为1.8V、因此我需要修改它吗?
否、mmc0未配置为1.8V、而是配置为3V。 在 DM385数据表中、MMC 编号从0开始、我们有 mmc0、mmc1、mmc2。 在 Linux 内核2.6.37 (IPNC RDK 3.8.x)中、编号从1开始、我们有 OMAP_MMC1_DevID、OMAP_MMC2_DevID、OMAP_MMC3_DevID。 因此、数据表中的 mmc0 (基址0x48060000)对应于 OMAP-MMC1_DevID、并设置为3V。
如果您在 MMC0上需要3.3V 电压、则无需更改 MMC 驱动程序。
[引用 user="Byron Tian]2.6.37.是 的,我们的内核是2.6.37.是 dm38x-csk.dts 文件,仅在最新内核版本上?我找不到它。但在 kernel/arch/PowerPC/boot/DTS 文件夹中,我可以看到许多 DTS 文件。但我不确定我使用了哪个文件。我们如何检查它?
这是旧内核、这里没有 DTS 文件、而是板级文件。 检查 kernel/arch/arm/mach-omap2/文件 board-dm385evm.c 和/或 board-dm385ipnc.c 和 device.c
此致、
帕维尔
您好、Pavel、
1.如果我们想配置为1.8V、我需要连接到 MMC1或将 MMC0驱动器从3V 修改为1.8V、如下所示?
==== 以前===========
静态空 omap_hsmmc_conf_bus_power (struct omap_hsmmc_host *主机)
{
u32 hctl、capa、value;
/*只有 MMC1支持3.0V */
if (host->id =OMAP_MMC1_DevID){
hctl = SDVS30;
CAPA = VS30 | VS18;
}否则{
hctl = SDVS18;
CAPA = VS18;
}
===after===========
静态空 omap_hsmmc_conf_bus_power (struct omap_hsmmc_host *主机)
{
u32 hctl、capa、value;
/*只有 MMC1支持3.0V */
// if (host->id =OMAP-MMC1_DevID){
// hctl = SDVS30;
// CAPA = VS30 | VS18;
// }否则{
hctl = SDVS18;
CAPA = VS18;
// }
关于 AM335x_WL_IRQ 和 AM335x_WL_en、我们的额定电压是多少(1.8V 或3.3V)?我们能否在内核中更改它们?
此致、
拜伦
[引述 USER="Byron Tian]1..如果我们想要配置为1.8V、我需要连接到 MMC1或按照如下所示将 MMC0驱动程序从3V 修改为1.8V?[/QUEREST]
您可以同时执行这两个操作。 在第一种情况下(连接到 MMC1)、您无需更改驱动程序。 在第二种情况下、您的驱动程序更新看起来是正确的(用于将 MMC0设置为1.8V)。
[引用用户="Byron Tian]2. 关于 AM335x_WL_IRQ 和 AM335x_WL_en、我们的额定电压是多少(1.8V 或3.3V)?我们能否在内核中更改它们?
我找不到这样的 DM385引脚(AM335x_WL_IRQ、AM335x_WL_EN)、您是否需要 DM385内部信号或 DM385引脚? 如果您参考的是 DM385引脚、您参考的是哪个焊球编号(在示例 AA26中)?
此致、
帕维尔
拜伦
这些 C9/J10引脚是双电压 I/O、因此可在3.3V 或1.8V 电压下工作。 请参阅 DM385x 数据表第7.2.5节双电压 I/O。
引脚 C9上的电压电平(3.3V 或1.8V)取决于 DVDD 电源轨、引脚 J10上的电压电平(3.3V 或1.8V)取决于 DVDD_C 电源轨。
此电压选择(3.3V 或1.8V)不能由 SW (内核或其他位置)进行。
此致、
帕维尔
您好、Pavel、
我尝试按如下方式修改代码。确保 mmc1和 mmc2为1.8V。 但是、当我检查 mmc1引脚上的电压时、我得到的是3.3V。 它似乎不起作用。我们需要在哪里修改?
静态空 omap_hsmmc_conf_bus_power (struct omap_hsmmc_host *主机)
{
u32 hctl、capa、value;
/*只有 MMC1支持3.0V */
//if (host->id =OMAP-MMC1_DevID){
// hctl = SDVS30;
// capa = VS30 | VS18;
//}否则{
hctl = SDVS18;
CAPA = VS18;
//}
}
BR、
拜伦
[报价用户="Byron Tian)]我尝试按如下方式修改代码。确保 mmc1和 mmc2为1.8V。 但是、当我检查 mmc1引脚上的电压时、我得到的是3.3V。 它似乎不起作用。我们需要在哪里修改?
正如我在这个 e2e 线程中多次解释的那样、mmc0 (内核中的 mmc1)引脚电压电平不能由软件(内核或其他)从3.3V 更改为1.8V。 您唯一的选择是对 DVDD_SD 电源域的电源进行硬件更改(从3.3V 改为1.8V)。
此致、
帕维尔
您好、Pavel、
我很困惑、
上 星期三、我的问题是
>>如果我们要配置为1.8V,我需要连接到 MMC1或将 MMC0驱动器从3V 修改为1.8V,如下所示?
您的答案是
>>您可以同时执行这两项操作。 在第一种情况下(连接到 MMC1)、您无需更改驱动程序。 在第二种情况下、您的驱动程序更新看起来是正确的(用于将 MMC0设置为1.8V)。
上周五、我的问题是
>>我已尝试如下修改代码。请确保 mmc1和 mmc2为1.8V。 但是、当我检查 mmc1引脚上的电压时、我得到的是3.3V。 它似乎不起作用。我们需要在哪里修改?
您的答案是
>>正如我在这个 e2e 线程中多次解释过的,mmc0 (内核中的 mmc1)引脚电压电平不能由软件(内核或其他)从3.3V 更改为1.8V。 您唯一的选择是对 DVDD_SD 电源域的电源进行硬件更改(从3.3V 改为1.8V)。
===================================================================================================
1.您的意思是 MMC 的所有功率级别都取决于 DVDD_SD。
如果 DVDD_SD 为3.3V、则 MMC0可以支持3.3V 和1.8V。 MMC1仅支持 1.8V 电压。
如果 DVDD_SD 为1.8V、则 MMC0可支持1.8V。 MMC1仅支持 1.8V 电压。
2.上 星期三你的答案。
"... 在第二种情况下、您的驱动程序更新似乎是正确的(用于将 MMC0设置为1.8V)。"
您意味着不仅需要修改 OMAP-hsmmc_conf_bus_power 函数的参数、还需要修改内核/MMC 驱动程序、如下所示
静态空 omap_hsmmc_conf_bus_power (struct omap_hsmmc_host *主机)
{
u32 hctl、capa、value;
/*只有 MMC1支持3.0V */
if (host->id =OMAP_MMC1_DevID){
hctl = SDVS30;
CAPA = VS30 | VS18;
}否则{
hctl = SDVS18;
CAPA = VS18;
}
。
此致、
拜伦
拜伦
当您在 DM38x MMC/SD/SDIO 控制器内核驱动程序中选择电压模式(1.8V、3.0V 或3.3V)时、这不会影响 MMC/SD/SDIO 输入/输出引脚电压电平(1.8V 或3.3V)。
当您在 DM38x MMC/SD/SDIO 控制器内核驱动程序中选择电压模式(1.8V、3.0V 或3.3V)时、您可以定义此 DM38x MMC/SD/SDIO 控制器将在哪种传输速度模式下工作(即 SDR12、SDR25)、从而与外部芯片的传输速度保持一致。
此致、
帕维尔