1 // SPDX-License-Identifier: GPL-2.0 2 /* 3 * Sandbox P2SB for testing 4 * 5 * Copyright 2019 Google LLC 6 */ 7 8 #define LOG_CATEGORY UCLASS_P2SB 9 10 #include <common.h> 11 #include <dm.h> 12 #include <asm/io.h> 13 #include <p2sb.h> 14 15 struct sandbox_p2sb_priv { 16 ulong base; 17 }; 18 sandbox_p2sb_probe(struct udevice * dev)19static int sandbox_p2sb_probe(struct udevice *dev) 20 { 21 struct p2sb_uc_priv *upriv = dev_get_uclass_priv(dev); 22 23 upriv->mmio_base = dm_pci_read_bar32(dev, 0); 24 25 return 0; 26 } 27 28 static const struct udevice_id sandbox_p2sb_ids[] = { 29 { .compatible = "sandbox,p2sb" }, 30 { } 31 }; 32 33 U_BOOT_DRIVER(p2sb_sandbox) = { 34 .name = "p2sb_sandbox", 35 .id = UCLASS_P2SB, 36 .of_match = sandbox_p2sb_ids, 37 .probe = sandbox_p2sb_probe, 38 .priv_auto = sizeof(struct sandbox_p2sb_priv), 39 }; 40