diff options
author | Nick Saulnier | 2019-08-02 15:33:13 -0500 |
---|---|---|
committer | Nick Saulnier | 2019-08-02 15:33:13 -0500 |
commit | afb7d98abbbb10953fb3b1d6305cf8ff71603acc (patch) | |
tree | e382ca453e7e6a142e37340d6ee9d51074b40606 | |
parent | bc772adc18ca03c80e904aa8d2b17a9edca828b0 (diff) | |
download | pru-software-support-package-afb7d98abbbb10953fb3b1d6305cf8ff71603acc.tar.gz pru-software-support-package-afb7d98abbbb10953fb3b1d6305cf8ff71603acc.tar.xz pru-software-support-package-afb7d98abbbb10953fb3b1d6305cf8ff71603acc.zip |
Labs: Use FW_RSC_ADDR_ANY for vring device addresses
The current examples use a value of 0 for da in the vrings in the
resource table, with the Linux kernel filling in the actual allocated
address. The newer Linux kernels (> 4.19) update this vring da field
only if it is set as FW_RSC_ADDR_ANY. So, update the resource tables
to use this value instead of 0 to get these firmwares to work with
the newer kernels. The change is backward compatible for existing
kernels.
Signed-off-by: Nick Saulnier <nsaulnier@ti.com>
6 files changed, 12 insertions, 12 deletions
diff --git a/labs/lab_5/solution/am335x/PRU_RPMsg_Echo_Interrupt1/resource_table_1.h b/labs/lab_5/solution/am335x/PRU_RPMsg_Echo_Interrupt1/resource_table_1.h index 9e18d52..50c6b3f 100644 --- a/labs/lab_5/solution/am335x/PRU_RPMsg_Echo_Interrupt1/resource_table_1.h +++ b/labs/lab_5/solution/am335x/PRU_RPMsg_Echo_Interrupt1/resource_table_1.h | |||
@@ -102,14 +102,14 @@ struct my_resource_table resourceTable = { | |||
102 | }, | 102 | }, |
103 | /* the two vrings */ | 103 | /* the two vrings */ |
104 | { | 104 | { |
105 | 0, //da, will be populated by host, can't pass it in | 105 | FW_RSC_ADDR_ANY, //da, will be populated by host, can't pass it in |
106 | 16, //align (bytes), | 106 | 16, //align (bytes), |
107 | PRU_RPMSG_VQ0_SIZE, //num of descriptors | 107 | PRU_RPMSG_VQ0_SIZE, //num of descriptors |
108 | 0, //notifyid, will be populated, can't pass right now | 108 | 0, //notifyid, will be populated, can't pass right now |
109 | 0 //reserved | 109 | 0 //reserved |
110 | }, | 110 | }, |
111 | { | 111 | { |
112 | 0, //da, will be populated by host, can't pass it in | 112 | FW_RSC_ADDR_ANY, //da, will be populated by host, can't pass it in |
113 | 16, //align (bytes), | 113 | 16, //align (bytes), |
114 | PRU_RPMSG_VQ1_SIZE, //num of descriptors | 114 | PRU_RPMSG_VQ1_SIZE, //num of descriptors |
115 | 0, //notifyid, will be populated, can't pass right now | 115 | 0, //notifyid, will be populated, can't pass right now |
diff --git a/labs/lab_5/solution/am437x/PRU_RPMsg_Echo_Interrupt1_1/resource_table_1.h b/labs/lab_5/solution/am437x/PRU_RPMsg_Echo_Interrupt1_1/resource_table_1.h index 9e18d52..50c6b3f 100644 --- a/labs/lab_5/solution/am437x/PRU_RPMsg_Echo_Interrupt1_1/resource_table_1.h +++ b/labs/lab_5/solution/am437x/PRU_RPMsg_Echo_Interrupt1_1/resource_table_1.h | |||
@@ -102,14 +102,14 @@ struct my_resource_table resourceTable = { | |||
102 | }, | 102 | }, |
103 | /* the two vrings */ | 103 | /* the two vrings */ |
104 | { | 104 | { |
105 | 0, //da, will be populated by host, can't pass it in | 105 | FW_RSC_ADDR_ANY, //da, will be populated by host, can't pass it in |
106 | 16, //align (bytes), | 106 | 16, //align (bytes), |
107 | PRU_RPMSG_VQ0_SIZE, //num of descriptors | 107 | PRU_RPMSG_VQ0_SIZE, //num of descriptors |
108 | 0, //notifyid, will be populated, can't pass right now | 108 | 0, //notifyid, will be populated, can't pass right now |
109 | 0 //reserved | 109 | 0 //reserved |
110 | }, | 110 | }, |
111 | { | 111 | { |
112 | 0, //da, will be populated by host, can't pass it in | 112 | FW_RSC_ADDR_ANY, //da, will be populated by host, can't pass it in |
113 | 16, //align (bytes), | 113 | 16, //align (bytes), |
114 | PRU_RPMSG_VQ1_SIZE, //num of descriptors | 114 | PRU_RPMSG_VQ1_SIZE, //num of descriptors |
115 | 0, //notifyid, will be populated, can't pass right now | 115 | 0, //notifyid, will be populated, can't pass right now |
diff --git a/labs/lab_5/solution/am572x/PRU_RPMsg_Echo_Interrupt1/resource_table_1.h b/labs/lab_5/solution/am572x/PRU_RPMsg_Echo_Interrupt1/resource_table_1.h index 9e18d52..50c6b3f 100644 --- a/labs/lab_5/solution/am572x/PRU_RPMsg_Echo_Interrupt1/resource_table_1.h +++ b/labs/lab_5/solution/am572x/PRU_RPMsg_Echo_Interrupt1/resource_table_1.h | |||
@@ -102,14 +102,14 @@ struct my_resource_table resourceTable = { | |||
102 | }, | 102 | }, |
103 | /* the two vrings */ | 103 | /* the two vrings */ |
104 | { | 104 | { |
105 | 0, //da, will be populated by host, can't pass it in | 105 | FW_RSC_ADDR_ANY, //da, will be populated by host, can't pass it in |
106 | 16, //align (bytes), | 106 | 16, //align (bytes), |
107 | PRU_RPMSG_VQ0_SIZE, //num of descriptors | 107 | PRU_RPMSG_VQ0_SIZE, //num of descriptors |
108 | 0, //notifyid, will be populated, can't pass right now | 108 | 0, //notifyid, will be populated, can't pass right now |
109 | 0 //reserved | 109 | 0 //reserved |
110 | }, | 110 | }, |
111 | { | 111 | { |
112 | 0, //da, will be populated by host, can't pass it in | 112 | FW_RSC_ADDR_ANY, //da, will be populated by host, can't pass it in |
113 | 16, //align (bytes), | 113 | 16, //align (bytes), |
114 | PRU_RPMSG_VQ1_SIZE, //num of descriptors | 114 | PRU_RPMSG_VQ1_SIZE, //num of descriptors |
115 | 0, //notifyid, will be populated, can't pass right now | 115 | 0, //notifyid, will be populated, can't pass right now |
diff --git a/labs/lab_5/solution/am65x/PRU_RPMsg_Echo_Interrupt1/resource_table_1.h b/labs/lab_5/solution/am65x/PRU_RPMsg_Echo_Interrupt1/resource_table_1.h index 7d7e10e..dcc8f20 100644 --- a/labs/lab_5/solution/am65x/PRU_RPMsg_Echo_Interrupt1/resource_table_1.h +++ b/labs/lab_5/solution/am65x/PRU_RPMsg_Echo_Interrupt1/resource_table_1.h | |||
@@ -102,14 +102,14 @@ struct my_resource_table resourceTable = { | |||
102 | }, | 102 | }, |
103 | /* the two vrings */ | 103 | /* the two vrings */ |
104 | { | 104 | { |
105 | 0, //da, will be populated by host, can't pass it in | 105 | FW_RSC_ADDR_ANY, //da, will be populated by host, can't pass it in |
106 | 16, //align (bytes), | 106 | 16, //align (bytes), |
107 | PRU_RPMSG_VQ0_SIZE, //num of descriptors | 107 | PRU_RPMSG_VQ0_SIZE, //num of descriptors |
108 | 0, //notifyid, will be populated, can't pass right now | 108 | 0, //notifyid, will be populated, can't pass right now |
109 | 0 //reserved | 109 | 0 //reserved |
110 | }, | 110 | }, |
111 | { | 111 | { |
112 | 0, //da, will be populated by host, can't pass it in | 112 | FW_RSC_ADDR_ANY, //da, will be populated by host, can't pass it in |
113 | 16, //align (bytes), | 113 | 16, //align (bytes), |
114 | PRU_RPMSG_VQ1_SIZE, //num of descriptors | 114 | PRU_RPMSG_VQ1_SIZE, //num of descriptors |
115 | 0, //notifyid, will be populated, can't pass right now | 115 | 0, //notifyid, will be populated, can't pass right now |
diff --git a/labs/lab_5/solution/k2g/PRU_RPMsg_Echo_Interrupt1/resource_table_1.h b/labs/lab_5/solution/k2g/PRU_RPMsg_Echo_Interrupt1/resource_table_1.h index 9e18d52..50c6b3f 100644 --- a/labs/lab_5/solution/k2g/PRU_RPMsg_Echo_Interrupt1/resource_table_1.h +++ b/labs/lab_5/solution/k2g/PRU_RPMsg_Echo_Interrupt1/resource_table_1.h | |||
@@ -102,14 +102,14 @@ struct my_resource_table resourceTable = { | |||
102 | }, | 102 | }, |
103 | /* the two vrings */ | 103 | /* the two vrings */ |
104 | { | 104 | { |
105 | 0, //da, will be populated by host, can't pass it in | 105 | FW_RSC_ADDR_ANY, //da, will be populated by host, can't pass it in |
106 | 16, //align (bytes), | 106 | 16, //align (bytes), |
107 | PRU_RPMSG_VQ0_SIZE, //num of descriptors | 107 | PRU_RPMSG_VQ0_SIZE, //num of descriptors |
108 | 0, //notifyid, will be populated, can't pass right now | 108 | 0, //notifyid, will be populated, can't pass right now |
109 | 0 //reserved | 109 | 0 //reserved |
110 | }, | 110 | }, |
111 | { | 111 | { |
112 | 0, //da, will be populated by host, can't pass it in | 112 | FW_RSC_ADDR_ANY, //da, will be populated by host, can't pass it in |
113 | 16, //align (bytes), | 113 | 16, //align (bytes), |
114 | PRU_RPMSG_VQ1_SIZE, //num of descriptors | 114 | PRU_RPMSG_VQ1_SIZE, //num of descriptors |
115 | 0, //notifyid, will be populated, can't pass right now | 115 | 0, //notifyid, will be populated, can't pass right now |
diff --git a/labs/lab_6/solution/PRU_RPMsg_LED0/resource_table_0.h b/labs/lab_6/solution/PRU_RPMsg_LED0/resource_table_0.h index 933afdf..4a5296a 100644 --- a/labs/lab_6/solution/PRU_RPMsg_LED0/resource_table_0.h +++ b/labs/lab_6/solution/PRU_RPMsg_LED0/resource_table_0.h | |||
@@ -102,14 +102,14 @@ struct my_resource_table resourceTable = { | |||
102 | }, | 102 | }, |
103 | /* the two vrings */ | 103 | /* the two vrings */ |
104 | { | 104 | { |
105 | 0, //da, will be populated by host, can't pass it in | 105 | FW_RSC_ADDR_ANY, //da, will be populated by host, can't pass it in |
106 | 16, //align (bytes), | 106 | 16, //align (bytes), |
107 | PRU_RPMSG_VQ0_SIZE, //num of descriptors | 107 | PRU_RPMSG_VQ0_SIZE, //num of descriptors |
108 | 0, //notifyid, will be populated, can't pass right now | 108 | 0, //notifyid, will be populated, can't pass right now |
109 | 0 //reserved | 109 | 0 //reserved |
110 | }, | 110 | }, |
111 | { | 111 | { |
112 | 0, //da, will be populated by host, can't pass it in | 112 | FW_RSC_ADDR_ANY, //da, will be populated by host, can't pass it in |
113 | 16, //align (bytes), | 113 | 16, //align (bytes), |
114 | PRU_RPMSG_VQ1_SIZE, //num of descriptors | 114 | PRU_RPMSG_VQ1_SIZE, //num of descriptors |
115 | 0, //notifyid, will be populated, can't pass right now | 115 | 0, //notifyid, will be populated, can't pass right now |