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