From: Noralf Trønnes Date: Wed, 3 Jun 2015 10:26:13 +0000 (+0200) Subject: ARM: bcm2835: Set Serial number and Revision X-Git-Tag: archive/raspbian/4.9.82-1+deb9u3+rpi1_jessie~5^2~468 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=8cafc6e93cefa25d09db4609e39111891accc4e9;p=linux-4.9.git ARM: bcm2835: Set Serial number and Revision The VideoCore bootloader passes in Serial number and Revision number through Device Tree. Make these available to userspace through /proc/cpuinfo. Mainline status: There is a commit in linux-next that standardize passing the serial number through Device Tree (string: /serial-number): ARM: 8355/1: arch: Show the serial number from devicetree in cpuinfo There was an attempt to do the same with the revision number, but it didn't get in: [PATCH v2 1/2] arm: devtree: Set system_rev from DT revision Signed-off-by: Noralf Trønnes --- diff --git a/arch/arm/mach-bcm/board_bcm2835.c b/arch/arm/mach-bcm/board_bcm2835.c index 0c1edfc98696..8f152266ba9b 100644 --- a/arch/arm/mach-bcm/board_bcm2835.c +++ b/arch/arm/mach-bcm/board_bcm2835.c @@ -16,13 +16,23 @@ #include #include #include +#include #include #include static void __init bcm2835_init(void) { + struct device_node *np = of_find_node_by_path("/system"); + u32 val; + u64 val64; + bcm2835_init_clocks(); + + if (!of_property_read_u32(np, "linux,revision", &val)) + system_rev = val; + if (!of_property_read_u64(np, "linux,serial", &val64)) + system_serial_low = val64; } static const char * const bcm2835_compat[] = {