Subject | Hash | Author | Date (UTC) |
---|---|---|---|
smc start | 6c09abb37b34599c132f324359ce38d11888091f | Sylvain BERTRAND | 2014-01-31 12:03:10 |
tidy mc reg tbl and mc arb reg tbl | 10c88c7898f027e114846f253262e6631a44f5eb | Sylvain BERTRAND | 2014-01-30 18:42:13 |
tidy mc reg tbl | 4761bf039ff2caf87c7eb139cf54c0f2e1932b60 | Sylvain BERTRAND | 2014-01-30 18:23:10 |
cpy cpu mem to smc mem | 1b2deae0c86f878c72a40b2c4d07cdf308c3be11 | Sylvain BERTRAND | 2014-01-30 16:56:51 |
init of smc sw regs for response times | af87f39cda6b64d7c5367ea4fa77899a55a0b9e0 | Sylvain BERTRAND | 2014-01-30 15:39:37 |
smc state dyn pm params init | 66b37051c3927dfecc92d6d630c53ddf927c7d79 | Sylvain BERTRAND | 2014-01-30 11:11:05 |
init of smc cac cfg regs | add98b596c10e16693171e04a7f9168232a1f65d | Sylvain BERTRAND | 2014-01-29 19:38:59 |
cosmestics | ee91a7ee91132de107bef05de70a8ea28f89dddf | Sylvain BERTRAND | 2014-01-28 23:12:44 |
smc cac cfg tbl init and some cosmetics | 823419aa67f2ad91afb08942112be28d59752435 | Sylvain BERTRAND | 2014-01-28 22:31:35 |
smc dte cfg tbl init | f3689c3d9e04a3462acf5c3a3aaabbdbb5307580 | Sylvain BERTRAND | 2014-01-27 21:16:32 |
init the smc mc arb freq set | e276bc781e0e1ec9f7550c9bc8ffdb8de253be8b | Sylvain BERTRAND | 2014-01-24 16:22:31 |
smc_eng_pll_tbl init | 323df7359605e25ac08800ca960bd3eb2267bc87 | Sylvain BERTRAND | 2014-01-24 15:50:18 |
factor out enging pll params computation | 0c99b244c1a699abca8493097a8b1f82299b6721 | Sylvain BERTRAND | 2014-01-24 14:25:57 |
missed one file | 99e76ae1afc06031299b77b3b1d7fbe80b869bc0 | Sylvain BERTRAND | 2014-01-24 13:03:50 |
atombios:eng mem pll used only for eng from SI | dcdbc070fe4d7a9380ba27bb33274484d2725746 | Sylvain BERTRAND | 2014-01-24 13:01:43 |
mc arb tbl init | c2d2e29d33a70910eaa09618ecb53783e976bea7 | Sylvain BERTRAND | 2014-01-24 11:06:39 |
preliminary support for smc mc arb reg set | 0b7c90e4ccb988596b95ffccea10a2359ba585cd | Sylvain BERTRAND | 2014-01-23 16:57:47 |
removal of mc reg tbl slot idx duplicates | 2b500504c5a651ed8f24df1fc43150cd205d8985 | Sylvain BERTRAND | 2014-01-23 14:08:10 |
mc regs set init for the driver state | 7a9c50e02784f93d3443720d063b93829b9a57a1 | Sylvain BERTRAND | 2014-01-23 12:17:25 |
mc reg tbl init for the ulv state | 97d55c06f7eeb31dd6f6a95fb13b30ddd22be157 | Sylvain BERTRAND | 2014-01-23 11:29:32 |
File | Lines added | Lines deleted |
---|---|---|
drivers/gpu/alga/amd/ABBREVIATIONS | 1 | 0 |
drivers/gpu/alga/amd/si/dyn_pm/dyn_pm.c | 3 | 0 |
drivers/gpu/alga/amd/si/smc.c | 25 | 0 |
drivers/gpu/alga/amd/si/smc.h | 3 | 0 |
File drivers/gpu/alga/amd/ABBREVIATIONS changed (mode: 100644) (index 0799377..e652dcd) | |||
... | ... | iio indirect I/O (not supported because going PCI MMIO) | |
138 | 138 | imm immediat | imm immediat |
139 | 139 | info information | info information |
140 | 140 | inst(s) instance(s) | inst(s) instance(s) |
141 | instr(s) instruction(s) | ||
141 | 142 | int interrupt | int interrupt |
142 | 143 | intr(s) interrupt(s) | intr(s) interrupt(s) |
143 | 144 | invalidation invld | invalidation invld |
File drivers/gpu/alga/amd/si/dyn_pm/dyn_pm.c changed (mode: 100644) (index 1b6aace..87cda88) | |||
... | ... | long dyn_pm_ena(struct pci_dev *dev) | |
799 | 799 | cac_wnd_set(dev); | cac_wnd_set(dev); |
800 | 800 | smc_cac_cfg_regs_init(dev); | smc_cac_cfg_regs_init(dev); |
801 | 801 | ds_ena(dev); | ds_ena(dev); |
802 | smc_initial_jmp_setup(dev); | ||
803 | smc_start(dev); | ||
804 | smc_clk_start(dev); | ||
802 | 805 | ||
803 | 806 | //TODO | //TODO |
804 | 807 |
File drivers/gpu/alga/amd/si/smc.c changed (mode: 100644) (index 348afb3..d8005d5) | |||
... | ... | void smc_memcpy(struct pci_dev *dev, u32 dest, u8 *src, u32 bytes_n) | |
235 | 235 | wr32(dev, last_dw_new, SMC_DATA); | wr32(dev, last_dw_new, SMC_DATA); |
236 | 236 | } | } |
237 | 237 | } | } |
238 | |||
239 | void smc_initial_jmp_setup(struct pci_dev *dev) | ||
240 | { | ||
241 | static u8 jmp_instr[] = { 0x0E, 0x00, 0x40, 0x40 }; | ||
242 | |||
243 | smc_memcpy(dev, 0x0, &jmp_instr[0], sizeof(jmp_instr)); | ||
244 | } | ||
245 | |||
246 | void smc_start(struct pci_dev *dev) | ||
247 | { | ||
248 | u32 smc_syscon_reset_ctl; | ||
249 | smc_syscon_reset_ctl = smc_r32(dev, SMC_SYSCON_RESET_CTL); | ||
250 | |||
251 | smc_syscon_reset_ctl &= ~SSRC_RST_REG; | ||
252 | smc_w32(dev, smc_syscon_reset_ctl, SMC_SYSCON_CLK_CTL); | ||
253 | } | ||
254 | |||
255 | void smc_clk_start(struct pci_dev *dev) | ||
256 | { | ||
257 | u32 smc_syscon_clk_ctl; | ||
258 | smc_syscon_clk_ctl = smc_r32(dev, SMC_SYSCON_CLK_CTL); | ||
259 | |||
260 | smc_syscon_clk_ctl &= ~SSCC_CK_DIS; | ||
261 | smc_w32(dev, smc_syscon_clk_ctl, SMC_SYSCON_CLK_CTL); | ||
262 | } |
File drivers/gpu/alga/amd/si/smc.h changed (mode: 100644) (index 03459a7..bb174f1) | |||
8 | 8 | u32 smc_r32(struct pci_dev *dev, u32 addr); | u32 smc_r32(struct pci_dev *dev, u32 addr); |
9 | 9 | void smc_w32(struct pci_dev *dev, u32 val, u32 addr); | void smc_w32(struct pci_dev *dev, u32 val, u32 addr); |
10 | 10 | u8 smc_is_running(struct pci_dev *dev); | u8 smc_is_running(struct pci_dev *dev); |
11 | void smc_initial_jmp_setup(struct pci_dev *dev); | ||
12 | void smc_start(struct pci_dev *rdev); | ||
11 | 13 | void smc_reset(struct pci_dev *dev); | void smc_reset(struct pci_dev *dev); |
14 | void smc_clk_start(struct pci_dev *rdev); | ||
12 | 15 | void smc_clk_stop(struct pci_dev *dev); | void smc_clk_stop(struct pci_dev *dev); |
13 | 16 | long smc_ucode_load(struct pci_dev *dev); | long smc_ucode_load(struct pci_dev *dev); |
14 | 17 | void smc_ucode_program(struct pci_dev *dev); | void smc_ucode_program(struct pci_dev *dev); |