memory hotplug/s390: set phys_device

Implement arch specific arch_get_memory_phys_device function and
initialize phys_device for each memory section. That way we finally can
tell which piece of memory belongs to which physical device.

This makes s390's /sys/devices/system/memory/memoryX/phys_device display
the correct thing?

Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Cc: Dave Hansen <haveblue@us.ibm.com>
Cc: Gerald Schaefer <gerald.schaefer@de.ibm.com>
Cc: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

authored by Heiko Carstens and committed by Linus Torvalds 57b552ba bc32df00

+7
+7
drivers/s390/char/sclp_cmd.c
··· 704 704 return do_chp_configure(SCLP_CMDW_DECONFIGURE_CHPATH | chpid.id << 8); 705 705 } 706 706 707 + int arch_get_memory_phys_device(unsigned long start_pfn) 708 + { 709 + if (!rzm) 710 + return 0; 711 + return PFN_PHYS(start_pfn) / rzm; 712 + } 713 + 707 714 struct chp_info_sccb { 708 715 struct sccb_header header; 709 716 u8 recognized[SCLP_CHP_INFO_MASK_SIZE];