genodelabs / genode-world

Collection of community-maintained components for Genode
Other
45 stars 47 forks source link

driver/input/imx53_tablet and driver/pwm/imx53 do not build #375

Open chelmuth opened 2 months ago

chelmuth commented 2 months ago
> make driver/input/imx53_tablet

In file included from /data/genode-world/src/driver/input/imx53_tablet/egalax_ts.h:23,
                 from /data/genode-world/src/driver/input/imx53_tablet/driver.h:23,
                 from /data/genode-world/src/driver/input/imx53_tablet/main.cc:25:
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:31:1: error: expected class-name before ‘{’ token
   31 | {
      | ^
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:34:49: error: expected template-name before ‘<’ token
   34 |                 struct Address : public Register<0x0, 8>
      |                                                 ^
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:34:49: error: expected ‘{’ before ‘<’ token
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:34:49: error: expected unqualified-id before ‘<’ token
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:39:54: error: expected template-name before ‘<’ token
   39 |                 struct Freq_divider : public Register<0x4, 8> {};
      |                                                      ^
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:39:54: error: expected ‘{’ before ‘<’ token
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:39:54: error: expected unqualified-id before ‘<’ token
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:41:49: error: expected template-name before ‘<’ token
   41 |                 struct Control : public Register<0x8, 8>
      |                                                 ^
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:41:49: error: expected ‘{’ before ‘<’ token
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:41:49: error: expected unqualified-id before ‘<’ token
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:51:48: error: expected template-name before ‘<’ token
   51 |                 struct Status : public Register<0xc, 8>
      |                                                ^
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:51:48: error: expected ‘{’ before ‘<’ token
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:51:48: error: expected unqualified-id before ‘<’ token
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:62:46: error: expected template-name before ‘<’ token
   62 |                 struct Data : public Register<0x10, 8> { };
      |                                              ^
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:62:46: error: expected ‘{’ before ‘<’ token
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:62:46: error: expected unqualified-id before ‘<’ token
/data/genode-world/src/driver/input/imx53_tablet/i2c.h: In member function ‘void I2c::I2c::_busy()’:
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:69:53: error: incomplete type ‘I2c::I2c::Status’ used in nested name specifier
   69 |                 void _busy() { while (!read<Status::Busy>()); }
      |                                                     ^~~~
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:69:40: error: ‘read’ was not declared in this scope
   69 |                 void _busy() { while (!read<Status::Busy>()); }
      |                                        ^~~~~~~~~~~~~~~~~~
/data/genode-world/src/driver/input/imx53_tablet/i2c.h: In member function ‘void I2c::I2c::_start()’:
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:75:25: error: ‘write’ was not declared in this scope; did you mean ‘_write’?
   75 |                         write<Freq_divider>(0x2c);
      |                         ^~~~~~~~~~~~~~~~~~~
      |                         _write
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:76:37: error: expected primary-expression before ‘>’ token
   76 |                         write<Status>(0);
      |                                     ^
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:77:38: error: expected primary-expression before ‘>’ token
   77 |                         write<Control>(Control::Enable::bits(1));
      |                                      ^
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:77:49: error: ‘I2c::I2c::Control::Enable’ has not been declared
   77 |                         write<Control>(Control::Enable::bits(1));
      |                                                 ^~~~~~
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:79:47: error: incomplete type ‘I2c::I2c::Control’ used in nested name specifier
   79 |                         while (!read<Control::Enable>()) { ; }
      |                                               ^~~~~~
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:79:33: error: ‘read’ was not declared in this scope
   79 |                         while (!read<Control::Enable>()) { ; }
      |                                 ^~~~~~~~~~~~~~~~~~~~~
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:81:40: error: incomplete type ‘I2c::I2c::Control’ used in nested name specifier
   81 |                         write<Control::Master_slave_select>(1);
      |                                        ^~~~~~~~~~~~~~~~~~~
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:85:38: error: expected primary-expression before ‘>’ token
   85 |                         write<Control>(Control::Tx_rx_select::bits(1)        |
      |                                      ^
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:85:49: error: ‘I2c::I2c::Control::Tx_rx_select’ has not been declared
   85 |                         write<Control>(Control::Tx_rx_select::bits(1)        |
      |                                                 ^~~~~~~~~~~~
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:86:49: error: ‘I2c::I2c::Control::Tx_ack_enable’ has not been declared
   86 |                                        Control::Tx_ack_enable::bits(1)       |
      |                                                 ^~~~~~~~~~~~~
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:87:49: error: ‘I2c::I2c::Control::Irq_enable’ has not been declared
   87 |                                        Control::Irq_enable::bits(1)          |
      |                                                 ^~~~~~~~~~
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:88:49: error: ‘I2c::I2c::Control::Master_slave_select’ has not been declared
   88 |                                        Control::Master_slave_select::bits(1) |
      |                                                 ^~~~~~~~~~~~~~~~~~~
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:89:49: error: ‘I2c::I2c::Control::Enable’ has not been declared
   89 |                                        Control::Enable::bits(1));
      |                                                 ^~~~~~
/data/genode-world/src/driver/input/imx53_tablet/i2c.h: In member function ‘void I2c::I2c::_stop()’:
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:94:25: error: ‘write’ was not declared in this scope; did you mean ‘_write’?
   94 |                         write<Control>(0);
      |                         ^~~~~~~~~~~~~~
      |                         _write
/data/genode-world/src/driver/input/imx53_tablet/i2c.h: In member function ‘void I2c::I2c::_write(Genode::uint8_t)’:
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:101:25: error: ‘write’ was not declared in this scope; did you mean ‘_write’?
  101 |                         write<Data>(value);
      |                         ^~~~~~~~~~~
      |                         _write
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:104:46: error: incomplete type ‘I2c::I2c::Status’ used in nested name specifier
  104 |                         while (!read<Status::Irq>());
      |                                              ^~~
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:104:33: error: ‘read’ was not declared in this scope
  104 |                         while (!read<Status::Irq>());
      |                                 ^~~~~~~~~~~~~~~~~
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:106:39: error: incomplete type ‘I2c::I2c::Status’ used in nested name specifier
  106 |                         write<Status::Irq>(0);
      |                                       ^~~
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:107:42: error: incomplete type ‘I2c::I2c::Status’ used in nested name specifier
  107 |                         if (read<Status::Rcv_ack>()) throw No_ack();
      |                                          ^~~~~~~
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:107:51: error: expected primary-expression before ‘)’ token
  107 |                         if (read<Status::Rcv_ack>()) throw No_ack();
      |                                                   ^
/data/genode-world/src/driver/input/imx53_tablet/i2c.h: In constructor ‘I2c::I2c::I2c(Platform::Device&, Irq_handler&)’:
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:115:41: error: expected class-name before ‘(’ token
  115 |                 : Platform::Device::Mmio(d),
      |                                         ^
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:114:17: error: ‘I2c::I2c::_irq_handler’ should be initialized in the member initialization list [-Werror=effc++]
  114 |                 I2c(Platform::Device & d, Irq_handler &irq_handler)
      |                 ^~~
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:114:17: error: uninitialized reference member in ‘class Irq_handler&’ [-fpermissive]
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:67:31: note: ‘Irq_handler& I2c::I2c::_irq_handler’ should be initialized
   67 |                 Irq_handler & _irq_handler;
      |                               ^~~~~~~~~~~~
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:115:41: error: expected ‘{’ before ‘(’ token
  115 |                 : Platform::Device::Mmio(d),
      |                                         ^
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:114:40: error: unused parameter ‘d’ [-Werror=unused-parameter]
  114 |                 I2c(Platform::Device & d, Irq_handler &irq_handler)
      |                     ~~~~~~~~~~~~~~~~~~~^
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:114:56: error: unused parameter ‘irq_handler’ [-Werror=unused-parameter]
  114 |                 I2c(Platform::Device & d, Irq_handler &irq_handler)
      |                                           ~~~~~~~~~~~~~^~~~~~~~~~~
/data/genode-world/src/driver/input/imx53_tablet/i2c.h: In member function ‘void I2c::I2c::recv(Genode::uint8_t, Genode::uint8_t*, Genode::size_t)’:
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:148:56: error: incomplete type ‘I2c::I2c::Control’ used in nested name specifier
  148 |                                         write<Control::Tx_rx_select>(0);
      |                                                        ^~~~~~~~~~~~
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:148:41: error: ‘write’ was not declared in this scope; did you mean ‘_write’?
  148 |                                         write<Control::Tx_rx_select>(0);
      |                                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
      |                                         _write
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:150:64: error: incomplete type ‘I2c::I2c::Control’ used in nested name specifier
  150 |                                                 write<Control::Tx_ack_enable>(0);
      |                                                                ^~~~~~~~~~~~~
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:151:41: error: ‘read’ was not declared in this scope
  151 |                                         read<Data>(); /* dummy read */
      |                                         ^~~~~~~~~~
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:156:70: error: incomplete type ‘I2c::I2c::Status’ used in nested name specifier
  156 |                                                 while (!read<Status::Irq>());
      |                                                                      ^~~
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:156:61: error: logical not is only applied to the left hand side of comparison [-Werror=logical-not-parentheses]
  156 |                                                 while (!read<Status::Irq>());
      |                                                             ^
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:156:75: error: expected primary-expression before ‘)’ token
  156 |                                                 while (!read<Status::Irq>());
      |                                                                           ^
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:158:63: error: incomplete type ‘I2c::I2c::Status’ used in nested name specifier
  158 |                                                 write<Status::Irq>(0);
      |                                                               ^~~
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:161:72: error: incomplete type ‘I2c::I2c::Control’ used in nested name specifier
  161 |                                                         write<Control::Tx_rx_select>(0);
      |                                                                        ^~~~~~~~~~~~
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:162:72: error: incomplete type ‘I2c::I2c::Control’ used in nested name specifier
  162 |                                                         write<Control::Master_slave_select>(0);
      |                                                                        ^~~~~~~~~~~~~~~~~~~
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:163:77: error: incomplete type ‘I2c::I2c::Status’ used in nested name specifier
  163 |                                                         while (read<Status::Busy>()) ;
      |                                                                             ^~~~
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:163:83: error: expected primary-expression before ‘)’ token
  163 |                                                         while (read<Status::Busy>()) ;
      |                                                                                   ^
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:165:72: error: incomplete type ‘I2c::I2c::Control’ used in nested name specifier
  165 |                                                         write<Control::Tx_ack_enable>(1);
      |                                                                        ^~~~~~~~~~~~~
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:168:67: error: expected primary-expression before ‘>’ token
  168 |                                                 buf[i] = read<Data>();
      |                                                                   ^
/data/genode-world/src/driver/input/imx53_tablet/i2c.h:168:69: error: expected primary-expression before ‘)’ token
  168 |                                                 buf[i] = read<Data>();
      |                                                                     ^
cc1plus: all warnings being treated as errors
make[2]: *** [/data/genode/repos/base/mk/generic.mk:73: main.o] Error 1
make[1]: *** [var/libdeps:77: imx53_tablet_input.prg] Error 2
make: *** [Makefile:351: gen_deps_and_build_targets] Error 2
chelmuth commented 2 months ago

For driver/pwm/imx53

/data/genode-world/src/driver/pwm/imx53/main.cc:22:1: error: expected class-name before ‘{’ token
   22 | {
      | ^
/data/genode-world/src/driver/pwm/imx53/main.cc:25:34: error: expected template-name before ‘<’ token
   25 |         struct Control : Register<0x0, 32>
      |                                  ^
/data/genode-world/src/driver/pwm/imx53/main.cc:25:34: error: expected ‘{’ before ‘<’ token
/data/genode-world/src/driver/pwm/imx53/main.cc:25:34: error: expected unqualified-id before ‘<’ token
/data/genode-world/src/driver/pwm/imx53/main.cc:35:34: error: expected template-name before ‘<’ token
   35 |         struct Sample  : Register<0xc, 32> {};
      |                                  ^
/data/genode-world/src/driver/pwm/imx53/main.cc:35:34: error: expected ‘{’ before ‘<’ token
/data/genode-world/src/driver/pwm/imx53/main.cc:35:34: error: expected unqualified-id before ‘<’ token
/data/genode-world/src/driver/pwm/imx53/main.cc:36:34: error: expected template-name before ‘<’ token
   36 |         struct Period  : Register<0x10,32> {};
      |                                  ^
/data/genode-world/src/driver/pwm/imx53/main.cc:36:34: error: expected ‘{’ before ‘<’ token
/data/genode-world/src/driver/pwm/imx53/main.cc:36:34: error: expected unqualified-id before ‘<’ token
/data/genode-world/src/driver/pwm/imx53/main.cc: In constructor ‘Pwm::Pwm(Genode::addr_t, unsigned int, unsigned int, Clk_src)’:
/data/genode-world/src/driver/pwm/imx53/main.cc:42:23: error: expected class-name before ‘(’ token
   42 |         : Genode::Mmio(mmio_base)
      |                       ^
/data/genode-world/src/driver/pwm/imx53/main.cc:42:23: error: expected ‘{’ before ‘(’ token
/data/genode-world/src/driver/pwm/imx53/main.cc:38:34: error: unused parameter ‘mmio_base’ [-Werror=unused-parameter]
   38 |         Pwm(Genode::addr_t const mmio_base,
      |             ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~
/data/genode-world/src/driver/pwm/imx53/main.cc:39:22: error: unused parameter ‘period’ [-Werror=unused-parameter]
   39 |             unsigned period,
      |             ~~~~~~~~~^~~~~~
/data/genode-world/src/driver/pwm/imx53/main.cc:40:22: error: unused parameter ‘sample’ [-Werror=unused-parameter]
   40 |             unsigned sample,
      |             ~~~~~~~~~^~~~~~
/data/genode-world/src/driver/pwm/imx53/main.cc:41:21: error: unused parameter ‘clk_src’ [-Werror=unused-parameter]
   41 |             Clk_src clk_src)
      |             ~~~~~~~~^~~~~~~
cc1plus: all warnings being treated as errors
make[2]: *** [/data/genode/repos/base/mk/generic.mk:73: main.o] Error 1
make[1]: *** [var/libdeps:77: imx53_pwd.prg] Error 2
make: *** [Makefile:351: gen_deps_and_build_targets] Error 2