18c2ecf20Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0-or-later 28c2ecf20Sopenharmony_ci/* 38c2ecf20Sopenharmony_ci * Registration of Cobalt MTD device. 48c2ecf20Sopenharmony_ci * 58c2ecf20Sopenharmony_ci * Copyright (C) 2006 Yoichi Yuasa <yuasa@linux-mips.org> 68c2ecf20Sopenharmony_ci */ 78c2ecf20Sopenharmony_ci#include <linux/init.h> 88c2ecf20Sopenharmony_ci#include <linux/platform_device.h> 98c2ecf20Sopenharmony_ci#include <linux/mtd/partitions.h> 108c2ecf20Sopenharmony_ci#include <linux/mtd/physmap.h> 118c2ecf20Sopenharmony_ci 128c2ecf20Sopenharmony_cistatic struct mtd_partition cobalt_mtd_partitions[] = { 138c2ecf20Sopenharmony_ci { 148c2ecf20Sopenharmony_ci .name = "firmware", 158c2ecf20Sopenharmony_ci .offset = 0x0, 168c2ecf20Sopenharmony_ci .size = 0x80000, 178c2ecf20Sopenharmony_ci }, 188c2ecf20Sopenharmony_ci}; 198c2ecf20Sopenharmony_ci 208c2ecf20Sopenharmony_cistatic struct physmap_flash_data cobalt_flash_data = { 218c2ecf20Sopenharmony_ci .width = 1, 228c2ecf20Sopenharmony_ci .nr_parts = 1, 238c2ecf20Sopenharmony_ci .parts = cobalt_mtd_partitions, 248c2ecf20Sopenharmony_ci}; 258c2ecf20Sopenharmony_ci 268c2ecf20Sopenharmony_cistatic struct resource cobalt_mtd_resource = { 278c2ecf20Sopenharmony_ci .start = 0x1fc00000, 288c2ecf20Sopenharmony_ci .end = 0x1fc7ffff, 298c2ecf20Sopenharmony_ci .flags = IORESOURCE_MEM, 308c2ecf20Sopenharmony_ci}; 318c2ecf20Sopenharmony_ci 328c2ecf20Sopenharmony_cistatic struct platform_device cobalt_mtd = { 338c2ecf20Sopenharmony_ci .name = "physmap-flash", 348c2ecf20Sopenharmony_ci .dev = { 358c2ecf20Sopenharmony_ci .platform_data = &cobalt_flash_data, 368c2ecf20Sopenharmony_ci }, 378c2ecf20Sopenharmony_ci .num_resources = 1, 388c2ecf20Sopenharmony_ci .resource = &cobalt_mtd_resource, 398c2ecf20Sopenharmony_ci}; 408c2ecf20Sopenharmony_ci 418c2ecf20Sopenharmony_cistatic int __init cobalt_mtd_init(void) 428c2ecf20Sopenharmony_ci{ 438c2ecf20Sopenharmony_ci platform_device_register(&cobalt_mtd); 448c2ecf20Sopenharmony_ci 458c2ecf20Sopenharmony_ci return 0; 468c2ecf20Sopenharmony_ci} 478c2ecf20Sopenharmony_cidevice_initcall(cobalt_mtd_init); 48