append_command_all_ports: add optional set_end_flag argument
This commit is contained in:
parent
870254efd2
commit
8f95b5a2b2
2
base.mk
2
base.mk
@ -103,7 +103,7 @@ endef
|
|||||||
$(AS) $(AARCH) $(AFLAGS) $(DEBUG) $< -o $@
|
$(AS) $(AARCH) $(AFLAGS) $(DEBUG) $< -o $@
|
||||||
|
|
||||||
%.o: %.c
|
%.o: %.c
|
||||||
$(CC) $(CARCH) $(CFLAGS) $(OPT) $(DEBUG) $(DEPFLAGS) -MF ${<}.d -c $< -o $@
|
$(CC) $(CARCH) $(CFLAGS) -std=c23 $(OPT) $(DEBUG) $(DEPFLAGS) -MF ${<}.d -c $< -o $@
|
||||||
|
|
||||||
%.o: %.cpp
|
%.o: %.cpp
|
||||||
$(CXX) $(CARCH) $(CFLAGS) $(CXXFLAGS) $(OPT) $(DEBUG) $(DEPFLAGS) -MF ${<}.d -c $< -o $@
|
$(CXX) $(CARCH) $(CFLAGS) $(CXXFLAGS) $(OPT) $(DEBUG) $(DEPFLAGS) -MF ${<}.d -c $< -o $@
|
||||||
|
@ -15,7 +15,7 @@ void main()
|
|||||||
using command_type = maple::device_request;
|
using command_type = maple::device_request;
|
||||||
using response_type = maple::device_status;
|
using response_type = maple::device_status;
|
||||||
|
|
||||||
auto writer = maple::host_command_writer<>(send_buf, recv_buf);
|
auto writer = maple::host_command_writer(send_buf, recv_buf);
|
||||||
|
|
||||||
auto [host_command, host_response]
|
auto [host_command, host_response]
|
||||||
= writer.append_command_all_ports<command_type, response_type>();
|
= writer.append_command_all_ports<command_type, response_type>();
|
||||||
|
@ -70,12 +70,12 @@ struct host_command_writer {
|
|||||||
template <typename C, typename R>
|
template <typename C, typename R>
|
||||||
constexpr inline std::tuple<maple::host_command<typename C::data_fields> *,
|
constexpr inline std::tuple<maple::host_command<typename C::data_fields> *,
|
||||||
maple::host_response<typename R::data_fields> *>
|
maple::host_response<typename R::data_fields> *>
|
||||||
append_command_all_ports()
|
append_command_all_ports(bool set_end_flag = true)
|
||||||
{
|
{
|
||||||
auto ret = append_command<C, R>(host_instruction::port_select::a, ap::de::device | ap::port_select::a, false);
|
auto ret = append_command<C, R>(host_instruction::port_select::a, ap::de::device | ap::port_select::a, false);
|
||||||
append_command<C, R>(host_instruction::port_select::b, ap::de::device | ap::port_select::b, false);
|
append_command<C, R>(host_instruction::port_select::b, ap::de::device | ap::port_select::b, false);
|
||||||
append_command<C, R>(host_instruction::port_select::c, ap::de::device | ap::port_select::c, false);
|
append_command<C, R>(host_instruction::port_select::c, ap::de::device | ap::port_select::c, false);
|
||||||
append_command<C, R>(host_instruction::port_select::d, ap::de::device | ap::port_select::d, true);
|
append_command<C, R>(host_instruction::port_select::d, ap::de::device | ap::port_select::d, set_end_flag);
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user