imx7d sabre epdc firmware fail

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

imx7d sabre epdc firmware fail

Jump to solution
1,743 Views
guoxiongjiang
Contributor II

Hi NXP FAE,

 

I got a imx7d sabresd board (RevD) and EBookDC4, boot disk is SDCard, provided by NXP, 

the image version is linux-4.1.15_1.2.0A.

 

I boot the device, found

cpu cpu0: dev_pm_opp_get_opp_count: device OPP not found (-19)
imx_epdc_v2_fb 306f0000.epdc: Direct firmware load for imx/epdc/epdc_ED060XH2C1.fw failed with error -2
imx_epdc_v2_fb 306f0000.epdc: Falling back to user helper

 

but  the firmware epdc_ED060XH2C1.fw could be found in /lib/firmware/imx/epdc, why did fimware load fail?

 

Regards,

David 

Original Attachment has been moved to: imx7.log.zip

Labels (2)
0 Kudos
1 Solution
872 Views
guoxiongjiang
Contributor II

Dear Igor,

Thanks for your reply, my EbookDC4 can work well,  I only wonder why direct firmware load fails, 

maybe the kernel file system isn't ready? I guess.

static int fw_get_filesystem_firmware(struct device *device,
struct firmware_buf *buf)

{

......

snprintf(path, PATH_MAX, "%s/%s", fw_path[i], buf->fw_id);
printk("__FUNCTION__, path: %s\n", path);

file = filp_open(path, O_RDONLY, 0);
printk("__FUNCTION__, error: %x\n", IS_ERR(file));

.....

}

log is as follows:

__FUNCTION__, path: /lib/firmware/updates/4.1.15+g77f6154/imx/epdc/epdc_ED060XH2
C1.fw
__FUNCTION__, error: 1
__FUNCTION__, path: /lib/firmware/updates/imx/epdc/epdc_ED060XH2C1.fw
__FUNCTION__, error: 1
__FUNCTION__, path: /lib/firmware/4.1.15+g77f6154/imx/epdc/epdc_ED060XH2C1.fw
__FUNCTION__, error: 1
__FUNCTION__, path: /lib/firmware/imx/epdc/epdc_ED060XH2C1.fw
__FUNCTION__, error: 1

View solution in original post

0 Kudos
4 Replies
872 Views
igorpadykov
NXP Employee
NXP Employee

Hi David

please check that correct dtb file is selected (imx7d-sdb-epdc.dtb) as

answered by Mark Ruthenbeck at 27.07.2016 10:12

connecting i.MX7D Sabre(MCIMX7SABRE) and E-INK panel(IMXEBOOKDC4) 

Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos
872 Views
guoxiongjiang
Contributor II

Dear Igor,

I have modified uboot env setting,

a.) setenv fdt_file imx7d-sdb-epdc.dtb
(originally this is "fdt_file=imx7d-sdb.dtb")
b.) setenv mmcargs 'setenv bootargs console=${console},${baudrate} root=${mmcroot} epdc video=mxcepdcfb:ED060XH2C1,bpp=16'

run  unitestunit_tests# ./mxc_epdc_v2_fb_test.out

EBookDC4 runs ok, but  the issue still exists.

imx_epdc_v2_fb 306f0000.epdc: Direct firmware load for imx/epdc/epdc_ED060XH2C1.
fw failed with error -2
imx_epdc_v2_fb 306f0000.epdc: Falling back to user helper

Regards,

David

0 Kudos
872 Views
igorpadykov
NXP Employee
NXP Employee

Hi David

please try Demo Images

http://www.nxp.com/webapp/Download?colCode=L4.1.15_1.2.0_iMX7D&appType=license&location=null&Parent_... 

There is NO need to add the "epdc video= args as suggested on

connecting i.MX7D Sabre(MCIMX7SABRE) and E-INK panel(IMXEBOOKDC4) 

Best regards
igor

0 Kudos
873 Views
guoxiongjiang
Contributor II

Dear Igor,

Thanks for your reply, my EbookDC4 can work well,  I only wonder why direct firmware load fails, 

maybe the kernel file system isn't ready? I guess.

static int fw_get_filesystem_firmware(struct device *device,
struct firmware_buf *buf)

{

......

snprintf(path, PATH_MAX, "%s/%s", fw_path[i], buf->fw_id);
printk("__FUNCTION__, path: %s\n", path);

file = filp_open(path, O_RDONLY, 0);
printk("__FUNCTION__, error: %x\n", IS_ERR(file));

.....

}

log is as follows:

__FUNCTION__, path: /lib/firmware/updates/4.1.15+g77f6154/imx/epdc/epdc_ED060XH2
C1.fw
__FUNCTION__, error: 1
__FUNCTION__, path: /lib/firmware/updates/imx/epdc/epdc_ED060XH2C1.fw
__FUNCTION__, error: 1
__FUNCTION__, path: /lib/firmware/4.1.15+g77f6154/imx/epdc/epdc_ED060XH2C1.fw
__FUNCTION__, error: 1
__FUNCTION__, path: /lib/firmware/imx/epdc/epdc_ED060XH2C1.fw
__FUNCTION__, error: 1

0 Kudos