1. 25 7月, 2021 2 次提交
  2. 16 3月, 2021 1 次提交
  3. 01 3月, 2021 3 次提交
  4. 27 1月, 2021 1 次提交
  5. 14 1月, 2021 2 次提交
  6. 06 1月, 2021 1 次提交
  7. 10 12月, 2020 1 次提交
  8. 20 11月, 2020 9 次提交
  9. 18 11月, 2020 1 次提交
    • M
      can: flexcan: flexcan_chip_start(): fix erroneous flexcan_transceiver_enable()... · cd9f13c5
      Marc Kleine-Budde 提交于
      can: flexcan: flexcan_chip_start(): fix erroneous flexcan_transceiver_enable() during bus-off recovery
      
      If the CAN controller goes into bus off, the do_set_mode() callback with
      CAN_MODE_START can be used to recover the controller, which then calls
      flexcan_chip_start(). If configured, this is done automatically by the
      framework or manually by the user.
      
      In flexcan_chip_start() there is an explicit call to
      flexcan_transceiver_enable(), which does a regulator_enable() on the
      transceiver regulator. This results in a net usage counter increase, as there
      is no corresponding flexcan_transceiver_disable() in the bus off code path.
      This further leads to the transceiver stuck enabled, even if the CAN interface
      is shut down.
      
      To fix this problem the
      flexcan_transceiver_enable()/flexcan_transceiver_disable() are moved out of
      flexcan_chip_start()/flexcan_chip_stop() into flexcan_open()/flexcan_close().
      
      Fixes: e955cead ("CAN: Add Flexcan CAN controller driver")
      Link: https://lore.kernel.org/r/20201118150148.2664024-1-mkl@pengutronix.deSigned-off-by: NMarc Kleine-Budde <mkl@pengutronix.de>
      cd9f13c5
  10. 16 11月, 2020 2 次提交
  11. 04 11月, 2020 4 次提交
  12. 08 10月, 2020 1 次提交
  13. 01 10月, 2020 3 次提交
  14. 22 9月, 2020 9 次提交