Initial work for consolidation of ChibiOS platform files (#8327)
* Initial work for consolidation of board files and default ChibiOS configs. * Migrate F401/F411 black pills for testing. * Add early init bootloader jump flag. * Add support for I2C in order to use i2c_scanner keymap. * Add F401/F411 HSE bypass to get things booting. * Exempt "hooked" ChibiOS conf files from updater script. * Fix up ordering for bootloader_defs file check. * Match previous $(KEYBOARD_PATHS) value for Proton-C, updated for all board configs.
This commit is contained in:
		
							parent
							
								
									5cc3ab38c9
								
							
						
					
					
						commit
						385d49cc39
					
				
					 69 changed files with 2564 additions and 8237 deletions
				
			
		
							
								
								
									
										59
									
								
								platforms/chibios/STM32_F103_STM32DUINO/board/board.c
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										59
									
								
								platforms/chibios/STM32_F103_STM32DUINO/board/board.c
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,59 @@
 | 
			
		|||
/*
 | 
			
		||||
    ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio
 | 
			
		||||
 | 
			
		||||
    Licensed under the Apache License, Version 2.0 (the "License");
 | 
			
		||||
    you may not use this file except in compliance with the License.
 | 
			
		||||
    You may obtain a copy of the License at
 | 
			
		||||
 | 
			
		||||
        http://www.apache.org/licenses/LICENSE-2.0
 | 
			
		||||
 | 
			
		||||
    Unless required by applicable law or agreed to in writing, software
 | 
			
		||||
    distributed under the License is distributed on an "AS IS" BASIS,
 | 
			
		||||
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
			
		||||
    See the License for the specific language governing permissions and
 | 
			
		||||
    limitations under the License.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#include "hal.h"
 | 
			
		||||
 | 
			
		||||
// Value to place in RTC backup register 10 for persistent bootloader mode
 | 
			
		||||
#define RTC_BOOTLOADER_FLAG 0x424C
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @brief   PAL setup.
 | 
			
		||||
 * @details Digital I/O ports static configuration as defined in @p board.h.
 | 
			
		||||
 *          This variable is used by the HAL when initializing the PAL driver.
 | 
			
		||||
 */
 | 
			
		||||
#if HAL_USE_PAL || defined(__DOXYGEN__)
 | 
			
		||||
const PALConfig pal_default_config =
 | 
			
		||||
{
 | 
			
		||||
  {VAL_GPIOAODR, VAL_GPIOACRL, VAL_GPIOACRH},
 | 
			
		||||
  {VAL_GPIOBODR, VAL_GPIOBCRL, VAL_GPIOBCRH},
 | 
			
		||||
  {VAL_GPIOCODR, VAL_GPIOCCRL, VAL_GPIOCCRH},
 | 
			
		||||
  {VAL_GPIODODR, VAL_GPIODCRL, VAL_GPIODCRH},
 | 
			
		||||
  {VAL_GPIOEODR, VAL_GPIOECRL, VAL_GPIOECRH},
 | 
			
		||||
};
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
__attribute__((weak)) void enter_bootloader_mode_if_requested(void) {}
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * Early initialization code.
 | 
			
		||||
 * This initialization must be performed just after stack setup and before
 | 
			
		||||
 * any other initialization.
 | 
			
		||||
 */
 | 
			
		||||
void __early_init(void) {
 | 
			
		||||
  enter_bootloader_mode_if_requested();
 | 
			
		||||
 | 
			
		||||
  stm32_clock_init();
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * Board-specific initialization code.
 | 
			
		||||
 */
 | 
			
		||||
void boardInit(void) {
 | 
			
		||||
   //JTAG-DP Disabled and SW-DP Enabled
 | 
			
		||||
   AFIO->MAPR |= AFIO_MAPR_SWJ_CFG_JTAGDISABLE;
 | 
			
		||||
   //Set backup register DR10 to enter bootloader on reset
 | 
			
		||||
   BKP->DR10 = RTC_BOOTLOADER_FLAG;
 | 
			
		||||
}
 | 
			
		||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue