Skip to content

Commit

Permalink
- Additional Misc fixes
Browse files Browse the repository at this point in the history
 - Add XL OTP data for board version
 - Fix thermistor table
  • Loading branch information
vintagepc committed Nov 4, 2023
1 parent aa59f8d commit 18f4066
Show file tree
Hide file tree
Showing 5 changed files with 60 additions and 306 deletions.
19 changes: 10 additions & 9 deletions hw/arm/prusa/parts/74HC4052.c
Original file line number Diff line number Diff line change
Expand Up @@ -66,29 +66,32 @@ static void hc4052_reset(DeviceState *dev)
static void hc4052_ch1_in(void *opaque, int n, int level){
HC4052State *s = HC4052(opaque);
s->levels[0][n] = level;
if (n == s->channel)
{
qemu_set_irq(s->irq[0], level);
}
// printf("Ch1 %d changed to %d\n",n,level);
}

static void hc4052_ch2_in(void *opaque, int n, int level){
HC4052State *s = HC4052(opaque);
s->levels[1][n] = level;
if (n == s->channel)
{
qemu_set_irq(s->irq[1], level);
}
// printf("Ch2 %d changed to %d\n",n,level);
}

static void hc4052_ch1_read_request(void *opaque, int n, int level)
{
HC4052State *s = HC4052(opaque);
qemu_irq_raise(s->mux_read[n][s->channel]);
qemu_set_irq(s->irq[n], s->levels[n][s->channel]);
}

static void hc4052_select(void *opaque, int n, int level){
HC4052State *s = HC4052(opaque);
if (n==0) {
s->channel = (s->channel& 0x02) | (level & 0x1);
} else {
s->channel = (s->channel& 0x01) | ((level & 0x1)<<1);
}
qemu_set_irq(s->irq[0], s->levels[0][s->channel]);
qemu_set_irq(s->irq[1], s->levels[1][s->channel]);
}

static void hc4052_init(Object *obj)
Expand All @@ -100,8 +103,6 @@ static void hc4052_init(Object *obj)
qdev_init_gpio_in_named(DEVICE(obj),hc4052_select,"select",2);// S1, S2
qdev_init_gpio_in_named(DEVICE(obj),hc4052_ch1_in,"1Y",4);// 1Y
qdev_init_gpio_in_named(DEVICE(obj),hc4052_ch2_in,"2Y",4);// 2Y
qdev_init_gpio_in_named(DEVICE(obj),hc4052_ch1_read_request,"adc_read_request",2);

}

static const VMStateDescription vmstate_hc4052 = {
Expand Down
311 changes: 20 additions & 291 deletions hw/arm/prusa/parts/thermistortables.h
Original file line number Diff line number Diff line change
Expand Up @@ -1506,297 +1506,26 @@ const short temptable_2006[][2] = {


const short temptable_2007[][2] = {
{OVERSAMPLENR* 0 , 290 },
{OVERSAMPLENR* 1405 , 289 },
{OVERSAMPLENR* 1411 , 288 },
{OVERSAMPLENR* 1417 , 287 },
{OVERSAMPLENR* 1423 , 286 },
{OVERSAMPLENR* 1429 , 285 },
{OVERSAMPLENR* 1435 , 284 },
{OVERSAMPLENR* 1441 , 283 },
{OVERSAMPLENR* 1447 , 282 },
{OVERSAMPLENR* 1454 , 281 },
{OVERSAMPLENR* 1460 , 280 },
{OVERSAMPLENR* 1466 , 279 },
{OVERSAMPLENR* 1473 , 278 },
{OVERSAMPLENR* 1480 , 277 },
{OVERSAMPLENR* 1486 , 276 },
{OVERSAMPLENR* 1493 , 275 },
{OVERSAMPLENR* 1500 , 274 },
{OVERSAMPLENR* 1507 , 273 },
{OVERSAMPLENR* 1513 , 272 },
{OVERSAMPLENR* 1520 , 271 },
{OVERSAMPLENR* 1527 , 270 },
{OVERSAMPLENR* 1534 , 269 },
{OVERSAMPLENR* 1542 , 268 },
{OVERSAMPLENR* 1549 , 267 },
{OVERSAMPLENR* 1557 , 266 },
{OVERSAMPLENR* 1565 , 265 },
{OVERSAMPLENR* 1572 , 264 },
{OVERSAMPLENR* 1580 , 263 },
{OVERSAMPLENR* 1587 , 262 },
{OVERSAMPLENR* 1595 , 261 },
{OVERSAMPLENR* 1602 , 260 },
{OVERSAMPLENR* 1611 , 259 },
{OVERSAMPLENR* 1619 , 258 },
{OVERSAMPLENR* 1628 , 257 },
{OVERSAMPLENR* 1636 , 256 },
{OVERSAMPLENR* 1645 , 255 },
{OVERSAMPLENR* 1653 , 254 },
{OVERSAMPLENR* 1662 , 253 },
{OVERSAMPLENR* 1670 , 252 },
{OVERSAMPLENR* 1679 , 251 },
{OVERSAMPLENR* 1687 , 250 },
{OVERSAMPLENR* 1698 , 249 },
{OVERSAMPLENR* 1708 , 248 },
{OVERSAMPLENR* 1719 , 247 },
{OVERSAMPLENR* 1729 , 246 },
{OVERSAMPLENR* 1740 , 245 },
{OVERSAMPLENR* 1750 , 244 },
{OVERSAMPLENR* 1760 , 243 },
{OVERSAMPLENR* 1771 , 242 },
{OVERSAMPLENR* 1781 , 241 },
{OVERSAMPLENR* 1792 , 240 },
{OVERSAMPLENR* 1803 , 239 },
{OVERSAMPLENR* 1813 , 238 },
{OVERSAMPLENR* 1824 , 237 },
{OVERSAMPLENR* 1835 , 236 },
{OVERSAMPLENR* 1846 , 235 },
{OVERSAMPLENR* 1856 , 234 },
{OVERSAMPLENR* 1867 , 233 },
{OVERSAMPLENR* 1878 , 232 },
{OVERSAMPLENR* 1889 , 231 },
{OVERSAMPLENR* 1900 , 230 },
{OVERSAMPLENR* 1912 , 229 },
{OVERSAMPLENR* 1924 , 228 },
{OVERSAMPLENR* 1936 , 227 },
{OVERSAMPLENR* 1948 , 226 },
{OVERSAMPLENR* 1961 , 225 },
{OVERSAMPLENR* 1973 , 224 },
{OVERSAMPLENR* 1985 , 223 },
{OVERSAMPLENR* 1997 , 222 },
{OVERSAMPLENR* 2010 , 221 },
{OVERSAMPLENR* 2022 , 220 },
{OVERSAMPLENR* 2035 , 219 },
{OVERSAMPLENR* 2049 , 218 },
{OVERSAMPLENR* 2062 , 217 },
{OVERSAMPLENR* 2075 , 216 },
{OVERSAMPLENR* 2089 , 215 },
{OVERSAMPLENR* 2102 , 214 },
{OVERSAMPLENR* 2115 , 213 },
{OVERSAMPLENR* 2129 , 212 },
{OVERSAMPLENR* 2142 , 211 },
{OVERSAMPLENR* 2155 , 210 },
{OVERSAMPLENR* 2170 , 209 },
{OVERSAMPLENR* 2184 , 208 },
{OVERSAMPLENR* 2199 , 207 },
{OVERSAMPLENR* 2214 , 206 },
{OVERSAMPLENR* 2228 , 205 },
{OVERSAMPLENR* 2243 , 204 },
{OVERSAMPLENR* 2257 , 203 },
{OVERSAMPLENR* 2272 , 202 },
{OVERSAMPLENR* 2286 , 201 },
{OVERSAMPLENR* 2301 , 200 },
{OVERSAMPLENR* 2317 , 199 },
{OVERSAMPLENR* 2333 , 198 },
{OVERSAMPLENR* 2349 , 197 },
{OVERSAMPLENR* 2365 , 196 },
{OVERSAMPLENR* 2380 , 195 },
{OVERSAMPLENR* 2396 , 194 },
{OVERSAMPLENR* 2412 , 193 },
{OVERSAMPLENR* 2428 , 192 },
{OVERSAMPLENR* 2444 , 191 },
{OVERSAMPLENR* 2460 , 190 },
{OVERSAMPLENR* 2478 , 189 },
{OVERSAMPLENR* 2495 , 188 },
{OVERSAMPLENR* 2513 , 187 },
{OVERSAMPLENR* 2530 , 186 },
{OVERSAMPLENR* 2548 , 185 },
{OVERSAMPLENR* 2566 , 184 },
{OVERSAMPLENR* 2583 , 183 },
{OVERSAMPLENR* 2601 , 182 },
{OVERSAMPLENR* 2618 , 181 },
{OVERSAMPLENR* 2636 , 180 },
{OVERSAMPLENR* 2654 , 179 },
{OVERSAMPLENR* 2671 , 178 },
{OVERSAMPLENR* 2689 , 177 },
{OVERSAMPLENR* 2707 , 176 },
{OVERSAMPLENR* 2725 , 175 },
{OVERSAMPLENR* 2742 , 174 },
{OVERSAMPLENR* 2760 , 173 },
{OVERSAMPLENR* 2778 , 172 },
{OVERSAMPLENR* 2796 , 171 },
{OVERSAMPLENR* 2813 , 170 },
{OVERSAMPLENR* 2830 , 169 },
{OVERSAMPLENR* 2847 , 168 },
{OVERSAMPLENR* 2864 , 167 },
{OVERSAMPLENR* 2881 , 166 },
{OVERSAMPLENR* 2898 , 165 },
{OVERSAMPLENR* 2915 , 164 },
{OVERSAMPLENR* 2933 , 163 },
{OVERSAMPLENR* 2950 , 162 },
{OVERSAMPLENR* 2967 , 161 },
{OVERSAMPLENR* 2984 , 160 },
{OVERSAMPLENR* 3001 , 159 },
{OVERSAMPLENR* 3018 , 158 },
{OVERSAMPLENR* 3035 , 157 },
{OVERSAMPLENR* 3052 , 156 },
{OVERSAMPLENR* 3069 , 155 },
{OVERSAMPLENR* 3086 , 154 },
{OVERSAMPLENR* 3103 , 153 },
{OVERSAMPLENR* 3120 , 152 },
{OVERSAMPLENR* 3137 , 151 },
{OVERSAMPLENR* 3154 , 150 },
{OVERSAMPLENR* 3170 , 149 },
{OVERSAMPLENR* 3187 , 148 },
{OVERSAMPLENR* 3203 , 147 },
{OVERSAMPLENR* 3219 , 146 },
{OVERSAMPLENR* 3235 , 145 },
{OVERSAMPLENR* 3251 , 144 },
{OVERSAMPLENR* 3267 , 143 },
{OVERSAMPLENR* 3283 , 142 },
{OVERSAMPLENR* 3299 , 141 },
{OVERSAMPLENR* 3315 , 140 },
{OVERSAMPLENR* 3330 , 139 },
{OVERSAMPLENR* 3345 , 138 },
{OVERSAMPLENR* 3360 , 137 },
{OVERSAMPLENR* 3375 , 136 },
{OVERSAMPLENR* 3390 , 135 },
{OVERSAMPLENR* 3404 , 134 },
{OVERSAMPLENR* 3419 , 133 },
{OVERSAMPLENR* 3434 , 132 },
{OVERSAMPLENR* 3449 , 131 },
{OVERSAMPLENR* 3464 , 130 },
{OVERSAMPLENR* 3477 , 129 },
{OVERSAMPLENR* 3490 , 128 },
{OVERSAMPLENR* 3503 , 127 },
{OVERSAMPLENR* 3516 , 126 },
{OVERSAMPLENR* 3529 , 125 },
{OVERSAMPLENR* 3542 , 124 },
{OVERSAMPLENR* 3555 , 123 },
{OVERSAMPLENR* 3569 , 122 },
{OVERSAMPLENR* 3582 , 121 },
{OVERSAMPLENR* 3595 , 120 },
{OVERSAMPLENR* 3606 , 119 },
{OVERSAMPLENR* 3618 , 118 },
{OVERSAMPLENR* 3629 , 117 },
{OVERSAMPLENR* 3641 , 116 },
{OVERSAMPLENR* 3652 , 115 },
{OVERSAMPLENR* 3664 , 114 },
{OVERSAMPLENR* 3675 , 113 },
{OVERSAMPLENR* 3687 , 112 },
{OVERSAMPLENR* 3698 , 111 },
{OVERSAMPLENR* 3710 , 110 },
{OVERSAMPLENR* 3719 , 109 },
{OVERSAMPLENR* 3728 , 108 },
{OVERSAMPLENR* 3737 , 107 },
{OVERSAMPLENR* 3746 , 106 },
{OVERSAMPLENR* 3755 , 105 },
{OVERSAMPLENR* 3764 , 104 },
{OVERSAMPLENR* 3773 , 103 },
{OVERSAMPLENR* 3782 , 102 },
{OVERSAMPLENR* 3791 , 101 },
{OVERSAMPLENR* 3800 , 100 },
{OVERSAMPLENR* 3808 , 99 },
{OVERSAMPLENR* 3816 , 98 },
{OVERSAMPLENR* 3824 , 97 },
{OVERSAMPLENR* 3832 , 96 },
{OVERSAMPLENR* 3840 , 95 },
{OVERSAMPLENR* 3848 , 94 },
{OVERSAMPLENR* 3856 , 93 },
{OVERSAMPLENR* 3864 , 92 },
{OVERSAMPLENR* 3872 , 91 },
{OVERSAMPLENR* 3880 , 90 },
{OVERSAMPLENR* 3886 , 89 },
{OVERSAMPLENR* 3892 , 88 },
{OVERSAMPLENR* 3899 , 87 },
{OVERSAMPLENR* 3905 , 86 },
{OVERSAMPLENR* 3911 , 85 },
{OVERSAMPLENR* 3917 , 84 },
{OVERSAMPLENR* 3923 , 83 },
{OVERSAMPLENR* 3930 , 82 },
{OVERSAMPLENR* 3936 , 81 },
{OVERSAMPLENR* 3942 , 80 },
{OVERSAMPLENR* 3946 , 79 },
{OVERSAMPLENR* 3951 , 78 },
{OVERSAMPLENR* 3956 , 77 },
{OVERSAMPLENR* 3960 , 76 },
{OVERSAMPLENR* 3965 , 75 },
{OVERSAMPLENR* 3969 , 74 },
{OVERSAMPLENR* 3974 , 73 },
{OVERSAMPLENR* 3978 , 72 },
{OVERSAMPLENR* 3983 , 71 },
{OVERSAMPLENR* 3987 , 70 },
{OVERSAMPLENR* 3990 , 69 },
{OVERSAMPLENR* 3993 , 68 },
{OVERSAMPLENR* 3996 , 67 },
{OVERSAMPLENR* 3999 , 66 },
{OVERSAMPLENR* 4002 , 65 },
{OVERSAMPLENR* 4005 , 64 },
{OVERSAMPLENR* 4008 , 63 },
{OVERSAMPLENR* 4011 , 62 },
{OVERSAMPLENR* 4014 , 61 },
{OVERSAMPLENR* 4016 , 60 },
{OVERSAMPLENR* 4020 , 59 },
{OVERSAMPLENR* 4023 , 58 },
{OVERSAMPLENR* 4027 , 57 },
{OVERSAMPLENR* 4030 , 56 },
{OVERSAMPLENR* 4033 , 55 },
{OVERSAMPLENR* 4035 , 54 },
{OVERSAMPLENR* 4037 , 53 },
{OVERSAMPLENR* 4039 , 52 },
{OVERSAMPLENR* 4041 , 51 },
{OVERSAMPLENR* 4043 , 50 },
{OVERSAMPLENR* 4044 , 49 },
{OVERSAMPLENR* 4046 , 48 },
{OVERSAMPLENR* 4047 , 47 },
{OVERSAMPLENR* 4049 , 46 },
{OVERSAMPLENR* 4051 , 45 },
{OVERSAMPLENR* 4053 , 44 },
{OVERSAMPLENR* 4055 , 43 },
{OVERSAMPLENR* 4057 , 42 },
{OVERSAMPLENR* 4059 , 41 },
{OVERSAMPLENR* 4061 , 40 },
{OVERSAMPLENR* 4062 , 39 },
{OVERSAMPLENR* 4064 , 38 },
{OVERSAMPLENR* 4066 , 37 },
{OVERSAMPLENR* 4067 , 36 },
{OVERSAMPLENR* 4069 , 35 },
{OVERSAMPLENR* 4070 , 34 },
{OVERSAMPLENR* 4072 , 33 },
{OVERSAMPLENR* 4074 , 32 },
{OVERSAMPLENR* 4075 , 31 },
{OVERSAMPLENR* 4077 , 30 },
{OVERSAMPLENR* 4078 , 29 },
{OVERSAMPLENR* 4079 , 28 },
{OVERSAMPLENR* 4080 , 27 },
{OVERSAMPLENR* 4081 , 26 },
{OVERSAMPLENR* 4082 , 25 },
{OVERSAMPLENR* 4083 , 24 },
{OVERSAMPLENR* 4084 , 23 },
{OVERSAMPLENR* 4084 , 22 },
{OVERSAMPLENR* 4084 , 21 },
{OVERSAMPLENR* 4084 , 20 },
{OVERSAMPLENR* 4085 , 19 },
{OVERSAMPLENR* 4085 , 18 },
{OVERSAMPLENR* 4085 , 17 },
{OVERSAMPLENR* 4085 , 16 },
{OVERSAMPLENR* 4086 , 15 },
{OVERSAMPLENR* 4086 , 14 },
{OVERSAMPLENR* 4086 , 13 },
{OVERSAMPLENR* 4086 , 12 },
{OVERSAMPLENR* 4087 , 11 },
{OVERSAMPLENR* 4087 , 10 },
{OVERSAMPLENR* 4087 , 9 },
{OVERSAMPLENR* 4087 , 8 },
{OVERSAMPLENR* 4087 , 7 },
{OVERSAMPLENR* 4088 , 6 },
{OVERSAMPLENR* 4088 , 5 },
{OVERSAMPLENR* 4088 , 4 },
{OVERSAMPLENR* 4088 , 3 },
{OVERSAMPLENR* 4089 , 2 },
{OVERSAMPLENR* 4089 , 1 },
{OVERSAMPLENR* 4089 , 0 },
{ OVERSAMPLENR*(90), 320 }, // Projected value just to trigger error on short circuit
{ OVERSAMPLENR*(120), 300 },
{ OVERSAMPLENR*(155), 280 },
{ OVERSAMPLENR*(200), 260 },
{ OVERSAMPLENR*(259), 240 },
{ OVERSAMPLENR*(335), 220 },
{ OVERSAMPLENR*(428), 200 },
{ OVERSAMPLENR*(535), 180 },
{ OVERSAMPLENR*(649), 160 },
{ OVERSAMPLENR*(758), 140 },
{ OVERSAMPLENR*(851), 120 },
{ OVERSAMPLENR*(921), 100 },
{ OVERSAMPLENR*(958), 85 },
{ OVERSAMPLENR*(967), 80 },
{ OVERSAMPLENR*(996), 60 },
{ OVERSAMPLENR*(1004), 50 },
{ OVERSAMPLENR*(1011), 40 },
{ OVERSAMPLENR*(1017), 25 },
{ OVERSAMPLENR*(1020), 10 },
{ OVERSAMPLENR*(1021), 0 },
};

const short temptable_2008[][2] = {
Expand Down
2 changes: 1 addition & 1 deletion hw/arm/prusa/prusa-xl-bed.c
Original file line number Diff line number Diff line change
Expand Up @@ -220,7 +220,7 @@ static void prusa_xl_bed_init(MachineState *machine, int hw_type)
for (int i=0; i<2; i++)
{
sysbus_realize_and_unref(SYS_BUS_DEVICE(current_sense[i]), &error_fatal);
// qdev_connect_gpio_out_named(stm32_soc_get_periph(dev_soc, STM32_P_ADC1),"adc_read", current_adcs[i], qdev_get_gpio_in_named(current_sense[i], "adc_read_request",0));
qdev_connect_gpio_out_named(stm32_soc_get_periph(dev_soc, STM32_P_ADC1),"adc_read", current_adcs[i], qdev_get_gpio_in_named(current_sense[i], "adc_read_request",0));
qdev_connect_gpio_out_named(current_sense[i], "adc_out", 0, qdev_get_gpio_in_named(stm32_soc_get_periph(dev_soc, STM32_P_ADC1),"adc_data_in",current_adcs[i]));
}

Expand Down
Loading

0 comments on commit 18f4066

Please sign in to comment.