Open-source keyboard firmware for Atmel AVR and Arm USB families. Mirror of https://github.com/qmk/qmk_firmware
Go to file
Michael Hanselmann 25a02432e7 AVR8: Add option to keep 3.3V regulator enabled
The documentation contains example code[1] on how to restart into the
bootloader. In the process of preparing for the reset, USB is disabled
using “USB_Disable()”. For hardware making use of the AVR8's internal
3.3V regulator that call would also disable the regulator, resetting the
processor immediately rather than setting the boot key and letting the
watchdog reset the processor.

This patch adds a new flag to be given to “USB_Init()” or to be defined
in “USE_STATIC_OPTIONS” telling “USB_Disable()” to keep the regulator
enabled.

On November 1st, 2013 this issue was already mentioned on the mailing
list[2], but no fix came from that discussion.

[1]
<http://www.fourwalledcubicle.com/files/LUFA/Doc/130901/
html/_page__software_bootloader_start.html>

[2]
<https://groups.google.com/d/msg/lufa-support/uwrFpRQpJzU/e9I6UK5jMJQJ>

Signed-off-by: Michael Hanselmann <public@hansmi.ch>
2013-12-20 00:04:51 +01:00
Bootloaders Use new VERSION_BCD() macro with explicit int arguments to fix edge cases with the previous floating point macro version. 2013-11-21 19:19:45 +01:00
BuildTests Add XMEGA TWI to the ModuleTest build test. 2013-08-13 21:35:21 +02:00
Demos Use new VERSION_BCD() macro with explicit int arguments to fix edge cases with the previous floating point macro version. 2013-11-21 19:19:45 +01:00
LUFA AVR8: Add option to keep 3.3V regulator enabled 2013-12-20 00:04:51 +01:00
Maintenance Minor documentation improvements. 2013-07-14 15:09:29 +02:00
Projects Use new VERSION_BCD() macro with explicit int arguments to fix edge cases with the previous floating point macro version. 2013-11-21 19:19:45 +01:00
.gitignore Add Documentation output directories to the .gitignore list. 2013-11-20 20:18:28 +01:00
makefile Fix missing references to the ANSI terminal driver codes in the USART peripheral driver module. 2013-01-27 12:00:04 +00:00
README.txt Minor documentation improvements. 2012-07-03 16:00:31 +00:00

                   _   _ _ ___ _
                  | | | | | __/ \
                  | |_| U | _| o | - The Lightweight USB
                  |___|___|_||_n_|    Framework for AVRs
                =========================================
                          Written by Dean Camera
                  dean [at] fourwalledcubicle [dot] com

                         http://www.lufa-lib.org
                =========================================

               LUFA is donation supported. To support LUFA,
             please donate at http://www.lufa-lib.org/donate

               Released under a modified MIT license - see
                  LUFA/License.txt for license details.

                For Commercial Licensing information, see
                     http://www.lufa-lib.org/license


This package contains the complete LUFA library, demos, user-submitted
projects and bootloaders for use with compatible microcontroller models.
LUFA is a simple to use, lightweight framework which sits atop the hardware
USB controller in specific AVR microcontroller models, and allows for the
quick and easy creation of complex USB devices and hosts.

To get started, you will need to install the "Doxygen" documentation
generation tool. If you use Linux, this can be installed via the "doxygen"
package in your chosen package management tool - under Ubuntu, this can be
achieved by running the following command in the terminal:

   sudo apt-get install doxygen

Other package managers and distributions will have similar methods to
install Doxygen. In Windows, you can download a prebuilt installer for
Doxygen from its website, www.doxygen.org.

Once installed, you can then use the Doxygen tool to generate the library
documentation from the command line or terminal of your operating system. To
do this, open your terminal or command line to the root directory of the
LUFA package, and type the following command:

   make doxygen

Which will recursively generate documentation for all elements in the
library - the core, plus all demos, projects and bootloaders. Generated
documentation will then be available by opening the file "index.html" of the
created Documentation/html/ subdirectories inside each project folder.

The documentation for the library itself (but not the documentation for the
individual demos, projects or bootloaders) is also available as a separate
package from the project webpage for convenience if Doxygen cannot be
installed.