Mathieu, Bjorn > Subject: RE: [PATCH V4 0/2] remoteproc: support self recovery Do you have time to give a look? i.MX8QM/QXP remoteproc support depends on this feature. Thanks, Peng. > > > Subject: [PATCH V4 0/2] remoteproc: support self recovery > > Gentle ping.. > > Thanks > Peng. > > > > > From: Peng Fan <peng.fan@xxxxxxx> > > > > V4: > > Based on Bjorn's comments on V2-2 > > Move the rproc_has_feature/rproc_set_feature to > > remoteproc_internal.h and Keep rproc_features still in remoteproc.h, > > because we use RPROC_MAX_FEATURES to declare bitmap. > > Update commit log for patch 2/2, and add comments > > > > V3: > > Resend the wrong labeled patchset > > > > https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fpatc > > hwork.kernel.org%2Fproject%2Flinux- > remoteproc%2Flist%2F%3Fseries%3D621 > > > 311&data=04%7C01%7Cpeng.fan%40nxp.com%7C79b37b5586cc4c913129 > 08da1b > > > 7ad5a8%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C637852511630 > 263603 > > %7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLC > JBTiI6I > > > k1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=5dxwnc716qj%2FQc6TzayLIn > %2BiMJ8 > > oSwksVUIfmw6atVk%3D&reserved=0 > > > > Write a cover-letter > > To i.MX8QM/QXP, they have a M4 core self-recovery capability without > > Linux loading firmware. The self recovery is done by SCU(System > > Control Unit). Current remoteproc framework only support Linux help > > recovery remote processor(stop, loading firmware, start). This > > patchset is support remote processor self recovery(attach recovery). > > > > In order to avoid introducing a new variable(bool > > support_self_recovery), patch 1 introduce a new function, > > rproc_has_feature to make code easy to extend, cleaner, such as we > > could move "bool has_iommu" to rproc_has_feature(rproc, > RPROC_FEAT_IOMMU). > > > > Patch 2 is introduce a new function rproc_attach_recovery for self > > recovery, the original logic move to rproc_firmware_recovery meaning > > needs linux to help recovery. > > > > V2-version 2: > > > > https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fpatc > > hwork.kernel.org%2Fproject%2Flinux- > remoteproc%2Flist%2F%3Fseries%3D621 > > > 311&data=04%7C01%7Cpeng.fan%40nxp.com%7C79b37b5586cc4c913129 > 08da1b > > > 7ad5a8%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C637852511630 > 263603 > > %7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLC > JBTiI6I > > > k1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=5dxwnc716qj%2FQc6TzayLIn > %2BiMJ8 > > oSwksVUIfmw6atVk%3D&reserved=0 > > Introduce rproc_has_feature > > > > V2-version 1: > > > > https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fpatc > > hwork.kernel.org%2Fproject%2Flinux- > remoteproc%2Fpatch%2F20220126085&am > > > p;data=04%7C01%7Cpeng.fan%40nxp.com%7C79b37b5586cc4c91312908da1b7 > ad5a8 > > %7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C6378525116302636 > 03%7CUnk > > > nown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1h > aWw > > > iLCJXVCI6Mn0%3D%7C3000&sdata=eMRjdCSvLJrnvtS9QGUQYnr%2BtUPJkS > RSryJ > > p6%2BvvfNo%3D&reserved=0 > > 120.3397450-1-peng.fan@xxxxxxxxxxx/ > > Nothing change in V2. > > Only move this patch out from > > > > https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fpatc > > hwork.kernel.org%2Fproject%2Flinux- > remoteproc%2Flist%2F%3Fseries%3D604 > > > 364&data=04%7C01%7Cpeng.fan%40nxp.com%7C79b37b5586cc4c913129 > 08da1b > > > 7ad5a8%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C637852511630 > 263603 > > %7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLC > JBTiI6I > > > k1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=eJSTzHgK7eMYgLoENZ1dfZds > uj9O6kj > > aPyBm61WDXpM%3D&reserved=0 > > > > > > > > Peng Fan (2): > > remoteproc: introduce rproc features > > remoteproc: support attach recovery after rproc crash > > > > drivers/remoteproc/remoteproc_core.c | 67 > > +++++++++++++++++------- > > drivers/remoteproc/remoteproc_internal.h | 10 ++++ > > include/linux/remoteproc.h | 7 +++ > > 3 files changed, 65 insertions(+), 19 deletions(-) > > > > -- > > 2.25.1