xref: /rk3399_rockchip-uboot/arch/x86/cpu/intel_common/pch.c (revision 7e4a6ae62c7ee567ae43e94445e561b3ec8343b9)
1*7e4a6ae6SSimon Glass /*
2*7e4a6ae6SSimon Glass  * Copyright (c) 2016 Google, Inc
3*7e4a6ae6SSimon Glass  *
4*7e4a6ae6SSimon Glass  * SPDX-License-Identifier:	GPL-2.0
5*7e4a6ae6SSimon Glass  */
6*7e4a6ae6SSimon Glass 
7*7e4a6ae6SSimon Glass #include <common.h>
8*7e4a6ae6SSimon Glass #include <dm.h>
9*7e4a6ae6SSimon Glass #include <asm/pch_common.h>
10*7e4a6ae6SSimon Glass 
pch_common_sir_read(struct udevice * dev,int idx)11*7e4a6ae6SSimon Glass u32 pch_common_sir_read(struct udevice *dev, int idx)
12*7e4a6ae6SSimon Glass {
13*7e4a6ae6SSimon Glass 	u32 data;
14*7e4a6ae6SSimon Glass 
15*7e4a6ae6SSimon Glass 	dm_pci_write_config32(dev, SATA_SIRI, idx);
16*7e4a6ae6SSimon Glass 	dm_pci_read_config32(dev, SATA_SIRD, &data);
17*7e4a6ae6SSimon Glass 
18*7e4a6ae6SSimon Glass 	return data;
19*7e4a6ae6SSimon Glass }
20*7e4a6ae6SSimon Glass 
pch_common_sir_write(struct udevice * dev,int idx,u32 value)21*7e4a6ae6SSimon Glass void pch_common_sir_write(struct udevice *dev, int idx, u32 value)
22*7e4a6ae6SSimon Glass {
23*7e4a6ae6SSimon Glass 	dm_pci_write_config32(dev, SATA_SIRI, idx);
24*7e4a6ae6SSimon Glass 	dm_pci_write_config32(dev, SATA_SIRD, value);
25*7e4a6ae6SSimon Glass }
26