Этимологический словарь Крылова
Образовано суффиксальным способом от диалектального смекало – "ум, сметка". К той же основе восходят намекать и просторечное кумекать.
смекалка