Skip to content

Commit 1a2b423

Browse files
hkallweitWolfram Sang
authored andcommitted
i2c: boardinfo: Annotate code used in init phase only
Annotate two places in boardinfo code: - __i2c_first_dynamic_bus_num is set in init phase. Annotate it as __ro_after_init to prevent later changes. - i2c_register_board_info() is used in init phase only, so annotate it as __init, allowing to free the memory after init phase. This is safe, see comment: "done in board-specific init code near arch_initcall() time" Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com> Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
1 parent 54d6a97 commit 1a2b423

2 files changed

Lines changed: 3 additions & 3 deletions

File tree

drivers/i2c/i2c-boardinfo.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ EXPORT_SYMBOL_GPL(__i2c_board_lock);
2222
LIST_HEAD(__i2c_board_list);
2323
EXPORT_SYMBOL_GPL(__i2c_board_list);
2424

25-
int __i2c_first_dynamic_bus_num;
25+
int __i2c_first_dynamic_bus_num __ro_after_init;
2626
EXPORT_SYMBOL_GPL(__i2c_first_dynamic_bus_num);
2727

2828

@@ -48,7 +48,7 @@ EXPORT_SYMBOL_GPL(__i2c_first_dynamic_bus_num);
4848
* The board info passed can safely be __initdata, but be careful of embedded
4949
* pointers (for platform_data, functions, etc) since that won't be copied.
5050
*/
51-
int i2c_register_board_info(int busnum, struct i2c_board_info const *info, unsigned len)
51+
int __init i2c_register_board_info(int busnum, struct i2c_board_info const *info, unsigned len)
5252
{
5353
int status;
5454

include/linux/i2c.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -499,7 +499,7 @@ static inline struct i2c_client *i2c_verify_client(struct device *dev)
499499
* Modules for add-on boards must use other calls.
500500
*/
501501
#ifdef CONFIG_I2C_BOARDINFO
502-
int
502+
int __init
503503
i2c_register_board_info(int busnum, struct i2c_board_info const *info,
504504
unsigned n);
505505
#else

0 commit comments

Comments
 (0)